Animations and transitions on websites need to be smooth

Today, there are many gorgeous sites designed with animations and modern browser support in mind. We’re not talking about video but rather pictures and popups gliding on the screen to show you something important. You probably see previews or an app or a picture that  shows content that’s easy on the eye.

Even with a modern computer or mobile devices, these animations be appear choppy. I will describe solution to this:


Velocity is an animation engine with the same API as jQuery’s $.animate(). It works with and without jQuery. It’s incredibly fast, and it features color animation,transforms, loops, easings, SVG support, and scrolling. It is the best of jQuery and CSS transitions combined.

Velocity was built to augment where Jquery and Jquery Transit have left off. See CSS transitions that use your video card.


You can find velocity.js here Velocity JS code and documentation

Share This:

cloud, javascript

Using MomentJs Timezone in Parse.Cloud.code

Parse Cloud Code comes with a few handy modules, however momentjs presently is very old (1.x) on parse cloud code. Here are the steps how to integrate momentjs and momentjs-timezone (latest and greatest).

Step 1

Within your project copy momentjs.js (version 2.X) and moment-timezone.js file to /cloud directory.

Step 2

Modify moment-timezone.js first few lines:

(function (root, factory) {
"use strict";

module.exports = factory(require(‘cloud/moment.js’));

}(this, function (moment) {

What this does is loads your updated momentJs for moment-timezone to use

Step 3

Use the updated script within your code like this

var moment = require('cloud/moment-tz');

Share This:

architecture, cloud

Azure cli provides powerful tools before Portal is finally polished

But first , the tricky part is using Azure’s CLI tool . I would suggest using node version:

Installing : npm -g install azure-cli

Once you’re done, they require you to upload .publishsettings file , oddly named its also not easily accessible. Run the following command

azure account download

Above command will actually open a browser and if you’re logged in (azure) you will be able to download it.

Next step is importing it

azure account import filename.publishsettings


At this point you want to switch to Resource Manager mode, its a newer API architecture where everything is configurable via JSON structure and this is inline with new Portal management. The following command will switch you to that mode:

azure config mode arm

Few more handy resources when dealing with azure-cli

Using the Azure CLI for Mac, Linux, and Windows with Azure Service Management

Share This:


VisualStudio online doesnt use ssh, here is a tip

MS Visual Studio online was something new to me. It definitely is targeted for those using Visual Studio as product, however for those of us that us Atom or Sublime we’re a bit stuck.

VSS online doesn’t support ssh , so don’t bother looking for it.

What you’ll need to do is:

1. Setup alternate credentials (username and password ) This can be done in profile window

2. git clone http://<yourproject>….

3.  git config credential.helper store

4. Make changes and push, it will prompt you for credentials but they will be saved and you won’t be prompted again

ps. keep in mind that credentials are saved in a file (hidden) and shouldn’t be exposed, hence the alternate credentials so that your MS account isnt exposed.


Share This:


Oracle Mysql Cluster 7.4 features

I’ve explored the features of Mysql Cluster 7.2 and 7.3 and now Oracle is coming out with 7.4 with very nice improvements.

This is yet another reason to go for baremetal (softlayer or others) and setup 4 node machine (or more) and enjoy the features of fairly priced or free mysql cluster.

These are the features listed from a Webinar :


  • Performance enhancements: MySQL Cluster 7.4 delivers a 50 percent performance improvement over MySQL Cluster 7.3 for Read-Only workloads and 40 percent improvement for Read/Write operations. Performance improvements are available through SQL or any of the native NoSQL APIs supported by MySQL Cluster. New records of 200 Million NoSQL Queries Per Second (QPS) and 2.5 Million SQL QPS were established.
  • New geographic redundancy features for high availability across data centers: The latest release provides rollback of any conflicting transactions – enabling full active-active, update-anywhere replication between geographically distant clusters, with applications able to send reads and writes to any site without compromising on consistency.
  • Faster online maintenance and recovery operationsincluding the ability to roll out software upgrades as much as 5x faster.
  • Enhanced distributed monitoring of memory usage and database operations.

Share This:

architecture, coding

Open sourcing my lottery server

2007 project involving Message Driven Beans (EJB) running on Enterprise Java container (Jboss or Glassfish) where games are processed and “played” as they come in through the Queue allowing scalability and consistency.


Source code for both game logic and EJB server can be found on github:

Github to Lottery Server

Share This:


Add async to script tag and enjoy 10% performance in page load

Chrome 41+ supports


<script async src="app.min.js">


Which allows script(s) to be parsed in parallel to other scripts therefore end user will experience slightly faster page load.

Share This:


Creating Real Time topology in Apache Storm is amazing

Hiding away all the complexities of running nodes (hidden by zookeeper) and providing parallelism for Bolts (units of work in Storm) , as well as creating new Spouts (units of data steam, e.g. redis data, twitter stream or anything you want) allows you to focus on your real time product.

Once the bolt processes a string , adding a counter to it and pushing it to redis topic (using pub/sub).

On the other end, Web app is using d3 to grab all the content coming from a stream (simple python client connected to redis emits data)


That’s amazing.



Share This:

coding, mongodb, nodejs, Uncategorized

Recently open sourced project – toronto open data

The motivation behind this project is


  • Building a very capable api with geo lookups
  • Toronto Open Data api -specifically city services is very slow
  • User interface as a proof of concept which exploits the use of new API
  • Open sourced for others to use and improve

Technology stack:


  • MongoDB
  • NodeJS, rest api, mongoose
  • AngularJS (bootstrap, routes)


GiHub link

Share This:


Async javascript lib for node and browsers has a better version


Great replacement for current users of async.js which hasn’t been updated for a while.

In a large pharma oriented app, i’ve noticed speedup where async.parallel happens.



Share This: