Category: Rants

On Being a Programmer in a World of Non-Programmers

authorKeithius | January 4, 2008

This post over at The Daily WTF struck a chord with me. I can definitely feel the pain of trying to explain programming to non-programmer – or even just explaining what it is I do. Most times, I just get blank stares. To most people, “I work with computers” is the only thing they understand. The fine distinctions between someone who works with, say, designing CPUs for mobile devices and someone who writes web pages is totally lost on them. It’s all just “working with computers” – basically, anything beyond doing word-processing and web-browsing.

Let me give you two examples.

As I’ve said before, programming is something between a creative practice (like art) and a technical craft (like construction). You are both building something and being creative – at the same time. So naturally, you hit “blocks” sometimes and get stuck. And, likewise, you sometimes get a major breakthrough – like when an artist has a flash of inspiration and creates some amazing piece of art, so too does a programmer figure out something tricky (or elegant, or whatever).

Unfortunately, trying to share this enthusiasm with anyone who is not a programmer is basically an exercise in futility.

Me: “Yes! I just figured out how to implement this really tricky method and it works great!”

Anyone else in the world: “Huh?”

Without other programmers around to share in your joy of accomplishment… well, it’s best to just keep your enthusiasm to yourself, or so I’ve learned.

On the other side of the coin is the other edge of being the “computer guy” – namely, that everyone expects you to know everything about their particular computer problem, as well as be able to fix it in just a few minutes. (Coincidentally, this is why I have a t-shirt which says “No, I will not fix your computer.”)

I’ve had people show me the most awful computers – in the worst possible state of disrepair – and they expect me to be able to fix it up like new again in an hour or so. They usually show me these computers when I’m on vacation, or when I’m at their house for some other reason (i.e. not because they asked me to come fix their computer, but “since you’re here…”).

This is a bit like towing a dead car that’s been beaten on for years without an oil change and was just in a bad accident to your mechanic – but not to his garage. Instead, you brought it to his house (where he doesn’t have all his tools – they’re at the garage of course) and you drop it in his front yard (which is sure to kill the grass) and you expect him to just drop everything and make your car work by this afternoon so you can drive it to a party.

Or better yet, like you’ve tracked down your mechanic while he’s having dinner at a fancy restaurant (all dressed up & everything), and you barge in on his meal and ask him if he can fix your dead junk car that is coincidentally blocking his own car from leaving the parking lot.

If you don’t understand what’s wrong with this, I suggest you go try it with a real car and a real mechanic. See how far you get. I will not be liable for your death, though, if your mechanic breaks into a blind rage and kills you (with the rocker arm from your own dead car’s engine, for maximum cosmic justice).

With any luck, at least a few people will read this and have some measure of understanding as to what a programmer does - even if it’s only a little understanding, it’s better than what most people have currently.

Long-term Away Messages

authorKeithius | January 3, 2008

Recently, I’ve started using Instant Messaging software again after a long hiatus. I stopped using it (for a variety of reasons) shortly after I left college (back in 2001). Now that I’m back “on IM,” there’s some things I’ve noticed – some of which I used to do myself, but that now just annoy me.

The main one is this: leaving your IM client on all the time – as in 24 hours a day, 7 days a week – but for most of the time, your status is “away.”

I was guilty of doing this back in my college days – leaving IM running all night (usually with some away/status message that I thought was very clever), and then again all day during my classes (again, with some not-really clever status message). Now, granted, being a CS (that’s computer science for the rest of you) major, I did spend a fair amount of time in front of my computer – but even still, something like 75+% of my time was spent “away.”

I never thought of it at the time, but really, in a world where sending an email is free, why in the world would you leave your IM client logged in all the time like that? If you’re not around, why get people’s hopes up by having your client logged in and broadcasting your status to the world? Isn’t it enough to say that if you’re not signed in, that you’re not at your computer? I mean, really, what’s the point of putting up a message saying “I’m not here,” when just … not being there … would send the same sort of message? You might as well put a sign on your empty seat at your desk that says “I’m not sitting here right now.”

Again, I have to say – I was guilty of doing exactly this for many years during college. But now, I just don’t see the point. If you’re going to be away from your computer for a little while (such as for lunch, or just the classic “BRB” – be right back), fine, put up a message. But if you are going to be away from your computer for a long time – for example, you’re going to work and you won’t be back for several hours, or you are going to bed for the night – then just sign off!

