Tuesday, March 2, 2010

Why Open Source sucks.

Bewarned Open Source fanboys, I am most definitely prejudiced and biased against Open Source software, with a vengeance. Whatever I say and state in this blog is my opinion which you most certainly don't have to agree with. 

With that disclaimer out of the way, just to reaffirm my stand; Open Source Software sucks. I sincerely wish I could make an honest and genuine effort to try and convince you as to why I feel so, but from my experience talking to people about technology in general over the last 10 years or so has made me realize one very important point; (most) believers in the Open Source movement think of themselves as elitists of some kind or the other. They feel they have to do things differently, just because they can. If you try and reason otherwise, with a group of such people, be prepared to invite their disdain and repeatedly be called a "n00b".

And I say this out of experience as a geek, student and now a professional. I have tried on multiple occasions to dip my teacup into the simmering open source pool, to get a taste of some of the eclectic concoctions it claims to offer. However, time and again, I have had to try very hard to rid myself of the utter bitterness it left behind. Be it installing and using a Linux distro on my netbook for everyday use, trying and running some kind of an open source simulator in Linux for my assignments or getting an open source tool to work with or test an application I have developed...one word can sum up the collective experience; clusterf***. That is exactly how I end up feeling after trying to work with most open source applications.

Most. You see, until some time ago, I always used to try and justify the existence and general enthusiasm for open source software by its ability to get things done, even though I myself never found them to be less than painful. To the end user, it doesn't matter how it is done, as long as it is done. This thought process could justify using open source frameworks, applications and tools to build what the end user wouldn't have to see or interact with, the back-end. And this is true because it would be very difficult to find a website not running off of some permutation or combination of Apache, Drupal, MySQL, PHP etc. However, currently having to work with these very open source technologies to get the job done is proving to be akin to playing with a hornets nest. To be fair, there is a learning curve associated with any new endeavor you may set out on and although I don't have any real-world numbers to compare and contrast actual performance, I guess it would also be safe to say that open source applications are far leaner than their proprietary counterparts, and definitely cheaper (if not free). However, these advantages almost always come at a price. A price that is paid by the end user in terms of usability and a price paid by me as a developer in terms of compatibility and just getting things done. When this lean-mean-open-source-machine starts eating into your productivity, it becomes hard to justify its performance and cost advantages.

Let me give you an example. I had to test some scripts today. Normally, this would entail downloading and installing some executable the tool comes packed in and spending the majority of the time actually testing scripts. I would have positively wet my pants with joy if things had gone this way. Instead, I had to use an open-source tool (PHPUnit) to get the job done and at the end, I got everything but the job done! 

You see, after reading up on less than helpful (for the beginner) manuals and documentation, I realized I had to download and install the latest PHP binary on my machine to get PHPUnit up and running. After spending time reading up and deciding which one of the 4 available versions I had to get, I went along with the installation. But by now you'd have guessed it wasn't going to be that simple, right? Right! You see, for some inexplicable reason beyond the grasp of us mere mortals who haven't laid ourselves bare at the altar of the open-source gods, the installer package for PHP does not come with a library file needed to install PHPUnit, even though it is required, to go through with the installation! Maybe the elite open-source gurus found some way around using that particular library? Who knows (and cares!)...for not a single forum or board meant as a support resource for PHP knew jack-squat. It is by pure chance I figured out that the Zip package of the very same version of PHP, from the very same website contained the required file!! After extracting the files, I searched around for clues of anything remotely to do with PHPUnit itself. Nope. Nada. I apparently had to run some PHP script which would in turn pull out PHPUnit from something called a PHP Extension and Application Repository (PEAR) channel. However, some component needed to run PHPUnit had to be download from some other channel. I followed the steps to get the required components from both the channels. But it didn't let me. Apparently, the version of the PEAR installer I had (the version included in the latest binary on the PHP website FYI) was seemingly old. I first had to update it. And how do you update it? Call another PHP script that pulls out the latest version from some other PEAR channel!! I finally got, what looked like PHPUnit, running, after a good hour and 15 mins of scratching my hair and a lot of other things! Time I could have otherwise spent actually working.

