That’s right folks.   It’s hacky.  It’s silly.  It’s inevitable.  But it’s time for March Madness (Note – Readers outside the US read this to catch up March Madness).   That’s right.  It’s time for a bracket of 32 (because I can’t come up with 64, and certainly not 68) things that annoy us.  Some programming related, some not, in our search for the most annoying item that wins the First (perhaps annual) SlickEdit March Madness Tournament.


Vote for your favorite item in the comment section below.  Much like Whose Line is it Anyway, where the rules are made up and points don’t  matter, it won’t matter what you vote for because we’ll pick the winners of each round and report them to you as though your vote mattered.


Up first, the Grace Hopper Division: Programming Languages.  Everybody has a language that annoys them simply by its existence.

  • COBOL – It’s an acronym that stands for somthing with “Business” in it.  It’s way too wordy, and it’s outlived all the languages that were supposed to replace it.
  • Perl – There’s a lot to like in Perl. But unfortunately TMTOWTDI has gone way too far here. When you have 5 ways to do a regex search, that’s 3 too many. And while using $_ for “the last expression result” is pretty cool, all the rest of the short-hand two-character $ variables are simply there for the cognoscenti to show off and confound all but the author.
  • Java – Sun invents their own interpreted, object oriented language.  The whole world jumps on board.  As far as I can tell, for the first 10 years the only applications written in Java are Java Development Kits.
  • C# – Microsoft wants an interpreted, object oriented language.  Obviously, they invent their own.
  • C++ – For our beloved tagging guru, I will simply list the STL as the biggest sin of C++.
  • “Semicolons Optional” languages – Good grief. Why do this? Sure, using syntactically significant whitespace makes your source code look nice and tidy. But languages that do this make it harder for tool vendors to write proper support for the language, thereby limiting the number of 3rd party tools.
  • The Functional Language Diaspora – I’m not against functional languages. They’re vital and valuable, but still something of a niche, and shall always be thus. So do we need so darned many to fill said niche? Let’s put grandpa (Lisp) on the ice floe and push him out to sea along with Haskell, Erlang, and Scheme. Scala and F# can stay. Clojure gets a pass for now…
  • XML – It’s one language that contains every other language.  Its overly-broad application and misuse is responsible for the forced early retirement of the INI format. 

Dennis Miller Division: Cultural/Societal Phenomena

  • People who go on about organic food – If I’m eating a salad, I’m trying.  I don’t want to hear about the problems with the lettuce being genetically modified.  It’s LETTUCE.  Until it gets up and walks around, leave me alone.
  • Checks with 20__ in the date line – Forget the fact that I had to shred a pile of unused 19__ checks when Y2K rolled around, and I know I’ll never need to write a check with 21__ in it. But still, I don’t like the fact that the few checks I do write look like March 17th 2013
  • People who spend all day cluttering your Facebook feed by liking photos – I should learn how to shut this off.
  • Twitter – I guess it’s here to stay… but after 5+ years I’ll just admit, I don’t get it.
  • “Not Responsible for Windshield Damage” – Yes, you are responsible, you accountability-dodging cretins. You slap on a bumper stick that says “Stay Back 300 feet”  (ignoring the fact it can only be read when within 150 feet) and you think that gives you carte blanche to scatter gravel all over the roadways?
  • $1.59 for a 16oz Coke – I don’t mind the price, per se, just the fact the same Circle K sells a 2 liter bottle for only 40¢ more. Well, I can’t jam a 2 liter bottle into my car’s cup holders. Why don’t they jack up the price of the 2 liter to $2.50 and use that to subsidize my impulse purchase down to $1? And I won’t feel so ripped off.
  • $1 Double Cheeseburgers – I just don’t need this kind of temptation in my life.
  • Hacky Humor-oriented March Madness Bracket Lists – Yep.

 Rolling Stone Division: Music and Movies:

  • Coldplay – It sounds like U2 played by a comic lounge singer
  • Kanye West’s performance at that benefit show – I’m thinking of the 12/12/12 one, but others may apply
  • Boy bands – a trend that keeps coming back like the bad guy in a horror movie
  • Whoever expanded the “Best Picture” category to 10 movies – Did Toy Story 3 really have a chance?  You’re just trying to get people to watch the Oscars®©™²³£¥ television broadcast.  Don’t patronize me.
  • Everybody involved with the writing and production of The Blues Brothers 2000 – May God have mercy on your souls.
  • The stuff that passes for Heavy Metal today – Give me the NWOBHM bands.  I’m old.
  • Coldplay – New album is different you say?  Nope – It still sounds like U2 played by a comic lounge singer


