Tuesday, April 28, 2009

Ubuntu + Firefox 3.5 beta 4

After seeing lots of good things about the latest beta of the Firefox web browser, I decided to install it on my Ubuntu computer at work. Fortunately, both the current and the beta versions can be installed concurrently on the same computer, so I won't have to worry about re-installing the current working version (just don't open them both at the same time). Following the instructions here, I was able to add the launchpad repository to Synaptic (I had to change the word "intrepid" to "hardy", since that's what I'm still using at work). Searched for Firefox, and installed the 3.5 version. Aside from many of my plugins not working (to be expected), it seems pretty stable so far.

Oh, and I disabled the launchpad repository once I installed Firefox 3.5, so I didn't accidentally update other existing software with beta versions.

Friday, April 24, 2009

IRC for A/V Tech

Recently I've been doing a lot of work at the church related to the Dave Ramsey Town Hall for Hope which was having a live hour-and-a-half stream of Dave talking, to be broadcast to thousands of hosting locations - our church being one of them. Naturally, it's my job to do the hours of testing, and ultimately run the A/V during the live stream.

It was very clear that while the Town Hall guys have great production equipment, they've never done anything like this before. Very clear during the testing. :/ So when the live stream day came, I was grateful for some very kind soul who set up an IRC chatroom (channel) specifically for all of us tech people to sign into and keep in contact during the live stream.

You have absolutely no idea how helpful and reassuring this was. When you're doing everything you can to make sure that live stream is solid and glitch free, and then the audio goes out, the first thing you assume is that it's something on your end. But when everyone else is reporting that, yes, their sound went out as well, it's a wave of relief. It's like that commercial for Nextel, where roadies rule the world.. Except it's with many more people keeping in touch. Without that chat, that live stream event would have been much more stressful (considering that the battery in Dave Ramsey's wireless mic failed twice).

I also need to thank Buzz Out Loud and gknee for introducting me to, and showing me how to use, IRC and XChat. It couldn't have been timed better.

Wednesday, April 22, 2009

Ubuntu is the Universal Donor

You need an operating system to use a computer. The operating system serves as the bridge between the electronic hardware and the programs and, ultimately, the user. An OS can be as simple as your VCR menu, or as complex as Windows or Ubuntu. When you install Windows on a computer, it examines all the particulars about your processor, systemboard, and other specifications about your computer and builds a bridge between the electronics and the user. Part of this bridge is called the HAL - the Hardware Abstraction Layer. The HAL, basically, allows components of Windows to operate correctly with parts of your computer. The HAL is very important. Without the HAL, Windows has no way to communicate to the computer.

Most of the time, the HAL works fine and doesn't give any problems. But I'm going to give a scenario. Lets imagine a user who has a laptop running Windows. He's in his office and he's typing up a documentl. It's early in the morning and he's got a hard time staying awake, so he gets up, goes to the break room and gets a hot cup of java. He brings his cup back, sets it on his desk, and returns to his e-mail. A few minutes (and a spellcheck) later the document is finished. The user clicks on Print and then gets up and goes to the printer to see how it turned out. Once he gets back, he sets down at his desk, turns, and his cup of coffee is tipped over and now spilling hot caffeinated fluid into the depths of his laptop. Fortunately the user reacts quickly and powers off the laptop, unplugs it, and removes the battery. A visit from the IT guy later and he's got a hard drive that's perfectly safe, and a laptop that needs to get sent to Dell for repairs.