And cases like this are far more the norm than the exception. There are very very few Open Source applications out there which are readily accessible, usable and supported by normal humans with normal IQ's. More often than not, you will be dealing with a project that some random whiz-kid with a lot of time in his/her hands started off to pass time. Add to this mix the contributions and extensions added by 200 other people, and you're left to deal with something that would make being shot point blank with a sawed off shotgun, after being run over by an 18-wheeler, feel positively refreshing and revitalizing.

I prefer interacting with simple clicky-pointy-GUI's over typing mind-numbingly complicated commands and arguments at the command line. I prefer double clicking the installer, have it do the rest and run the application, to extracting multiple tarballs, compiling code and running MAKE files to build and manage them and run 3 different scripts with 12 different arguments to update the application! I would definitely prefer clicking something and have it just...work, than to run something and spend hours trying to figure out how to get it to work. Why? Because I'm sane and normal, value time and want to get the job done.

Off to getting Apache solr working...



17 comments:

Maverick said...

Mythunda,

As a professional and personal open source user, I respectfully disagree.

I have worked with Red Hat Linux, Debian Linux, Ubuntu (platforms), Apache, JBoss (web/app servers), Grinder (load testing tool), MySQL (database), Eclipse (Java IDE).

As part of my job, I have worked to configure more than 10 DELL PowerEdge servers for a banking production application handling 2 million users (both primary and disaster recovery centers). Recently, I set up a Ubuntu Server on the Amazon cloud platform without a hiccup. I also manage teams that work on Python and PHP for delivery of customized services to clients.

I'm not throwing out these points to impress anyone. I'm trying to say that across a wide variety of tools and business usage scenarios, I have managed to smoothly use open source tools in both scale and quick turnaround applications. It took a while to get the hang of it; I was a noob too, as you point out. But once I did, it has been a great experience. Infact, I prefer the command line to a visual interface many times, especially when I am setting up servers.

I documentation is sometimes sketchy for an obscure product or at times even for a reasonably used product, BUT the beauty of open source is that if you are not comfortable using one product, you have tonnes of alternatives to choose from - for free. Also, in all of my experiences, I have never faced a major road block in terms of missing documentation.

Ok. Maybe the installation steps might be different and because of user permissions, sometimes things might not work even after a clean install. But EXPERIENCE teaches you where to look and what to fix. Like for most things, that comes from practice.

voodooboy said...

You say all that because you've used it for so long and have got used to it. I agreed that there is a learning curve to everything. My point in this case is that this curve is definitely very steep for most open source applications because of a)the poor documentation in most cases b)lack of dedicated support in most cases c)haphazard development/managing practices.

Most open source projects are definitely a case of too many cooks spoiling the broth. A lot of them are borne out of a single persons needs to solve some problem. While the approach maybe novel, it's very difficult to implement such a project at an enterprise level.

And what you call the beauty of open source is what I call the bane of all pain. It is bad enough that Linux and most other open source apps/tools are complicated enough to use on an everyday basis, add to the mix 10 different repositories and 10 different methods to do one thing...

I'm not putting down open source. If you like it and feel it gets your job done, more power to you. Personally, I think most of these projects are counter-productive and too complicated for their own good.

I have yet to come across ANY major compatibility issue in terms of applications with any version of Windows in the last 10 years or so. I just gave you one, practical, real-life example in the blog. I have PLENTY more to share.

Maverick said...

Well, it is true I have used open source for many years now, but I did start as a newbie. And if you invest time, you can also reach a level of product and process awareness. It is all about that important "time" investment and commitment.

I had a tough time learning to configure JBoss, but once I did that I could easily see patterns and predict where a certain configuration would be. Many a time, the learning goes beyond simple syntax and you need to understand the architecture of the product to understand WHY it is setup in a certain way. That understanding translates into a more robust understanding of the product and helps to get the technical things done in a more efficient manner. And a lot of solutions were not in the book. I resolved a major problem by understanding the class loading mechanism of JBoss. There was not much documentation to guide me, except for a word on the JBoss Class loading mechanism and the cache it maintains for loaded classes. Based on that, I came up with a configuration to meet our needs. Yes, you need to go beyond copy paste and apply thought at times.

