Sampling Redis keys for memory consumption

We run a farm of Redis instances for storing real time analytics. Because Redis stores objects in memory, it happens to be an extremely fast way to retrieve data; thus, most of our charts and graphs pull data from various Redis...

Mobile for the masses: Words and gestures with Overheard Word

The fourth article in IBM developerWorks ’ series Mobile for the Masses has been published! This copasetic article shows you how to take the Overheard Word demo app up a level with a JSON-based word engine and some prebaked,...

Android tip: ListView becomes black when scrolling

One of my Android apps recently suffered from a nefariously ugly UI glitch that, embarrassingly, a user reported to me. Strangely, this phenomenon did not surface itself in local testing on either emulators or devices when I first...

MongoDB primary keys are your friend

All documents in a MongoDB collection have a primary key dubbed _id . This field is automatically assigned to a document upon insert, so there’s rarely a need to provide it. What’s interesting about the _id field is that it is time...

Lickety-split custom validations in Rails

Have a highly specific, yet custom validation for a particular field on one of your Rails model objects? Don’t want to create a ActiveModel::Validator type? Not a problem!

Backgrounding tasks in Heroku with Delayed Job

Long running web requests are bad.

MongoDB to CSV

Every once in a while, I need to give a non-technical user (like a business analyst) data residing in MongoDB ; consequently, I export the target data as a CSV file (which they can presumably slice and dice once they import it into...

Callbacks in Appcelerator Titanium modules

I recently found myself implementing both an Android and iOS Appcelerator module for App47 ’s respective Agent libraries .

Mobile for the Masses: Activities and icons in your Android application lifecycle

My third article in IBM developerWorks ’ series Mobile for the Masses is now out!

ElasticSearch on EC2 in less than 60 seconds

Curious to see what all the ElasticSearch hubbub is about? Wanna see it in action without a lot of elbow grease? Then look no further, friend – in less than 60 seconds, I’ll show you how to install ElasticSearch on an AWS AMI .

Mobile-isticly optimized in 10 seconds

Anyone ever told you that your website isn’t mobile optimized? Or have you ever seen a lilliputian-looking website on your device? You know, one that renders so small you are forced to squint as you enlarge various parts of the site...

The democratization of search

Over the past year and a half, I’ve watched ElasticSearch grow from a seemingly part-time code experiment into a thriving ecosystem.

Hold your horses! It's still only a two horse race.

There has been a lot of excitement in recent months regarding a few new entrants to the mobile operating systems arena including Firefox OS , Tizen , and Ubuntu Touch .

The Rails, CloudFront, and Heroku performance hat-trick

Amazon CloudFront is a pay-as-you-go global content delivery network (or CDN) that provides high availability and high performance serving of static assets. Basically, it means users have to wait less time to view your web app...

Mobile for the masses: gestures and test deployments

My second article in IBM developerWorks ’ series Mobile for the Masses is out! This article covers how to go about designing a mobile interface from the standpoint of usability via gestures. In essence, eschew buttons and prefer the...

cURLing for Wget

Wget is an extremely handy utility I use all the time when I find myself on a Linux box. It’s quite helpful, for example, for downloading files. Need to install Ruby ? No problem, just download the binary like so:

Chrome's console commands

As if the JavaScript console in Chrome couldn’t be any more awesome. Check it out: Command Line API Reference . Yep, it’s legit. I’ve been using Firebug and the like for years and only just ran across this feature of Chrome’s...

Hybrid inappropriateness

The mobile development landscape is bursting at the seams with frameworks and tools that enable you to target two primary mobile platforms : iOS and Android .

Painless Android swipe detection

Why bother building navigation buttons in an Android app when you can easily capture finger swipes? But, if you’ve ever implemented gesture section in Android there’s the drudgery of implementing listeners and you also need to do some...

Crowd think often lacks clarity

In case you missed it, InfoQ has an interesting analysis regarding hybrid mobile app development frameworks . They are profiling 12 tools and soliciting community feedback so as to make a ThoughtWorks-like technology radar . If you...

Load More