At this point, the IT guy can do a few things. He may have a spare laptop available, but he'll have to copy all of the users files off the hard drive on to the spare laptop, and then make sure all the programs work correctly - a long an arduous process. If he's lucky, he'll have an identical model laptop as a spare. He can put that hard drive in the replacement laptop, power it on, and everything works as normal. This works because both laptops are the same electronics, so the HAL that Windows made on the one laptop will work seamlessly on the replacement laptop. But why won't this work if the laptop is a different model from the one that took a shot of hot coffee? Because the HAL that Windows made - this bridge between the computer and the user - doesn't line up with the electronics of a different laptop. Windows will try to load but will get a nice blue screen with geeky stuff on it, basically telling you Windows is broken and can't work. So having all laptops be identical is beneficial, because if anything goes wrong, you just swap the hard drives and work doesn't get interrupted long. But unless you're a big company with a lot of money, it can be hard to have all your computers be exactly the same. Some department has some money they need to spend before the end of the year, and they want a laptop. Six months later and some other department wants a laptop. When you have singular purchases like this, it's virtually impossible to keep all your computers identical (especially if you want the latest and greatest...or even just a better computer). It's an unfortunate scenario, but there are some ways to work around it.

Without going into great detail, technologies like thin clients, virtual machines and roaming profiles can help with this problem. But even these technologies are hard for a small business to deal with, even though they're inexpensive, and sometimes free. Wouldn't it be great if Windows could re-create the HAL each time it ran? Then it wouldn't matter (for the most part) what computer you stuck that hard drive in.

Linux can do this. Ubuntu can do this.

Again, without going into great detail, there are so many ways to install Ubuntu on to a computer. You can install it like normal, you can dual-boot it with Windows (both Windows and Ubuntu live on the same computer, and you can choose which you want to use when you turn the computer on), you can install it as a program in Windows and dual boot using Wubi, you can install Ubuntu as an application using Portable Ubuntu, you can install it to an external hard drive or flash drive, or even run it off a LiveCD. But the interesting thing is that Ubuntu builds a HAL each time it boots up a computer. Ubuntu builds a bridge between you and the computer each time it turns on. Windows just builds it one time and leaves it at that. You know what this means...

Lets take the coffe spill scenario and change one small detail. The user isn't using Windows. He's using Ubuntu. Fast forward to the end where he's got a hard drive that's safe, and a drippy caffeinated laptop that is in need of a trip to Dell. The IT guy has a spare laptop, but it's not the same as the one that got soaked. Not a problem. Stick the hard drive in the spare laptop, turn it on, and voila. Everything feels like it used to. All the files and programs are still there. Aside from physical differences between the laptops, like the keyboard, screen size, etc., the user barely notices any difference. He can get right back to work, and neither he nor the IT guy have to worry about copying files and making sure all the programs work. Whether you're the user, or the IT guy, this is a big relief.

Naturally, there are some caveats. Depending on what kind of processor you have (32-bit, 64-bit, AMD), you might run into limitations switching between computers with different processors. But those limitations are rare and can often be worked around.

But there's one other nice thing that Ubuntu does. Lots of components of a computer, like scanners, printers, monitors, graphics and sound card, aren't touched by the HAL. Windows uses things called drivers to build bridges between the HAL, the user, and the components. This is because there are so many different optional pieces of hardware, that it's easy for Windows to let the manufacturers release the computer code that lets their component work. You've probably seen this before. You attach a new printer to your Windows computer. Windows says, "Hey, you've attached a printer." Sometimes Windows will churn a bit, then say "Ah, your printer is ready to use." But more often than not, it'll bring up a screen saying "I see you've attached this printer, but I don't know how to use it. Please give me some drivers." At this point, you have to find the CD that came with your printer, or visit the manufacturer's webpage to see if the drivers are there. This can be a pain in the butt. Especially if you have something like 5 or more components that all need drivers. Even if Windows could be swapped between different computers, more than likely you would need to install several drivers to get all your components working right. Again, this takes time, can be a lot of effort, and can be completely avoided if you were using Ubuntu.

Granted, Ubuntu doesn't know how to use every piece of hardware out there. But for the most part, Ubuntu can figure out your hardware and get it working without the user having to download drivers. Ubuntu either already knows how to use it, or it offers to download the drivers for you from the Ubuntu repositories. So it's perfectly feasible to continually change out the computer you're using just by sticking the hard drive in another computer. Not only can this help in the coffee scenario, but it could also be helpful when a business phases out it's old computers and gets new ones. Normally the IT department/guy would have to set up each new computer, get the applications installed, and then copy the users' files over and make sure everything works (there are tools that can make this easier, but they can be hard to use, and more trouble to set up if you don't have all that many computers you're upgrading). It's perfectly plausible to perform the same upgrade with Ubuntu, but instead of all the work, you just take the hard drives out of the old computers, put them in the new computers, and virtually nothing changes, except now you have the benefits of the new computers. Now I'm not saying that this kind of migration is not without issues, but some planning could make such a transition very painless.

