Why No One Plays on CodePlex

In response to the post Microsoft’s Open Source Software is Junk? and the article which triggered it, I would like to offer a few comments:

  1. CodePlex is not “Microsoft’s Open Source Software”. CodePlex is a sandbox where others can create open source software based on the Microsoft platform(s). 
  2. To say there are no interesting projects on CodePlex is something of an exaggeration. To say that it is “all junk” is just a sensationalistic headline trying to suck in readers. That said, much of the more interesting stuff actually comes from Microsoft’s Patterns and Practices group (such as the Enterprise Library), and so open source zealots do not recognize it. I would agree that there are few, if any, mature projects there which did not originate inside Microsoft.
  3. Do people not enjoy developing in .NET? Well, given the number of people using it, I would say many do enjoy developing using .NET (and no, they are not all Microsoft cronies, and they are not all forced to by evil, imperialistic employers). 
  4. While there are few mature .NET projects on CodePlex, that does NOT mean open source project based on .NET do not exist. Look around SourceForge. There are a lot of successful, valuable projects there based on the .NET platform.
  5. Look at the profile of the typical open source developer. Typically, they are coming from a very anti-Microsoft state of mind. Given that, they are not likely to develop their great idea on the .NET platform (even if it would be an ideal platform for it – they are making emotional and philosophical decisions, not technical ones). Even if they can bring themselves to use a Microsoft platform, they are definitely not going to host that project on a Microsoft-controlled site, where the evil empire could steal their radically brilliant work.
  6. Until relatively recently, there were no Microsoft-supplied free tools to develop on .NET (there have been a couple of open source tools, such as #develop, which is of course hosted on SourceForge). Open source developers are even less likely to pay Microsoft for the privilege of developing on .NET.
  7. Look at the life cycle of “successful” open source projects. Apache and Linux have been around for a very long time. Of course they are going to be much more mature than anything on the .NET side (though I am not sure many open source projects in any context will have the level of success these have had). FireFox hardly started from scratch, but from a large code-base of pre-existing code. A significant advantage. If Microsoft were to open source IE, you might see a big jump in open source browser development over top of it (though I doubt it, given point (4)).
  8. The existence of successful open source projects (again, leaving aside Apache and Linux) is largely a by product of having lots of open source projects. It is like ideas, the more you have of them, the more likely you might have a good one. There are not enough open source projects on .NET to have that “critical mass”, and given point (4), there may never be.

Microsoft Unveils New Linux Hate Site?

The post Microsoft Unveils New Linux Hate Site, refers to Microsoft’s replacement for their “Get the Facts” site as a “Linux Hate Site”. I saw the same comment on Digg a couple of days ago.

What are these people smoking? Where on that site is there anything “hateful” about Linux. Microsoft is a commercial software organization. They sell operating system software, including some for servers. They consider Linux to be competition. Hence, they have content which compares their products to their competition (Linux, mainframes, etc.). In typical marketing fashion, their site shows that their products are better than the competition. It would be sort of stupid to do otherwise.

How is this different than the marketing efforts of pretty much every other commercial organization in the world?

I also noticed a rant in a comment on Digg about how badly designed the page was, because the person making the comment could not find the so-called “comparison”. I think the tabs along the top point to the comparison pretty clearly, as does the big piece of white text on bright orange background that says “Find out how Windows Server compares to Linux ->”.

The point I am trying to make here is that the Linux community damages its own cause by making meaningless, fact-deprived statements. Stop ranting about MS and do something useful.   

Is Vista as bad as they say?

Over the last few months (or the last year or more), it has become extremely fashionable to beat up on Vista. Heck, it is a great way to generate hits on you site or blog, maybe get Dugg, whether you have anything useful to say or not. I am talking about posts like this, or this, or this whole blog.

Personally, I run Vista on several machines, and have few problems which were not related to the failure of third parties to provide updated drivers, or updated versions of software for Vista (sometimes makes me wonder if there has been a conspiracy on the part of other vendors to purposely sabotage Vista – but it is more likely just not bothering to provide what customers pay for). I also still run XP on a couple of boxes, and Win2K3. On my main development box, I also run a number of operating systems in VMWare, including WinXP, Win 2K3, Fedora, Ubuntu, and several “minimalist” Linux distros for playing around with.

An unfortunate fact of life is that all operating systems available right now suck, at least in some aspect or another. Linux suffers from many driver limitations (though this is getting better), and a wannabe user interface that spends far too much time trying to look like Windows, while missing the point of usability altogether. Windows (all versions) suffer from security issues, and from performance and stability issues inherent in trying to be all things to all people. I will not comment on Mac OSX, because I have not run it. It is also kind of irrelevant, since I cannot run it unless I buy Apple’s hardware.

Vista has its own usability issues. Some that are pointed out are valid. The UAC implementation is moronic. The UI path you have to follow to connect to a wireless network is annoying. Here is one I discovered today – disk defragmentation. When you defragment you hard drive you get this useful dialog:

defrag

Isn’t that helpful? No progress indication. No estimated time to completion. Just a statement that it could take anywhere from a few minutes to a few hours. Gee, thanks.

The problem is, this kind of thing is not just a problem in Vista, or Windows in general. It is pervasive in all operating systems, and almost all software written to run on them. Most software is filled with minor little usability gaps like this.

So stop beating up on Vista (unless you need the traffic), and start thinking about how to make the whole situation better.

Anyone else out there sick of "Us versus Them"?

Well? No, I am not talking about politics, war, or religion (though I guess I could be). I am talking about the software/technology business. There are days the whole business just annoys the crap out of me. Let me step back a bit…

I was just on Google Reader, reviewing my various RSS feeds – specifically my Digg feed. I know I should stay away from that feed, but I just cannot seem to – it is like watching Fox News, or listening to clips from Howard Stern, even though I know something in there is going annoy me, bug me, disgust me or otherwise create negative feelings, I just cannot resist looking.

What typically ticks me off on Digg is a post (usually more than one) on the following ongoing us-versus-them arguments:

  1. Linux versus Windows
  2. Mac OSX versus Windows
  3. Open Source versus Microsoft
  4. Open Source versus any commercial software
  5. ODF versus Open XML
  6. Java vs C++ vs .NET versus any other language
  7. Dynamic languages versus any other languages
  8. Web Applications versus Desktop Applications
  9. And many many more

At any given time on Digg, on blogs, and in the “regular” press, you can find lots and lots of people blathering on about these subjects. Sometimes, you can even find me blathering on about them. Most of these posts are characterized by the following:

  1. They are poorly written, grammatically incorrect, etc.
  2. They are very emotional, and often hate-filled (and occasionally filled with colourful metaphors)
  3. They are low on factual information
  4. They imply (or more often, openly state) that anyone who disagrees with the post is so completely stupid that they do not deserve to live

Here are a few examples: So you think that Microsoft’s Open Office XML is ‘Teh Shiznitz’?, Virtualize Windows on Linux? Microsoft Says No Way!, Surprise: Microsoft not so ‘open’ after all?, Is the era of Microsoft Ending?, and a lot of the VistaSucks blog.

There are days that I feel if I hear/read/see one more of these stories, I am going to trash my computer, tie my belongings in a kerchief on the end of a stick and become a hobo. In a more productive vein, I would like to suggest the following guidelines:

  1. Use whatever OS you like. If you like Linux, use Linux. If you like Windows, use that. Same for OSX. Heck use CPM if you want.
  2. If you are a programmer, use whatever language you want, or which makes sense for a given project. If your employer will not let you use the language you like, stop whining and get a new job.
  3. If you like MS Office, use it. Same for OpenOffice or StarOffice.
  4. If Web Applications make sense for you, use them. If you like desktop apps, use them.
  5. Whatever you use for whatever you do, please shut up about it, and stop trying to convert everyone in the world to your point of view!

The Future of the Tablet PC (does it have one?)

Reading a post by Loren Heiny, Will the Tablet PC find a new advocate?, got me thinking (again) about the future of the Table PC – more worrying about whether the Tablet even has a future. I am worried that because of the complete mess Microsoft has made of marketing the tablet platform, without Bill’s continued visible support behind it, the Tablet will either disappear, or be relegated to a very narrow niche product.

I think I have mentioned (over and over) that I am a big fan of the Tablet PC. I think that in many respects it is far more innovative than anything to come out of Apple in the last 10 years or so. And in terms of the industry as a whole, it has opened up both a hardware and potential software market well beyond Microsoft (take note of that all you Apple fans – what has the ultimate closed source community at Apple produced that has benefited any business other than Apple?).

The problem now, of course, is that the Tablet is old news. It is 5 years old, has not lived up to early predictions that soon “every laptop sold will be a Tablet” (though in real terms has been reasonably successful), there is a shortage of really “tablet specific” or even “tablet aware” applications (notable exceptions of course are OneNote and MindJet MindManager). It has really missed the boat on the hype cycle it could have generated. And now, the primary champion of the platform, Bill himself, is no longer involved in day-to-day operations at Microsoft.

So, whither the Tablet PC? Loren makes a number of good points in the referenced article – and I will not repeat them here (hey, go read the original!). I agree whole-heartedly that the fact that those of us who support the Tablet PC have our work cut out for us if the momentum is to be maintained. I have been looking for projections about the size and growth of the Tablet PC market, but doing a Google search I do not see anything that is newer than about 2004. Are there any more current projections out there?

Another thought I had, beyond Loren’s observations, is around open source and the Tablet PC. The hardware specifications for the Tablet are fairly well defined. Unfortunately, the only software that supports it is Windows (not that I dislike Windows, but it means the entire Tablet PC industry is at the mercy of Microsoft’s decsions about continuing the platform). how about some of these really innovation open source types take the Tablet PC to new heights? Lets create a Linux-based (or not) OS, put a novel, Tablet-specific UI on it, and drive the Tablet market in that way? I know there are people out there who have put Linux on the Tablets, but I am talking more than just getting so it doesn’t crash, and works like a laptop with a funny shaped mouse. Something that really IS a Tablet computer. That would be a really innovative use of Open Source!

Thoughts?   

Linux sucks – especially Ubuntu

Now that I have your attention, let me explain. I like to play with Linux periodically just to keep current (actually, I like to play with almost all technologies, but there is just never enough time). I have also done quite a bit of development on Linux for server applications, though I must admit it has been a number of years.

This past weekend, it was time to rebuild my laptop, which I do every few months because I have a tendency to install a lot of trials and betas and other stuff that just generally polutes my system. Since I was reinstalling anyway, I decided it would be fun to use Ubuntu as my main OS, and do all my other stuff (i.e. Windows) through virtual machines. So, I downloaded Ubuntu Desktop 7.04, burned it out to a CD, booted up and away I went. For about 30 seconds. Then the installer from the disk crashed and burned. I tried it several different times, playing with suggestions I got from forums and stuff. No luck – it appears the installer did not like the X1400 video card in my Dell laptop (all pretty standard stuff). I could probably continue to play with this, and I am pretty sure I would find some way to get it installed. Or, i could use a different Linux distribution. That would defeat the point, however, as what I was really trying to check out was whether the current hype about Linux being ready to make the move to the desktop is real.

This brings me to the title of this post. Do I think Linux sucks? No, I think Linux is great. Do I think Ubuntu especially sucks? Not at all, though I did not really get a chance to find out.

As I read various blogs (Linux blogs, Microsoft blogs with comments from Linux zealots, Open Source blogs, etc.), I frequently see comments of the type “Microsoft sucks, and everything they build is crap, because I tried to install “product X” on “machine Y” and it didn’t work.” This type of broad generalization seems to be endemic in the open source and Linux communities, primarily when talking about anything Microsoft. Sure, I have run into problems installing and using stuff from Microsoft. I have also run into problems installing and using products from pretty much every software vendor I have run into in the last 20 years. It is an unfortunate fact of life (though I do not believe it has to be this way).

As much as I love open source software, including Linux, fanatics in the open source community have really been getting on my nerves lately (it is much the same way I feel about golf – I love golf, but golfers annoy the heck out of me).

So, by the logic of the open source world, am I justified in saying “Linux sucks – especially Ubuntu”?