Chris Jean's Blog

Linux, WordPress, programming, anime, and other stuff.
twitter
rss
Updated for Firefox release 3.5.5

Firefox 3.5 was released yesterday. This is an exciting new release complete with features such as support for HTML 5, video and audio that works in the browser without the need for plugins, a much faster Javascript engine, a native JSON parser, private browsing mode, support for SVG transformations, and other great enhancements.

I’m sure that you’re just as excited to get started with Firefox 3.5 as I was yesterday when I heard the news. But wait! We’re on Ubuntu, we can’t just install whatever we want, we need to wait for a package. Right? Wrong.

Here’s a really quick way to get 3.5.5 running on your Ubuntu 9.04 system.

Continue reading “Upgrade to Firefox 3.5 on Ubuntu 9.04 – Jaunty Jackalope”

Hello again my faithful readers. Again, I am terribly sorry for the lack of posts recently. I’ve been extremely busy at work with some huge projects.

I work for iThemes doing back-end development for themes and “special projects”. Previously, I never wanted to talk about it much on my blog because we weren’t GPL, and that can cause a lot of commotion. I don’t have to worry about that anymore. As of today, iThemes is GPL.

This is a very exciting move for us. We’ve talked about it internally for a long time. I’m glad that we’ve finally made the change.

If you’d like to know more about the change, please check out the official announcement.

Now that I know how to do this, it seems so easy and straight-forward. To change the default application files of a specific type are opened with, do the following:

  1. Right-click a file that you wish to change the default application for and select Properties.
  2. Click the “Open With” tab.
  3. Select the desired application’s radio button.
    • Additional applications can be added if the one you want is not listed. Use the Add button to find the desired application.
    • You can also remove applications from the list by highlighting the application and clicking the Remove button.
    • Adding applications to or removing applications from this list changes which applications are available in the “Open With” option when you right-click a file.
  4. Click the Close button.

Again, it seems so easy and straight-forward now. Go figure. :)

I’ve spent a little more than a month working with Git now. I can honestly say that while there are many things that I like about Git, there are just as many things that I personally find to be a pain in the butt.

Submodules specifically have managed to be a thorn in my side on many occasions. While the concept of submodules is simple, figuring out how to actually work with them can be a chore. I say “figuring out” because not everything about working with submodules is well documented. I’ll cover two of the more difficult things to figure out: removing and updating submodules from your repository.

Continue reading “Git Submodules: Adding, Using, Removing, and Updating”

I recently worked on a project where I had to sort a set of rows returned from a MySQL query. The problem is that most of the data in the field being sorted is numeric yet the field type is varchar since some of the entries contained characters.

The reason that this is a problem is that MySQL sorts character fields using a method that will produce undesirable results with numeric data. For example, sorting 4, 10, and 50 as character data produces 10, 4, and 50. In most applications, this is highly undesirable.

The solution to this is to force a sorting order that is commonly referred to as a natural sort. Natural sort is just a term that refers to how humans would commonly sort a set of information (numbers as numbers and non-numeric characters alphabetically). Fortunately, this isn’t difficult to achieve in MySQL.

Continue reading “MySQL Natural Sort Order By on Non-Numeric Field Type”

It’s been a month since my last post. For all my regular readers, I’m very sorry for the absense.

There’s a lot of intersting stuff going on right now. Fortunately, with so much going on, I shouldn’t have a lack of topics to talk about.

To get the old post ball rolling again, how could I not start back up with Ubuntu 9.04?

Continue reading “Gaarai is Back and the Jackalope is Jaunty”

Linux has many great tools built in that help maintain the system without user intervention. One such tool is Cron.

On my Ubuntu 8.10 system, there are many things that are set to run each day: locate database updates, misc cleanup utilities, automatic package updates, log rotations, etc. All of these are managed by the Cron system.

For a while, I needed to manually run the updatedb command to update the locate database, and I never thought about why. The problem is that my daily, weekly, and monthly Cron jobs never run. The reason for this is that these Cron jobs are scheduled to run very early in the morning, when my system is off. Thus, these job schedules never run.

The solution for this is easy. I simply need to change the times these run at to times when my system is on.

Continue reading “Changing When Daily Cron Jobs Run in Ubuntu”

As I mentioned before, I want to switch from using Subversion for project code collaboration and versioning to Git.

I’m switching not because I have some idealogical dread of Subversion or its methods. In fact, I quite like how much easier Subversion has made handling code collaboration. The problem I ran into is that Subversion has become doggedly slow and bloated.

For example, a simple project with a current working size of 2.9MB has a Subversion repository that is a massive 98MB in size. Furthermore, it takes a full four minutes to commit a change, even a simple one-line change to a text file. During this commit process, my server’s dual quad-core processors are essentially maxed. Why the repository has become so amazingly large and why the commits take so long, I’ll never know. The maxing out of my server for four minutes per commit is also unacceptable since there are times where minor changes will need to be made to more than a dozen repositories at a time. Multiply the number of commits by 4 minutes a piece, and not only is a terminal on my system tied up for more than an hour, but my server’s CPU is maxed for just as long.

Beginning last week, I dug into Git and learned what I needed to know. The initial impressions are great; however, Git is not without its problems either. The primary problem with Git is that its syntax is extremely-obscure, IMHO.

Continue reading “Goodbye Subversion, Hello Git”

These days, I really want to dabble around more with virtual machines. They have a lot to offer for benchmarking and failover protection. However, I always thought that you needed a host OS to run the virtual machines in. In my experience, this was clunky at best and riddled with problems such as automatted startup of virtual machines, stability of the host OS, and degraded performance.

I’ve used virtual machines lately with Sun’s VirtualBox, a free virtualization platform that can run virtual machines. This has been valuable for testing different distros, but wouldn’t suffice for running virtual servers. At least, it wouldn’t based on my experiences.

I have a friend that has worked professionally with virtualization technology for a few years, and he pointed me to a VMware product called ESXi. Not only is ESXi free, it runs as the native OS in which other OSes can run virtually.

I have yet to test it out, but it shows great potential. If you have any experience with ESXi, I’d love to hear it.

There’s a very good chance that you have already heard of the game World of Goo. If not, check out this video to get a taste.

This game has a number of great things going for it:

  1. It’s a heck of a lot of fun to play.
  2. The world if very unique and has a fun feel to it.
  3. The music really sets the mood for the different areas.
  4. It supports Windows, Mac, and Linux.
  5. It’s DRM free.

These days, I find great favor in things that 1) have Linux support and 2) are DRM free. Since World of Goo looked like a ton of fun and had both of those, the $20 price tag was nothing. Frankly, the price is very small when you consider the many hours of fun that you can have with all the goo balls.

I ran World of Goo both on one of my Windows Vista machines and on my Ubuntu machine at home. It worked very well on both platforms. Even the Linux version was very smooth even though I’m running Compiz.

FYI: If you want to run this on Linux, you can get the software as a DEB or RPM package or as a tar.gz archive with all the application files. I recommend usingone of the package files. Since the packages are built for 32-bit, you will need to use these instructions if you have a 64-bit distro.

I highly recommend World of Goo, but you don’t have to have blind trust in my opinion. You can download the demo and try it out for yourself.

You might be interested in their post about the release of the Linux version. The day of the Linux release, sales were 40% higher than their previous highest-selling day. “There is a market for Linux games after all :) ,” said one of the developers after updating the post.