Adding Labels with Adwords APIJan 25

The Adwords API is a beast, although it is well documented it can take a while to wrap your head around it. Release v201406 of the API added support to manage Labels, this was further improved in v201409. Labels are a great tool to add metad ...

More...

Let's go with GoJan 15

Come to think of it, every programming language is a way to communicate with the computer. One could ask, computers are the same, why do we need so many languages? Given a certain task it can be written as an instruction to the computer using any programming language so why are new programming lan ...

More...

Dockerize EverythingDec 23

One of the most frustrating things to do is to setup software for new projects. Even within the simple Rails ecosystem, one may need to install PostgreSQL, MySQL, MondoDB, Redis, Memcache, ElasticSearch etc. to get a project running. For complicated projects, Vagrant provides some help such that a ...

More...

Building a simple scraper with GoDec 12

I have been trying to learn Go / Golang lately and find it really exciting. The things that I find really good about Go are -

  • Easy learning curve (with good documentation)
  • Rich standard library
  • Concurrency is not an after-thoug ...

    More...

Build great JRuby apps with DockerSep 14

Docker is an exciting piece of technology. You can build a ready to use Linux containers by just just writing all your dependencies / packages declared in an easy to read text file.

Since a lot of sites have Docker introduction covered we will start right off ...

More...

Testing thread safety with concurrent-rubyAug 16

concurrent-ruby is one of my favorite Ruby gems. It provides numerous utilities that makes writing safe, concurrent and well-performing code easier. Lately, we faced an issue while we were developing a feature using More...


GruntJS, CoffeeScript and BrowserifyJul 13

I usually write my JavaScript with CoffeeScript, it makes it look a lot cleaner and CoffeeScript also adds some nice syntactic sugar. Another common issue I face is organizing JS code about which I have written a few blogs already. Lately, I also read about Browser ...

More...

Experiments with elasticsearchJun 24

During the last few weeks I got the opportunity to work with elasticsearch and I am pretty impressed with the feature set and performance it provides. Elasticsearch's ability to work with structured or unstructured queries, easy cluster setup and speed make it an interesting candidate for a NoSQL ...

More...

Concurrent Ruby on MRI / JRubyMay 27

Truth be told I am a big fan of Ruby, it is a clean, easy to pick and productive language. Rails is also by far the most feature rich web application framework available. However, Ruby misses a few (modern) language features, most of them involving "Concurrency". JRuby solves some of those problem ...

More...

Celluloid experiment with MRI / JRubyFeb 22

While running a CPU intensive process I wanted to check Sidekiq's performance on MRI vs JRuby. Since Sidekiq internally uses Celluloid, I investigated CPU core usage on Ruby(MRI) and JRuby for a simple prime number generator which uses Celluloid. Code for this looks like -

More...