TurnKey Linux Virtual Appliance Library

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.
Alt

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.

CDPATH

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:

CDPATH

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:

CDPATH=.:/turnkey:/turnkey/projects:/turnkey/appliances

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.

http://en.wikipedia.org/wiki/Scientific_method

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.

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:

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.

Git tip: how to merge multiple projects into one big repository

A while back I decided it would be a good idea to combine a loose collection of related Git repositories into one big Git repository.

The rational for this was that I noticed that often the same logical change had to be broken up into multiple commits across these previously separate repositories in a way that made it difficult to track which changes were part of the same change. In other words it artificially fragmented the commits and made revisions harder to track.

Pride and prejudice: falling in love with your own bad ideas

Opinion, often hasty, can incline to the wrong side, and then affection for one's own opinion binds, confines the mind

- The Divine Comedy

Sometimes I have bad ideas. Happens to the best of us. If I try to avoid them my mind freezes up. So I just let the ideas flow. No filters. Sure, most of them are crap, but every once in a while a gem of a good idea passes through.

v14.0 stable release - Massive Community Effort!

Drum roll please... May I proudly introduce: The TurnKey Linux v14.0 release!

turnkey 14.0 banner

A long time coming...

Wow is it mid September already!? What has happened to the year?!