Failures are inevitable in any system. How it should be handled varies from one system to another. In job processing systems, a common approach is to retry the failed jobs for a fixed number of times before they are considered as permanent failures. A backoff function is used to determine the wait time between successive retries.by ananthakumaran - 01 Apr 2017
The Y combinator is an interesting construct, allowing recursion without referring the function being recursed. In other words, call a function recursively, without naming it. We will go through one approach of deriving it.by ciju - 16 Jul 2015
by ciju - 09 Aug 2013
When we started Activesphere we were very sure that we wanted to have a an open salary system, ie. everybody knows everybody’s salaries. We have stuck to it, and it seems to have worked well for us for the last 3 years. But come April of every year, we need to give hikes to people and it becomes really hard to figure out how to give hikes and who should get more and who should get less.by Sreekanth - 25 Apr 2013
To access a server on the internet, you need its IP address and port. Your local machine might be running behind a NAT. So, a server running on your local machine, might not be addressable from internet (ex: no publically visible IP). This is where localtunnel comes in. It makes the local server accessible over an IP (and port), on the internet.by ciju - 26 Mar 2013
Let’s take a pop Quiz.
An alter table on a MySQL database, takes 10 seconds to execute on a table of 30,000 rows.
How much time will it take on a table that has 80 million rows?by Sreekanth - 07 Feb 2012
I spoke at the JsFoo a month ago, It was a brief introduction to Node and things we dealt with when building Activenode(from the NodeKnockout).by Sreekanth - 13 Nov 2011
While searching for a node client for CouchDb, we came across quite a few node.js packages. 6 to be precise, to figure out the best fit for our project, we had to do a fair bit of Googleing and look at Github to see which ones are active and better fit for the project.
A lot of projects are defunct, have very little documentation or just experimental. It would be good to go to one place to find the right module and a general feeling of how good the module is.Turns out there is one, the Node Modules Wiki page. It shows simple wiki page that lists modules by categories.
Coming from the Ruby world which has a similar vibrant community and tons of gems, we felt there needed to be a version of the awesome Ruby Toolbox
So over a weekend we build a simple version of it and called it Node toolboxby Nilakanta - 25 Oct 2011
Last weekend we participated in the community driven 48 hour programming contest called Node Knockout. The idea is to go from an idea to production in exactly 48 hours using the wonderful Node.js. Noders from all over the world compete for the prizes that are awarded based on Innovation, Design, Utility and Completenessby Sreekanth - 31 Aug 2011
We were looking for some book recommendations for some of the new people we hired recently. And here is an opinionated list of books and some of my thoughts around it.by Sreekanth - 22 Aug 2011
We love Couchdb, it is a workhorse, and we use it on a lot of projects. Obviously it does not fit everywhere. There are some places where it just does not cut it. I am trying to document a few issues we’ve been having with couchdb.by Sreekanth - 27 Jun 2011
For a long time we have been building software in a very standard fashion, put a web server in the front, a big application server and a standard backing database. This is the standard layered architecture. Most application stacks Rails or .Net for example assume a single database server, a few application servers, some web servers and a load balancer.by Sreekanth - 30 Mar 2011
We mostly work with startups, and most prefer using dynamic languages like Ruby and Python. Occasionally though, we have worked on .NET/Java projects because they were really interesting. One such project was to build an Outlook add-in to synchronize mails, contacts and calendar to a CRM system. There was already an existing add-in we were replacing, because it had lots of bugs, and its performance was bad. We analyzed the problems with the existing design and moved towards a more RESTful design. Using a RESTful design helped us in several ways:by Suresh Harikrishnan - 11 Mar 2011
Recently a friend asked me how to fetch multiple documents from couch using a single request. Couch 0.90 and above provided the ability to post to couch the array of keys to return the matching documents. But he was having trouble getting curl to work correctly. I had to dig through the code to give him the actual curl request.by Sreekanth - 28 Feb 2011
We have been using with CouchDB at Activesphere, for some of our customer projects.
We looked at a few options before we eventually plunged into Couchdb ‘Relax’. I’m trying to list out in hindsight why CouchDb has worked out a good choice for us.by Sreekanth - 19 Feb 2011
It took us a long time to post this first blog, but we are officially here now.by Sreekanth - 10 Feb 2011