J-F Bilodeau's Blog @ chronogears.com

Wednesday, July 30, 2008

Having a Microsoft Day

What a day yesterday.

I had the dubious pleasure of delivering a SharePoint 2007 development course. The course was set on a Windows Server 2008, running SharePoint, IIS, SQL Server, Visual Studio and Office 2007.

My training career spans more than 10 years, and I've seen courses that went smooth as silk and courses that went terrible. However, I have never encountered a course as difficult as the one I just delivered.

A couple of crashes is to be expected, but to have Internet Explorer 7 crash every five minutes (literally!), and Visual Studio crash at least two dozen times and IIS blow up for no reasons is something I have never seen. As for the overall performance, let's just say that the course made very powerful machines look rather wimpy.

At least the participants had a chance to learn what they came to learn, and left reasonably satisfied. On the other hand, I'm not satisfied, since I know the course could have gone much more smoothly.

Oh well, it's water under the bridge and another nasty Microsoft story to add to my bible. for now, I'm back with my Linux machines, where souped-up hardware is not necessary to gain decent performance. Things work. I'm happy.

Labels: , ,

Thursday, June 26, 2008

How Microsoft Won and is Loosing



Steve Ballmer had it right. Developer developer developer!

The prime reason why Windows won over OS/2, the MacIntosh and even MS-DOS was thanks to the mighty influx of application that crept up for the OS. And the only way that those applications existed was thanks to developers.

Thought the Windows API are not the most graceful API I've encountered, they were reasonably well documented. I learned the Win16 and Win32 APIs mostly by reading the MSDN help files.

Using the simple tactic of ensuring that developers would favour the Windows platform early on, Microsoft achieved dominance in the operating system market.



But what is happening today? Balmer has been singing a different tune for the past few year. Since the rocketing rise of Microsoft's stocks capped in 2000, the behemoth is now struggling to pierce new markets while retaining their heavy monopoly.

It's interesting to see Microsoft running like a chicken with it's head cut off. Vista is a disaster, they are still loosing money in their search and gaming division and .NET is barely making a dent in the Java marketplace. Let's not even mention their iPod killer: the Zune.

If it wasn't for the near monopoly on Windows and Office, Microsoft would be hemoraging money faster than the speed of sound. BANG! Bankrupcy before they know it.

I think the reason is pretty clear. Microsoft is now spitting in the face of the very people that brought them to where they are: the developers.

Balmer himself said that he would like open source innovations to happen on Windows. However, he seems (or chooses) to be clueless about the free software philosophy.



Balmer can push all he wants, but he should realize that developers are usually intelligent folks. Many open source developers are quite brilliant. I do believe that most developers can smell bullcaca when it is spewed out of someone's mouth.

Genuine honesty free of marketspeak is not something you often hear from Microsoft!



It's certainly not by forcing proprietary software or standards down the FOSS developer's throat that Microsoft is going to win any friends. Neither is it going to give developers the desire or even the posibility to innovate.

Personally, I like computers to work for me and not the other way around. That's one of the many reasons I don't use Windows &mdash I cannot stand an OS that thinks it can tell me how I should work.

Labels: , , , , ,

Friday, June 20, 2008

ODF is the Winner: Microsoft

I'm kinda worried when Microsoft themselves declare that ODF is the clear winner in the OOXML-ODF war.

However, I think I can agree with Microsoft. The whole ISO/OOXML saga gave ODF a huge boost both in terms of popularity and credibility. This means that more people and organizations are aware of ODF than ever before.

I've long learns not to take anything Microsoft says at face value, so I'm a bit concerned about the statement. Maybe the statement is genuine, but I can't help but think that Microsoft has something up their sleeve. Until they display they ace, I'll keep my eyes and ears open.

Labels: , , , , ,

Thursday, June 12, 2008

Microsoft and Québec

"Vive le Québec Libre!"

I'm both honoured and weary of Microsoft's reach in Quebec.

The honour comes from the fact that Microsoft is calling their next version of Windows Embedded 'Quebec.' It's nice to see Canada recognized again.

However, using Canadian landscapes to win me over. Things like recognizing the GPL and supporting standards (instead of redeveloping them) would make me look at Microsoft again.

I'm also weary of Microsoft and their deal with the government of Quebec. Microsoft recently objected public access to the deals, since it would "likely risk to cause serious prejudice to our client and would procure the competition an appreciable advantage and would substantially undermine the competitivity of our client."

What I find interesting is that both IBM and Novell had no quorum against exposing the deal. So, what does Microsoft have to hide? What kind of prejudice would it place on the government of Quebec? If Microsoft feels that if would procure a appreciable advantage to their competition, does that mean that Microsoft has priced their products well above that of their competitors? What else was in the deal?

I'll keep my eyes on http://blogs.savoirfairelinux.net/cyrilleberaud/ and see which way this story goes. I'm sure it worth it!

"Vive le Québec Enchainé!"

Labels: , , , ,

Monday, June 2, 2008

The MS-OOXML Standard

Venezuela appealed OOXML as well, following the lead of South Africa, Brazil and India. Norway has also filed a letter of protest.

Though the news is interesting, what I find even more interesting is that it seems that even discussion of OOXML usually leads to Microsoft and/or Office.

The reason why I find this interesting is that no other companies are ever mentioned as direct benefiters beyond Microsoft. If the standard is truly a standard, why is only one company's name attached to it.

It's true that Microsoft created the standard, but why is Corel or Apple — supposed backer of the standard — never mentioned? Why are so many headlines along the line of 'Microsoft looses OOXML war?'

I don't know about you, but that tells me that there is only one company that stood to win from OOXML, and that's Microsoft. Let's face the fact: Microsoft did not create OOXML out of the goodness of their heart, or with inter-compatibility in their mind. OOXML was simply another tool in their lock-in arsenal.

Though ODF, MS-OOXML's so-called competitor was created originally with OpenOffice in mind, it has grown and evolved thanks to their own standardization process. Companies like IBM, Novell, Sun Microsystem and Google all participate to the development of ODF.

In the case of OOXML, who gets to participates in its future development?

Here's a hint

