Wednesday, April 29, 2009

Old School Coding

ComputerWorld has an article on things programmers did in the old days and probably won't miss.

Spaghetti code, GOTO, and the FORTRAN idioms, I remember them well. Punch cards were a bit before my time. The one thing I don't miss is programming entirely in emacs and vi. Modern IDEs with code completion and visual modeling (and now semantic resource management) are a huge time saver. First code completion blew my mind, it was like the documentation automatically opened to exactly the right page as I typed. My taped-together copy of K&R C could go on the shelf. Now with visual modeling, I can rearrange my program structure to my heart's content before writing a single line of code. Don't even get me started on refactoring. It was impossible. Of course, with UNIX I didn't have to worry about the 8+3 file name limit, although I did write some TSR (terminate-stay-resident) programs in x86 assembly. I remember writing the UNIX "more" command for DOS with my own twist on error handling. Instead of "File not found" it would print, "So the bartender says, that's no file that's my wife!" What can I say, I was a rambunctious young scamp. I thought my home-built overclocked 286 with co-processor (I couldn't settle for just integer math, could I?) was total cyberpunk. It had a giant hard drive that sounded like a jet engine taking off when I booted. Even so, it was mostly a dumb terminal for the University supercomputers. The Convex C-220 had an awesome debugger. I managed to avoid Windows almost entirely until the late 90s when I moved to Silicon Valley.

Slow computers? I remember a scientist in the early 90s complaining about fast computers. In the old days, he'd say, he could load his data, run the program, and go off for a nice lunch. When he got back he'd have his results. Now, he'd complain, a data reduction that took 2 hours now completes in 20 minutes, hardly time to do anything! Also something about VMS being God's own operating system, while younglings like myself thought UNIX was God's own operating system.

Ah, memories...

No comments: