Thursday, July 9, 2009

The Penguin Wins

I've been running Ubuntu for a little over a year now. I've gone through two major upgrades, from 7.04 to 8.04 to 9.04; and all in all, it's worked.

7.04 had bad wireless problems; 8.04 was much better; and 9.04 is generally functional, though not up to Windows standards yet. Multiple display support has had similar sorts of issues; in the three versions of Ubuntu I've used it's gone from awful to OK. OpenOffice -- at least the word processor and spreadsheet portions -- is a useable replacement for Microsoft Office (to the point where it's now installed on all of our Windows machines as well, and we've uninstalled Microsoft Office and lost the install disks.) OpenOffice is much better than Office when you contrast it to the most recent version of Office, the ribbon bar complete interface revamp, which is an absolute abomination, new for the sake of new. (Digression: no, it's not really new for the sake of new, it's new for the same reason IBM introduced the microchannel bus architecture twenty years ago -- they saw the ISA interface getting away from them and they wanted to move everyone to something proprietary. It didn't work for them and the ribbon interface isn't going to work for Microsoft for the same reason.)

GIMP isn't Photoshop, but it's functional, and free, and you can tweak it to resemble Photoshop.

XNView isn't ACDSee -- it's probably better. (Certainly better than the recent versions. It's available for Windows, too. FastStone is a Windows only image viewer, but it's also free and better than recent versions of ACDsee.)

VLC is the only media player I bother with any more. It's almost infinitely better than anything Microsoft has ever shipped, and it's available on Linux and Windows (and a bunch of other platforms.) As recently as a year ago it had difficulty playing windows media files on Linux -- you had to hunt for libraries and install them manually -- but that's resolved. It plays .wmv files beautifully.

There's nothing quite up to iTunes standards on Linux, and I've tried them all in recent years. I finally settled on Rhythmbox, but it's a pale imitation.

There's no open source 3D software that's as good as my 8 year old copy of 3D Studio Max. Blender looks interesting but it's not a commercial grade tool. (There are a variety of commercial tools available for Linux, though, and in this area that's probably sufficient. 3D Studio Max isn't available on Linux, but Cinema 4D is, Massive is, Maya is ... while the situation is no better than that on Windows, it's not a lot worse, either.)

The Bash shell is certainly vastly better than the Windows CMD prompt, but not in the ballpark of Windows Powershell. (Howls of outrage from the Linux community -- I'm willing to be educated here. But Powershell is an absolutely remarkable piece of technology.)

At least in dealing with NTFS, rsync is much slower than XXCOPY, the freeware utility I use under Windows to synchronize filesystems.

There's no newsreader for Linux that's remotely comparable with Forte Agent.

~~~~~

Linux started out as an 80% solution -- nothing wrong with that, and in in-house software development you're better off living with the 80/20 principle: you may have time to code the 20% that your users absolutely require (and which provides the 80% of the functionality they'll actually use), but the chance that you'll ever have time and staff to code the remaining 80% is usually poor. But individual computing is about the 100% experience -- if one in five people can't use a given platform, or one in 5 apps that an individual wants to use are unavailable, that platform is never going to be viable.

Ubuntu, for my purposes, is a 90% solution at this point. The underlying OS, as of Ubuntu Version 9.04, is superior to Windows Vista and probably a wash with Windows 7. It has sound issues, driver issues, multi-monitor issues, and yes, still has wireless issues ... but they're all minor by comparison with where they were. On the upside, it has infinitely easier installation and upgrades, and there's nothing on Windows that compares to the ease of use of the Linux respositories. (Though if the Linux crowd would get their shit together and settle on a single installation model, the rising tide would lift all boats. The deb/rpm/whatever split is stupidly counterproductive.)

About half the computers in our house (plus the media server) run Linux at the moment; it would probably be all of them if I didn't work with Windows software for a living. The value proposition is hard to beat, particularly for older machines -- reinstalling Windows on a notebook that never came with the Windows disks, once it's crashed, is more trouble than it's worth: I can install Ubuntu off a usb key. (Technically you can do the same with Windows XP, if you want to spend more hours of your life than it's worth to build a custom install key, and you're highly technically literate. I spent about 12 hours recently doing this for a netbook -- no optical media available -- that crashed with several days unbacked-up work on it. It was worth the 12 hours to recover the 30 hours of work, but it was still deeply annoying.)

The value proposition is pretty straightforward:

Windows XP ~ $100 vs. Ubuntu 9.04 free. A wash on functionality. Winner Ubuntu.

Photoshop ~ $670 at Newegg vs GIMP free. Photoshop is better and if you need it you need it; but if you don't, GIMP is the choice. A wash except for pros.

Microsoft Office $360 at Newegg vs. OpenOffice free. Big win for the OpenSource camp.

