Category Archives: Academia

The Problem with ‘Futurology’

What’s your favourite terrible technological prediction?  There are plenty to choose from, that’s for sure.  The following is just a brief list of the most infamous computing-based futurology howlers (oldest to newest):

  1. “I think there is a world market for maybe five computers”, Thomas Watson: IBM chairman (1943) (* or was it someone else?)
  2. Computers in the future may weigh no more than 1.5 tons”, Popular Mechanics (1949)
  3. “I have traveled the length and breadth of this country and talked with the best people, and I can assure you that data processing is a fad that won’t last out the year”, Prentice Hall: Business Books Editor (1957)
  4. “There is no reason anyone would want a computer in their home”, Ken Olsen: DEC founder (1977)
  5. “640K ought to be enough for anybody”, Bill Gates (1981) (* or did he really?)
  6. “We will never make a 32-bit operating system”, Bill Gates (1989)
  7. “Spam will be a thing of the past in two years’ time”, Bill Gates (2004)
  8. “Next Christmas the iPod will be dead, finished, gone, kaput”, Alan Sugar (2005)

Continue reading


An Alternative to “Hello world!”

There’s an appreciable risk that this post may be considered sacrilegious within the programming world.  If there’s one thing, even  just one tiny, single thing, that every programmer knows about teaching programming, it’s that the first lesson should be how to output the string, “Hello world!”  (There’s some dispute as to whether the ‘w’ should be capitalised but the ‘!’ is entirely necessary.)  How heretical would it be to suggest that, not only is this probably not the best place to start, but that a better alternative can be found by turning around a bottle of shampoo?

ShampooBottle Continue reading


Are There Any Hard Problems?

That looks like a hopelessly vague question, and it is unless we’re prepared to clarify it a bit.  On the other hand, we already know there are some impossible problems so surely there are some that are just hard?  Again, we’ll need to work out what on earth we’re talking about here.  Let’s start with what we actually mean by a problem in a computational sense …

(Be warned: There are one or two simplifications and liberties with precision in what follows; it’s well-intentioned but may upset the purist.)

Well, actually, even that isn’t simple and there’s no absolute agreement on what a good definition would be.  (We’ve seen previously that mathematicians and computer scientists don’t always see eye-to-eye.)  It’s cheating a bit but it’s probably easier to give examples and this should work well enough for us.  At least in the context of computing, these are all valid problems:

  1. Calculate    2 x 4 + 9 – 3
  2. If   5 – x  =  2   what’s x?
  3. Find the largest from    5, 7, 1, 4, 8, 5, 2, 4, 8, 5, 2, 6, 7, 7, 3, 3, 2, 4, 3, 6, 7, 7, 6, 5, 4
  4. Sort    25, 44, 66, 72, 12, 45, 56, 90, 45, 69, 11, 10, 12, 42, 88     into ascending order
  5. Arrange   1, 2, 3, 4, 5, 6, 7, 8, 9   into a magic square
  6. What’s the best way to get to Paris?

Continue reading


How to Write a Really Bad Program

(A case study in bad and good algorithm design.  Hopefully, a bit of fun for anyone in a programming frame of mind, but also serving as a useful reference for the ‘Are There Any Hard Problems?’ post that follows.)

In ‘A Scandal in Bohemia‘ (Arthur Conan Doyle, 1891), Holmes and Watson discuss the difference between seeing and observing“You see, but you do not observe [Watson]. The distinction is clear. For example, you have frequently seen the steps which lead up from the hall to this room.”  “Frequently.”  “How often?”  “Well, some hundreds of times.”  “Then how many are there?”  “How many? I don’t know.”  “Quite so! You have not observed. And yet you have seen. That is just my point. Now, I know that there are seventeen steps, because I have both seen and observed.”

Who knows; perhaps, if they hadn’t moved on to discuss more pressing issues (that King of Bohemia has a lot to answer for), Holmes may have set Watson something a little more interesting:  “How many of these steps do you generally take in a single stride, Watson?”  “I suppose one or two, Holmes, it varies; never three. Sometimes I take different combinations of one and two steps as the mood takes me”  “Excellent, Watson; another challenge! So, taking these steps one or two at a time, in any combination you wish, how many different ways are there of climbing the seventeen steps?”  “Well, I’m quite sure I don’t know, Holmes; rather a lot, I would imagine!” Continue reading