This is one of the many reasons I cannot support any Microsoft-controlled technologies or standards. No matter how 'open' they claim to be, Microsoft develops in secrecy, and announces specific features as they are getting close to completion. This ensures that any competing project continuously have to play catch-up with Microsoft. The standards controlled by Microsoft are pegs in the sand, and it's Microsoft that chooses where to put those pegs.

Who wants to play a game against an opponent who is also the referee?

Labels: , , , ,

Sunday, June 1, 2008

Good News All Abound

Yay!

OOXML has been formally appealed by South Africa, Brazil and India. Microsoft has announced that they will support ODF 1.1 in Office 2007. However, they will not even support OOXML until the next version of Office.

To keep up with the good news, Internet Explorer 8 will finally be standards compliant. As a web developer, this is such a relief! No more double standards for web pages.

Furthermore, thanks to the success of the Eee PC, Linux is becoming more and more ubiquitous. Desktop Linux is, in my (no so) humble opinion at a level that is above that of Windows and the Mac. Not only do you have choice, but if you compare the ease of use of Gnome or KDE, I think that Linux is a powerful contender. The only obstacle that remains is education. Windows users need to unlearn things like C:\ drives or the pain of running setup programs.

Finally, even Novell is reporting success in the Linux front. I took the plunge and installed Novell's openSUSE, and thus far I'm greatly enjoying it. As much as I like Ubuntu, I would hate for a single Linux distribution to become the 'defacto standard,' just like I would hate to see Gnome or KDE displace one or the other. Choice and competition are good.

I'm so excited to see real competition gearing up in the world of informatics. I'm afraid that the Microsoft monopoly has set us back a number of years from where we could be in terms of technology. For example, it if hadn't been for Internet Explorer slowing the adoption of standard HTML, then CSS, where would the web be now?

Oh well. That's water under the bridge. Now that we are freeing ourself from the Microsoft stranglehold, who know what real innovation we are going to see in the world of computing.

Labels: , , , , , , , , , , ,

Tuesday, May 20, 2008

Windows Vista is No Help

Since my work laptop is being repaired, I have the pleasure to work on another laptop running Windows Vista. I feel like I'm working on a poor imitation of Mac OS X that has been designed by a marketing committee. Actually, the whole thing feels like it was designed by multiple committees, each striving to do their best job, but always having to compromise to meet the needs of another committee. Unlike the Mac OS, or a Linux Desktop, it has no personality — no soul. I think that Vista should win the Best Jumble of Ideas with the Worst Implementation Possible award.

Here was my surprise this morning. I was working in Microsoft Access 2007, when I accidentally hit F1. For those who may not know, the F1 key is typically used to bring up the help.

And help it did bring me indeed. Here's the screenshot:

Windows Help and Support: Why can't I get help from this program?

Wow. So, I can't open Office 2007's help on Windows Vista. Did two committees forget to meet?

Here's the official reason why Windows Help is no longer included in Windows:

Ever since Windows 3.1, Microsoft included the Windows Help program (WinHlp32.exe) with new releases. WinHlp32.exe is used to view 32-bit Help files that have the .hlp file name extension. Starting with the release of Windows Vista and Windows Server 2008, Microsoft has decided to no longer include in WinHlp32.exe as a component of the Windows operating system. Microsoft made this decision because WinHlp32.exe has not had a major update for many years, and it does not meet Microsoft’s standards for all new Microsoft programs. Microsoft realizes that this may cause some difficulties for customers who want to upgrade to Windows Vista or to Windows Server 2008 but still rely on 32-bit .hlp files. Therefore, Microsoft is making WinHlp32.exe available as a download from the Microsoft Download Center. (Source)


So, an incomplete product is considered a higher standard than a product that is used by millions of people but has not been updated by the very company that made that product. Wow. I'm sure if I were a Microsoft customer, I'm sure I would feel content knowing that Microsoft is watching out for my best interest. I mean, I'm sure glad Microsoft invested in transparent title bars (that I had to turn off) instead of updating such a crucial component to Windows.

Which brings me back to an earlier question: What the heck is Windows anyway?

Labels: , , , , ,

Friday, May 16, 2008

Microsoft Windows for (Nearly) Free?

This is a follow up to Microsoft Windows for Free?

Shortly after I wrote this entry, a couple of interesting events occurred. As I predicted, Microsoft went ahead to compete with Linux on ultramobile PCs (UMPC) like the Eee PC. They are now offering Windows XP Home for $32 US. It's not free, but it's getting close to cheap. Actually, it's not free in either sense of the word, since Microsoft dictates what it considers a UMPC. The maximum specs are: 1G of RAM, 80G of hard disk space, single-core processor running at 1Ghz, screen size of 10.2 inches and no touch screen capability. Anything higher than that requires the vendor to buy Windows XP at their regular price.

That's fair. It's their product, so they can choose how it's licensed. However, I fail to see how they plan to compete with Linux on this field with those restrictions. Furthermore, the $32 US is only for Windows. This means that if you want Word or Excel, be ready to fork out more money. I'd be surprise that Microsoft would allow the vendors to ship Windows with OpenOffice prepackaged. Have fun playing Minesweeper!

With Ubuntu, I have a full fledged desktop with my office suite. The full install that takes up less disk space than Windows — And the $32 stays in my pocket.

Another interesting event is the fact that One Laptop Per Child (OLPC) recently announced that they would support Windows XP on the XO laptop. What a shame. To me, that alienates the whole concept of the XO — learning. How can they learn in a closed, controlled and censored system that greatly limits their freedom. Some of those children who are growing up in a dictatorship are denied yet another freedom. That is a massive loss for them.

Those poor children are denied freedom in the world of computing to further entrench the monopoly of an American company. I cannot help but wonder what goes on in the mind of folks who are more concerned with buying yet another, bigger yacht on the back of those children.

I remember in the early days that OLPC decided that the XO should only use free software (as in free speech). Thus, both Windows and Mac OS X were refused early on. Steve Jobs, president of Apple, went as far as offering Mac OS X for free (as in beer) for the XO, but was denied, since he would not free (as in speech) the software.

In their 'philanthropic' move, Microsoft is charging about $3 for Windows XP. Of course, that does not include Office or anything like that. Just Windows (Yay! Minesweeper!). Furthermore, to allow the XO to dual boot between Windows and Linux, the machine will cost an additional $7 to make.

