World Usability Day 2008 – Lahore

World Usability Day 2008 Lahore

At the occasion of the World Usability Day, the Interaction Design Center has organized an event at the UMT Campus on Thursday, November 13th. The event will consist of a series of talks, case studies, and a documentary screening. Every year the event has a theme and this year’s theme is transportation.

Three reasons you should attend:

  • Lahore is home to a lot of “interesting” means of transportation not found anywhere else in the world
  • Helvetica” is a great documentary
  • Registration for the event is free

So if you have some time to spare this Thursday, and are intersted in “Usability” either as a user or a creator, head over to the registration page and let IXDC know.

The Underscore is over-rated

After years and years of abuse, my pinkies can’t take it anymore and have hijacked my remaining fingers (and the thumbs) into writing this post.

So if you are a developer, a database designer, or just writes APIs or SDKs or programming languages or opensource code that other people will reuse, and if you love coding conventions, and if you like using the underscore ‘_’ as a separator, please STOP RIGHT NOW!. Think of all the little fingers that you will save!

If you are still not convinced, try typing Q_Q_Q_Q a few times. See?

camelCase is just as good for variables, and FirstLeretterCapitalization should be sufficient for functions names. It is bad enough that the curly braces {}, the Backspace and the Enter keys are so far away from the left little finger, and yet it has to cover all those keys – please don’t make it any worse by these horrible underscores!

The generation before us (the pioneers of computer science etc. etc.) probably started using computer keyboards in their middle ages, my generation (in Pakistan at least) started using computers in our teens, and if my son is a good representative sample, then TNG (The Next Generation) started using computers before they learned how to write. This means their poor little fingers will get an extra decade or so of keyboard exposure. The pioneer generation didn’t have a clue, but we do – most of us 30 somethings have aching fingers (or is it just me?) each day, after spending half the day in front of the computer. Let’s make the world a little more pleasant for our kids.

So the next time you get this urge to use the _ in your code, please reconsider. Thank you!

My First Day with KDE4 on Ubuntu Hardy Heron

Back in the 90s, I used to install and reinstall Windows 95 over and over again due to one reason or another (and I am sure it was the same for any Windows user). The last time I did a clean install, though, was 2 years ago, when I bought this laptop and killed the default Dell partitions to make it dual-boot. Installing the shiny new Kubuntu Hardy Heron on the day of its release gave me a geeky high I never knew I missed. Yesterday was my first actual day with Kubuntu 8.04. This post started as text notes for personal reference in the future, but I decided to put it up online instead of letting all that typing go to waste just in case it is useful to somebody. So here it is, my first day with Hardy Heron, full of installations, documented.

NVIDIA Drivers

Installing NVIDIA drivers took a bit longer than Gutsy, as Envy is not compatible with Hardy Heron as of now. There were two choices: go with the 92.something drivers available in Synaptic or download the latest drivers from the NVIDIA website. I (unfortunately for me) chose the second option, and ended up having to download build-essentials, rebuild the driver kernel, and fix /etc/X11/xorg.conf multiple times before my drivers took pity on me and started working.

Network

Both Wireless and Wired network drivers worked out-of-the-box without any special configuration necessary. It seems that the days of madwifi are gone for good.

Firefox

You have two options: firefox-2 and the firefox-3 beta. I lost my mind and decided to go with firefox-3. After the installation, I logged in to various websites that I use the most, to save my username/passwords, but when I started installing the extensions I can’t live without, not even 10% were enabled with the new version – there’s almost no backwards compatibility in firefox-3 as far as extensions are concerned. At the end, I had to uninstall firefox-3 and reinstall firefox-2, but not before I tried running them both in parallel without success. Maybe it is possible to make them work that way, but I had better things to do.

Firefox extensions

As a result of my previous firefox-3 blunder, the extension installations stopped working. I got an unexpected 203 error whenever I tried to install an extension. Thankfully, the errors went away after I deleted the extensions.rdf file in my ~/.mozilla/firefox folder, and I was able to install everything I needed.

Flash installation from source went without issues.

AMP