In fact, remember that big list I gave of all the ways Ubuntu can be installed in a computer? I mentioned using an external hard drive, USB flash drive, or LiveCD. With these technologies, the computer comes with you. You don't have to worry so much about having your computer with your programs and your files on it. The files and the programs are on the external drive/USB stick/LiveCD. I have installed Ubuntu onto a USB flash drive. I added some extra programs I like, and I have some personal files on it. But I can take this to any computer (that supports booting from a USB drive), stick this in, turn it on, and voila! There's my computer! Any changes I make, like new files, new programs, customized settings, all get saved back to the USB drive. So when I stick it in a different computer, all those changes come with me and work on the different computer. It's not without possible issues (the processor issue I talked about earlier, the rare piece of hardware that doesn't work correctly), but for the most part, it really is as simple as that. Ubuntu really doesn't care what computer it's running on. It doesn't care if you're using a different computer today than you were yesterday.

Ubuntu is like Type O negative blood - a universal OS type.

iTunes in Ubuntu

iTunes is both a curse and a blessing. It's a nice portal for managing your iPod/iPhone, syncing your music, and accessing the iTunes Music Store. However it's irritating that in order to do a lot with your Apple gadget, you must use iTunes to manage it (without hacking it). Because of this, I have never bought an iPod. My mp3 player is a basic Creative Zen Stone 2GB w/ Speaker, because it's inexpensive, works just fine, and works as a USB flash drive when I connect it, so it's very easy to manage.

Recently, though, two things occured at the same time that forced me to touch iTunes. At church, we're putting on a live feed of Dave Ramsey. In case of an emergency, though, we're given access to three videos of Dave that are...only available via iTunes. Tarnation. Also, I've been following Jonathan Strickland and his work on the TechStuff podcast, and they prefer the downloads go through iTunes so they can track the downloads. I want to support them as much as I can, so I felt bad downloading mp3s from the RSS feed.

So, a compromise, and an experiment. Can I run iTunes in Ubuntu? Falling back on the ever-faithful Crossover, I downloaded iTunes 8 and installed it. And failed. Without any detail, the installer fails to work. :/ Hmm... So I get to looking and, nestled away in the depths of the iTunes website, I find iTunes 7.3.2 for Windows 2000. Already this feels promising. So I fire up Crossover and get the installer going. Some errors, but the program did install. :)

iTunes 7 via Crossover on Ubuntu is not ideal. I have no idea what works and what doesn't, but it felt very flaky and very very sluggish. Nonetheless, I was able to get to the iTunes Music Store and download what I need. Again, it's very flaky - it's hard to even pause or stop a download once it's going. And you can't quit the program during a download unless you force quit it. And I get a box reporting a registry error about CD burning (to be expected). But, if the goal is to get to the iTunes Music Store, that's doable.



Ubuntu running iTunes via Crossover, checking out the TechStuff Podcast on the Music Store.



Downloading an episode of the TechStuff Podcast



The registry error I get each time I start iTunes, but isn't a problem unless trying to get iTunes to make CDs.

Sunday, April 19, 2009

Ubuntu and File Space

I rarely have any problems with Ubuntu, and those few problems I have are either due to my limited experience with Linux, or some failure of the hardware. But every now-and-then, something puzzling and silly shows up.

I run a copy of Ubuntu on a Lenovo T61 laptop at work, using Wubi to dual-boot between XP and Ubuntu 8.04. Today, though, I tried to boot into Ubuntu and noticed that the network manager, bluetooth, and power management icons didn't load in the top panel. And clicking on the "quit" button would cause the panels to crash. After some fiddling, I found that I could log in to root and everything would work. :/ So I re-installed the power manager, network manager, panels, and some other pieces of Gnome to no avail.

