Windows XP
I reduced the c:\ drive to 20Gb, and defragmented it. Visio and ms project
are a part of life, so I'll need the windows partition for dual
booting. Eventually I'll switch to a VMWare image, but a dual boot is the path
of least resistance for now. I stripped the e:\ drive.
Backing up was as follows:
- Anything in E:\home\dehora that is not already in subversion (I
always keep my ~home in subversion)
- E:\home\My Documents
- Anything in E:\home\work that is not already in subversion
- E:\home\thunderbird (anyone out there tried putting 6Gb of mail into Subversion yet?)
- C:\Documents and Settings\dehora
- ....
... and various scatted dot folders that have configurations and data (such
as gaim and feeddemon). This is one the reasons I'm off windows. The filesystem
is too unstructured and that has apps throwing data all over the place.
Reinstall Windows from the backup drive (this is an IBM TP, it has a
partition dedicted to reinstallation). That works, and after about 5 reboots,
windows is Really Fast again. And that's another reason to leave Windows, the
longer you use it the slower it gets - reinstalling windows every 8 months isn't
really on anymore.
Kubuntu
I have traditionally liked KDE more than Gnome. And blue is a nice color. Install
Kubuntu via the live CD.
I set things up like this:
- hda2/ - 35 Gb
- hda5/ 10Gb '/'
- hda6/ 20Gb '/home'
- hda7/ 2 Gb swap
- hda8/ 3 GB fat32 '/media/osshare
It didn't like my partitions, it only saw hda5 as 35Gb ext3. Hda5 is actually
10Gb and is the first logical partition on hda2, an extended primary, which is
35Gb. Bizarre. After about a hour of thrashing about with the disk
configurations, it turns out rebooting fixes all that, and Kubuntu can now
allocate the partitions.
Installed. It Just Works (tm). Brilliant. Start installing some apps. don't
bring over the data yet.
Oops. Adept, the Kubuntu package manager crashes hard. The Internet says
Adept is crashy but tends to come back with some work. However, removing lock
files, killing processes, reconfiguring, hand cleaning the database - none of
that will get apt running again. After about 3 hours, and although I've broken 2
or 3 apt databases in last year, I'm wondering about a distribution that will so
casually break apt, which is reputedly solid software. The solution I found was
to burn the Ubuntu iso with k3b, give up on Kubuntu, and start over.
Ubuntu
Out of curiosity I tried to confuse its partition manager as per Kubuntu, but
it didn't bite. No problems during installation.
It Just Works (tm). Ubuntu is just like Kubuntu expect it's sepia, not blue, and doesn't have
adept, but does have Gnome.
Over the course of the first week, I Installed a lot of packages, such as
easyubuntu, subversion, meld, MyPasswordSafe, Thunderbird, Firefox ("I Can't
Believe It's Not OSS"), Eclipse, IDEA, KMyMoney, Gaim, Skype, gFTP, gtkpod,
mysql, and lots more. To install some things, means letting the package manager
talk to server things called "verses" (universe, multiverse, geddit?).
Ubuntu in use
Ubuntu/Gnome/GTK/Linux is a fine environment, probably an ideal development
environment. I didn't boot back into windows for two weeks (I had to work with
some Visio files), which I think says something. The way Ubuntu lays out the
screen, with a thin task bar at the top for shortcuts, menus and devices/status
and a bottom context bar for opne apps, trashcan is a very good use of screen
real estate. And it never slows down or degrades in performance over the course
of a day, which is important for anyone's work, but especially so for developers.
The other that's great about being on a Linux is a very simple thing -
symlinks. I haven't had a chance to look at Vista yet, I hear the monad shell is
a huge improvement, but Windows really really needs to support symlinks. Clearly
it can be done (witness Junction Link Magic).
The real upside however is that as desktop environment, Ubuntu is more or less
complete. Lots of things in it and Linux just work - such as:
- Printing.
- Wireless (install the networking tools).
- Dual monitor support (some config needed, but it's well-documented).
- Automouting USB drives.
- Samba and file sharing with windows.
My kids *love* the screensavers. My daughter asked "what's that" (Amarok),
and wanted to know what games came with Ubuntu. It's easier to switch kids if
they think Ubuntu is Cool, as opposed to Good.
Notable apps
The post-it notes are cool, and useful.
Eclipse/PyDev/Subclipse
In the switchover, I'm surprised about one thing above all else. In a span of
less than two weeks, Eclipse+PyDev became my preferred Python enviroment. I
hadn't used Pydev for a while. It's now a very impressive IDE. Previously I had
been using Wing, but I've never quite gotten used to its project and file
management idioms. Part of the appeal of PyDev is actually in the Subclipse
plugin, which has also come on in leaps and bounds in the last few years. Eclipse/SWT itself looks
well on Linux (I'd heard otherwise), and seems to be very stable.
Amarok
My colleagues rave incessently about Amarok. I can see why; it's sweet. It stores your prefs in a database, integrates really weill with the web. I mean *really* well - better than anything I've seem that isn't a browser or a feedreader. I love that it has wikipedia, last.fm and radio support built in; and who'd have thought musicbrainz could be so useful? Also it supports mutliple folders sources for your music, and behaves gracefully, as it should, when you are disconnected from your shares or USB drive. The only snafu I had was that you need a particular legacy version of libxine-main1 to play flac files with
Amarok 1.4.3, and that takes some fiddling to setup. An awesome application; this is how rich client apps should be. And I hear there's .rb files in there.
Emacs
It takes ages, but you can get an anti-aliased Emacs for Ubuntu. I've been using
NTEmacs for years, and not having decent typeface support would have me crawling
up the walls. Most of the extensions in my ~/emacs folder worked, except for some
very weird behavior with jde (I think it included my .svn folder in its
configured makefile or something). Removing the jde folders and reinstalling without .svn subfolders fixed that.
Annoyances
Some minor annoyances:
- Cut and paste doesn't work properly. I don't know what level it's failing
on, but I regularly lose the last few characters of my selection. Plus sometimes
paste is right-click, sometimes it's middle-click, sometimes its Ctrl-V. I
assume I'll get used to this eventually.
- Cursor jumping. The cursor jumps up one or two columns now and then. I don't know why
this is, maybe some focus follows mouse thing. Happens inside most apps, but not in Emacs.
- Hibernate/suspend doesn't work with the Thinkpad. I now have to organise myself properly by
saving my work state and turning my laptop off before going home. Others might now be impressed with my
new-found professionalism and structured work methods, but it's annoying to to have
to serialise my work state every day (I used to go up to a fortnight without
rebooting Windows, not a good idea maybe). A combination of Postit notes and
Emacs buffers are saving me each day.
- I think, but am not sure, that my anti-aliased Emacs crashes
intermittently. As in poof, utterly gone. I really want to be imagining this
one.
- Nautilus: doesn't handle large numbers of files too well (I have some
folders of XML and data files with between 10,000 and 50,000 items; windows will
just about function; Nautilus crashes. But it's an extreme need to browse 10,000
files. You get very used to have the folder view on the left hand side in
Windows explorer; not all Nautilus modes have this and folder view seems to go
away depending on what you're doing; Overall it seems to prefer a browser style
model where you drill up and down and rely on breadcrumb bar for context. Not
sure about that, I guess I'll get used to it.
- Gedit occassionaly stops shutdown (similar to how a Windows apps can
generally stop that OS booting down). More than once I thought I had shutdown,
closed the lid, gotten home and found a very hot laptop in my bag. I've been
told this isn't possible, but I managed to show it a colleague a few weeks ago.
- Installers and icons: for a number of apps I installed, I had to manually
create a .desktop file, put it in the right folder, and mockup a 16x16 image
file for the icon. it's not a big deal to put one of these together, but as a
developer I'm not sure I fit into Ubuntu's notion of a "human being". Human
beings don't install software and expect to edit config files to see a desktop
icon (imagine asking people to edit .ini files in windows). In fairness, this is
probably more to do with the app developers than Ubuntu itself.
Conclusion
Most of this was written back in September. After about 6 weeks of heavy use, there's nothing that has me wanting to move off Ubuntu. It's remarkably solid and well-designed, and maybe no more than 2 years away from being something anyone could use. Definitely a keeper.
The only real downside are some applications I truly miss from Windows - these are Feeddemon, Copernic and TortoiseSVN which have been supplanted by Bloglines, Beagle and Subclipse for now. Beagle and Subclipse are
fine, but not having a really good client side aggregator is a pain.