RSS

Recent news

Stumbling Into the Cold Expanse of Real Programming

Programming in the 21st Century - James Hague - May 19, 2013

This is going to look like I’m wallowing in nostalgia, but that’s not my intent. Or maybe it is. I started writing this without a final destination in mind. It begins with a question: How did fast action games exist at all on 8-bit systems?…

More (0 comments)

A Short Quiz About Language Design

Programming in the 21st Century - James Hague - May 11, 2013

Suppose you’re designing a programming language. What syntax would you use for a string constant? This isn’t a trick; it’s as simple as that. If you want to print Hello World then how do you specify a basic string like that in your language? I’ll…

More (0 comments)

Remembering a Failed Revolution

Programming in the 21st Century - James Hague - April 21, 2013

Twenty-three years ago, a book by Edward Cohen called Programming in the 1990s: An Introduction to the Calculation of Programs was published. It was a glimpse into the sparkling software development world of the future, a time when ad hoc coding would be supplanted by…

More (0 comments)

Exploring the Lower Depths of Terseness

Programming in the 21st Century - James Hague - April 08, 2013

There’s a 100+ year old system for recording everything that happens in a baseball game. It uses sheet of paper with a small box for each batter. Whether that batter gets to base or is out—and why—gets coded into that box. It’s a scorekeeping method…

More (0 comments)

Expertise, the Death of Fun, and What to Do About It

Programming in the 21st Century - James Hague - March 12, 2013

I’ve started writing this twice before. The first time it turned into Simplicity is Wonderful, But Not a Requirement. The second time it ended up as Don’t Be Distracted by Superior Technology. If you re-read those you might see bits and pieces of what I’ve…

More (0 comments)

Don’t Be Distracted by Superior Technology

Programming in the 21st Century - James Hague - March 03, 2013

Not long after I first learned C, I stumbled across a lesser-used language called Modula-2. It was designed by Niklaus Wirth who previously created Pascal. While Pascal was routinely put down for being awkwardly restrictive, Wirth nudged and reshaped the language into Modula-2, arguably the…

More (0 comments)

Simplicity is Wonderful, But Not a Requirement

Programming in the 21st Century - James Hague - February 24, 2013

Whenever I write about the overwhelming behind-the-scenes complexity of modern systems, and the developer frustration that comes with it, I get mail from computer science students asking “Am I studying the right field? Should I switch to something else?” It seems somewhere between daunting and…

More (0 comments)

The Highest-Level Feature of C

Programming in the 21st Century - James Hague - February 14, 2013

At first blush this is going to sound ridiculous, but bear with me: the highest-level feature of C is the switch statement. As any good low-level language should be, C is designed for transparent compilation. If you take a bit of C source, the corresponding…

More (0 comments)

Sympathy for Students in Beginning Programming Classes

Programming in the 21st Century - James Hague - January 27, 2013

Here’s a template for a first programming class: Use a book with a language name in the title. Start with the very basics like formatted output and simple math. Track through more language features with each chapter and assignment, until at the end of the…

More (0 comments)

Trapped by Exposure to Pre-Existing Ideas

Programming in the 21st Century - James Hague - January 23, 2013

Let’s go back to the early days of video games. I don’t mean warm and fuzzy memories of the Nintendo Entertainment System on a summer evening, but all the way back to the early 1970s when video games first started to exist as a consumer…

More (0 comments)

 1 2 3 >  Last »