Shell History

Ok, I'll bite on the shell history meme.

This command will tell you the top 10 things you've been typing in the shell.


isaac$ history|awk '{a[$2]++} END{for(i in a){printf "%5d\t%s\n",a[i],i}}'|sort -rn|head
101 nosetests
68 paster
45 cd
38 ls
34 hg
25 rake
21 script/server
21 script/generate
16 sync
16 rm


Yes, despite being a total Python freak, I'm using Rails a bit lately. I kinda like 2.0... it's much more polished than 1.x... but so far I still like Pylons + Elixir better... subjectively. It's too soon to say whether that's just my relative amount of experience in each framework. I've been using Python for years, and Pylons for enough time to know it very well. But I've only been dabbling in Rails and Ruby.

I have this sort of tic where I type sync all the time. I picked it up from a sysadmin I knew back in the day (late nineties, remember Mosaic?). I didn't know so much Unix back then (or was that Solaris flavor?) and I saw him type it all the time and I figured it's just what you do right after you do something else. It's useless now, but I still type it all the time anyway without even thinking about it. It just flushes buffers to disk. Back then, on that particular web server (probably a pre-1.0 Apache), my changes to sites would not show up if I didn't run sync, so it became this ingrained habit to type it after changing anything, and I still do it 10+ years later.

And I'm sure typing hg a lot lately. I've switched every project I'm in control of (at home and at work) from subversion to mercurial. Yep, it's that awesome, and I doubt I'll be looking back. Not to say something better won't come along one day, but for now it's the bees knees in version control.