Also, my projects WERE enterprise projects catering to millions of customers. I am not talking of a small website for 50 odd users.

From a developer's perspective, languages such as python or ruby give you the flexibility (albeit at the cost of a few other metrics) to do your job more effectively and efficiently. Eg. if you are a freelance developer who has been contracted to build a website catering to a low traffic load in 15 days, using ruby or php gives you a leg-up over using java. As you progress in the industry (IT industry), you will learn about a wide range of technologies available at your disposal. But, it will be your experience that guides you to choose one over another based on factors including - performance, scalability, security, maintenance costs.

I'm not sure if you are aware of this, but Google uses a lot of python code in its projects. So do a lot of other top companies.

I'm not sure if you are aware of the Spring framework. It is complex to understand initially, but using it, you designate java code using xml i.e you don't even need to write certain java code; you indicate it using xml and the engine will read the xml and generate the java code at runtime. This is such a powerful mechanism, but one you will appreciate only as you begin to gain more experience.

Finally, your choice of tools will be dictated by client and internal budgets, requirements and delivery timelines. It is better to keep an open (pun unintended) mind towards basic tools.

voodooboy said...

Once again, the person talking to me is someone who has used the aforementioned frameworks and tools for atleast a couple of years. And because of this, you are able to now justify having spent time learning and understanding them. True, I'm very sure if we dig deep into the architecture of these projects, they will be beautiful, lean, efficient pieces of code. And if you take the time out to understand how this poetry in programming works, even better. But let us pause for a second here; WHY should I have to know how/what/why the developer of that particular project was thinking about while trying to use the app.

As a user,I run Windows. Why should I have to know how the kernel interacts with drivers to be able to watch a video?

As a developer, why should I have to worry about getting the package installer up to spec, finding missing files, having to add and keep up with changes in repositories? My company would be paying me for developing or testing applications it develops, not debug and understand "beautiful code" running the tools used to test and build those applications.

On a final note, the inconsistencies and pitfalls that most open source projects suffer as because of a lack of motivation. If microsoft develops something, it does so not just with a bunch of uber-nerdy developers. Support specialists, program managers and a whole host of people proficient in their respective domains play their parts. Why? Because if 100 different people call up or email MS as to why a file is missing, what scripts to run, what arguments to supply while installing an application, it will cost them money. This is something almost no open source project, driven by a group of programing-nerds, needs to care about. What may seem like a genuine usability or maintenance flaw to you as the user, may seem like nothing more than a niggle to them. Why? Because they've spent countless hours developing their code. And they expect you to do the same...atleast until someone replies to your "noob" queries in one of the mailing lists.

Maverick said...

Correction: I have worked on and used open source tools for five years, not just a couple. And, I have been an infrequent coder. Most of my work has been in production support, so I come from a place of understanding when you talk of product support by companies.

Firstly, please understand that Open Source does not equate to FREE as in zero cost. Yes, you get to download the tools for free, but if you want support you can buy it with well-defined SLAs (for major products used professionally).

