Tiling window managers: the right way to manage windows

Over the last few days I have been trying out various TWM’s or Tiling Window Managers’s, I have tried Awesome, dwm, xmonad, ratpoison and ion3. After having a fiddle and a play with them all I have finally settled on xmonad, although I may change my mind sometime down the road.

Why did I choose xmonad, you ask?

I chose xmonad for 3 reasons in the end, the first was ease of configuration. This was a toss-up between Awesome and xmonad, Awesome uses a small Lua config file where its pretty easy to find the settings you want, plus it’s also well documented. However, the reason I chose xmonad is because I didn’t like the way that awesome arranged the windows, I tried various configurations but I still couldn’t get it the way I wanted it. I found that xmonad’s use of a Haskell config file was just as easy as Awesome’s but without the annoying window behaviour.

The second reason was extensibility. Most of the one’s I tried had some form of extensions or addons, although I found xmonad’s the easiest to install and the most appealing to use, dmenu is an example of one. I didn’t like the fact that I had to write C code for dwm, even though I know C it was pretty off-putting.

The last reason was low resource consumption. I found them all to be very lightweight but both dwm and ratpoison lagged and were a little slower bringing up applications than xmonad was.
I’m quite enjoying using xmonad even though I only have a 19″ screen, it’s still well worth it. A word to all those eye-candy and shiny theme lovers out there: don’t bother using a tiling window manager, they have the downside of looking a little ugly, although I dont mind.


Chromium: Still not quite there

I am one of many people who use chromium/google chrome as their main browser and while chromium is really great because of it’s speed, it still has it’s flaws.

The longer I use chromium for, the more flaws I find. There are a few things that really bug me when I’m using chromium, for example, when I want to view a blogs RSS or Atom feed, I click on the link only to find that chromium refuses to display the feed properly and instead just spits the html in plain text onto the screen.

Another thing that really bugs me is the fact that chromium still refuses to handle some flash objects properly, mostly flash animations. Chromium also really hates Java applets for some reason, so I have to fall back to Firefox in order to use either.

There is also the fact that flash seems to constantly crash without warning, meaning I have to hit F5 every time this happens.

I think I may be switching back to Firefox once 3.7 becomes stable. There is a massive speed difference between 3.6 and 3.7 both in startup times and page load times, meaning that chromium no longer has such a big speed advantage.


Tip: Using the Ubuntu Manual Project’s PPA

I figured it’s time for another tip, since I offered to write this tip up for a fellow IRC user.

It appears that the Ubuntu Manual Project (which I’m a part of) has no instructions up for using the new LaTeX PPA, so I thought I would take this opportunity to help fill a gap.

So, to add the PPA first you will need to use the add-apt-repository command:

sudo add-apt-repository ppa:ubuntu-manual/ubuntu-manual

Then you will need to update your sources:

sudo apt-get update

Lastly you will need to install the ubuntu-manual-tex package:

sudo apt-get install ubuntu-manual-tex

That’s it, your done!


Blog updates

Just a quick post to let you all know what’s changed.

First of all I have changed the theme from a very dark one to a nice, dark/light theme. I have also gone through and removed a lot of clutter from the right hand side. The new theme is a lot more flexible than the old one, it has allowed me to move the navigation bar up to the top, add a “move to top” link down the bottom on the right and various other cool things which I may play around with later.


Whats new in Pytask 0.3

About a week ago I released a new version of Pytask, this was a great achievement for me since I have been working on the 0.3 branch for nearly 9 months. This is just a little follow-up to tell you what’s new and what is in the works for Pytask 0.4.

Some of the new features in 0.3 are:

The use of desktop-couch

Its mostly a back-end non-user-visible change, but basically it allows the tasks you create and manage with Pytask to be synced over multiple computers. The good news is that this is all done by Pytask so you dont have to worry about a thing.

Quickly Widgets and Quickly

This is also a fairly back-end change, although some of you may notice that Pytask now has a really powerful filter and search widget above the task list. You can apply a whole bunch of different filters to just show the tasks that you think are relevant, it’s also possible to apply multiple filters at once.

Quickly Widgets is a great little project started and maintained by the awesome Rick Spencer and is great if you just want your app to work with minimal fuss and very little code.

Usability Improvements

One of the things I really wanted to do was to get rid of the Add/Edit Task dialog, I did this using a great little feature of CouchGrid (which you can also use if you use gtk.TreeViews) which makes the rows in the grid editable so there is not need for any dialog boxes. CouchGrid is part of Quickly Widgets and is what Pytask uses to display your tasks.

I have also added (with the help of Rick Spencer) two new column types to Pytask, one is a little calendar widget that allows you to select any date easily instead of typing it in manually. The other is a priority rating, which allows you to set a priority number for each task, however this setup is not ideal and one of the features i want in 0.4 is to have a drop-down list of values that you can choose from.

As an added bonus from all this hard work, these two new column types are now in the trunk code for Quickly Widgets and will soon be available for you to use from the official repositories.

Also keep an eye out during the next week or two, i will be creating some getting started documentation for Pytask and chucking it up here on my blog.

Be sure to go grab Pytask from my PPA and have fun using it!


18 months with ubuntu: what i have learnt

As some of you who know me on irc know, iv been using and contributing to Ubuntu for almost 18 months now, I thought I’d just reflect back on what iv done over that time.

First of all, I should probably explain where I started.

I first started using Ubuntu in January 2009 after ordering a Live CD over Christmas (during the development of 9.04), i dual booted Windows and Ubuntu for about 4 hours before I dove in and wiped Windows off my hard drive. I quickly grew to like Ubuntu and decided it was right for me. I discovered launchpad.net in late January and immediately signed up and thought id start developing a GTK based app for GNOME, but it wasn’t until July 2009 that the idea of Pytask came to form in my head.

Since then I’ve really got into learning python and getting really familiar with the command-line. As a result of this I hang out on irc.freenode.net for most of every day and chat to whoever is around. Some other projects I’m now involved in now include the Ubuntu Manual Project and Quickly Widgets, which I think are both awesome projects.

Recently (sometime in the last few days) I’ve noticed a considerable increase in the efficiency with which I use Ubuntu, I can use the command-line faster, open programs faster, I know more about Linux and Ubuntu in general and also type much faster than I could before.

Heres a screenshot of my desktop as of today:

It’s still fairly plain as Linux desktop’s go but at least it’s far better than what I had back in February:

My Current Desktop

So, thanks for reading fellow Linux users, Enjoy!