Category: Programming


“No matter how slick the demo is in rehearsal, when you do it in front of a live audience, the probability of a flawless presentation is inversely proportional to the number of people watching, raised to the power of the amount of money involved.”
– Mark Gibbs

Clearly Mr. Gibbs is talking from experience. Anybody in software development knows this one to be the god’s own truth.

While sitting this evening and trying to come up with something amusing to write about, it occurred to me that I would dearly like to write something reasonably interesting about Python, Django and programming. I’ve done posts about the combination before, right in the beginning when I was just coming to grips with MVC, Active Record and Django and was frustrated as all hell with Django’s really crappy error messages.

The problem, this evening, is that I realised that I am probably not good enough in Python to write anything really cool. Sure, I could write something about Python and Django, but what would be the point of that? I guess another ‘how to’ get past some of the more infuriating beginners problems would be useful to some people but it’s, well, not cool.

I could write some cool stuff about PHP because I know PHP and have written every conceivable type of script in PHP (web, daemons, sysadmin scripts, IRC clients even a script that uses WS-Security, once). PHP and I have been friends for a very long time and don’t get me wrong, I do still have very much affection for the language but it’s not what I’m ‘doing’ right now. I could also write something cool about Visual Basic, I have done some really neat things (in my biased opinion) in that language; at one point, everything I could think of. A particular favourite was a 3D rotation application with some interesting Z-sorting procedures but I digress.

The point is that I want to write about Python because that’s what I’m doing now and what I’m interested in, now, but I haven’t done any cool enough things with it yet, at least not anything I think is worthy of talking about and I am not yet confident enough with either to venture my opinion on how things should be done.

So basically, what I am pondering is, how long should it take to climb the hill of cognition (or some-such), working with a brand new programming language, before you know cool stuff. Four months is not enough for me but I’m already trying to think of something ridiculously cool (and, er, useful of course) to add to my current project, mostly for the sake of having done something, well, cool (and also, I do kind of enjoy learning somewhat).

The most apparent visual difference between llamas and camels is that camels have a hump or humps and llamas do not.

“Most software today is very much like an Egyptian pyramid with millions of bricks piled on top of each other, with no structural integrity, but just done by brute force and thousands of slaves.”
– Alan Kay

“It has been discovered that C++ provides a remarkable facility for concealing the trivial details of a program — such as where its bugs are.”
– David Keppel

“Manually managing blocks of memory in C is like juggling bars of soap in a prison shower: It’s all fun and games until you forget about one of them.”
– anonymous Usenet user

“When debugging, novices insert corrective code; experts remove defective code.”
– Richard Pattis

“If the code and the comments do not match, possibly both are incorrect.”
– Norm Schryer

“Programming without an overall architecture or design in mind is like exploring a cave with only a flashlight: You don’t know where you’ve been, you don’t know where you’re going, and you don’t know quite where you are.”
Danny Thorpe

“From a programmer’s point of view, the user is a peripheral that types when you issue a read request.”
– P. Williams


“It should be noted that no ethically-trained software engineer would ever consent to write a DestroyBaghdad procedure.  Basic professional ethics would instead require him to write a DestroyCity procedure, to which Baghdad could be given as a parameter.”
– Nathaniel S. Borenstein