Case in Point: Red Hat Linux (https://www.redhat.com/apps/support/), JBoss (http://www.jboss.com/services/subscriptions/) to name a couple.

The place where I worked had support contracts with BOTH Microsoft AND Red Hat, JBoss. I personally know of support contracts worth millions of dollars that were signed.

You talk about a process followed at MS. Ok. Have you used Mozilla Firefox? It is an open-source, standards compliant browser built by a global community, but the process and management of the foundation is done by dedicated professionals who are paid for the job.

Similar to this, there are many other widely used products that are built using standard industry practices. I don't see how you can generalize your thoughts across such a broad spectrum of products.

You want to use a video player and be abstracted from the underlying process? Sure, there are many video players available and they play videos using a GUI on desktop platforms such as Ubuntu, Debian etc, which support a KDE or other desktop (server machines usually disable the visual elements and focus is on command line tools). They also come with GUI installers which do the job effectively.

For business uses: a lot of your application testing will focus on performance tests. Do you know how much Mercury LoadRunner costs for a single CPU license? Compare that to tools like Grinder or JMeter which cost you the princely sum of zero yet do the job efficiently.

About the community: a lot of information about bugs, errors, build issues is out there on countless forums where people are very helpful in sharing their knowledge, tips and tricks. I am sure you will get the necessary information at most times.

I think this debate comes down to a question of choice based on an individual's comfort zone.

Maverick said...

I have been meaning to not let my personal opinion about Microsoft come into this debate, but since its inception, MS has had the image of being a buggy, inefficient, slow operating system. It reached its nadir with Windows Vista (though it has gotten better with Windows 7, which is essentially Win Vista + Service Packs - 3 years after the launch of Vista which itself was delayed by 2 years.)

Development and release of MS operating systems have been repeatedly delayed with several years of missed timelines. Compare this with open source OS' such as Ubuntu which have a fixed release candidate cycles and meet their timelines.

How do you think they manage it? This is because they have an equally competent set of product managers, project managers etc along with well-defined, competent processes in place.

voodooboy said...

What you're talking about with respect to open source here is purely based on your experience and hence as such, your opinion. You come from a development/IT background and hence talk about wondeful code and underlying class hierarchies and all those nice little things. As someone who wants to use the tools, why should I have to spend time understanding how they have been developed and in some cases how to debug them? Sure they are efficient, if and when you get them finally working!

Secondly, do try and understand that I've been pretty deeply involved with computers since almost about a decade and a half now. So while I may be relatively new to the application development and testing scene, my beef with open source does not start and end with this application domain alone. I know very well that you do get enterprise level PAID support for certain applications and I myself have worked on and use some of them (Redhat, Acquia Drupal, VTune etc.). What I have written in todays blog is a sumrmary of this entire experience, culminating at the problems I had installing a simple script tester today.

And you talk about Mozilla...only reiterating what I said earlier. Most open source projects lack any kind of professional lead, support or management. And it shows. As you said yourself, Mozilla has paid employees whose job it is to get things done. See what kind of a difference motivation and following proper development and maintenance guidelines makes?

And you talk so coyly about installing a GUI video player on a Linux distro. Maybe you havent used one yourself long enough to realize how it is anything but straightforward. And all this comes up...only after you get to complile and install a video driver compatible with your build of the kernel.

And really, I can't put it in any other way; your statements regarding Microsoft and Windows are blatantly anti-MS fanboy-istic. No seriously, the whole Windows is slow, buggy, inefficient is just uninformed banter. You take ANY version of Ubuntu...Hardy Heron, Karmic Koala, Intrepid Ibex or any other distro for that matter...Fedora, Mandriva, Suse...all of which I have personally installed and used myself. Even if I take all their driver repos collectively, they won't have more than 1/4th the hardware compatibilty that windows XP had. And by compatibilty, I'm not even talking about getting the device to actually work...just having it detected. Try getting video acceleration, my tv tuner or a 5 yr old HP laserjet working in Linux out of the box. I agree Ubuntu has improved manyfold...but it is still nowhere NEAR Windows when it comes to hardware support out of the box. And we've taken the ability to dowload an app, double click on it and have it run instantly for granted...a luxury almost no Linux distro can currently afford. Windows has greater than 95% of the marketshare and hence even a single small problem affects a sizeable number of people. Check up Secunia reports for 2009, OSX has had more critical vulnerabilities than windows 7 or Vista. Likewise Firefox had almost twice as many security vulnerabilities as both IE and Safari combined. So all this open source = more secure pixie powder talk is crap. Any code, open or closed is vulnerable. I'd take a well tested, guaranteed to run any app or hardware, infinitely more stable and usable OS, with ACTUAL support that doesn't need a bachelors degree in computer science to make use of, even if it's delayed, over something half baked bi-annually, that requires me to spend hours searching and debugging basic computing tasks.

You get what you pay for...and this is most applicable in case of software.

Maverick said...

Mythun,

Your decade-and-half experience working with computers plus education cannot buy you hands-on industry experience actually meeting client needs. Give yourself atleast a couple of years in a job before you start passing judgement on my background or industry and my perspective.

You have taken the Mozilla comments out of context. My point is that there are open source communities that are as well structured as any proprietary solutions company and yet offer open source tools. There is no law saying open source company employees cannot be paid or that they cannot get funding.

I have used video players and seen enough systems to know that there are enough video players available that work well on Linux systems. I don't see how you can generalize and say that you have faced an issue with video players on Linux distros. I find it hard to believe that you used VLC on Linux and it didn't work for you.

Performance comparisons: It isn't an uninformed opinion, there are plenty of studies out there proving what I have said. Check them out. (And make sure you look for Win 98, Millennium, XP, Vista and 7 against Red Hat, Ubuntu, Debian etc.) Don't just focus on the results that put XP in the better light and so you apply that yardstick across all MS products.

Hardware support: I'm not surprised you only refer to XP here. XP was probably the best of MS' OS offerings and I admit a very good one. But one OS doesn't a good company make. What you don't refer to is the fact that MS being such a large player pushes its OS launch by a good time to give device manufacturers to develop drivers. I admit open source companies are hampered by driver issues, but if you look, you definitely find the drivers you need. I haven't seen anyone who had to throw away a video card or lan card or writer because of missing drivers for Linux.

Ease of installation: I haven't faced any issues in running bin or rpm files on Linux. Also, you are conveniently ignoring the pain and version incompatibility caused by Windows DLLs at installation AND uninstallation time for many softwares, not to mention the registry maintenance and DLL corruption (System32.dll anyone??) that can screw your system so much so that it doesn't even start.

Vulnerabilities: If you observe, I have not referred to OS X in my postings. That is because OS X is closed source and not open source. It is also interesting how you refer to OS X in terms of vulnerabilities, but not in terms of your points for GUI, ease of installation, product behaviour etc where OS X beats Win user experience (you will come back with Win 7 here).

FYI, IE has almost 4x critical vulnerabilities compared to FF. And MS releases bug fixes once a month. Open source communities release bug fixes as and when they occur resulting in a faster turn around time. What keeps MS from turning around faster?

Tool usage: I presume you have never used tools like Eclipse or JMeter or VLC or NetBeans. Since you have mentioned OS X, I presume you have never worked with Final Cut or iMovie. You might have also not worked with Drupal or Joomla or Wordpress. All open source (other than offcourse the Mac sws)

If you aren't happy with the tools available, why don't you write your own tools? You have enough computer knowledge and education to help you there, right? Or is it because you cannot reverse engineer your exe and DLLs and write code for your needs?

voodooboy said...

Naveen,

It is wrong on your part to discredit someones experience just because it is not in the same application domain as you. Maybe you should tinker around a little more with Linux installations on YOUR computer without enterprise-level support, maybe you should try installing an nVidia driver on YOUR computer to get to play a particular video file, or try getting your Creative soundcard working with your Linux distro. Play around with it for a couple of weeks yourself...you'll fully understand and agree with what I'm telling you :) And almost everything I am currently having to use is open source; Apache, PHP, Drupal etc etc. and I've spent the last 3 days trying to get each of them to work on their own and with each other. It's working well now, but it better, after having spent 3 days getting it to!