Nothing has changed for Apache, MySQL and PHP, so AMP installation went smoothly. I did the standard sudo apt-get install blah blah, Addtype in apache.conf, a2enmod to enable mode_rewrite, installed phpmyadmin and was able to restored everything from my USB harddisk.

Amarok

My Dell Inspiron 9400 has an extra “subwoofer” – in Gutsy, I had to compile ALSA from source in order to make it work, but I didn’t have to do it with Hardy. So I installed amarok and was expecting that the mp3 playback will start after amarok prompts to install mp3 support, but it began with a klauncher error. This thread helped me fix the error using kdeinit, and amarok started properly, though mp3s were still not working. After an hour of installing dozens of gstreamer good, bad and ugly codecs and xine plugins, mp3 playback and shoutcast streaming were still broken. During my tinkering, I enabled ALSA from amarok configuration manually, and everything started working! It took one more hour to build a mySQL playlist database from my 210GB mp3 folder, but that’s not such a bad performance.

Essential Software

With the music working, I had enough energy left in me to install all the essential applications that I could think of (and this post will serve as a reminder the next time I have to install from scratch). They were:

  • Skype – Instead of downloading the .deb package, I added it to the 3rd party repository from the repository manager using deb http://download.skype.com/linux/repos/debian/ stable non-free .
  • Quanta Development Environment – I like its PHP syntax highlighting, fish and ftp support, and the built-in SVN integration.
  • Eclipse – for C++ / cdt
  • The remaining firefox addons and toolbars, google/stumbleupon fireftp etc.
  • VLC Player – For vlc, I added the mediabuntu repository from https://help.ubuntu.com/community/Medibuntu , which also had some upgraded plugins and codecs.
  • ktorrent – since the next Battlestar Galactica episode was going to be available the next day 😀
  • Instead of having a local subdomain based php website structure like before ( site1.localhost , site2.localhost ), I used the clean install opportunity to create some virtual local servers, so now I have http://site1/ , http://site2/ and so on. This page shows how.
  • virtualbox – Since I spend more time on linux than on Windows, and since I still need to do some development on VS.NET and MSSQL, so I installed virtualbox. If I manage to set everything up properly, I will be able to get rid of the windows partition altogether, or atleast abandon it to gather digital dust.
  • msttcorefonts – They make a few software look nicer.
  • Java JDK and JRE – JRE for eclipse and JRE just in case…

And this is how I spent my first day with Hardy Heron before sleepiness made me … go to sleep. Day two was spent exploring and getting used to KDE4, plasmoids and plasma. In the next post, I will try to write about my first impressions of KDE4, plasma and plasmoids, and how and why it wants to change the desktop experience (for better or worse).

On the Clueless Ministry of Information Technology Pakistan

I originally started this post to share this spanking brand spanking new report on Broadband penetration in Pakistan by our Ministry of Information Technology titled "Is Entire Pakistan Underserved?", and was just going to write something weakly funny about it like "Yes, you bet it is, you could have asked me instead of wasting money on publishing a 39 page report about it"… but here's what went wrong….

Read more “On the Clueless Ministry of Information Technology Pakistan”

Election Commission of Pakistan – Live Voter Search

The Election Commision of Pakistan has released their cutting-edge website that allows anyone who can read and type Urdu to search for any 'Live' (and I presume, dead as well) voters in Pakistan. It is no mean feat to develop an Urdu website in Canada (handling a character-set twice the size of the English alphabet is surely twice as hard), especially a completely secure one that lets you search 80 Million (*gasp*) records!

Even though I still don't understand the need for the website (though it can be fun to search for the people you know to get their exact age and/or who they are married to), and even though its on-screen keyboard thinks 'undefined' is an Urdu character, and even though it does not know me, though I have tried both versions of 'hay' in my name along with my old and new NID numbers (which probably means I can't vote – (Yay!)), but I feel I should still congratulate the CEO of Mehndi.com for an excellent 'gift' back to the nation (in all its waving flag animated gif glory that messes up in Firefox), and for showing us backwards Pakistanis that "nothing is impossible if you go for it." (which translates loosely into "you can create projects out of thin air if you know the right people").

Now, can somebody lend me around 50 shell accounts or zombie machines so that I can scrape that database in a couple of days please? I promise to return them.