TurnKey Linux Virtual Appliance Library

Keeping track of time

For the last few years I've been using a nifty little program called gtimelog to keep track of how much time I am actually working (and in a basic way on what), and how much time I am off work, whether it is for a meal, a personal phone call, random web surfing etc.

Getting into the zone - Crazy tips for maximum productivity

The zone is a mysterious place familiar to deep thinkers. It is a mode of consciousness in which you are almost superhumanly intelligent and productive. Hard problems are solved in the zone. Getting into the zone is not easy, but it pays off. The downside to the zone is that it raises your expectations from yourself and others so much you will never be satisfied by normal again. The upside is that you realize what you are truly capable of.

In the zone, your mind is a blade, a ferocious form of violent, nearly malicious intelligence.

Python's timeless principles of good software

$ python -c 'import this'
The Zen of Python, by Tim Peters

Beautiful is better than ugly.
Explicit is better than implicit.
Simple is better than complex.
Complex is better than complicated.
Flat is better than nested.
Sparse is better than dense.
Readability counts.
Special cases aren't special enough to break the rules.
Although practicality beats purity.
Errors should never pass silently.
Unless explicitly silenced.
In the face of ambiguity, refuse the temptation to guess.
There should be one-- and preferably only one --obvious way to do it.

On motivation

Don't wish for the peak while you are still climbing the mountain.

This is going to take as long as it's going to take to do it at a satisfactory level of quality.

Mental shortcuts and trying to rush through the motions will significantly extend how long it takes to achieve this goal.

You have to focus on the next step, and enjoy taking it.

I suspect you are going to have miserable miserable time if you are praying for it to finally be over.

13 simple writing tips

I love reading, I love books, and my friends say I have an overactive imagination. So it may not be terribly surprising that back in my teens one of my dreams was to one day become an author. A world famous author of course. Writing good old fashioned books. Which would be published with my name on them and which people would line up in book stores to buy. New books with that new book smell. I'd sign them and impress the ladies with my wit and prose.


I used bash for a decade or so before I discovered this little highly useful gem a few years back. Nowadays I can't remember what I used to do without it.

From the bash manual page:


The search path for the cd command.  This is  a  colon-separated
list of directories in which the shell looks for destination
directories specified by the cd command.

A sample value is ".:~:/usr".

I've added the following to my .bashrc:


Now this works:

Bug hunting with the scientific method

I've never come across a problem I couldn't solve using the following technique / problem solving methodology, and I've come across some tough ones.


Just say no to multi-tasking: reflections on productivity

Tafasta merubhe, lo tafasta.
תפסת מרובה לא תפסת

- Ancient Hebrew proverb from the Talmud (Translation: Try to catch too much, catch nothing.)

I had an unsatisfying couple of days that got me thinking what I was doing wrong.

In retrospect, I realized I was jumping all over the place, trying to keep too many balls in the air. I was investigating the rsync algorithm, while trying to fix a TurnKey build problem, while researching distributed filesystems, etc.

This is problematic for two main reasons:

Trouble writing? You probably aren't scaffolding enough

Having trouble writing? It may be just that you are having trouble doing two things at the same time:

  1. decide what the prose should say (substance)
  2. write the prose (form)

They are intimately interconnected. If you don't REALLY know what you want to say, you are going to have a hell of a time saying it. And then instead of actually writing sentences, you play with grammer and use alot of syntatic sugar until your sentence seems to have filled a respectable space (form over substance) and you can move on to the next one.

He never grew up, but he never stopped growing

He never grew up, but he never stopped growing.

- Arthur C. Clarke (when asked what he wanted written on his tombstone)

In retrospect, I tend to underestimate a lot of things. I underestimate challenges. I underestimate my own limits. I underestimate authority. I routinely underestimate how difficult something is going to be to accomplish.