News and views from a software developer's perspective
C# standardization moves ahead [news.com]
So, here's my experience with C#. At the beginning of this year I had in mind a software product, to be sold to consumers and small businesses, that would run only on Windows. My strong feeling at that time was that the application should be written in C#. I did not have the opportunity to develop that application. Now that I am thinking about developing it once again, I cannot see C# as a good choice in a programming language. Here's why: The application is a server-type application, ideal to run on a small computer with a small amount of processing power. Writing the app in C# would mean that it can run only on Windows. I see that as a problem. Suppose it made sense to install the server on a low-cost, low-power, network-connected device. Linux would make a fine operating system to run the application. And using Linux, rather than Windows, would probably help to shave $50 off of each device.
How many other developers make a similar choice?
Microsoft, I'm sure, understands the hestitancy of developers to use C#. I'm sure they understand this situation well before they decided to go ahead with .NET. They want developers to think that using C# and .NET does not lock them to Windows, but who is going to believe it? Microsoft has chosen to ask developers this question: choose you this day whom you will serve. If you commit to Microsoft (and .NET), you have to commit totally, or not at all.
Whither the technology treadmill? Up until 1997, the technology treadmill was accepted as gospel. I'm referring to the continuous cycle of upgrading PC hardware. In 1997, that faith was shaken. An article in Byte magazine that year described it well: buyers came to realize that whatever PC they bought would be obsolete in two years, but they also came to realize that they could do a lot with an obsolete PC. Thus, buyers just started buying PCs that were already obsolete, saving themselves a lot of money. The result of these new buying habits was a push to make PCs cheaper, and there were lots of news stories about the sub-$1000 PC. If I remember correctly, the Byte article used the term "disposable PC", describing the fact that users would be unlikely to upgrade the components of a computer -- they would just throw out the computer and buy a new (cheap) one.
The technology treadmill hasn't stopped completely. But can it continue? Obviously not forever.
I'm sure there are millions of computer users like me who wonder what in the world they need so much processing power for. I am a software developer. Software developers have traditionally needed leading edge PCs. But that's not true now. If I don't need a high-end PC, how can a mortgage broker, realtor, dentist, accountant, etc possibly need a high-end PC? How can a family at home, whose primary uses include email, web browsing, word processing, and home financing need a high-end PC?
So, that's the dilema of PC makers, Intel, AMD, and Microsoft: how to keep the technology treadmill from stalling out completely.
But, let's suppose the technology treadmill does stall. What will the computer industry be like then? Here's a message posted on slashdot:
Since competing with speed is turning out to be non-productive, the focus will be on something else, and an obvious candidate is size. Another issue I would fervently hope gets on the table is noise and power consumption.
I am sick and tired of large beige boxes sounding like a jet taking off. Having a unit like that as the home-wide server would be a dream come true. In the same way, the 'maxi'-notebooks increasingly seem like an excellent alternative to a traditional desktop, and much for the same reasons. Maybe, hopefully, we are not too far away from another format switch, where the base hardware is smaller and quieter than the stuff we put up with today.
I wish I had said that!
It's seems funny, in a way. These big companies must convince customers that speed is the only thing that matters. It's also funny that the boxes they sell are just plain ugly.
