Author Archives: prashanthellina

Software Engineer working for a cool startup in Bangalore. Python, ubuntu, apple, design, elegance aficionado.

All your aliases are belong to you 1

I like setting up shortcuts to frequently used commands whether I used Windows or Linux. I use the terminal often and create shortcuts to frequently used commands using “alias” feature of BASH. This has saved me considerable time in the past. However, I recently felt that if I could have a helper tool to monitor [...]

Query Wikipedia from your terminal Comments Off

I refer Wikipedia frequently. I use this BASH function to help me do that from the terminal. For explanation of how this works head over here. BASH function # wiki # eg: wiki India # wiki Apple_Inc # wiki Anglo_Saxon wiki() { dig +short txt $1.wp.dg.cx } Example usage prashanth@prashanth-desktop:~$ wiki India “India, officially the [...]

Command-line language translation 4

Here is a simple utility created using Python for translating text from various languages into English. It uses the Google AJAX API to do this. Usage prashanth@prashanth-desktop:~$ translate bonjour hello prashanth@prashanth-desktop:~$ translate guten morgen Good morning

On setting up USB RAID Comments Off

I bought two Dane-Elec 8GB USB drives recently. Flash memory (as opposed to Hard disk storage) has faster “seek” capability. This is inherent in the design as flash memory is solid state whereas hard disks are electro-mechanical with a “head” that needs to be moved around using a “drive” mechanism. Since seek times are better [...]

Extracting relevant text from HTML pages Comments Off

Some time back I had done some work on extracting topics from an arbitrary piece of text using Wikipedia data. Recently I thought of a concept to put that algorithm to work. As a part of this project, I need to extract relevant text from an arbitrary HTML page. By relevant I mean the “meat” [...]

Clustering Data using Python 5

As a part of a project I am working on, I had to cluster urls on a page. After some light googling I found, python-cluster. You can find below a simple python script to illustrate the usage of python-cluster library.

XMonad: A Window Manager for “real” people :) 1

I have been a happy Gnome user for many years now and only recently started thinking about switching to KDE 4.2 when Ubuntu 9.04 (Jaunty Jackalope) comes out. However, it so happened that I bought two new widescreen monitors and setup a dual-monitor environment. This is when I started realizing the Gnome was clumsy at [...]

Microsoft Surface: Some Videos Comments Off

I had written earlier about my experience with Microsoft Surface. I’ve captured some videos of me using it. Here they are …

My Dual Monitor Setup 6

Greetings webizen, I tried hard to get back to my blogging schedule but my laziness got the better of me. I am back truly with a new batch of posts which I will publish over the next few days. Recently, I went to Veveo’s main office near Boston, USA and had the privilege of experiencing [...]

Microsoft Surface Unboxing Comments Off

Today, we received the shipment from Microsoft at Veveo. If you have not heard of Microsoft Surface before, It is a touch screen based computer embedded in a table. The surface of table is illuminated from underneath by a projector (rear-projection) and touch input is implemented by reflecting IR radiation off the fingers and then [...]

Determining the difficulty of Arithmetic Operations 5

I am trying to write a program to test my arithmetic skills. The program should pose arithmetic problems involving the four basic operations – addition, subtraction, multiplication and division. When the testing session starts, the program should issue problems of less difficulty and the difficulty should be ramped up gradually. A score should be computed [...]

Even a python can be abused 3

The first programming language I coded in is QuickBasic. I loved the simplicity and especially the IDE. It made things simple for a starter. Later I discovered Visual Basic which extended the same simplicity and added the “Visual” element with a splendid editor for GUI. In between I did some projects using Java, C#, C, [...]

Look who’s downloaded Firefox 3! 2

Firefox 3 has been getting rave reviews ever since it got in to beta. The blogosphere was abuzz with reports on how much more efficient and snappier FF3 is compared to its earlier incarnations and more so with respect to the competition (Opera, IE7, Safari). Features like “Places” (Bookmarks on steroids), Cairo for rendering and [...]

Nose – TDD – Python 2

What, why I’ve been reading up on TDD and it has struck me as particularly useful methodology to achieve “clean code that works”. TDD encourages writing unit tests to cover all the code (because by definition, you write a test before a line of code is written). Because all your code is covered you are [...]

Project Gutenberg Ngram data: English only Comments Off

In my earlier post, I’d posted links to the Project Gutenberg Ngram data I had computed for e-books of all languages. If you are interested in only the English data, get these files instead. These two files are splits of a compressed file which contains all of the Project Gutenberg English e-books downloaded about a [...]

N-gram data from Project Gutenberg 5

I’ve been working on Wordza.com for which I needed Ngram data from a sufficiently large corpus. Initially, I thought of using Wikipedia data which I already have on my disk, but decided on using Project Gutenberg data as it is more representative of the general usage of English language.

