Anyone Can Code?

Tags

, , , , , ,

There’s a general ethic these days — that anyone can code — and like a lot of things, there’s some truth to it, but also some silliness. As usual, it really depends on what we mean by “anyone can code.”

If we mean it in the same way we might say, “anyone can drive,” I think it’s silly. But if we mean in the same way we might say, “anyone can doctor (or lawyer),” well, then I still think it’s silly.

Continue reading

The Software Industry

Tags

, , , , , , ,

xkcd #2030 by Randall MonroeI cracked up when I saw this recent xkcd cartoon. Randall Munroe rarely fails to deliver, but this one especially caught my eye. It’s painfully on-point and quite dismaying on at least two points:

Firstly, that it should still be this bad given all the time, money, and attention, it has received is reason alone for dismay. Part of the problem here may be that we haven’t admitted how hard software is to get right.

But, secondly, software is central to our lives now — far more than airplanes, and even more likely than elevator rides. You might ride an elevator, at most, a dozen times a day, but software enters your life more times than that.

Especially if you use a mobile computing device!

Continue reading

Knowing Where To Bang

Tags

, , , , , ,

Sometimes ya gotta laugh. I just spent nearly an hour chasing one of those bugs that “can’t be happening” because “the code looks absolutely correct (as far as I can tell).” Of course, the bug, once you find it, was always hiding in plain view.

This time the fix involved adding just two characters, incidentally improving the program semantics, and very much reminded me of the old joke about the huge cargo ship that breaks down at sea…

Continue reading

Aside

Update July 2017

Tags

, , , , , , , , , ,

In the unlikely event anyone is reading this, and, more in the original spirit of “web logs“, as much a diary entry to record both the passing of time and the moment, after a long period of quiet, and in the long-winded run-on way that I sometimes have, a post.

Continue reading

Iteration versus Recursion

Tags

, , , , , , , , ,

When it comes to what makes a computer (or any other) language a programming language, there are three characteristics usually required:

  1. Saving state (variables)
  2. Selecting a code path (if-then)
  3. Iteration or recursion (or equivalent)

This post is just a brief note (for a friend) about the third item and why it allows three distinct options.

Continue reading

The Thing About Constants

Tags

, , , , , , , , ,

Along with “always use less-than” is another great piece of always advice, except this one is a prohibition, a never rather than an always (same thing, really, from a programmer’s point of view).

It has to do with never having literal values embedded in your code!

Continue reading

Counting From Zero

Tags

, , , , , , ,

In his brief 1982 essay (EWD831), computer science giant Edsger Dijkstra examines a topic that (inappropriately, as it turns out) vexes some programmers: Why in the world do computer people count starting at zero? Everyone knows that counting starts at one!

As it turns out, there are two very good reasons for counting from zero!

Continue reading

Rare Languages

Tags

, , , , , , , , ,

Cleaning out some old boxes of papers, I came across one of those humor bits that circulate in any profession. Back in the day, it was usually by fax. Then it was email, and now Tweets and other social platforms. (The song remains the same.)

This one concerned “rare” (i.e. made up) languages loosely based on existing languages. The humor depends, mostly, on recognizing parodied languages and certain other topical references (like “Valley Girls”).

In other words, a lot of the funny has sailed, but I found parts of it cute enough to record here…

Continue reading