Software I currently use

Every few years, I review the software I use. Here are some of my earlier lists.

Right now, among browsers, Chrome is my primary browser. What’s interesting is that IE 11 has overtaken Firefox in terms of usage. That’s partly because we’re working with Microsoft a lot, but also because Firefox has a number of weird bugs like IE6 used to have, and is slowly lagging in the race.

Next to browsers, I spend most of my time on the command prompt. I use Console2 for tabbed console windows. Given the number of command prompts I open, this is often necessary. I use bash in Cygwin as the default shell. Haven’t had the need for PowerShell.

The only text editor I use is Sublime Text 3. This is the only text editor I’ve used for the last 3 years. The only plugin I use is PlainTasks which I use as my todo list. I write my blog posts in Windows Live Writer, which makes blogging offline quite painless.

For image editing, I use PicPick to capture screens and basic editing. Since I haven’t upgraded to Windows 8, I don’t have the snipping tool. But PicPick also lets me pick colors from the screen, which is pretty useful when copying designs. For slightly more serious editing like changing colours, adding annotations, etc., I use Paint.NET. It’s close enough to Photoshop for most practical uses. On rare occasions, I’ve needed to power of GIMP – especially to remove background on images. But when even this fails me, it’s ImageMagick to the rescue, with inscrutable command line options that can morph Obama into Osama. If I want to edit icon files (to create favicons, for example), I use IcoFX. For vector graphics, I use InkScape, which has a steep learning curve but doesn’t seem to have a good free alternative. To edit shapefiles, I use QGIS, and Shape Viewer to view them.

For music and movies, I’ve kept it simple: I use VLC. It lets me stream on to my iPad. I can also watch/stream movies as they are being downloaded via μTorrent – which is probably the coolest feature feature of any torrent client. I store all my music in one large folder, and keep .m3u playlists. These are rsynced periodically into my Android phone.

For audio editing, Audacity remains my best bet. However, for video editing, my needs have changed. It’s usually screen-recordings I need to create, so I don’t use VirtualDub much. I’ve moved from CamStudio to Microsoft Expression Encoder Screen Capture (long name for a rather nice piece of software that works reasonably well.)

To read books, I’ve started using Calibre, simply because it can read both ePub and .mobi formats. Since then, I’ve been using Kindle less. I continue to use my old copy of Microsoft Reader, even though the product is dead, because I have a lot of .lit files. (That’s one of the advantages of software over online services. Even if they pull the plug, you can use an old copy of the software. And it works!) To read PDF files, I use Foxit PDF Reader. On the extremely rare occasion that I need to print PDF files from a software that does not support PDF printing, I use CutePDF Writer.

For file sharing, I use Dropbox for files. It’s simple, popular and just works. I tried BitTorrent Sync as a peer-to-peer alternative to Dropbox, but the interface has a long way to go before it’s usable. I do hope something emerges. For screen sharing, I use TeamViewer (which is fast) or join.me (which doesn’t require a client). Though I use Skype for calls, I don’t find its screen-sharing fast enough.

I play around with data a lot. This is mostly done in Python, for which I use Continuum’s Anaconda builds – they have most of the useful packages built-in. When I need to scrape Javascript-based websites, I try CasperJS on top of PhantomJS. This is particularly handy for the several ASPX based Government websites. I also have node.js installed, but don’t really use it much.

I use RStudio as my R IDE. I’m experimenting with Tabula to see if it’s practical to extract PDF tables with it, but my current preference is to use xpdf to convert PDF to text and then process it. For data cleansing, there’s only one tool that I know that’s effective: Open Refine. For network visualisations, I use Gephi, though NodeXL can do a small but useful subset of that within Excel.

For compression, I use 7-zip. The 7z format provides the best compression across most file types that I’ve seen, but even if you want to use ZIP files, 7-zip creates smaller ZIP files. For image compression, I use kraken.io, which offers the best compression I’ve seen. On the desktop, TruePNG and jpegoptim do the trick.

There are several small utilities I use. WinDirStat tells me how my hard disk space is used up, helping clean drives and Dropbox folders. ClipX lets you copy and keep multiple items in the clipboard. Restoration can undelete even permanently deleted files. Truecrypt keeps files encrypted. Putty lets you connect via SSH if you don’t have cygwin. But the mother of all tools is AutoHotkey, which I use for everything ranging from typing my signature to resizing windows to storing our conference bridge numbers.

