Friday, July 31, 2009

Tech Talk

I was defending the view on the Wittgenstein list that Microsoft needs to cut loose from Visual Basic, which is holding it back, keeping it less competitive than it should be.

That MSFT has started committing to Linux is a good sign, goes with the rise of Codeplex, other FOSS commitments, the Iron (Fe) languages in particular. Fe and Hg (Mercurial), I like the sound of it.

What happened was the VB lineage sort of dead ended in VB.NET, which, as one of the other posters put it, is just C# without the semi-colons. I think that's a good thing, as C# is in the C lineage, as is Java. You're not wasting your time learning it.

However, after FoxPro, what did Microsoft have for a high level language, given VB is dead? C and Java are system languages, not agiles. Sun is working on Jython whereas PSF has CPython, both worthy projects (CPython is really the standard by which the other Pythons are gauged).

The importance of web frameworks and MVC, the consequent need for a DB API on the server, and for the ability to ship Javascript templating with the HttpResponse, are what's driving the market in a lot of ways.

GUI development has shifted to HTML/CSS and Javascript libraries (e.g. JQuery). The back end is handled by feeding multiple threads and/or multiple processes, across many servers.

However, we still need thick clients or hybrids like Java applets. Delphi is another good thick client development language, but isn't Microsoft's. Perl, Scheme, Ruby... all of these get used.

If you're on a Windows platform, I recommend cygwin. Windows started moving towards POSIX with NT, but still has a ways to go in following Apple. Wrapping a flavor of what used to be called Unix is what OS X is all about.

There's nothing to prevent Redmond from following suit with a .NET version, cross-leveraged with Mono. That's pretty much what's happening anyway, informally, with people running Qt, GTK, wx, Tk, all their other favorite thick client widget kits, atop both Ubuntu and Windows.

Apple is more in its own world, busy with iPod (a whole religion unto itself), but actually it's in the same GNU / POSIX boat as well. So we're almost there, in terms of getting almost everyone under a big FOSS tent, proprietary around the edges, lots of booths with secret sauces.

Like I'm not saying we're losing diversity, just that you won't necessarily care as much which operating system you're using. The market will still divide into Coke and Pepsi lovers, but in both cases it's dark colored with bubbles, tastes sweet, with Apple as Royal Crown.

Note I've said nothing about Google's Chrome here, more out of ignorance and out of wanting to keep MSFT my focus. Let's see what they do.