Top 20 Stack Overflow Tags

python stackoverflow

Finding Top 20 Tags on StackOverflow main site

Read more →

Extract Text From PDF

PDF text tesseract

How to extract text from PDFs containing images?

Read more →

Go Garbage Collector

Go GoLang GC

After trying Go for the first time recently, I am amazed with how fast the programs compile. The compiled code ends up being in machine code, and no intermediate virtual machine is required. However, there is one piece that is present in each executable i.e. the garbage collector - GC. But, how does GC work in Go? How tunable is it? For now this is what I have found: On the topic of performance, keep in mind that Go gives the programmer considerable control over memory layout and allocation, much more than is typical in garbage-collected languages.

Read more →

ScalaQuine

Scala Quine

A Scala quine ( program that prints itself )

Read more →

Protect Net Neutrality in India

thoughts FOSS

Internet is a global network, with total freedom. Well, that is soon going to change, unless you act now. While you are reading this, someone is trying to control what you see, read, download, listen or write on the internet by taking control over the sites you can access! Don’t wait for that moment to happen. Act now, and protect Net Neutrality by signing in for the petition. What is the matter with Net Neutrality anyways?

Read more →

Google App Engine with ManagedVMs and Boot2Docker on a Linux machine

GAE Docker

I have be trying to configure Google App Engine with ManagedVMs on Linux for a few days. We will perform these steps on Ubuntu ( can also be done on Fedora ): Install Google App Engine SDK Install Latest Docker Install VirtualBox Install Boot2Docker CLI Install Google App Engine SDK Download Google App Engine SDK ( you may want to keep the defaults as is ) $ curl https://sdk.cloud.google.com | bash Now in a new terminal $ gcloud auth login $ gcloud components update gae-python $ gcloud components update app Install latest Docker on local machine Install the latest Docker $ curl -sSL https://get.docker.com/ubuntu/ | sudo sh Install VirtualBox Install VirtualBox $ sudo apt-get install virtualbox Install Boot2Docker CLI Download a prebuild binary of Boot2Docker CLI ( version 1.3.2 ) $ wget -c https://github.com/boot2docker/boot2docker-cli/releases/download/v1.3.2/boot2docker-v1.3.2-linux-amd64 $ chmod +x boot2docker-v1.3.2-linux-amd64 Setup the Boot2Docker Image $ ./boot2docker-v1.3.2-linux-amd64 init Latest release for boot2docker/boot2docker is v1.4.0 Downloading boot2docker ISO image...

Read more →

Check memory limit on a server

Linux Memory

This is a simple C program to check memory limit on a server. #include <stdio.h> #include <stdlib.h> int main(int argc, char* argv[]) { const int KB = 1024; /* bytes */ const int MB = 1024 * KB; /* bytes */ const int GB = 1024 * MB; /* bytes */ long size = 0; void *p = NULL; int ctr; int j; int times = 100000; long sum = 0; for(ctr = 0; ctr < times; ctr ++ ) { size = 10 * MB; printf("Allocating %zu bytes memory \n", size); p = calloc(1, size); if(p != NULL) { printf("SUCCESS.\n"); sum += size; for(j=0; j<size; j++) { ((char*)p)[j] = 1; } if(sum < GB) { printf("Total allocated so far: %ld MB\n", sum/MB); } else { printf("Total allocated so far: %ld GB\n", sum/GB); } if(sum > (1*GB) ) break; } else { printf("FAIL.\n"); break; } } } Here is how you run it.

Read more →

MACLUG Inauguration at New Delhi

FOSS MACLUG JMILUG

Today I attend the inauguration ceremony of MACLUG - Maharaja Agrasen College, GNU/Linux Users Group. I was honoured to have been invited among many esteemed guests to light the lamp of this wonderful new beginning. This reminded me how nine years ago I along with a bunch of enthusiasts started JMILUG. I shared my thoughts on «Freedom - Community - Science - Innovation» Four Freedoms Let me begin with the Four Freedoms.

Read more →

Single window mode in Pidgin messenger using window_merge plugin

Linux Pidgin

I wanted to view all the different chat windows and the buddy list side by side in a single window. There is no such feature in stock Pidgin installation. Fortunately I found a plugin for same from this ticket. This plugin is available on Github project dm0-/window-merge ( thanks to David Michael / dm0- for creating it ! ). You can find the build / install instructions on the wiki, however here is how you can do it on Ubuntu 14.04 and other OSes.

Read more →

Generation and Visualization of Phylogenetic Trees

Linux BioInformatics

In the year 2006, I had created a project as a part of my academics. I finally managed to find the source code and complete project report which I have uploaded to Github. Mainily, I have updated the source code to use cmake build tool. The project documentation is in Asciidoc. Although it is quite an old piece of code, it works: plyloviz – Phylogenetic Trees Visualization phyloviz: phyloviz is Phylogenetic Trees Visualization tool.

Read more →