Your comments about Mozilla were quoted very much within the context of our discussion. An Open Source project, which has paid employees, a management hierarchy and not just run by a bunch of nerds (Mozilla, Ubuntu etc.) will and do produce very good applications. But companies like these are vastly in the minority.

And really? Do you really want to go to Windows 98 and ME? Because linux-poster child and according to me, the ONLY Linux distro even worth considering for personal use, Ubuntu, didn't even exist back then and what did exist (Suse, Mandrake, Yellowdog) were bad...VERY VERY bad. The gulf between Linux of 1998 and Windows 98 in terms of usability, performance, security and what not was an order or magnitude more than what it is between Ubuntu and Windows 7 today. So yes, that argument of yours is quite ill-informed. And the missing DLL's and corrupt registry hives you talk about, 9/10 times it was because of an improperly installed/uninstalled driver or software. Not entirely MS's fault. And MS did realize this, which is why they came up with more rigid and structured layers in Vista. But none of the HW oe SW vendors were ready or willing to migrate and guess who or what gets blamed?

Majority, if not almost all issues MS "faces" are precipitated by a perception problem. As you said yourself, Windows 7 is more of a service pack to Vista than anything and yet the reception Windows 7 received was so much more positive than Vista. You also need to realize the number of hardware vendors, software application developers, resellers, channel partners MS deals with is many orders of magnitude more than ALL linux distros combined. Couple this with the fact that all Linux distros put together form a minuscule fraction of Windows market share, something about your statements regarding Linux and open source is not right. And when you have such a gargantuan installed user base, you are most obviously going to be the target of a vast majority of hacks and exploits.

