So who is Gatmalvo?
Gatmalvo is my depiction of the quintessential “rock star” developer.
- He’s slick.
- He’s hip.
- He know’s his stuff.
But he’s arrogant and a bit of a know-it-all. I’m sure you’ve come across a few of these types.
Charles Schulz once said, “I’m not sure if I like Lucy, but I think Peanuts needs her.” I feel the same about Gatmalvo.
Origins
I received Commodore Vic 20 for my 18th birthday. I was new to coding, and I was in awe of the power of that simple machine and the fact that I now had access computing power that once required rooms full of equipment.
The best programmer I knew at the time was a fellow by the name of David. I was telling him how amazing my Commodore was, but he would have nothing to do with it.
Ironically, David was an early Apple fan, and he kept extolling the virtues of the Apple II: how much RAM it had, the disk drive, the number of colors, yada, yada, yada.
When I persuaded my friend Scott to buy a Commodore Vic 20 as well and helped him program it, David looked at our code and started ripping it to pieces.
“This is stupid. Why’d you do it that way? That’s ridiculous!”
Mind you, the code wasn’t wrong; it ran just fine. It just wasn’t eloquent. (Remember this was during the days when BASIC’s GOTO statements made it very easy to write spaghetti code.)
So we could be forgiven for this. We hadn’t taken any classes on programming; we just started at it, hacking away in all hours of the night.
My Issue With David (and the Gatmalvo’s of the world)
Here’s the thing: David couldn’t afford an Apple II. He kept telling us he was saving up for one, and wouldn’t settle for anything less, but last we heard, he never bought one. So his knowledge was mainly book knowledge.
I, on the other hand, was discovering the joys of programming — making mistakes, but learning from them.
I moved from BASIC to 6502 assembly language, and in six years had my first game published in COMPUTE!’s Gazette (Skeet, May 1988).
So yes, I applaud those with great knowledge, but I also recognize a few things:
- There’s a place for quick and dirty code during the creative process, so long as it’s rewritten later.
- There’s also a place for flexibility.
- Beginners need to be nurtured not chastised.
- Well-written code is its own reward. Those who write code poorly will be punished with bugs and pain when they go to extend it later.