Let It Snow

We got a lot of snow over the past day or so. Hopefully it’ll be the last of it for the year. I’m a huge fan of the white stuff–it just seems to make the dreary winters around here much more bearable–but we’ve had over three feet of it before yesterday’s storm. I want to actually clean my car, and sweep out the garage, but it hasn’t been dry for weeks.

A few observations having just driven to Oakland to take Jen to work:

  • Most of the people driving today seemed to be fairly competent driving on the snow. I noticed the same thing yesterday afternoon. No one was really crawling along, and if they slide at all, they just re-adjusted and went on their way.
  • I have a new pet-peeve: pedestrians that walk on the streets when a sidewalk hasn’t been cleared. I realize that it sucks to get snow all over your pants, but I’d rather have wet pants than get flattened by a car. The roads are narrower thanks to the snow banks, and if there’s traffic coming the other way, you have to come to a complete stop and wait for the traffic to clear to avoid hitting a person.

Robert Cringley wrote an interesting little column about the setting of Sun Microsystems. The word on the street today is that Sun is trouble because while it’s been fighting the Evil Empire on one front, a second war is beginning to start with IBM and, in some part, the Linux community. Conventional wisdom says that big corporations won’t be willing to pay tons of money for Sun hardware running Solaris, when they can get Intel-based hardware running Linux from IBM. Some say that the Sun architecture, while once the king of computing, has slowly been slipping as Intel and AMD have caught up. I say that there could be some truth to that. IBM does have the potential to take a chunk of Sun’s market share, but it won’t be anytime soon.

It’s easy to be swayed by these arguments. IBM is making a more affordable product and bundling it with a free (as in beer) operating system. Sounds great. But how many of us have worked on projects or with companies that require the kind of horsepower that a real Sun server provides? I’m talking a machine with a minimum of, say, 50 processors. And maybe 128 gig of RAM. I’ve been fortunate enough to work with cllients that require this sort of firepower, and they aren’t ready to ditch Sun for anyone else, despite the high costs of licensing Solaris. Why? Well, the hardware is extremely reliable. And even if it isn’t, things like hot-swappable CPUs provide 99.99999% uptime. And then there’s the support. Something happens to your hardware? Call Sun and a tech will be there that day. Problem with Solaris? Call Sun. Sure, with Linux you have a wealth of information on the web, but unless you have Linus Torvalds or Eric Raymond as your system administrator, you’ll probably need professional help at some point.

So do I think Sun isn’t in trouble? Well, they have their problems. They’re bleeding money (roughly $2 billion a year), and other manufacturers are catching up. Sun has also started a Linux initiative, and the OS has been ported to the SPARC architecture, but the adoption rate will be slow when Sun’s version is released.

Then there’s Java. Once lauded as the be-all-end-all of programming languages, it is falling out of favor with the talking heads of the industry. Some people claim that Microsoft’s .Net initiative is taking a chunk of the market away from Java, but I don’t think that’s the case. And here’s what Cringley has to say about Java:

Even Java is becoming superfluous. Java is the Dan Marino of software. Just as the former Dolphins quarterback, Java affected the world so much that history cannot be written without its mention. But nonetheless, neither Java nor Dan ever won the big one.

What exactly is he talking about? Sure, people are beginning to realize that Java isn’t the solution for simple websites, or that you don’t create stand alone apps with the Swing libraries, but he wants us to believe that Java is on it’s way out, but he never says what is going to take it’s place.

Let’s look for second at the true barometer of the strength of a language: the number of jobs available. I’ll use our local technology council’s job board. You’ll either have to take my word it or do the searches yourself, since they use POST operations for the queries and I can’t cut and paste a URL.

  • Java: 97 positions listed.
  • C++: 83 positions listed.
  • C#: 5 positions.
  • Visual Basic: 46 positions.
  • Perl: 14 positions.

Suddenly Java doesn’t seem so superfluous in Pittsburgh. You’ll note the absence of a search on ASP/VBScript. A search on ASP returns multiple results that simple contain the ‘asp’ substring somewhere in the listing. I don’t doubt that the number of positions available fall somewhere between VB and Java numbers.

All that said, Java still has its issues. For one, the core libraries are officially enormous. Suddenly everything and the kitchen sink is included in the SDK. We don’t need this. If the downloads are all free anyway, include the core-core libraries in the SDK, and provide the other non-core (java.sql, java.xml, java.net, etc) as downloads. Then of course, there’s the issues with the JDK’s compatibility with Solaris and the SPARC architecture. Doh! How can Sun produce hardware and an operating system, build a programming language that it touts as truly write-once-run-anywhere, and then have issues with THEIR OWN OPERATING SYSTEM AND JAVA VIRTUAL MACHINE? That’s a problem.