SD Times Columnists Disagree On Ruby

Allen Holub’s latest Java Watch column for SD Times says that Ruby is “certainly not” the next big thing in programming languages. He says “scripting systems (I’m reluctant to call them languages) like PHP and Ruby, … are too Wild West to be trustworthy.”

My Windows and .NET Watch column for the next issue (September 1), is titled “Ruby Read” and says that, to the contrary, Ruby seems to be poised to cross the chasm into the mainstream. Meanwhile, Andrew Binstock tells me his Integration Watch column for the September 1st issue is also about Ruby! (I believe Andrew is bearish on Ruby.)

On the internal reflector, I’ve suggested that the three of us settle this in some form of Thunderdome: three columnists enter, one columnist leaves. Short of that, we’re hoping to try to do some kind of roundtable on the subject.

(Incidentally, aside from his slaps at C# and Ruby, I agree with Allen’s column, which basically proposes that domain-specific languages may increase in importance. And, though I haven’t read his column yet, Andrew’s analyses is always solid, too.)

(Also incidentally, my column in the current issue is a comparison of Safari and Books24x7)

XNA Game Studio: Return of the Demo Scene?

I’m thrilled that Microsoft is opening up game development to non-professionals. I believe that the destruction of a steady path from enthusiast to power-user to programmer was one of the great tragedies of the 1990s. But the idea that XNA will be “YouTube of video games,” conflates “point videocamera at self and lip-sync,” and “write videogame.”

The hobbyist game development language, to the extent that the niche exists, is Flash. Microsoft’s XAML/WPF is a heck of a run at Flash, but as far as I know, it’s not going to be a part of XNA. So hobbyist developers will use, presumably, the gamut of .NET managed languages: C#, VB.NET, C++/CLI, and, I imagine, will be able to bring in at least assemblies written in other languages like IronPython, Delphi, and so forth.

This is my guess: XNA will appeal to people with a talent and interest in programming, who will quickly discover that gameplay design is an entirely different discipline. They’ll become frustrated with that idea and search for an arena in which their programming talents shine without requiring similar investments in gameplay. The result: the return of the demo scene.

Demo programming is programming (generally graphics intensive) that highlights the capabilities of the underlying hardware and the talents of the programmer. Traditionally, demos have involved constraining the program to a fixed size, but XNA for the XBox 360 has the even-better advantage of evening the hardware environment. Since all XBoxes have equivalent computational and graphics power, programming graphics on them is just like “one-design” racing.