Wordza – A Smart Word Quizzer 7

I’d thought of making a word quizzer as a web application to improve my vocabulary when I took the GRE test a couple of years back. I’d written one in Visual Basic 6 when I wrote SAT , but desktop applications are boring! I got inspired to bring my long standing idea to fruition and [...]

Alexa rank: A script to get the rank for any site 9

What is Alexa rank? Alexa collects statistics about visits by internet users to websites through the Alexa Toolbar. Based on the collected data, Alexa computes site ranking. By examining the Alexa rank of a site, you can get a rough idea of how popular the site is. Many argue that Alexa rank is misleading but [...]

Selecting a random row from a table in mysql 9

I have come across more than one instance when I had to select a random record from a table in a MySQL database. Here is how to do it.

How to generate domain names, place names … product names ? 2

One of the trickiest and enjoyable parts of starting something new (be it a website, project, band) is naming it! Sometimes a good name can be quite elusive and cause more than the deserved share of brain ache. Here is a list of automated services around the internet that will help you get name suggestions. [...]

Visualizing mpeg4 motion compensation vectors using mplayer 2

The MPEG4 video encoding process makes use of block motion compensation to achieve compression. The motion compensation process serves to produce the intra frames which are the frames between keyframes. I’ve always been fascinated by this process and was delighted to find out that my favorite video player, mplayer, allows one to visualize this process. [...]

Creating video thumbnails using ffmpeg 24

Generating thumbnails/screenshots of a video is useful in many ways. Youtube and many other video sites use this to show a preview of the video as a small thumbnail. Google video captures a series of thumbnails from a video at various time intervals to show a better video preview.

Songza – music search engine and jukebox 10

Every once in a while, someone comes up with a way of doing things in an extremely obvious and simple way. When this happens, a zillion others say, “of course that’s the way to do it!”. Songza is a music search engine and jukebox that is dead simple to use. You should try it to [...]

Rendezvous with Rama – Goodbye Mr. Clarke 2

I am a huge fan of the science fiction genre. Arthur C Clarke is one of my favorite science fiction writers after Isaac Asimov. It saddens me to have learnt that he has passed away. Most people get reminded of “2001: A Space Odyssey” when they hear the name Arthur C Clarke. I get reminded [...]

Watching Television on Linux: setting up a TV Tuner card 31

A couple of weeks back, I went shopping looking for a TV tuner card that is compatible with Linux. Googling had told me that “Hauppauge” card was known to be compatible. However, I could not find it anywhere in the market (SP Road, Bangalore, India). On going to one of the shops, I found a [...]

All NCERT text books! 63

I recently came to know that NCERT was providing all the text books (class 1 – 12) for download. However, I found their interface hard to use for browsing through. So I wrote a crawler in python to get all the books to my webserver. Along with storing the books, I generated thumbnails for every [...]

FOSSConf08 – A disappointment 2

I gave a talk at FOSSConf08 yesterday and came away feeling very disappointed and let down! It was a poorly organized event where total chaos prevailed. My friend Venkat and I found ourselves unable to show our presentation slides because of an overheating projector whose brightness could not out-match the sunlight coming in from the [...]

Create PDF thumbnails using ImageMagick on Linux 7

