Print

The Trouble with Gerrold: Self-validating code



David Gerrold
Email
January 15, 2013 —  (Page 1 of 4)
At the beginning, it was called “microcomputing.” Enthusiasts were delighted at the idea that computing could finally be freed from the “priesthood.” Magazines like “Creative Computing” and "Byte” and “Kilobaud” foresaw a future when programming would be a skill as ubiquitous as reading, writing and long division.

Right. Nbdy duz lng div anymor & we all rite lk ths now.

The future refuses to cooperate with our predictions and forecasts. But aside from that, the early days of microcomputing were very exciting, because you could watch the first stages of evolution at work. There wasn’t a lot of software at the beginning. You had to write your own. So you went to the magazines to learn, and later on, CompuServe.

A useful article might explain why Quick Sort was better than Bubble Sort, comparing sort times, explaining the algorithm, and finally providing a sample code listing that you could adapt to your own use. Another article might do the same for hash tables. A third would walk you through string handling.

A lot of those early tutorials were linked to simple games like Hammurabi and Tic-Tac-Toe, so after you finished entering the code (learning as you went), you could play the game—and as you learned, you could add your own modifications. Eventually, “Creative Computing” showed how to write Colossal Cave Adventure in BASIC and store it all on two floppy disks, and that was the beginning of the text adventure explosion.

In those days, every manufacturer had their own implementation of BASIC, so listings often had to be translated. That meant learning familiarity with a lot of different dialects. When Turbo Pascal arrived, it unified a lot of software development, and because it compiled directly to a COM file, it was faster than interpreted BASIC, a very important advantage when you’re running at only 2MHz.

BASIC was notorious for resulting in spaghetti code. Turbo Pascal made it possible to write structured code. Although Pascal was originally intended as a learning language, Turbo Pascal was both an editor and a compiler. It was a powerful breakthrough for both hobbyists and professional programmers.



Related Search Term(s): debugging

Pages 1 2 3 4 


Share this link: http://sdt.bz/37303
 


Comments


01/17/2013 06:52:25 AM EST

It's funny how our different views of the evolution of languages on micros is largely shaped by which platforms we used - at the time (mid 80s and onward), what we knew seemed like the entire universe, without much more than UUCP mailing lists and BBSes to talk to others in something resembling real time. Turbo Pascal was big on the Intel PCs at the time (which we used in my high school), but the Apple ][ world was very different and still significant at that time. And in universities the Unix world, with its ubiquitous C, was just emerging (Sun 2s and IBM RTs and more at CMU) and the DEC world with VMS and its family of languages had its own niche of professional programmers, and so on. Hell, a year after I wrote a system in Turbo Pascal that ran the state math competition (Florida ΜΑΘ, using scan-trons and all that) , I was in a job writing a medical insurance billing system on PCs in a dialect of (shudder) COBOL. I wonder whether anybody has compiled (ha!) a history that tries to trace the different cross influences of the different microcomputer computing environments, both amongst home hobbyists, and research and education programmers at universities, and the more staid environments for billing and account on VMS and IBM iron (and the odder environments like LISPms like TI explorers, and so on). We all walked our own different random paths through those different forests.

United StatesTodd Masco


01/17/2013 11:17:01 AM EST

Writing software is hard. As our tools get better, the complexity of our code increases. There is almost a Peter Principle at work: Software complexity increases up to the limit your tools, processes, and people can support.

United StatesAlan


01/17/2013 04:09:33 PM EST

There's very little left to write that hasn't already been done. There are more options to do something then there are new ways.

United StatesClarence


01/18/2013 09:37:06 AM EST

There's very little left to write that hasn't already been done. There are more options to do something than there are new ways.

United StatesClarence


close
NEXT ARTICLE
Integration Watch: Gimme better tools, please
Integration tools are technically better than they were decades ago, but they still lack some basically critical things Read More...
 
 
 




News on Monday  more>>
Android Developer News  more>>
SharePoint Tech Report  more>>
Big Data TechReport  more>>

   
 
 

 


Download Current Issue
MAY 2013 PDF ISSUE

Need Back Issues?
DOWNLOAD HERE

Want to subscribe?


 
 
 
 

Events calendar tab
5/21/2013 to 5/23/2013
Las Vegas
CTIA

5/28/2013 to 5/31/2013
Boston
BZ Media LLC

5/28/2013 to 5/30/2013
San Francisco
O'Reilly Media

6/2/2013 to 6/7/2013
Las Vegas
SQE

6/2/2013 to 6/6/2013
Orlando
IBM Rational