I’ve a number of web servers on my system. I use XAMPP for Apache, MySQL and PHP, but also have nginx handy. But the simplest, easiest and smallest web server is perhaps Mongoose. Just run it in any folder to start a web server. python -mSimpleHTTPServer does the same for developers. I also have Fiddler installed as a proxy – partly to monitor what URLs my applications access, and partly to simulate slow speed connections for the web apps I build. Apart from MySQL in XAMPP, I have a few databases installed: SQL Server, SQLite and SQLite Studio to read the sqlite3 files.

      Of course, some of my apps apps have moved online, and my earlier post on the A-Z of my browsing history covers that. But there are a few applications that I’ve hosted which I must talk about. WordPress, which this blog runs on, is the primary one on the list. I also use gitlab as an internal alternative to Github, slideshare.net to share slides, and etherpad.mozilla.org to chat / collaborate on code. But the application that I spend the most time on is selfoss – an RSS reader, my replacement for the late beloved Google Reader.

A-Z of my browsing history

When you start typing in the address bar, Chrome suggests a link to visit, based on frecency. What do my recommendations look like?

  • A is for airtel.in/smartbyte-s/page.html – the page where you can check your bandwidth usage. I used to check it infrequently until I upgraded to a 125GB connection. Now I check it every few days and feel miserable that I’ve nowhere near used up my quota. This has coerced me to watch many Telugu movies, of which I don’t understand a word.
  • B is for blog.gramener.com – I blog there on data stories. The last month or so has been fairly active thanks to the elections.
  • C is for calendar.google.com – which has become primarily a shared calendar. It was always indispensible to manage my time. Now it helps my colleagues pick when to call me. Right now, my calendar has events booked about two months in advance.
  • D is for docs.google.com – for effectively one single purpose: shared spreadsheets. This is such a common and powerful use case, and I’m surprised it hasn’t become much easier to use.
  • E is for epaper.timesofindia.com – some of our content has been published by The Economic Times, and I keep doing ego-searches in the print edition. But close behind is eci.nic.in which I’ve been scraping a lot, and election-results.ibnlive.in.com which we created for CNN-IBN.
  • F is for flipkart.com – not facebook.com. I’m not often on Facebook.
  • G is for gramener.com. Naturally. (It’s not surprising that it’s not google.com: I search directly from the address bar.)
  • H is for handsontable.com – a library that I’ve been using a lot recently, followed by html5please.com that tells me which HTML5 features are ready for use.
  • I is for ibn.gramener.com – another property we created, but it only just beats irctc.co.in.
  • J is for join.me – a clean way to share your screen without the audience having to install anything (though you the sharer do have to install the software.)
  • K is for kraken.io – an amazingly efficient image compressor. As you might have guessed, I lead a strange life.
  • L is for learn.gramener.com – our Intranet. Sorry, you can’t access this one.
  • M is for mail.google.com. I’ll probably be moving away from gmail as a backend this weekend to Mail-in-a-box, though. Google’s pulling the plug on Google Reader has shaken my faith.
  • N is for news.ycombinator.com. When I’m bored and want to watch something while I have dinner, I don’t open YouTube. I open Hacker News.
  • O is for odc.datameet.org – the Open Data Camp. I’m quite into open data.
  • P is for pay.airtel.com, but if you ignore the number of bills I pay, it would be pandas.pydata.org, the home page of a remarkable data processing library.
  • Q is for quirksmode.org, PPK’s remarkable browser-compatibility guide
  • R is for reader.s-anand.net, my self-hosted RSS reader. It used to be reader.google.com, but Google let me down there.
  • S is for s-anand.net – this blog.
  • T is for twitter.com. Unlike Facebook, I don’t dislike Twitter so much.
  • U is for underscorejs.org. Clearly I need to get a life.
  • V is for visualizing.org. They have a number of interesting data visualisations.
  • W is for webpagetest.org – it helps measure the speed of web pages.
  • X is for xem.github.io. I’ve probably visited this page once, but it’s the only one in my recent history that starts with X
  • Y is for youtube.com. I lied. I spend an order of magnitude more time watching Telugu movies on YouTube than on Hacker News.
  • Z is for zoemob.com. Again, a page I visited only once, but there’s nothing else in Z at the moment.