The various little utilities are mostly free on both Windows and Linux today, so we'll call that a wash, except that I wish iTunes was available for Linux.

$1130 for the Microsoft stack; free for the Linux stack.

This is the home user, student argument; it gets more complex for business people. But at our house we're moving toward Linux, and away from Microsoft, and I don't expect that to reverse any time soon.

~~~~~

So Google is now pushing both the Android and Chrome OS. Most companies would be content to fail at a single OS at a time.

18 comments:

Telperion said...

While I agree on all points about it the only problem for me is game support...someday

Anonymous said...

Unison is a pretty decent cross-platform synchronizer, might be worth comparing to rsync.

Atergoboy said...

I agree with everything.

Just as a heads up, VLC Media Player 1.0 came out a few days ago. It's no longer beta (after 10 years lol)

Anonymous said...

Windows powershell was a stab at duplicating the capabilities of various unix shells (sh, csh, bash, tcsh, ...).

The only benefit that I see from it is that there is only 1 powershell, not 15 variations each with its own syntactical quirks. But hey ... it wouldn't be unix if there weren't a dozen ways to skin every cat.

If you're brave, crack open the bash man page or download some interesting source code and work through the build process to see some of the various ways the shell can be used.

SF said...

Unison is great software, but it is for user-controlled synchronizing of two directory trees, rather than rsync's automatic copying of one tree to a different system. Both are great tools that I use regularly, but you can't really use Unison to replace rsync. (Unless there's some options in Unison I don't know about...)

BTW, our household was split evenly between Windows and Linux right up until I got this lovely MacBook Pro last fall. Now it looks like over the next couple of years it will become an OS X / Linux household with maybe one dedicated Windows machine for work purposes....

Dan Moran said...

Anon,

I'm not that brave. I will say that the object oriented .NET based functionality in powershell is better than the text-interface functionality in bash, at my current level of understanding of each. (Almost identical, as it happens -- probably about 40 hours each.) I concede up front that this doesn't make me competent to have an opinion about the functionality of either full blown shell, except as it exposes its functionality to a new programmer. And there I can, and do: powershell is better.

~~~~~

The game support may become moot before too much longer. The PC as a viable gaming platform is in decline; consoles are winning. (And interesting example of anti-convergence.)

Anonymous said...

SF - there are enough command-line options with Unison to get rsync-like behavior.

Doc Nebula said...

You guys are all adorable.

You're just making all these words up, right?

Right?

Dan Moran said...

Yes.

Anonymous said...

As far as gaming is concerned, look to Google to change things when they release the Chrome OS. From what I've read it should be some version of Linux. With Google's support Linux gaming could take off like never before.

The OS is intended to compete on the netbook stage, but do we think Google is likely to stop there?

J.D. Ray said...

I quit needing to write scripts for Windows just about the time PowerShell came out. As a sometimes .NET programmer, I was kind of excited about it, but just didn't have the need to delve into it. Glad to hear someone say that they used it and liked it.

As far as I can tell, there's nothing in the Unix world like what PowerShell promised, with the possible exception of the Ruby shell (which I also got excited about, right before I changed careers). It could be there, particularly given that Mono provides .NET CLR features. The tree of shells rooted in sh are not and probably cannot be that extensive.

DrDoug said...

I've been using Ubuntu on my main machine and file server for a couple years now. My own development work is mainly in PLT Scheme (a Lisp dialect), which runs on Linux (UNIX in general), Windows, and Mac OS. So, I don't have any problem there. I do have Windows XP running under KVM on that machine for when I absolutely have to have Windows.

My work laptop is running Windows XP - I 'upgraded' it from Windows Vista after a myriad of problems there. I have Ubuntu 9.04 running under VMWare Player so I also have Linux available when I travel.

I do have another machine at home - mostly for pictures, genealogy, etc - that runs Vista Home Edition. It is interesting that I've had few problems with Home Edition on my home network, but the professional edition on our work network was a disaster.

And, finally, my wife's laptop is a MacBook Pro, which she is finally getting used to now.

So, I guess I spread my money around, but generally prefer (and contribute to) the open source community.

cwg said...

I made the switch to Ubuntu about three months ago, I think. I do keep a copy of Windows 7 as an alternate boot, but this morning was the first time I brought it up in two months. That was so I could play a powerpoint presentation (I hate Wine and my VirtualBox Windows 7 setup has awful audio).

I do run the virtualbox fairly often. For one thing, I need to check my sites with Internet Explorer since it behaves differently from real browsers. For another, I really like Microsoft Publisher for some projects. Also, I'm quite fond of FastStone Image Viewer in conjunction with Irfanview for quick-and-dirty image manipulation for my web designs. But all those things work just fine inside the VirtualBox.