Since Microsoft is all about their image, I was surprised that they did not offer Windows for free as Steve Jobs did with Mac OS X. I mean, $3 per copy isn't going to register a blip on Microsoft's revenue radar. So, why?

The only thing I can see is anti-thrust. Microsoft is having enough problems with the EU and the Department of Justice, that they may be reticent to offer Windows for free out of fear that it will be perceived as an anti-competitive move.

Though I may be painting Microsoft as a nasty, greedy ogre, we have to remember that they cannot force people to buy their products. They are doing a fantastic job of both painting their software as the 'only' option and — more importantly — hiding the true monetary cost of buying (and using) Microsoft software.

As long as the average consumer remains ignorant of both of those aspects, they may never realize that there are alternatives — much less of the need for those alternatives.

Labels: , , , , , , , , ,

Monday, May 5, 2008

Thank you Microsoft!

Microsoft is considered by many open source advocates to be the arch-enemy of Linux and free software. I think it's fair to say that Microsoft fears the success of Linux and the free/open source movement. They are doing their best to make compete. However, free software is not their traditional competitor.

Because GNU/Linux is free (as in speech), and is freely (speech & beer) available to anyone, they cannot buy it out and close it as they have done with some past competitor. Because free software is developed by a (tightly or loosely knit) community that may or may not receive corporate sponsorship, they cannot hinder the development. Because the software is free (as in beer), they cannot compete in terms of price. Even Internet Explorer is more expensive than Firefox. Though it may be a 'free' download, remember that you must buy Windows to have Internet Explorer. Thus, as part of what you pay in Windows, you also get Internet Explorer. In other words, Internet Explorer is just another (unfortunately inseparable) component of Windows — not a free download.

Finally, Microsoft cannot compete in terms of freedom. Their End User License Agreement (EULA) determines what you can and cannot do with their software. In the free software world, the license protect both your freedom to use the software, and the freedom of the software.

So, how is a multibillion dollar corporation to compete against the penguin and the likes? FUD is their answer. FUD stands for 'Fear, Uncertainties & Doubt'. Or, in Microsoftspeak, 'Get The Facts.'

In the hopes of driving people away from Linux and free software, Microsoft created a site called getthefacts.com. The site is a direct attack on free software. Though the so-called 'facts' presented by Microsoft are an assault on both intelligence and reason, I think that the biggest looser of the site is Microsoft and a major victory for Linux. For starters, I think that any reasonably intelligent person understand that asking a Honda salesperson what they think of the Ford Focus over the Civic will not get them an unbiased, objective answer. Why should it be any different with Microsoft?

What MSFT may not realize is by setting up getthefacts.com, they have provided immense exposure to GNU/Linux and the free software movement. The website presented free software as a true competitor and alternative to Microsoft products. Folks that had never heard of Linux before are now becoming aware of it thanks to Microsoft. Furthermore, IT directors who rely on Microsoft to keep them up to date with the industry are kindly informed of alternatives to Windows and Office.

For this, I say Thank You Microsoft. There is nothing like corporate backing to promote free software. After all, it's time that Microsoft catches up with the market, and joins the ranks of Novell, IBM, HP, Apple, etc who are all users and backer of free software.

Labels: , , , , , , , , , ,

Monday, April 21, 2008

Beware the Microsoft Poison Pill

As someone who uses mostly free and open source software, I can't help but be wary and cynical of Microsoft's position toward open standards.

If you are wondering why many of the members of the open source community feels that way, here are some facts:

Microsoft is well known for their Embrace, extend and extinguish (EEE) tactic. The moment a standard comes out that is supported by the industry, Microsoft launches their old tactic. They will 'adopt' the standard. Make changes to it that will only work with their software, ensuring that the standard becomes a Microsoft-only standard. Then, when the competition is mostly dead, they drop support for it.

Here are some notorious examples:
  • Refusing to support CSS standard for nearly a decade to ensure that webpages had to be formatted specifically for Internet Explorer.
  • Attempting to break Java's write-once-run-anywhere promise by adding Microsoft-only extensions.
  • Support for Unix applications using POSIX
  • Support for OpenGL to which Microsoft created a competing standard: Direct3D.

Each of the above technologies were once embraced by Microsoft, and most of them have been mostly abandoned. There are many more examples.

Another notorious tactic is to release multiplatform products to accelerate their acceptance as a 'standard,' then abandon support for those products. Examples include:
  • Internet Explorer for the Mac and UNIX.
  • Windows Media Player for the Mac
  • 'Sponsoring' Silverlight on Linux through Moonlight.

In the words of PJ from Groklaw, 'People aren't as dumb as Microsoft needs them to be' and I'm very thankful for that. Sure, there are folks that are strong partisans of Microsoft, paid or not. However, I think that the majority of the world is starting to realize that Microsoft is not all the gold and glitter they pretend to be. The EEE tactic is starting to backfire at Microsoft. For example, Opera has recently filed a lawsuit against Microsoft. In their press release they make mention of the "Embrace, Extend and Extinguish" strategy by name.

But EEE is not the only tactic that Microsoft uses, especially recently. I may not be a fan of Microsoft, but I don't think they are stupid. They are not where they are today in the marketplace out of blind luck (neither are they where they are because of technical superiority). The other tactic used by Microsoft which infuriates me is their total refusal to embrace standards. Be careful, I'm talking about embracing, not extending. Microsoft has split the market countless times by creating their own proprietary standards.

Examples of established standards Microsoft is refusing to support are:
...and the list goes on.

Some may argue that to remain competitive, Microsoft should not have to adopt competing technologies, but that's a fallacy. For starters, many of these standards existed before Microsoft created their competitors. Also, if Microsoft is not required to support 'competing' standards, their competitors should not be required to support Microsoft's proprietary standards either. Hint hint: Mono & Moonlight.

The latest trumpet blow from Microsoft is Open. You've got the Office Open XML, the Open Specification Promise, Microsoft Open License, Microsoft Open Value and even (GASP!) the Open Source Heroes. Now, how many of these so-called open initiatives actually are compatible with the free/open source software philosophy? As usual, Microsoft dances around the real issue: GPL compatibility.