So after a little Ubuntu forum scanning, I figured I'd try to backup and then wipe out the Gnome2 configuration files. It is at this point that I need to point out that although nothing had changed on the computer, something had happened that worried me. Just before my problems, I was moving my laptop from one table to another and it slipped out of my hands. Normally this wouldn't have been a problem - Lenovos are tough laptops. But it would just so happen that I had something plugged into one of the USB ports, and it became completely crushed and warped. And it was a pretty hard impact (on carpet). And the computer was on. I was absolutely afraid I had corrupted something.

Anyway, when I attempted to backup the Gnome2 config files (these files are all the personalization settings for Gnome that are tied to each individual login), I found I couldn't backup the folder because...there was no more hard disk space! Of course!

I had been downloading...er...some files via bittorrent recently. Of course they were taking up a lot of space. Let me take this time to point out something about Wubi. Since Wubi makes a container file in Windows to contain Ubuntu and all it's files, it asks you during the install how much space you want Ubuntu to use. So even though I've got a big hard drive, I told it to use only 15GB. Apparently, I need more space. :P

But this brings to light a problem I've had a few times with Ubuntu. Ubuntu, Windows, Mac, any OS has problems when it runs out of hard disk space. Windows and Mac fail gracefully as you get warned when you're low or out of hard drive space. However, by default Ubuntu doesn't do anything to notify you of low hard disk space. Which is problematic when Ubuntu is writing information to configuration files and can't because there's no more space. I've had all kinds of strange and bizarre problems occur that I would stress about for many minutes, and them somehow have the epiphany that it's due to zero hard disk space left. (In my defense, this time I had a red-herring due to the laptop fall).

Fortunately, Ubuntu 9.04 is bundled with Gnome 2.26, which has a daemon that notifies of low disk space. Hopefully that will save me some headaches and fear-induced adrenaline.

Tuesday, April 7, 2009

Dad's Ubuntu Computer

My dad's been using an old computer ever since he started using computers. Recently, he's been using an old Pentium III Compaq with only 256MB of RAM. He keeps saying it's good enough for him, but then he complains that it's slow, that Google Earth doesn't work right, and has just recently been complaining about weird browser virus popups. Needless to say, it runs Windows.

So I got fed up with Dad wasting a lot of his time just waiting on his old computer, so I got a gutted computer case and ordered a few parts. The parts cost approx $300 total and assembly and testing took about 1.5 hours (one-and-a-half episodes of Star Trek: The Next Generation). Installing Ubuntu took no time at all! After the hard drive was partitioned, I went to the kitchen. When I came back, it was done! Like, in two or three minutes!

This computer is incredibly snappy with Ubuntu on it. You can go here for the photos I took while I was putting it all together, and you can check here for video demonstrating how fast it boots.

Wednesday, April 1, 2009

Office 2007 Woes

Just about every computer I've had to install Office 2007 on has gotten an error during the installation...usually right at the end. There are a couple of different problems I have, but all of them say something to the effect of "can't read files from source" (one example is the Error 1706). Now, I'm copying the entire Office 2007 discs to the hard drive of each computer and then running the install from that, so that if Office ever needs to install new add-ons or whatever, it won't go asking for the CD. Why it has a harder time reading files from the hard drive, I can't say (although the knowledge base article does make a little sense out of the 1706 error).

Sometimes forcing a chkdsk at startup before the install fixes it, sometimes I have to run it multiple times. But I never know if it'll work or not until Office 2007 is just about completely installed. Then it needs to rollback all the changes it made before I can attempt an install again. I know this is a good thing, but it has taken up so much of my time I can't even bear to think about how much of my life has been wasted fiddling with it.

I'm sure Office 2007 is a great program, but why the installer is so picky about whatever the problem is (and doesn't really explain what the problem was) makes me grateful I'm using Ubuntu and OpenOffice on my computers at home.