Or, at least, that’s my opinion. And with that in mind, I’m signing off. Goodbye!

Why I Don’t Play Newer Games (Mostly)

authorKeithius | December 3, 2007

It is a (sad?) fact that I play far, far fewer games than I used to.

Suffice to say, there were thousands upon thousands of games available for my Atari 7800. Ditto for my original Nintendo (NES) and Super Nintendo (SNES). And when I owned those systems, I had pretty large libraries of games - certainly larger than I have now - and there were always more games I wanted (but had to wait for birthdays/Christmas… hey, games were expensive!).

I’m going to come back to the SNES later on, so if you don’t know what it is or what it looked like, go look it up now. It’s OK - I’ll wait.

When I got into college, the gaming scene was filled with things like the original Playstation (PS1) and the Nintendo 64 (N64). This was the beginning of the end for me - which at first glance seems a little backwards. I mean, I was an adult now and had a job and money to buy the games I could never afford on my own as a kid, and I still liked playing games - so what gives?

This is going to start a lot of flame wars I’m sure, but I boil it down to one simple thing: too many buttons.

Look back at the controller for the SNES. A directional pad and 4 primary buttons. (The shoulder buttons were used rarely, by comparison, and Start and Select don’t count.) Simple. Elegant. And, perhaps more importantly, it’s what I grew up on. All button pressing was done with the tips of the thumbs - all of your other fingers were just to hold the controller.

Jump forward to the PS1 and things get a little bit more complex - now there are 2 sets of shoulder buttons, but more or less the layout is the same. I liked the PS1, and still play games from it to this day.

Now look at the N64 (a system I never owned, but played in college). Look at that controller. It’s got: a directional pad, a joystick, 4 “C” buttons, A and B buttons, two shoulder buttons and a trigger button underneath. You can hold it with your hand in 2 different ways - it has those 3 “prongs” so you can hold either the directional pad or the joystick. And since the games that came out for the N64 were all trying to do revolutionary things with 3-D, they all tended to use all of those buttons.

Think about what that means.

Now, sure, you could just say “suck it up and learn the new controls,” but you could also say the same thing about computer user interfaces (a topic which I am very familiar with and very vocal on). Now, has the shape of a mouse changed much in the last 10 years? Or the layout of menus or window controls? Not very much, if at all.

But for game consoles? The PS2 came along and gave us 2 joysticks! Both of which are also buttons! And don’t even get me started on things like the GameCube, the XBox, the XBox360, or the PS3. (The Nintendo Wii is a refreshing breeze amongst all these game systems - a simple controller! But one that has an inherent power and flexibility… more on that later.)

The bottom line is, playing games that use more than a few buttons quickly becomes tedious and difficult for me. I just don’t have the time, patience, or I guess dexterity to learn to use my thumbs, forefingers, and middle fingers (on both hands) at the same time while trying to hold an oddly shaped, vibrating controller in my hands.

The user interface for these games is just too complex/difficult.

Especially now that games are so realistic. It just takes a lot of mental effort to remember that the realistic looking character on the screen will only open a door when you press L2 (with your left middle finger) while steering him with your left thumb. I mean, c’mon!

As games become more and more complex, and more and more immersive, the user interface to these games (the controller) is going to have to evolve - and that doesn’t mean fancy boomerang shapes and more buttons!

In a way, Nintendo’s Wii has sort of figured it out - although I’m not sure the folks at Nintendo quite realize it yet. There’s also a reason that the Wii has sort of a passing resemblance to products of another company that does user interfaces really, really well - and of course I’m talking about Apple.

Still, there’s hope. The other day I started playing a game I got for my birthday - Lego Star Wars. Here’s a game that gets UI right. To play the game, you really only need the 1 joystick and 3 (maybe 4) buttons. (You can use more buttons, but they aren’t strictly necessary to play - and more importantly, to enjoy - the game.)

When Amanda can pick up a game and start kicking-ass at it (she never reads manuals and is horrible at managing more than a few buttons at a time without lots of practice), that’s how I know a game has a good user interface. (Coincidentally, Lego Star Wars also does a lot of other things right - easy pick up & dropping out of a game, good 2 player mode, and basically infinite lives.)