Computer I Grew Up With Division (Under 40 need not apply): Oddities of the “computers” we grew up with.  Computers is in quotation marks because they aren’t exactly what we consider computers now.

  • The Commodore Vic-20 – How can I include my beloved first computer?  Because after it loaded the BASIC interpreter it had 3.5K of RAM, that’s how.  3.5K.  Not G, not M.  K.  Dim A$ 16,16,16. Error out of memory.
  • The Atari 400 – I never had one, but  it didn’t have a real keyboard.  Those touch pads probably seemed really futuristic until you actually tried to type on it.
  • The Apple II E – Somebody has to take the blame for unleashing the original Apple fan boys on the world.  I nominate the IIE.
  • The Apple II GS – Sleeker and more colorful than previous Apple II series, but not quite as cool as the impending Macintosh II. An expensive ,short-lived tease.
  • The Atari 2600 BASIC programming cartridge – A controller that looked like this, and no way to save anything?  It’s a wonder they didn’t sell more.
  • The Timex Sinclair 1000 – It was a calculator that you had to hook up to a TV.  They were kind enough to include the same keyboard technology as the Atari 400 though.
  • Whoever was in charge of marketing the Commodore Amiga – You should have ruled the computer world, you brought us a rotating bouncy ball.  Way to go.
  • Coleco Adam – You can tell it’s from the 80’s, it had a dual cassette deck.



This (‘/’) is a slash.  It is used to separate pieces of paths and filenames.  It is used by all the UNIX systems I am aware of, the Mac (that’s right, I said UNIX and the Mac separately, and I will continue to), and  URLs around the world.  On a US QWERTY keyboard, it is on the same key as the ‘?’.  It is located in a convenient place so that a touch typist can sit down at virtually any keyboard type a filename and know where it is. a/b/c/d/e/file.c.  Wow, that’s easy.

This (‘\’) is a backslash.  It is used by Microsoft to separate pieces of paths and filenames.  It is used by Microsoft Windows.  On a US QWERTY keyboard, it is usually above the enter key, except in some cases where it is in the same place but ½ the size, or other cases where it is located at the bottom of the keyboard. a\b\c\d\e\file.c.  I can’t say that was exactly painful  but it wasn’t as easy.  It just wasn’t.  Also, this could just be me, it looks funny.

Sometimes when we start a project, we do something to differentiate ourselves from other similar projects that came first.  Sometimes these things don’t serve much purpose except to say “See?  I’m not doing what you did, I’m doing something different”.  It could be that’s how the backslash came about.

Regardless of why it’s here with us, it is time for it to be put to rest.  Support both for a few versions if it makes you comfortable.  Or just make a clean break.  I’m OK with either one.

Next time on “Dan Rants About Things That Don’t Make Much Sense to Him”, I’ll cover the Mac using the Control+Click as a Right Button Click even though two button mice have been widely available since Nirvana was a garage band.  I’ll cover drive letters in an upcoming episode but I just exposed the uselessness and confusion of the backslash and I don’t want to stick it to one company twice in a row.  Plus we don’t have to do it all at once.  c:/a/b/d/e/file.c.  I can live with that.

