(Learn More)

~ Engineering ~

Code does not get rusty

Code does not get rusty

When does one need to rebuild a system from scratch? The answer, perhaps is, almost never.

Cookie Mapping in Advertising

Cookie Mapping in Advertising

In this article, we will cover the process of cookie mapping (or cookie syncing) and how advertising companies use it to exchange information with websites and advertising platforms to serve relevant advertising to a user.

Building a url shortener in 10 mins

Building a url shortener in 10 mins

A 10 minute guide to building your own url shortener i.e. a service that lets you shorten a long url to a shorter url that takes up less number of characters.

Apache Pig Tutorial

Apache Pig Tutorial

An unofficial Apache Pig tutorial for the beginning and intermediate user which covers the basics of Pig and moves on to the more advanced concepts.

Going Text-mode

I spend a great deal of time working on the Terminal. Here, I list my must-have console applications for email, www browsing, and programming in Linux, Windows and Mac OSX.

Setting up Replica sets in MongoDB

Setting up Replica sets in MongoDB

A 5-minute guide to setting up replica sets on MongoDB. Covers downloading, installation on various flavours of linux, editing the config file and initiating replica sets!

Super quick Find & Replace

This article explores a number of ways of performing a find/replace and compares the various implementations for different sizes of the find/replace list and input text.

Set data structures & Implementation

Sets are an important concept and extremely useful in various computer science applications. We take a look at some of the ways a set data structure can be implemented.

Manage your wireless with nmcli

This article shows you how to use the command line tool nmcli to manage your wireless networks. If you prefer cli over gui, go ahead and take a look.

Binary heaps & Priority Queues

Heaps and Queues can be a powerful data structure. This article goes into the implementation of a binary heap and extends the data structure to act as a priority queue.

Facebook puzzle - Find Sophie

Today we solve the FB engineering puzzle - Find Sophie. We start with a naive solution and improve the algorithm until we can pass the Facebook Puzzlebot. In closing, I leave you with open-ended questions on improving the algorithm further.

Palindromic sub-sequences in python

This bit of python code returns all palindromic subsequences in the input string. Nothing to see here, I was just having a meh moment.

Script to generate URS from Wikipedia

A person’s URS is a phrase that could be used instead of his/her usual name in all circumstances, which makes it absolutely clear who he/she is. ex. Bhagat Singh was executed by the British in 1931.

NLP classes for PHP

This is an ongoing project to develop a set of classes for Natural Language Processing. Some code would be ported from the NLTK project.

Hacking wp-syntax plugin to show header

Learn to modify the wp-syntax plugin to display a header. This is very useful if you want to include, say, the file name of the code snippet you are syntax highlighting.

Exporting Opera email to mbox format

The following snippet combines the various opera mbs into one mbox format which can be used by other email clients like Evolution to import mail.

Indic to English Transliterator

Transliteration is the process of converting a word from one language to another while retaining its phonetic characteristics. This application lets you convert a word from any major Indian language (currently supports Hindi, Marathi, Sanskrit and Bengali) to English.

Deebot - an IRC chat bot

Deeb0t is an IRC chat bot capable of making meaningful conversation with other users. It also responds to commands issued by its owner.

Todo Plugin for Wordpress

I wanted a wordpress plugin to manage a list of ToDos and display them on my blog. Having found none quite suitable, I decided to write it myself.

GPRS over linux

This article tells you how I configured my ubuntu linux based laptop to connect to the internet over GPRS. I own a Nokia E51 and I used a USB cable to connect it to my laptop.

Euclidean Distance Calculator

The following snippet returns the euclidean distance between two places on the globe using the Yahoo Maps API.

Using Devanagari in Latex

This article shows you how you can use the Devanagari script (Hindi, Marathi, Sanskrit) in Latex.

Weekday Stats for Wordpress

This plugin is capable of displaying two graphs - Posts per Day and Comments per Day for the days of the week.

Twitter Timeline Javascript

This snippet draws a bar graph that tells you your twitter posting frequency per hour in the last 24 hours.

Limerick Generator - Part I

The following code demonstrates an alien limerick generator. The code illustrates a very simple random word generator that generates rhyming words.

Running bbpress on sourceforge

Sourceforge does not allow php mailers. Software like bbpress which use the mailer to send newly registered users their password fails. This article will describe how I went about solving this problem.

RediffBlog Crawler

BlogCrawler enables you to save your entire rediffblogs blog to disk along with all the comments!

FindWindow Illustration

The following code illustrates the use of FindWindow API. This program blanks out the ad in Yahoo Messenger buddy window

Implementing Emoticons in C#

This piece of code shows you one way of replacing emoticons with their images. It uses a Hashtable (hashmap) to do a find replace.

Lesson 3 - Resources - Icons, Dialogs and Menus

In this lesson we’ll take a look at Windows Resources. You’ll learn to add an icon to your application, add a menu, and version information. You’ll also learn to include a very important kind of resource - the Dialog resource.


This is an ongoing series on win32 programming on the Windows PC. In this article, I introduce the subject and discuss ways of getting in touch.

Lesson 2 - Creating a basic window

In this lesson you will be introduced to the event-driven programming model. You will learn how Windows uses messages to communicate with applications, how event based programming works, what callback functions are, and while doing this create a basic windows application.

Anonymous ftp scanner

This code illustrates how you can use unix socket programming to scan for open ftp ports accepting anonymous logins in a given IP range.

This page and its contents are copyright © 1998 - 2019, Pravin Paratey.