So, how is this new tactic different from EEE? It's not. And that what I want people to realize. Microsoft is in the stage of Embracing and Extending open source. They are attempting to create a powerful divide between the 'Microsoft Open Source' and real free software (à la GPL) so they can move in for the Extinguish stage. I cringe every time Microsoft uses the word 'open' just as I cringe when someone pronounces my first name like that of a popular denim wear. It's not right to my ear. It's an abuse of the language that I'm familiar with. Furthermore, unlike Alanis Morrisette's poetic use of the word ironic, Microsoft is purposely muddying the water of the language to spread a thin layer of FUD jam to conceal their poison pill.

So, next time Microsoft slaps together a marketspeak sentence with the word open strewn in, look up Embrace, extend and extinguish, and think twice before you hop on the bandwagon, because it is not going in your direction. The Microsoft Open Bandwagontm is headed in one direction only — towards 1 Microsoft Way, and the ride can be very bumpy.

Labels: , , , , ,

Saturday, April 19, 2008

Poking a bit of fun at Windows Vista

I was googling stuff while preparing my next article, when I came upon these two hilarious YouTube videos.

The first one shows how desperate Microsoft is to sell Vista to the enterprise market. The next is just too plain hilarious.

Hope you enjoy!



Labels: , , , ,

Friday, April 18, 2008

If it breaks, who do I blame?

A question I get in almost every seminar I present on topics like open source or Linux is: if the product fails, who can I yell at?

In other words, they are looking for a massive, faceless corporation they can call to complain (and sue). In the open source/Linux world, who can you scream at?

I think it's a valid concern ranging from home users to operators managing the information technology infrastructure of million dollars businesses. But is free software really that much of a risk compared to proprietary software?

If you download and install any piece of software licensed with the GPL, you will notice that the license boldly states that the software comes with no warranty whatsoever. In other words, if it breaks, you have no one to sue. Should you go back to proprietary software then?

If a warranty and support is the only reason to use proprietary software, well, you're in for a nasty surprise.

Let's take a look at a couple of commercial licenses:

To paraphrase the Microsoft Windows Home edition EULA, you have no warranty. Should the software not meet your needs, you have 90 days to ask for a refund. Should it cause your computer to meltdown, your claim is 'limited to the greater of the actual damages you incur in reasonable reliance on the Software up to the amount actually paid by you for the Software or US$5.00.'

I would love to peak at the Microsoft Office 2007 License, but it's in an EXE file. Strange that you need Windows to be able to see a license. Oh well, if Microsoft wants to be incompatible with the rest of the world, that's their choice.

The Adobe Photoshop CS3 license is not much more promising. Again, you have 90 days to ask for a refund. After that, you're on your own.

I'm assuming that if you feel that running proprietary software is preferable over open source, then you probably pay for an anti-virus. Here's the McAfee EULA. Aside from the warranty lasting only 30 days, the rest sounds awfully familiar. I don't know about you, but after a while, all licenses starts to sound the same, don't you think?

Just for giggles, let's take a look at one more license from a company that 'thinks different.' Can you guess who? Here's a link to their licenses. Any surprises over here? Not in terms of warranty, but looking at section 2.B, there's a mention of open source software included with the product. So, it seems that some software vendors do take a byte out of the forbidden fruit called open source.

So, are you still convinced that proprietary software offers better protection? But what about service and support agreements, you say? Microsoft will happily lighten your wallet in exchange for a phone number that you can call if you're up the creek without a paddle.

Here's the kicker. If you are in a situation where support is a requirement, that is readily available to you. You need help with your Ubuntu setup, call Canonical. You heard that PHP is a great web development language but want support, call Zend. What's a website without a database in the back end. Let's install MySQL and call Sun Microsystems for a support agreement.

If this is too many companies, you could look at one-stop single-vendor support from shops like IBM, Sun or even Novell.

And hey, if you're looking for friendly, personable support in Ontario or Quebec, call Farstar Networking.

