My motivation for writing this blog post is based on an IRC conversation I had a few hours ago. Basically, we got talking about different distro’s and I eventually brought up the topic of convenience. Now I first thought, what is convenience? I figured its the ease of use of a specific application or distro, in computing terms anyway. But is that what it really means? the way I see it, convenience can be classified into two categories, short-term and long-term. Let me explain.
Short term convenience means that a user is able to get up and running and familiar with an application, distro or other piece of software very quickly, this has its benefits. It allows a user to quickly get the work they want to do done without having to learn lots of keyboard shortcuts/commands/read lots of documentation. For many people, this is the way they like to do things.
Now, long-term convenience means that a user is required to spend a little more time mastering a given application, but it allows them to have far greater flexibility and more importantly perhaps, convenience. I think the true meaning of convenience is not ease of use but less effort for the user, these two things are not the same thing, ease of use is how easy something is for a user, less effort relates to how effortlessly a user is able to accomplish a task, let me give you an example.
Say a user editing code wanted to open a document, go to a certain line, delete bits of code from inside other bits of code and then go to another set of lines and delete a whole bunch of lines entirely. In gedit, which I would class as a short-term convenience application, the user would have to tediously scroll around the document constantly switching between the keyboard and the mouse. But what if that user used something like vim, which I would class as a long-term convenience application. Then all the user has to do is enter a few short commands all strung together and they don’t even need to use the mouse.
Sure its easier to learn to use gedit, but is sacrificing true convenience for a slightly lower learning curve really worth it? in the long-term, it would be more beneficial for the user to simply learn to use vim. Be sure to share your thoughts in the comments.
First, let me give you a bit of back history before I ramble on for a while. I have been stuck for weeks not knowing who or what to believe about Linux any more, I was not liking Canonical because of the recent contributor agreement (even though i didnt have to sign it), on the other hand, I didnt really like ubuntu because of how hard it is to get a simple application into the repositories. For the last few weeks I have been in indecision about what I should do, should I let my Ubuntu Membership expire? should i jump ships to a different distro? should I stick with Ubuntu?
Just a few minutes ago however, I had a *lightbulb* moment, I realised that I should just stick with Ubuntu, why? because I don’t have to sign the contributor agreement, I don’t have to let my membership expire, I don’t need to switch distro’s, I realised that I am happy right where I am, I am happy with Ubuntu. I realised that I don’t actually contribute to Ubuntu itself much, I write my own code, which isn’t included in Ubuntu. I write documentation that isn’t included directly in Ubuntu, I don’t actually contribute anything *directly* to Ubuntu.
So why did i feel this way? why did I feel as if I wasnt doing enough? as if I didnt fit in? I realised that I *do* fit in, I realised that I had no obligation to work my way up to contributing directly to Ubuntu, i already contribute to it in my own unique way. I also now understand that I don’t need to disagree with anything canonical do, since Ubuntu will still be able to use plain old GNOME, it will still be as flexible as before, I realised that I didnt have to accept the default stuff, I could do whatever I wanted, it is Linux after all.
Have you ever felt this way? If yes, what did you do about it?
I just setup an account on github in order to share my git repo of some of my more useful config files, you can see it here:
I realize I haven’t blogged in a fair while, this is my first post of 2011. 2010 was a big year for me in the Ubuntu community, I participated in so many cool projects, events and activities, and perhaps more importantly, I learnt a great deal.
At the end of last year I created a big list of things I wanted to do in 2011, some of you may be thinking “how could this bloke possibly have the motivation for all these things!?”, my answer to that? I am motivated because of the great community around Ubuntu, FOSS and around the interwebs.
Now, I do not wish to share the list with you all, simply because it has many things on it that I do not wish to share with everyone.
Some of the cool things I did last year:
- Joined the Ubuntu Manual project and helped to drive it forward I am still active within the project, although have a reduced role due to commitment to other projects.
- Received Ubuntu Membership
- Joined the Bugsquad
- Joined the Ubuntu Developer Manual project
- Joined the Ubuntu Youth Team
- Greatly increased my activity on IRC and other sites like Identi.ca and Diaspora.
- Started my own project called Pytask
- Joined in on Ubuntu Opportunistic Developer Week and ran a session.
I am planning on making 2011 the year that I really put an effort in. To help with this, I have finally got enough money together to buy new hardware.
Also, many people have been asking me when the next release of Pytask will be coming, I have been working hard over Christmas to get the next release out. There are many useful improvements that have been made and Pytask will be available in over 10 languages as of next release, so hold on to your hats!
Today I was about to download a tool called PSPShrink which basically compresses your Sony PSP iso’s into smaller cso files. Just as I was about to download the tool I found a tool called ciso in the maverick repositories, this tool does exactly the same thing, except it has no clunky unnecessary GUI like PSPShrink.
So I now use ciso, which is available in the repositories and can be installed by running the following in a terminal:
sudo apt-get install ciso
It is very easy to use and very convenient, since I am using the terminal a lot of the time.
So much great stuff has been going on lately, the last few weeks have been really awesome. First of all the awesome Daniel Holbach convinced me to run a session during Ubuntu App Developer Week (which is coming up at the end of this month), which I have decided will be a showcase on Pytask. I also just obtained Ubuntu Membership last week, which I am really happy about.
On top of all that, I also joined the Ubuntu Youth team, took over lead of the Ubuntu Developer Manual from Rick Spencer (who has been helping me out with Pytask) and joined the BugSquad.
On a completely unrelated note, I am currently in the process of choosing parts for my new computer which I should be getting soon, currently all I have is a half decent Pentium 4 from 2003, thanks to a few people from my LoCo for helping me choose some of the parts.
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.