Also, I urge you to read the 2008 and 2009 Secunia reports to better equip yourself with real facts and figures, especially since you work in the enterprise application domain and can't let personal choice and ideologies cloud your decision. Unfortunately it isn't letting me hot-link the files here. Of note in the reports is the fact that 115 critical vulnerabilities were found in Firefox to 31 in IE and 32 in Safari. It also states that most (not all) MS products on an average, are patched faster than a lot of their competitors. Infact, the avg unpatched rate for IE8/7 is between 3 and 7% while for FF 3.5/3.0 it is between 9 and 17%. The only one that does worse is Safari at 22%. And when it comes to scripting, there were approx about 1400 exploits found in PHP compared to about 400 in ASP, or 150 odd in JSP.

No, I'm not saying MS products are an impenetrable fortress, definitely not. But yes, Linux, Firefox and all other Open Source poster kids are just as vulnerable, if not more, than their closed source counterparts, while at the same time being infinitely less usable (except in a rare few cases).

voodooboy said...

And the whole Apple thing, let's not even get there, seriously. Maybe we'll leave it for another day and another discussion. Atleast Open Source has a few genuine advantages and some things going for it...

Rushabh said...

Well, I see our point here. Open source has a learning curve associated with it and not all open source software are a pain to use or set up.

Open source also includes Open Office (OO), which offers us broke students a free alternative to Microsoft office and it does an awesome job. The new version loads faster and has better compatibility with the MS Office formats. I can say so because I have tested both the earlier and current version of OO. Most open source development tools are certainly a pain to use like Eclipse. I had to run it from the Program Files folder because the shortcut wouldn't work on x64 systems which I still haven't figured out (it just happens on my machine o.0). There is also Gimp which does everything that photoshop does and it is not one bit hard to use. If people compare the UI to photoshop, they are morons. It is a totally different software and the developer just used his head to make it the way he deemed it fit. The problem is people get so used to one software, they refuse to accept change. Everyone who uses Photoshop has only one problem with Gimp, the way the UI is designed because they are so used to PS...

Then there is Android. I respect Android because I think it has the potential to compete with the iPhone and I dislike Apple for their overpriced junk and keeping a watch on everything that goes onto their machines.

And Linux is not all that bad. Sure, it takes some time to customize it to your liking and get things working the way you want them to, but then that is one OS install that you can rely on.

I get your point of most developers in the open source field considering themselves elitists. I tried to get involved in the open source game engine Ogre only to be met by harsh replies calling me a noob. The whole point of me wanting to join was to learn. Yeah, I did not have 10+ years of industry experience to opine, so what?

Leaving them aside, you should try and give open source software a chance. I think open source software has a mix of excellent software and really bad software. Then again you can't complain much, most of them are free. If you are paying a good amount of money to use them, you have every right to complain.