By considering free and open source software as an alternative, not only do you get the complete source code to your application (which you don't with Microsoft), you can also get support. The choice is yours.

I'm hoping that this is a bit of a wake up call. I've seen a number of article discussing the virtues of single-vendor or multiple vendor-solutions. However, it sometimes seems like Microsoft is the only single-vendor solution out there. They may also seem to be the only one who is on solid financial grounds. If that's your opinion, be aware that when you buy Windows of Office, you are subsidizing their Internet and game division, which is known for losing money.

It may be surprising to know that Microsoft is not the only company that is making a profit. Open source is a billion dollar market that Microsoft has not been able to tap. Others are already tapping it.

So, next time you have a need for a new server or home computer, before you hit your quick dial button to Microsoft Sales, how about you place a few calls around. You may be surprised as to how much you can save in the short and long term.

And you can still have someone to blame if it doesn't work. Except you get to keep the code. What more could you want?

Labels: , , , , , , , ,

Wednesday, April 16, 2008

Microsoft Windows for Free?

How is Microsoft to compete? I mean, Mac OS X Leopard is $129 CAD, Mandriva Linux is about ~$80 CAD and Ubuntu is free.

Windows Basic, on the other hand is (GASP!) $199 CAD! And it does not even come with an office suite. You definitely get more bang for you buck with Ubuntu.

This brings me to two big questions.

The first one is: What exactly is Windows? I get a fat DVD which will eat a sizable chunk of my diskspace. It lack drivers for some older and even newer devices, and the closest thing you have to a functional word processor is WordPad. Whoopdidoo. I fell like I'm really getting value for my big, fat $200 dollars. Well, I guess that's Microsoft privilege to charge whatever the hell they want for their operating system. That's the beauty of having a near monopoly.

The second question I have is: How is Microsoft going to compete? Computer are getting dirt cheap. The Asus Eee PC is changing the way people think of laptop in terms of size and price. At the rate prices are going down, more than half of the computer's price will be for Windows Vista Basic. Even now, it is possible to buy a laptop at FutureShop for less that $500 CAD. How much of that $500 goes towards Windows?

At the rate things are going, Microsoft is going to have to dramatically reduce the price of Windows. I personally feel that $200 for a 'basic' version that allows me to surf the web and the privilege to install spyware, is highly unjustified. Especially when I can get a complete system that includes my office suite and development tools for practically nothing.

Or maybe the high price tag is to help support emerging markets? Since Microsoft is so altruistic, they will charge the develop world more to help subsidize Windows for the poor. What a nice robin-hoodish, humanitarian approach...except for the fact that the Robin Hood we are talking about here has more gold in his coffer than all the rotten sheriffs in the world. Furthermore, this Robin Hood is gladly charging the poor.

Once again, since they have a monopoly, it's only natural that they choose how much they charge. For years, it was easy to hide this Microsoft Tax, since a computer typically went for thousands of dollars. Now that computers are barely half a grand and that the price of Microsoft Windows keeps increasing, this tax is quite noticeable. People will quickly realize that an Asus Eee PC preloaded with Linux actually offers a lot more out of the box than the same Eee PC loaded with only Windows.

That brings me back to my first question: What the heck is Windows anyways? What am I paying $200 for?

Labels: , , , , , , ,

Tuesday, April 15, 2008

Hold the Mono, please

Does Microsoft innovate? I think so, but not as much as people think. They are very good at taking existing ideas, and adapting them to work only on their products.

This leads me to the .NET Framework, their competitor to the Java programming language. Java is a programming language that has been around since 1995 and has enjoyed tremendous success in the computing world. Its success is due to a number of factor. Personally, I feel that Java succeeded because it used and encouraged a number of best practices, like forced exception checking, strongly typed language and taking full advantage of object orientation as well as design patterns. Furthermore, Java evolved through the Java Community Process. The JCP is a process managed by Sun Microsystem, the creator of the Java programming language, that allowed interested parties to participate in the development of the language. This means that Java is not the brainchild of solely Sun Microsoft, but also that of IBM, Borland, Novell, and many other organizations. Because many organizations actively participated in the development of the project, this encouraged adoption.

Today, the success of Java is undeniable. There is one company, however, who is directly threatened by Java, and that is Microsoft. One of the early promise of Java was write-once-run-anywhere. That is, you write your computer code once, compile it, and then you can run it on Windows, Mac OS X, Linux, your cellular phone or whatever else you'd like! This is a reality today. I do a lot of Java development, and use a lot of Java programs on Linux, the Mac and Windows.

It works. Microsoft does not like this. They would prefer that applications are written for Windows and stay on Windows.

To achieve that end: enter the .NET Framework. Microsoft created .NET as a response to Java. To compete, they create a language that superficially resembles Java called C#, and a framework that is tooted as write-once-run-anywhere. They even went a step further and got part of the .NET framework standardize with the ECMA.

Just like Java, the success of .NET is undeniable. Let me be the first to say that Microsoft actually came out with some cool ideas. I like LINQ and I think that Workflow Foundation will be an important set of API in the future.

However, I will not develop open-source application with .NET for two reasons:

1. It is not free software. Java has recently been freed by Sun Microsystems. Yay! I hope that this will continue to speed the adoption of Java on Linux. However, .NET is not free. Microsoft owns a number of patents on .NET and has yet to provide a license to their intellectual property that is compatible with the GPL. Until Microsoft opens .NET, I will not touch it with a ten foot pole on Linux.

2. It is not write-once-run-anywhere. It's true that I can create a .NET application on Windows and run it on Linux. However, please repeat after me: .NET is not write once run anywhere. Saying that .NET works on Linux is bullcaca.

For starters, there is a project that is sponsored by Novell (and indirectly, by Microsoft) called Mono which permits the development of .NET applications on Linux. However, repeat after me: .NET is not write-once-run-anywhere. I need to get that into your head. Sure, it looks like it's portable, but here are the problems you will encounter:
  • The API to write GUI (windowed) application is meant to run on Windows. Whatever application is created on Windows with .NET will look good on Windows, but look like crap on Linux. Futhermore, Mono has its own GUI API that is incompatible with the one provided by Microsoft. This means you either create your .NET application to run on Windows or Linux. Say bye-bye to portability. Score 1 for Microsoft!
  • Microsoft is introducing more and more Windows specific API. Just the names of the APIs should give you a clue: Windows Presentation Foundation. Windows Communication Foundation. In other words, Microsoft is making sure that your write-one-run-anywhere investment is glued to the Windows platform.
  • The is no community process. This means that Microsoft has sole control over the direction of .NET. Don't go whining to Microsoft that your gorgeous .NET application looks like crap on Linux and does not work on your Mac. They don't care. Actually, that's a lie. They do care. They care that it runs on Windows and only on Windows. You can expect more and more Microsoft Windows specific API on .NET masquerading as 'open,' 'portable' APIs.
  • You are creating .exe and .dll files. Unlike .class or .jar files in Java, These files are Windows specific. They contain MS-DOS and Windows code. In a Java application, there is not a single line of platform-specific code. That means that Mono has to be able to load a Windows executable on Linux. For something that is supposibly portable, it sure carries a lot of Windows with it.
  • But Linux already has strong support for .NET with Mono! you say? So, why not use Mono? The reason is simple. It's a Microsoft technology. It belongs to Microsoft, and should they decide your Mono application is eating away at Windows market shares, prepare to receive a kind letter from Microsoft politely indicating that since you are using their intellectual property, you owe them $$$.
  • Though I doubt that Microsoft will ever collect open source developer for the use of their so-called intellectual property, I think that the real problem will be that Mono on Linux will forever play catch-up with .NET on Windows. Who wants to use a 'write-one-run-anywhere' technology that is one or two years behind on some important platforms? Either you write a Windows-only application in .NET, or look at alternatives.

.NET exists solely to further Microsoft's agenda. Anyone that chooses to use Mono on Linux is kindly helping Microsoft achieve that agenda. Yes, there are some cool ideas in the .NET framework, but most of those ideas are copied from existing languages. For example, I've been using workflow management API and designers long before Microsoft came out with the Workflow Foundation API.

Before you consider Mono, please take a look at what's available on Linux already. You want true write-once-run-anywhere? Java is one solution. Not good enough? What about Python? Pascal? PHP, C/C++? Need I go on?

Linux is where it is today not because of heavy-handed sales tactics or razzle-dazzle marketing, but by its own merit. Let's continue to develop Linux through it's own merit.

We will not innovate if we follow the Microsoft path — that is, mostly copying what others are doing.

As for me, I think my plate is delicious as it is. I'll hold on that Mono sauce, thank you very much!

Labels: , , , , , , , , , ,

Thursday, April 10, 2008

Three good news

OOXML got voted in at the end of March, but Microsoft has not necessarily won.

I applaud the people of Norway who openly protested OOXML. I hope this is not the last of those protest.

Also, while the EU is investigating Microsoft, a member of the EU Parliament asked that Microsoft be excluded from public procurement. If that motion goes through, that would be a major blow to Microsoft's monopoly.

Finally, Microsoft has 'released' 14,000 pages of 'secret' protocols and APIs. Personally, I see this as Microsoft's attempt at easing the EU's antitrust concern, and also as Microsoft's attempt at locking developers on their platform. Microsoft is not stupid, and know that they need to adapt to the emerging changes and competition facing them. The fact that they release the documentation is not the good news. As I mentionned before, it's just an attempt at furthering their lock-in. However, it's definitely sings that they are feeling the pressure.

Let's hope the good news keep coming!

Labels: ,

Wednesday, April 2, 2008

A Linux Dude Installs a SharePoint Server

Today, I had the dubious pleasure of having to install SharePoint 2007 on Windows Server 2003. Yay!

I'm a Linux user. I enjoy working with Ubuntu amongst other distros. I can setup LAMPs (Linux, Apache, MySQL & PHP|Perl|Python) with my eyes closed. I mean, I spend more time waiting for my package manager to download the packages than I actually spend configuring stuff. All the tools I need are immediately available at my fingertip.

A colleague of mine who is well versed in the Windows world kindly setup Windows Server 2003 on a laptop. He even installed drivers (they don't come with the OS?) and service pack 2. Now, it's my turn!

So, how does one install a package on Windows?

I easily found the 'Add or Remove Program', but quickly learned that it was more along the lines of 'Remove Programs'. I mean, I could only find the option to remove existing packages. There was no option to search for packages to install or how to configure your application repositories.

That's when I remembered that most Microsoft programs come on CDs. I found a CD for SharePoint 2007 in the office. This may not be so hard after all.

Now, with the laptop in one hand and the SharePoint 2007 CD in the other, I'm ready to rock! I slap in the CD, and wait for an install program to pop-up.

Instead, Internet Explorer 6 pops up with a security security warning. Click OK, and I'm brought to a little webpage that contains a confusing collection of links. After I find the link to the SharePoint installation program, it opens Windows Explorer, exposing a file called setup.cmd.

That looks kosher, so I double click on it. Oups! Looks like I need the .NET Framework 3.0, SQL Server 2005 as well as IIS 6.

So, how does one go about installing SQL Server 2005, .NET 3.0 and IIS 6? Why can it not take care of it's dependencies like my package manager on Ubuntu? This seems like a lot of trouble just to install a web application. One of the things that makes Windows so difficult to use it the lack of a solid package manager. Microsoft really needs to work on that before I can take Windows seriously. I feel like I'm back in the stone age where I have to manually download and compile stuff. I can already tell that installing SharePoint 2007 is not going to be a walk in the park.

I didn't chance Add or Remove Program again. I went straight for the CD. Going trough the setup was reasonably painless. However, I'm surprised as the number of steps (screen, windows, whatever) one has to go through just to install a database server. Why can't Windows keep things simple?

Now, onto the .NET framework 3.0. Before I started to look for yet again another CD, I though to myself mdash; there has to be an easier way! Thankfully, I've had enough experience with Windows to know about Windows Update. It took me a moment to find it in the Start menu. There were nearly two dozen updates. This is not concerning to me, since in Ubuntu, I may get dozens of updates for all my installed application (and I have a lot!). However, I'm concerned that the vast majority of my update are security related — and these are only for the OS.

Interesting, Internet Explorer 7 is a recommended update, but .NET 3.0 is an optional update. Nevertheless, I select all recommended updates as well as .NET 3.0. Click the button, and KABOOM! All the updates fail to install. The carefully worded error message recommends that I try again, otherwise, look up troubleshooting in the help.

I try again...and again...and again to no avail. Even a single update fails. So, I click on the convenient URL that links to the help. As convenient as the link seemed, the help was not.

Being in foreign territory, I turn to my Windows guru. After reproducing my steps a couple of time, He recommends a reboot.

Miraculously, rebooting worked! The updates downloaded and installed without problem mdash; except that I had to reboot twice more. I guess they were mostly kernel updates. How often do you have to reboot Windows? I have some server that have been live for over a year without reboot. I wonder if I could do the same with Windows...

I've also noticed that Internet Explorer required a couple of clicks to installs, and performed some work at boot-up. I wonder what kind of browser needs to spend about a minute setting itself up after a reboot?

Alright, so after a few reboots, I now have the .NET framework 3.0 installed. Now, to IIS 6.

This one took a bit of searching around. I found it where I kinda expect to find it but could not see it at first. There a 'button' on the left side that says 'Add Windows Component.' The button brought me to a dialog that I remember from the days when I first installed Windows 95. Digging in there, I found IIS 6.0. Thankfully, I love Java. When I saw Application Server as a category, I immediately clicked on it to see if JBoss or Glassfish was included. My first surprise is that there were not. My second is that IIS is considered an application server. I would have though it's a web server. But who am I to argue with Microsoft?

I select IIS 6.0 (including ASP.NET, which is not included by default), and clicked install. Windows prompted me for the original CD. I could not find a way to change the software repository to use the web instead of the CD. That's kind of annoying. Does that mean I have to carry my Windows CD everywhere I go? I mean, thats three CDs I'm going through.

The installation actually went smoothly. No annoying popups or anything like that. Just like Ubuntu, it installed and configured the server for me. Yay! So now I can install SharePoint!

I double clicked on setup.cmd again. This time, SharePoint complained about having to enable something in IIS 6.0. The popup kindly explained what I needed to do. So, I followed the instruction, which brought me to some kind of wizard. As luck would have it, after the third step, the wizard asked me if I wanted to remove some stuff. I said no, and retraced my steps to make sure I had done everything correctly. The same thing happened second time through. I do wish that Windows was less cryptic so that I could understand what I'm going through. There's a lot of popup windows over popup windows, and the interface is a bit inconsistent. I took a deep breath and continued forward.

Once again, I was prompted for the original Windows CD. After I slap it in, Windows starts installing this 'Active Directory.' It must have been a large package, because it took a long time. Furthermore, it asked me to reboot again! I can setup (even compile) an entire LAMP server with a fully functional GUI from the ground up and never have to reboot. What is it with Windows and rebooting every time you change something?

At this point, my coworker are wishing me good evening. Well, I've had enough of this Windows fad for the day, so I go home, and start blogging. While I'm blogging, I'm going to do something fun. Hardy Heron is out in beta, so I might as well upgrade!

I launch my good-ol' package manager, and click Upgrade to Hardy Heron. The upgrade warns me that it may take a long time to download all the necessary packages, but at least I can continue working while I upgrade my OS. I wonder if upgrading to the new Windows Server 2008 is going to be as easy?

It's always fun trying new operating system. Though Windows seems solid, it still has a number of frustrating quirks. Installing applications should be easier, and the consistency of the interface could be greatly improved. I'm concerned about the need to reboot so often &mdash especially when adding a desktop application like Internet Explorer. There is absolutely no excuse to force a reboot after the installation of a desktop component on a server machine.

I wish Microsoft would borrow a thing or two from Linux and make Windows truly easy to setup and use.

Labels: , , , , ,

Tuesday, April 1, 2008

Frustrating Freedom

Microsoft seems to have won the OOXML ISO vote. I'm very annoyed.

I can't throw away any Microsoft products, since I don't have any at hand. I use Linux and mostly free and open source software. The level of corruption displayed and allowed by ISO has further convinced me of the need for freedom in the world of computers.

There are plenty of articles and blogs out there documenting the masquerade that was allowed to take place world wide, so I will not reiterate.

However, I need to vent on two things.

1. Microsoft is the only company as of yet that has a near implementation of OOXML. Everyone else has to play catch up. By the time that other companies will have implemented the 6000+ pages of incomplete and broken implementation, Microsoft will already be at OOXML version 2. Good luck catching up.

2. There is NO, I repeat NO need for two standards. Backwards compatibility is about the silliest, most bass ackward reason for the existence of OOXML. Sure, there are plenty of documents created in Microsoft's proprietary formats. However, most (all?) of the so-called backward compatibility elements of OOXML are marked as deprecated. Wow! That means that:
a) You do not have to implement those features (So why do they exist?)
b) It is not documented how you should implement those features (Only Microsoft knows)
c) It's a glossy, 'brand new' format, and already we are deprecating some of it's features (Talks about quality, doesn't it)

If Microsoft REALLY cared for interoperability, they would have kindly documented how those features work, and removed ALL proprietary, undocumented, deprecated tags from their half-assed format.

There are many reasons why OOXML should never has been approved by any standard organization. I mean, if the format is so technically superior, why would Bill Gates call presidents of countries around the world to get then to rubber-stamp his format?

I certainly hope that this blows up in Microsoft's face. Their illegal monopoly is hurting computing freedom too much.

Labels: ,

Sunday, March 30, 2008

A Silver Lining?

Though it's clear and sunny here, I feel like there's a dark cloud hanging over us.

OOXML seems to have been 'approved.' This is bad on multiple accounts.

To begin with, this is a standard that would have never made the first round had it been any regular Joe that would have proposed it. Why? It's broken and riddled with issues.

Also, had it not been so desperately pushed by Microsoft, this 'standard' would most likely have been voted down by every nations world wide.

On the other hand, I'm seeing a silver lining in the cloud hanging over us. Microsoft is a brand that is losing it's positive image with corporations. In other words, they do not have the power that they used to have.

Furthermore, the EU said that it will investigate any possible manipulation by Microsoft into the Poland vote.

Poland is no longer the only country that is suspected of having been manipulated. The accusations are many.
  • Germany
  • Croatia
  • Norway
  • Sweden
  • US

...and the list goes on.

My hope is that regulators (including ISO) will take a stand, and expose the manipulation that were done during those meeting. Hopefully, this will once and for all expose how Microsoft is desperate to maintain their illegal monopoly world wide.

Oh, and another silver lining to me, Canada voted no. Yay! I'm proud to wear my country's flag.

Labels: , , ,

Thursday, March 27, 2008

Why Should You Consider Linux?

I'm a lucky man. I've married a beautiful woman with wonderful critical skills. She kindly pointed out to me that I may explain this free software and Linux thing, but nowhere do I emphasize the reasons why I think you should consider Linux.

Let me remedy that.

I believe there are many good reasons why an individual or a business should look at open source software and the GNU/Linux operating system in particular. In this article, I will address a range of potential users, from the end-user (everyday user) up to the IT professional. Some of the reasons will be technical, others social or even personal.

1 - It's Fun
I have a lot of fun with Linux, whether it's trying new software packages like Blender, Eclipse or even Alien Arena, trying a new distribution, or recompiling my kernel for the Nth time. There's so much I can do that I never get bored. Also, none of it is illegal, since the software I use is free as in free speech.

2 - It's Secure
Linux had security built into it from the ground up. Windows had security added long after it was created. Windows XP SP2 and Windows Vista are the first Windows versions to offer true desktop security.
One of the things I loved right away about Linux was the fact that applications cannot be modified or erased by end-users. In Windows, there's nothing stopping you from erasing part of the Microsoft Office or Windows folder. Yikes!
But it's not just a question of whether or not you are able to delete an application folder. The code, being opened, undergoes continual verification. Security problems are usually quickly discovered and corrected. It would be very difficult for someone to add a backdoor to any part of the code in Linux without it being noticed very quickly.

3 - It's Virus Free
Currently, there is not a single virus in the wild that can affect Linux. What I like about this is not just the peace of mind that it offers, but the fact that I do not need to install an anti-virus. You can if you really want to, but I generally tell Linux users not to bother.
(Having worked in the anti-virus industry myself, I'm of the opinion that anti-virus softwares are sometimes as obtrusive as the viruses themselves)

4 - It's (Mostly) Free
You can get a good thing for nothing. Open source software is an example of that. Linux is free (as in $$$) to download and use. The only financial commitment on your part is your Internet time, and maybe the cost of a CD.
Did I mention that you can then give the CD to whoever you want? That's right. It's not just legal to share Linux, it's also widely encouraged. For those that do not have a fast Internet connection, or who cannot burn CDs, Ubuntu offers free shipping of their excellent Linux distribution.

5 - Supports Many Hardwares
A few years ago, the situation was inversed. Windows had more drivers for more hardware. Now, it's starting to change. Windows is dropping support for older hardware, and according to the news, Microsoft will not install Service Pack 1 on Windows Vista machines that use unsupported drivers. Furthermore, when installing Windows and new peripherals, it is often necessary to hunt down and install drivers from the web. From personal experience, it is possible to plug in just about any hardware in Linux, and it's typically detected and ready to use.
Not every hardware is supported by Linux, but then again not every hardware is supported by Windows.
(Gripe: Many drivers in Windows are megabytes, if not hundreds of megabytes in size, and can take over your system. This is typically not the case in Linux — HP, I'm looking at you!)

6 - Supports Older Machines
Distributions like Vector Linux and Xubuntu work great on older hardware that simply will not run Windows Vista or even Windows XP. So, if you need to update from older versions of Windows but your current hardware does not support it, you could consider moving up to Linux instead.

7 - It's Stable
I have Linux machines hosting websites, mail servers, database servers, etc, live on the Internet. I kinda forget they exist because they just work. I rarely have to install patches or upgrade software.
How long have you kept your Windows machine running without reboot? Days? Weeks? Months? In my case, I've had servers up for over a year. Some almost two years. I've lost track.
Here's food for thought. In Linux, the only thing that forces a reboot is to load a new kernel. This is something I discovered the first time I installed Gentoo Linux. After I got my kernel compiled and loaded, I continued to build my machine — I compiled a GUI (Gnome), MySql, OpenOffice, sound driver and a whack-load of other stuff. Only after I had loaded my sound driver did I realize I never rebooted once, yet I had a fully loaded, fully functional machine. I was sold!

8 - It's Flexible
Why is it that Internet leaders like Google, Amazon and Wikipedia run Linux? I'm willing to bet that one of the reasons is its flexibility. Since Linux is free software, an organization can endlessly tweak it to suit its very specific needs. The success of Linux's flexibility is also noticeable in the fact that it is available anywhere from hand-held video-game consoles to cell phones to 85% of the world's super computers (Did you notice that Windows' super computer presence is barely 1%. Now, why would that be?).

9 - Free as in Free Speech
Following the idea of flexibility, we should not forget that Linux is free — as in freedom. It is your operating system. You can use it to do whatever you want. Don't be fooled into thinking that Windows gives you the same freedom. I challenge you to compare the terms of the GNU GPL to that of the Windows EULA. Decide which one gives you more rights.

10 - Community
There is a vast and expanding community behind Linux. It started as a community project that is now sponsored by large corporations like IBM and Sun Microsystems.
This community is visible in forums, newsgroups and mailing lists. Though the discussions can sometimes get nasty, most participants desire one thing: to continue the betterment of Linux. This community crosses all national and cultural boundaries.
To get a sense of the community, I invite you to take a peak at Ubuntu forums. You can freely browse without having to register.

11 - Altruism
Linux is developed by countless volunteers around the world. True, some developers make a living writing code for Linux, but without this mostly anonymous army of developers, testers, writers, translators and users, Linux would not be where it is today.
By using it, you are starting to free yourself from Microsoft's illegal grasp over the software world and are rewarding the community that helped bring Linux to where it is today. I'm sure there's nothing more rewarding to those countless individuals than to know that their contribution, minor or otherwise, is appreciated. Furthermore, you are encouraging freedom in the world of computing.

12 - Helping Developing Countries
I live I Canada, and I enjoy a wonderful quality of life, and I only realized how spoiled I am when I had a chance to visit Guinea in Africa. I realized that most folks who are considered 'poor' in my country would be considered quite wealthy in Guinea.
This said, not everyone in the world can (and should) pay Microsoft's tax. The added cost of Windows and Microsoft Office represents a large portion of a new computer.
OMGWTFBBQ!!!!!! I just went to the Microsoft website to check the price of Windows and Office for comparison. $259 for Windows Vista Home and $499 for Ultimate??? I must be living in isolation, because I can't imagine anyone wanting to pay that much just for fancy graphic effects (that Linux already offers). Half a grand for Ultimate? What is Microsoft thinking? I remember paying $99 for Windows 95 fourteen years ago, and I felt that the changes between Windows for Workgroup and Windows 95 was worthwhile. But $259 for a crippled and crippling operating system?
And if that's not bad enough, what about $539 for Office 2007? I don't even want to look at the price of Office Ultimate. (Ok, I did look at the price. Ouch!)
I'm sorry, but that's a total ripoff. This is what happen when a greedy company acquires not one but two monopolies. Do you realize how much of your taxes go to Microsoft? I shudder to think...

Ok, back to the point I wanted to make:

Helping Developing Countries - Second Try
Projects like the One Laptop Per Child are allowing children in developing nations to expand their horizons and join in the wealth of information that is available on the Internet.
I think that the XO is a wonderful piece of work, and I wish that even Canadian children could get a chance to work with it. One of the features of the XO I find amazing is the ability to view and modify the source code of the application they are working with. Talk about a total learning experience!
Such great philanthropic projects are only available thanks to free(dom) software like GNU/Linux, Open Office and many others. Not only is the software free as in free beer, it is free as in free speech.
By using Linux and participating in the communities, you help refine an already excellent product so that the whole world can take advantage of what computers have to offer.
Some Microsoft users point out that Microsoft and the Bill & Melinda Gates Foundation do participate in philanthropic projects — but why are they trying their darndest to stop the propagation of Linux to developing countries? It doesn't sound like they care much about what's best for those children to me.

13 - Popular
You have probably already used at least one device that runs with Linux or some open source software without realizing it. It's everywhere. The moment you hop on the Internet, the information that makes its way to your machine probably passes by half a dozen Linux machines along the way.
By the way, Asus, Dell and even Walmart have started selling PCs with Linux preloaded. Compare the prices with PCs that come with Windows preloaded. Do I need to spell out why those machines are less expensive?

14 - It's Easy
Yes, you read that correctly. You no longer need to be a hard-core computer programmer who is not afraid of bits and bytes to use Linux. Quite the opposite. Thanks to great projects like Ubuntu as well as desktop like Gnome and KDE, using Linux is as easy &mdash if not easier than Windows.
Now, just to make sure we understand each other: I'm stating that Linux is as easy to use as any other modern operating system. I'm not saying that Linux is like Windows. In other words, there is a lear