The only proper way to finish the title sentence is “… I don’t write code”.  The way that it absolutely not be finished is “…I just use vi”.  Here are the reasons people seem to claim for using vi most often:

  • It’s always there.
  • It’s always the same.

But there’s more to it than just that.  Insisting on relying on vi for your editing needs is a pride thing.  The pride of walking into the wilderness with nothing but a knife.

That’s right.  We all want to believe we’re able to rush out into the wilderness with nothing but a knife, able to survive for days like John “Yes, I do have a first name” Rambo.  After all, it’s not just a blade.  It also has a compass, a couple of waterproof matches, and a needle and thread in case we need to stitch a large gash up ourselves.  You picture yourself, looking rugged with a headband and makeshift burlap shirt, running through a rocky ravine and stopping to check the compass built into the end cap of the handle (an image which I looked for for literally hours, impeded by copyright police and the fact that I can’t remember which Rambo movie it was in – so please take a second to paint the mental picture).  The truth is you look more like Michael Scott out in the woods wearing his pants on his head (an image I spent absolutely no time looking for – if you’ve never seen The Office (the U.S. version), Michael Scott is a man who is far too dumb to breathe, and he tries to prove he is clever enough to walk into the woods wearing just what he has on and survive.  He’s not, and somehow he winds up wearing his pants on his head.  It is marginally funnier than it sounds).

So, we’ve established that vi is like a survival knife with a blade and little else except a compass and some waterproof matches and enough needle and thread to stitch up a cut yourself.

A slightly more acceptable answer for why you don’t need SlickEdit is that you use whatever editor is included in your modern IDE.  The IDE editor tends to be sort of like a Leatherman tool.

(Leatherman is a trademark, but I think they were first in this space, I’ve used their products for over 20 years.  Although I am not a paid spokesperson, I am completely willing to be.  Just contact me here by leaving a comment below).  The Leatherman type multi-tool is sort of like a Swiss Army knife that is actually usable.  It has usable screwdrivers (different types and sizes), pliers, wire cutters, scissors, a saw, and of course a knife. They have different models that have different types and numbers of tools, and any knife maker worth their salt has their own version.   And these can be used for more reasonable tasks.  I’ve never had to stitch myself up, but I have found myself needing pliers, a screwdriver, file, saw, etc.  You could actually use one to perform an emergency car repair.  Pliers are not ideal for this sort of thing, but in a pinch, you could probably use this to change a belt, and certainly use it to replace a hose.  But you can’t use it to rebuild an engine.  There are a number of reasons why.  But here’s a big one:

This is a piston ring compressor.  It is a specialized tool used to compress the rings on a piston when you put them back in an engine.  And there is probably a way to get a piston into the cylinder without one.  It probably involves cutting up a beer can and using a strap wrench, getting a really nasty cut, and making it worse trying to stitch yourself up with the thread in your survival knife, then going to the doctor who informs you that you should never, ever try to stitch yourself up again unless you’d like to lose your hand, and finally going to an auto parts store on the way home to buy a piston ring compressor.  You could probably do something like that.   But I wouldn’t try it.  If I were doing serious work on engines day in and day out, I would try to have the right tools on hand.

And that’s the thing.  If you’re reading this, odds are you’re not a guy who is not making emergency code repairs on the side of the road.  Odds are you are a guy who is building and rebuilding engines (race car engines, right?), or at least maintaining them, every day.  You won’t do your job effectively with a survival knife or a multi-tool.  You need a tool box.  A big one.

And this tool box is SlickEdit.  A great deal of it is stocked when you get it.  There are other tools that you have to put in the box, but it leaves a nice drawer there for you.  It’s customizable, so you can cut a piece of foam out to fit your special tools.

Quit trying to build engines with a pocket knife.  Get the tools that will best help you do your job. Some of my best friends are mechanics.  They have to buy their own tools and move them from job to job.   They don’t buy cheap ones.

Next Page »