I’ve been thinking about picking up a Wii (or maybe even a Nintendo DS - again, fewer buttons!), but maybe I’ll hold off for one more generation of game consoles, and see whether the other companies “get it,” or whether I’ll have to start learning to operate controllers with my feet as well.

We’ll see.

The Great Wikipedia Schism

authorKeithius | November 12, 2007

While I’ve always been a great supporter of Wikipedia, lately things have begun changing that have me questioning whether it’ll work out the way I hoped.

Let me explain.

Lately, the higher-ups at Wikipedia have made some policy decisions which are arguably aimed at increasing the perceived “quality” or “reliability” or “professionalism” of Wikipedia, in comparison to, say, Encyclopedia Brittanica, or any other major encyclopedia. Some of these changes, though, in my opinion at least, go against the original spirit of Wikipedia - the spirit that originally attracted me to the site.

One example: Wikipedia is trying to enforce the idea that articles should only be about things that are “noteworthy.”

OK - so, what the hell is “noteworthy,” anyway?

I’d be hard pressed to define it, and so would anyone else striving for an unbiased opinion. It just can’t be done. As soon as you bring something as ambiguous and subjective as “noteworthiness” into the picture, you’re just asking for trouble. It used to be enough if an article was well-written, factual (cited its sources), written from a neutral point-of-view, and contained no original research. It didn’t matter if it was an article on Barnard’s Star or  the fictional Dahak starship from the sci-fi novels written by David Weber - as long as it followed those few requirements, it was fine for Wikipedia. After all, what seems noteworthy to one person might seem totally useless and not worth remembering to another person - and vice versa.

What’s worse is that because of this desire for “noteworthiness,” some articles are being deleted - and that really just goes against the spirit of an encyclopedia of human knowledge!

There are other things, of course - the removal of “trivia” sections; the removal of plot summaries & episode lists for TV shows - but really, the “noteworthy” thing is probably my biggest pet peeve. I just don’t think it can be reasonably enforced and really, something as subjective as that has no business being in the criteria for a Wikipedia entry.

Just get Firefox already, geez!

authorKeithius | November 4, 2007

If you are visiting this site with Internet Explorer 6 or 7, you will probably notice a large orange banner at the top that didn’t used to be there before, suggesting that you upgrade to Firefox.

Don’t be alarmed - this is deliberate.

I’ve seen it happen, time and time again. You’ve probably read about it in the news or heard about it on TV - you almost can’t escape it these days. Of course I’m talking about viruses, trojans, worms, botnets, spyware, spam, and identity fraud.

In a statistically significant portion of cases where people get these sorts of things, it is because they use Internet Explorer.

It is possible to get your computer infected by just reading an email (with a client that renders the email via IE) or by just visiting a web page. You don’t even have to click “Yes” to download anything in some cases. And although Microsoft has taken steps lately to improve the security of IE (IE 7 is much safer than IE 6), it is still much, much more vulnerable than Firefox.

So why take the risk? It only takes a few minutes to install Firefox.

Now, granted, some cases are due to user error - after all, the fake emails & fake websites that entice you to enter your password or bank number or whatever are getting better looking & more sophisticated every day - but using IE is like shaving with a straight razor - sure, it gets the job done, but if you mess up just a little bit - you’re dead! Firefox, on the other hand, is like a nice electric razor with the skin-softening gel. You won’t slice your jugular open and it even soothes away the minor irritation of an every-day activity!

I see news reports about things like the Storm worm and I just think of all those poor people, unwittingly taking part of botnet-type activities - DDOS, spam generation, and so forth.

In this day and age - with all these threats - with so many people getting their computers completely hosed on almost a monthly basis - and with so much of our lives (photos, emails, banking info) on our computers, there is just no reason to keep using a browser that is so potentially dangerous. Especially when the safer alternative is both free, easy-to-use, and available right now.

So stop procrastinating. Unless you enjoy living dangerously, just get Firefox already, Okay? You’ll be glad you did.

Logos | Icons | WordPress Themes

Using Internet Explorer is risky. Click here to upgrade to Firefox, the world's safest web browser for free.