Plus, people are trying to get the open source software as user friendly as possible. Its just not happening very fast. For me, it is always better to use a free alternative tool than to pirate a software.

My thoughts are all over the place in this post.. I just wrote things as they came to my mind. My apologies for not organizing them properly.

voodooboy said...

Rushab,

Your point about using good free software, over pirating stuff is a very good and valid point. Infact, that is the reason alone why I have time and again tried to use Ubuntu on my machines. However, getting a GeForce 8600M GT working, or enabling DXVA in a media player or simply getting my Broadcom WiFi card to not drop the connection is so difficult! I have tried posting queries on the Ubuntu forums...not been very useful. They almost always have asked me to either google stuff up or read the pinned posts before asking a n00b question. And even if I do end up getting everything up and running, performance is NOTICEABLY worse than running off of Windows; be it playing a Flash video in Firefox, or an mkv in VLC.

Open source works just fine, as long as you don't have to interact with it. The moment you bring interaction into the picture, poof...it pretty much goes spiraling downwards from there.

Fortunately or unfortunately, not everyone has the ability or in my case, the interest, to sit and write tools.

And I agree with you on Android. And webOS also for that matter. But you see, there is this subtle but strong difference between the 2, even though they both use open source technologies. Basically with Android development, you have a free reign over the platform. This really does encourage some insanely brilliant ideas, but do you see how heavily fragmented the Android market already is in such a short span? Android 1.5, 1.6, 2.0, 2.1...with different form factors, CPU's, screen sizes and what not. And this is proving to be a major PITA for developers. Whereas look at WebOS, it's based off of open source tech too..but there is still some notion of control which in my experience delivers a much MUCH superior end user experience.

voodooboy said...

Infact, I plan on setting up a NAS very soon and without doubt it is going to run on FreeNAS (based off of FreeBSD). Why? Because it's really light and efficient AND....once I set it up, I'll probably never have to interact with it ever again. I would have preferred running WHS on it...but being a grad student = having no monies! :D

Rushabh said...

Windows mobile is having the same problems like Android and will continue to until Windows phone 7 comes out. I use Windows mobile 6.5 and there are so many different resolutions for different brands running WM, some apps work fine on some resolutions while on others they are erratic.

I guess that will always be a problem when you give a third party freedom to use your software on their hardware.

As for nVidia graphic cards, flash video and mkv files, the only thing I can agree about are the mkv files, they are a little sluggish while running on linux. But, my 8800 GTS runs fine, I even used wine to run World of Warcraft on Ubuntu and it worked with 55 fps, 3 fps lower than on windows which is not bad considering it was running on an emulator. Flash video ran fine too, I did not notice any major difference.

In any case, I use a blend of open source and proprietary software so I have no real affinity towards open source except that its just fun to experiment with sometimes and use some open source software as alternatives to expensive proprietary ones. =)

Rushabh said...

Oh the hardware your machine is running plays a huge role while using open source software especially the linux OS. Some drivers support some hardware components perfectly while refuse to detect other ones. I've had those problems. The new version of ubuntu fails to detect my WiFi card and hence I don't use it much. Besides Windows 7 is so awesome, I don't really need to use Linux that much. Had RIT not given me a free copy of windows 7, it would have been a different story. =P

voodooboy said...

Rushab,

The windows mobile story is a little more involved than that. The reason companies like HTC came up with Sense UI and TouchFlo etc. was because, since WinMo 2003, the platform had utterly and completely stagnated. And since there was no Android (or anything apart from the iPhone OS), manufacturers had to go out of the way to set their products apart, and MS didn't care as long as they sold WinMo licenses.

I've had very choppy full-screen Flash playback in FF on Ubuntu. And in this day and age, I find it ridiculous to have to troubleshoot device driver and compatibility issues.

Oh btw, speaking of Wine...very nice Anandtech article on the same:

http://www.anandtech.com/linux/showdoc.aspx?i=3700&p=1

voodooboy said...

Rushab,

Good read:
http://www.engadget.com/2010/03/05/entelligence-will-android-fragmentation-destroy-the-platform/