Good Code

  • July 18, 2015
  • Dx5a0141 sq 1500 def maxǝʞɹǝᴉɟ; end
  • Life, Programming

Good code is something I think all developers, at one time or another, think they have written, only to look back 2 weeks, 6 months, or two years later and exercise a move I like to call the "shocked & embarrassed facepalm". It goes a little something like this.

Oh, hey. This is an old project...
jeez...
[facepalm]
What the FUCK?

There's a simple reason for this. If you're a good developer, you're constantly learning. You learn with every line of code you write, every new solution to a problem. This is a good thing. This is what experience is.

I think there are very few developers in the world who have written truly good code that stands the test of time - not that the test of time is necessarily a good indicator. Still, everyone has their programming "heroes" who seem to be infallible. One of mine is John Carmack.

But I'm sure, even John Carmack has written bad code. In fact, I'm positive.

As developers, we like to think we're building things. We like to think we're creating structures. We like to think we're creating something solid like the pyramids.

Unfortunately, good code is often fleeting. It's often good code for the present. Good code until it's truly put to the test. Good code until that new feature needs to be added, and there isn't time for a refactor, so it gets haphazardly shoved in.

You're lucky if you're in a situation where you get that chance to refine your code - a chance to sand the edges, and iron out the wrinkles. Unfortunately, if you do a lot of project-based, deadline-based work, as many of us do, you don't always get that opportunity. After that deadline comes, you might never touch that code again. That's it.

For many of us, the code we build is a lot more like a relationship. We put a lot of time into it. We nurture it. If we're lucky, it doesn't fall apart when it's put to the test. If we're lucky and are given time to put into it, it doesn't fall into neglect. And if we're really lucky, that code is strong enough and flexible enough to endure, despite some faults, and you're left with a solid piece of software. Unfortunately, more often than not (as with relationships), something eventually happens and it just doesn't work out. We start from the beginning, we pick ourselves back up, and we rewrite. And we hope things work out better the next time.

Because good code is a moving target. And good code is a constant struggle. And the moment you give that up, is the moment you've lost.

Serious Answers to Ridiculous Questions

  • January 23, 2016
  • Dx5a0141 sq 1500 def maxǝʞɹǝᴉɟ; end
  • Humour, Life

When you meet a new person, there are a small number of questions that you can and should ask, in order to adequately determine how well you'll get along. I firmly believe in these questions, so I've given them with my answers. All answers are 100% accurate.

  1. Who's your favorite human?: Paget Brewster
  2. Who's your favorite comedian?: Hannibal Buress.
  3. Who's your favorite artist?: Kanye West
  4. What's the craziest/most extreme thing you'd do for a klondike bar?: Work to unmask a global, sociopolitical conspiracy involving the drug-trade and the head of Wal-Mart.
  5. What's the least amount of fingers you'd be okay having by age 70?: 7 fingers
  6. What did you want to be when you were three years old?: A garbage truck driver in Oklahoma
  7. What was your first word?: No.
  8. What do you think happens after death?: I think my consciousness will transfer to a parallel universe in which I didn't die. I have no evidence for this, I just think it's a nice thought and something interesting to ponder.
  9. How do you feel about Noel Gallagher?: Look, Oasis was alright. I love Wonderwall and Morning Glory, but dude needs to stop pretending like he's the Czar of Music.
  10. What's your reaction when someone drops a pop cultural reference?:
    • When you understand it: Hello, yes, I would like one marriage please.
    • When you don't: I commend your effort
  11. Do you think existence has meaning?: I'm not entirely settled on this, but I think I take a somewhat nihilistic approach. Not in a depressing, cynical sense, but I think there is no intrinsic meaning to existence. i.e. I don't believe in fate. I think meaning is prescribed by one's self, and not by some universal imperative. Although, I do believe, mostly, in the responsibility of humans to keep this shit going for as long as we reasonably can. Again, not by some sort of "manifest destiny"-type belief in humans as exceptional, I just think it's probably the nice thing to do, seeing as we routinely create new humans. I think people should be nice.
  12. What is your reaction to puns?
    • When they're good: facepalm
    • When they're bad: I'm leaving.
  13. What do you want to be doing at 45? Telling dad jokes. Speaking at conferences. Doing something that is socially good.
  14. What do you want to be doing at 90? Telling granddad jokes and great-granddad jokes. Living in my alternate-reality VR headset as Franz T. McGillicuddy, international spy and man of mystery.
  15. What's your guilty-pleasure TV show? Cougar Town. Actually, I don't feel very guilty about that. I'm pretty open about my love for Cougar Town. And it's good, so I'm not sure it qualifies for guilty pleasure territory. Hawaii Five-0 is probably my guilty pleasure then. Some of the dialogue is pretty ridiculous.
  16. What's your guilty-pleasure song? Trap Queen by Fetty Wap. It's a very beautiful track about sharing interests with your significant other.
  17. Have you or any member of your immediate family ever been a member of the Communist Party?: No.

Getting the answers to these questions should allow you to paint a fairly accurate picture of the kind of person you're talking to. If for some reason they cannot provide an answer to one of the questions, they're being evasive; press them on the questions until you get an honest answer.

π Powered by Resumis. A cool thing by Max Fierke.