BTW try out ch as a command interpreter for both Windows and Linux. It's very cool. Direct calculation of things entered at the command line, simple programs without bothering to save them in a file, etc. Designed for multiple platform use from the getgo.

metageek said...

"The deb/rpm/whatever split is stupidly counterproductive."

Yes, but unfortunately it's not just a matter of picking one and moving on. The problem is that Debian-based and RedHat-based distributions put their files in different places, so you can't use one package for both.

There has been work to unify the two, but it's, er, less than complete.

metageek said...

"You're just making all these words up, right?"

Flogwitz.

Anonymous said...

Been using Linux since it was almost useless, just a programmers toy and a webmasters dream come true. It's gaining ground in EVERY area fast. In many areas it's more advanced than windows.

I'll take gimp over Photoshop ANY day. The Gimp Interface is VERY different but more flexible. It's missing some clip-art like tools. It has gone from ok to the best raster editor I've ever used. What I think it's missing is a CLI for scripting support. We used it to clean up 800 photo's that "professional" artists did for us last year.

The only thing I still use M$ for is gaming.You'll see competitive gaming in 5 years. There are a few free games out there and LOTS of high-end free engines and engine frameworks in the works.

The most popular Wine projects are games and Quickbooks. That is because the thing Linux users are missing in the computing time are games. Also there isn't ANYTHING that even comes close to comparing to Quickbooks that's not enterprise.

We use Quickbooks and I hate it, but On top of that I'd have to sell the bookkeepers and accountants to switch. Linux has a LONG way to go there.

Enjoy not having to deal with the M$ Office bugs. Haven't missed it since I switched to OOo 1.0. No math errors, no strangeness in cutting and pasting, no creating cell relationships one at a time from sheet to sheet. Also the file sizes in native OOo are smaller. Anyone who has a computer (PC, Mac, Sun) can download the same program and share files. It sure beats ... ohh you can't open that file. Sure no problem just spend $200 and your good to go.

I won't get into .net or powershell because I have no experience with them. I'd be suprised if M$ did anything except pretend to add functionality (that is what happened with IE8)

I'm no 3d expert, but I've read several similar complaints about Blender, your right on the money there.

Edward said...

I have to agree with all your major points, Dan. I *began* using Ubuntu in order to keep various elderly machines working usefully (don't EVEN get me started about the trials of using WinME on a P3 system), but soon I realized that the majority of what I did every day could be done on a machine with Ubuntu, and done at far less cost.

This posting is an example - the machine I'm using right now to write this is a Dell Mini 9, the OS is Ubuntu 8.04, and the browser is Firefox 3.5.

There are a few programs that I wish were available on Ubuntu, but for the most part (90%, just as you said), Ubuntu does the job as well, and often better.

Ed Becerra

Steven said...

Dan,

Just stumbled across this post. A little late, maybe you've already either answered these questions or given up, but in case you haven't:

VLC does indeed rock and is an excellent counter-example, when I occasionally get fed up with the linux world lagging in some aspect of multimedia support. It doesn't have to be this way, and VLC is the proof.

Re: itunes, I've never really used it, so I can't speak directly to it, but a lot of people seem to find amarok a viable itunes replacement. Amarok seems to generate the same kind of user-loyalty as itunes. I switched to amarok a while back because it supported my nano better than rhythmbox, but I hear rhythmbox has caught up in that department.

Linux is heavily supported in the 3D world, but more heavily in the professional 3D world, post production shops, etc. According to friends in the field, there seems to be a strong trend towards linux-based workstations and certainly render farms (the farms may be driving the adoption of linux on workstations) to the point hwere it may soon dominate the industry.

Unfortunately Red Hat is the linux of choice in that industry, probably because of commercial driver support. Given how hardware/driver intense the field is, the odds of running into an insoluble problem if you run on any other distro - and being told to take a hike if you call the app vendor - you can see why Red Hat continues to dominate there.

The deb/rpm split is stupid, yes, especially since .deb has pretty much won (automatic dependency management is the best thing since sliced bread). It goes way, way back. The .deb system and repositories has been one of Debian's greatest strengths from the early days of linux.
Fortunately, there's lots of good .deb support for Red Hat these days (yum, etc) but it seems to be lagging a bit on the organizational end.

I hear great things about Powershell, but comparing Powershell to Bash is comparing oranges and apple cores. Powershell has a lot of great stuff in it - that it needs because it's not on a linux machine and can't count on the linux ecosystem. It's not "powershell versus bash", it's "powershell versus bash, perl, python, the entire suite of standard linux command line tools and the linux pipe/redirect approach."

Does XXCOPY support partial file updating? If not, you may be pleasantly surprised the second time you rsync a file hierarchy. Rsync is primarily intended to support partial updating across network connections, though I also find it useful for local file synchronization.