I have a bunch of PDF files for which I wanted to generate thumbnails. On looking around a bit, I found “ImageMagick“. Since I have Ubuntu installed, I did sudo apt-get install imagemagick It is not too big a download at around 740KB. To create a thumbnails for all pages in the PDF document (say [...]

Apple’s MacBook Air compared to a Sony Vaio TZ 12

A couple of months back, a colleague and me were looking around for the thinnest ultra-portable laptop around and landed on a Sony Vaio. We however felt unconvinced after checking out the specifications. We thought “There is only so much you can fit into that space”. Apple astonished us today with the introduction of “Macbook [...]

KDE4 on Kubuntu – Impressions and Screenshots 8

I love Gnome and its simplicity and use it regularly. I loathe KDE and its complexity. Although I used KDE about 5 years back, ever since Ubuntu was released, I’ve been using Gnome. However, when KDE4 was announced, I decided to check it out with an open-mind and re-evaluate.

Marvin – The manically depressed robot! 6

The first time I read Hitch-hiker’s guide to the Galaxy, I got bored mid-way and stopped reading. I thought it was one totally pointless non-sensical rambling story. The movie version of it was played recently on TV and I watched from somewhere in the middle. The first character I saw was Marvin!. I got hooked. [...]

Interfacing Python with C using ctypes 10

Python is a wonderful “very high level” language with an elegant design. It is an ultimate tool to rapidly develop applications. However, when it comes to performance (speed and memory), Python sucks. It is not meant for performance. So what do you do after building a quick prototype in python if you want it to [...]

Inconvenient Truth – Al Gore on Global Warming 8

I just finished watching “Inconvenient Truth” – A documentary film by Al Gore detailing the rationale behind the truth of Global warming. I found the film captivating and moving. I personally believe that human activities contribute to Global warming and that we all should consciously do our part to counter this threat. According to Wikipedia, [...]

Topic extraction using Wikipedia data 12

In an earlier article, I mentioned that I was trying to use Wikipedia data to do news article clustering to make it easy for me follow news feeds. I have made some progress. I’ve written an algorithm to produce a list of Wikipedia articles relevant to the input text. Input text has to be in [...]

Google’s Knol – A new Wikipedia? 4

KNOL Google has announced “Knol”. In their words a new, free tool that we are calling “knol”, which stands for a unit of knowledge. Our goal is to encourage people who know a particular subject to write an authoritative article about it.

Accessing your home computer from the internet 25

I recently bought a computer to use at home for development. Sometimes I have to access stuff (code, pictures, bittorrent) on my machine when I am away from home. I keep my machine running all the time and recently upgraded my internet connection from 128 kbps to 512 kbps. If you are in Bangalore, India, [...]

Firefox tattoo from FOSS.IN 2007 6

My colleague got me a tattoo from FOSS.IN which I promptly wore. Go Firefox, go!

Language People – Interesting picture 3

I like the representation for Logo, Machine Language, Prolog and Ada. Wonder what “N.W” is… (the Modula-2 guy is holding it). I wish python was featured too but the picture says “’85″. Python did not even exist then! original from here

Building a low-cost bad-ass “server” machine 7

I have been playing around with Wikipedia data and tried doing some byte pushing on my Dreamhost web space. Since this is shared web space, the processing power and memory available are limited. I was able to create database tables in mysql by parsing the wiki xml dump and some extra processing as well to [...]

Generating call graphs for understanding and refactoring python code 13

I have always been a fan of visualizations as I believe firmly that it is easier to crunch visual information than anything else. Visualizations are especially helpful for finding out patterns in data that are not expected and for patterns that are difficult to express textually in a concise manner. The beast A couple of [...]

Wikipedia Category Graph Generator 4

I was in the process of trying to understand the classification schemes available in Wikipedia (categories, lists and navigation maps) when I came across this nifty tool. It is very useful to understand the inter-relationships between Wikipedia categories. You can check it out here: http://tools.wikimedia.de/~dapete/catgraph/

m.vtap.com – vTap for any device with a browser 1

Veveo released a mobile web browser friendly version of the vTap service a couple of days back. The cool thing about this is that it will work on any device with support for a basic browser and realplayer (count most mobile phones in). Since it is meant to enable vTap at the lowest common denominator [...]

Making Ubuntu 7.10 (Gutsy) look slicker 23

It has been three weeks since I upgraded to Gutsy from the development repositories. Gutsy got released just a little more than a day back. While going through the news from the blogosphere about this event, I wished Ubuntu had released a “non-brown” desktop. I don’t like brown and have seen quite a few others [...]

Ways to process and use Wikipedia dumps 22

  Wikipedia is a superb resource for reference (taken with a pinch of salt of course). I spend hours at a time spidering through its pages and always come away amazed at how much information it hosts. In my opinion this ranks amongst the defining milestones of mankind’s advancement. Apart from being available through http://www.wikipedia.org, [...]

DreamHost: My wonderful web host 7

I was hosted with “routhost” until April this year when I decided I needed more features like SSH access, build environment so I would be able to download and compile applications and most of all more disk space. After much hunting around I discovered DreamHost. The feature list is astounding. Here are a few to [...]

Ubuntu Gutsy Gibbon and Linux on the Desktop 35

I’ve been using Ubuntu Feisty and waiting to get Gutsy when the release comes out. However my curiosity got the better of me and I could not resist upgrading from the beta repositories. The first thing I noticed after upgrade was the amount of polish and attention to detail. Everything looks slick (thanks to Compiz). [...]

Embed vTap in your page 10

The vTap widget is finally out!

vTap Windows Mobile source code Comments Off

Veveo has released the source code for the windows mobile client application. This is great because it gives you a way to fine tune our app to suit your needs. You can sign up for the developer program here to receive updates from Veveo. Get the source here.

“vTap is dope!” – Phenomenal Feedback 7

Post-launch is a very exciting time. Listening to users and incorporating feedback into the product has been our primary activity for two weeks now. Feedback has been overwhelmingly positive and it quite clear that we have a winning technology on our hands. Bug reports have been pouring in as expected and what has surprised me [...]

vTap launched! 3

After months of tinkering away, we have finally launched VTap – A ground breaking mobile search engine for videos. It’s been a very exciting time for all us from Veveo, especially the past few days. The joy of launching the product and watching people play around is simply inexpressible!