Welcome to my personal website. It holds my personal blog (in Icelandic), a few articles and my pet projects. Guests are kindly asked to leave an occasional comment for my enjoyment.

Browers on the Linux desktop

Unlike many people, I use a lot of different operating systems on a day to day basis. This includes Windows, Mac and Linux and I've always felt that somehow that browsers on Linux are slower than on other platforms.

Yesterday, I decided to try a very premature build of Chromium, the open source brother of Google Chrome. I was (and still am) extremely impressed by its Javascript performance and in general "snappiness".

"Snappiness" is hard to measure, but I did run the Sunspider Javascript benchmark on the different browsers I have installed on my Ubuntu 9.04 64-bit.

//charts.hohli.com

According to my tests; Chromium came in first, Midori (another webkit browser) in second, Firefox in third, Konqueror fourth and Opera was by far the slowest of all browsers. Strange enough; Konqueror, Midori and Chromium are all webkit based but javascript performance varied by a lot.

I am impressed with Chromium and am looking forward to it reaching maturity (as it is a bit unstable and not feature complete). The biggest dissapointment was Opera; always touting performance. Konqueror also scored much lower than I expected.

The results should be taken with a grain of salt as benchmark performance varies between computers. The benchmark kit is also created by the developers of Webkit, so it is not surprising that their browsers come in first.

At a later point, I intend to repeat these tests, using multiple benchmark tools. You are also encouraged to perform your own tests.

Ubuntu Jaunty (9.04), Pidgin and the Indicator Applet

I recently re-installed Ubuntu on my machine (would've been my 6th upgrade, so why not re-install) to try the latest release.

I like the new notification system, except that they have created a new applet to handle Pidgin (and some other messaging programs) instead of allowing them to sit in the task bar as usual.

Hiding the buddy list is acceptable, but showing a 'mail icon' all the time is not. Switching icon themes didn't help, only made things worse.

So, I removed the indicator-applet from the panel but then I noticed that Pidgin wouldn't sit in the task-bar and just exited if I clicked the 'x'.

Then I thought to myself, "oh my god! what have they done!". But fortunately by going into Tools > Preferences and 'System Tray Icon' it's possible to activate the good old functionality back.

This isn't rocket science but I noticed that quite a few people were also looking for a work-around for this while I was searching.

Footnotes:
- Someone submitted this as a bug in the Human icon theme (I will still argue that this is a design problem, not a theme problem)

Micro-bloging as a project management tool

Twitter is the next big thing in our dot com bubble and now everyone has a Facebook account. Those of you not familiar with the concept of micro-bloging is that you write what you're doing or thinking in 140 letters or less.

Most people are too lazy or simply too busy to blog about their every day, their thoughts, dreams and plans. So micro-bloging is a very fast method of expressing your basic thoughts; like "tomorrow I'm going to run 20km" (for british and american readers, I have no idea how much it is in feets, learn the metric system!).

Which brings me to the work-place and project management. I dislike time-tracking software with a passion; I feel like it sucks any motivation I might have for a project right out of me. A project that was fun, challenging and interesting a few minutes ago becomes a 'duty' when I look at time sheets.

I don't aim to replace time-tracking software for billable time (between clients or departments), some people have account for their exact time at a project. Sad, but true.

Which brings me to the other reason to time-track people, management. If you're a head of a project or a department, you want to be able to see that all of your employees are doing what they are supposed to be doing and nobody is in there picking their nose or wasting an entire day on Facebook.

I don't think this is a good reason to track people's time in this way. The real reason to do this is when you become disconnected from your workers when the project becomes to big to handle manually or simply if you want to safe time, that would otherwise be spent asking the workers how they're progressing.

Project managers need to know what the workers are doing and most workers feel the need to express themselves when a certain task is finally finished; usually by heading to the water-cooler.

I'm suggesting that companies implement in-house micro-bloging systems (like Twitter, but not). This will not replace time-tracking software or even talking to our colloquies at the water-cooler.

Examples:
- John the developer: Just finished building our new release for client X (tagged in: client X, development)
- Phil, the chef: Just finished preparing lunch; Pizza today! (tagged in: kitchen)
- Julia, the tester: Crushed 10 bugs today, going to get coffee (tagged in: testing, development)

Then managers and other co-workers can subscribe to these little tidbits and get notifications on updates within the company. That way department heads or project managers can follow exactly what they want to follow (by using tags) and will not get the feeling certain people are just picking their noses at work.

I think this could be extremely valuable for a healthy running company. I've worked in system administration but at times I'd love to hear more about how development is progressing or what's for lunch or simply watch how my favorite co-workers are doing.

Micro-bloging takes a few seconds and would make everyone feel a bit more involved, and that's always a good thing.

As far as I know; This hasn't been implemented yet (except on a small scale on Twitter) but could be very easily done with existing systems and RSS feeds.

Do you have privacy online?

Privacy is a word that is used often but usually by some whiny, paranoid people that don't want somebody spying on them, right? Wikipedia defines 'privacy' as "Privacy is the ability of an individual or group to seclude themselves or information about themselves and thereby reveal themselves selectively".

I'm going to define privacy as your right to say, "Back off buddy! It's none of your business!"

Why would you care?

Do you have something to hide? You're not a terrorist or a criminal (I hope). Then why protect your privacy?

This isn't simply a question of you wanting to hide something about your life, it's your right to exclude specific people or the general public to know details of your life, that you want kept private while your friends and family are welcome to it.

Stuff like your family photos, your drunken parties, your political beliefs, your medical history, your collection of t-shirts, your diary should not be available to everyone.

If it's on the INTERNET, it's available to everyone. It's simple a matter of how badly they want it.

How?

Google knows everything about you. Hey, I'm not being paranoid, just think about it. Have you seen Google's advertisements on homepages? Have you registered for any of their products? If yes, then they own you.

Every time you visit af webpage, a certain 'signature' is sent to the server. It tells the server what operating system you're using, where you are from (in terms of internet service provider), what plugins you have installed and so on. From all of this, the server can make a pretty accurate profile of you.

But I'm not my computer

True. But why do you think every single site on the "friggin" web wants you to register? This is simply a way to connect your real identity to your computer identity and every time you log in, they know who you are.

Nooo, you're full of shit. Why would they bother?!

Simple! Money! It's extremely valuable to know you, your habits, where you live and what you like.

Example:
You like football, you search for alot of football homepages. You visited the Manchester United fanclub and they have a couple of Google Adsense adverts on their page.

For a seller of sporting goods, this is extremely valuable. He will now send you 'spam' to your mailbox telling you about this great offer on Man. Utd. merchandise. And people DO fall for it.

But Google would never do this, they're good

Right now, Google has a mandate that says "Do no evil" and telling spammers about you is pretty evil. So no; But Google isn't the only company that has many websites or advertisements on many websites.

What can I do?

I have a couple of hints that help with your privacy online, although this doesn't guarantee anything.

  • Clear your cookies regularly. They help track you.
  • Don't register for everything. Try Bugmenot.com if you need to use a registration-only website for a short period.
  • Don't give away your personal information freely. Full name, street address, telephone number is nothing they need to 'trust' you as a user. But if you're ordering online, you might need to disclose this.
  • Remember! Anything you put online, is public! Your employer, your friends, your enemies, EVERYONE can find it.
  • Try Tor, it's a computer program that masks your internet connection; and allows other to mask their connection, using yours. You are still trackable by cookies and logins.
  • Try to keep your online persona seperate from your personal one. I realize that with social networks, this is almost impossible.
  • Be aware and use your common sense.

You don't have to paranoid to care about your privacy. Just think, you might not get your dream job because your employer was able to find out that you play massive-multiplayer-online-roleplay-games and he thinks that it will compromise your priorities or that he found some compromising pictures on Facebook that he thinks that potential customers would not like. Your public image is important!

Staying Synchronized

I like to keep organized, but I don't like to spend time on it though. That's usually where 'notebooks' and daily schedules fail. Many of my ex co-workers use Microsoft Exchange to stay synchronized between their computer, workplace and mobile telephone.

My current solution involves Google Calendar, my Nokia E65 and a free service called GooSync.

This setup should work on most modern mobile telephones, such as Nokia, Sony and Motorola.

Step 1

Create your Google Calendar account, if you don't have one already.

Step 2

Create an account on GooSync and follow their instructions for setting up your mobile telephone.

Step 3

Sony Ericsson users can set up automatic sync so the phone keeps synchronized. Nokia Symbian telephones however have to synchronize manually.

Or at least, until today; when I found Bergamot Swim. It's a cute little program for Symbian, that allows Symbian telephones to schedule synchronizations.

Now my telephone always stays synchronized with my Google Calendar and it doesn't matter where I add the events.

Then of course it's possible to synchronize Google Calendar with many different types of calendar programs, but I'm not going into that now.

The Opera browser and why I don't like it

I've been reading posts recently about the 'browser wars' and why Opera hasn't been more successful than it is in the 12 years it's been out. Although It's a bit too strong to say that I hate Opera; I can't imagine using it on a daily basis, and here is why.

  • It's bloated! I don't want their email client, torrent client or their download manager and mouse gestures have always just irritated me
  • It's (f)ugly! It doesn't matter if I run Opera on my Linux computer, my Macbook or on my Windows box... Opera always looks out of place.
  • Pity me attitude! Opera's marketing strategy has been 'whining' and 'gloating'. Complain about the browser market while advertising features that we don't need in a browser.

That said; Opera isn't all bad. It has an extremely fast browser engine (although proprietary), it's fast with Javascript and it's survived this long. The mobile browser is excellent and is by far the fastest mobile browser I've tried.

So if I was the Opera CEO for a day...

  • Split the email client away from the browser. It didn't work for Netscape, it's not working for you. It may not be a large overhead but I don't like running programs on my computer that don't serve any purpose.
  • Embrace the native UI of the operating systems (maybe through a toolkit like QT) so the browser doesn't look so out of place.
  • Less is more! Look at Google's Chrome and how extremely simple it looks, then take a look at Opera and tell me which browser is more appealing.

For now I'm sticking with Firefox on Linux and Chrome on Windows but lately I've been disappointed with Firefox performance on my Ubuntu machine. Actually, that disappointed, that I've been aggressively searching for a replacement, without luck.

How to call your own functions from jQuery

I've been playing around with jQuery for a week or so, without any prior experience with Javascript. jQuery is absolutely brilliant and it's quite easy to do different things with it. However, when I started doing repetitive tasks, i wanted to create a function to do it; instead of repeating my code at multiple places.

This is where I had problems, because my 'updateTable' function had no idea what $() was and no jQuery functions worked after I started calling my 'updateTable' function from the jQuery context.

Well, today I got it to work by sending the jQuery object to my function.

Old function (does not work)

function updateTable () {
  /* Call jQuery stuff (for example, change forms) */
}

$(function() {
  $(document).ready(function() {
    updateTable();
  });
});

After spending a couple of days scratching my head and reading a bit about Javascript, this was 'obviously' a problem of my function not knowing the jQuery context or any of the objects inside it.

There is probably a smarter way of doing this; but I at least solved my problem by appending the jQuery object '$' to the function, as follows.

New, less crappy version

function updateTable ($) {
  /* Call jQuery stuff (for example, change forms) */
}

$(function() {
  $(document).ready(function() {
    updateTable($);
  });
});

Update: Arnórs' suggestion

Arnór suggested that declaring the functions after $(document).ready will make all functions after that aware of the jQuery object (makes sense, but I haven't tried it).


$(function() {
  $(document).ready(function() {
    function updateTable ($) {
      /* Call jQuery stuff (for example, change forms) */
    }
    updateTable();
  });
});

Update: Guðmundur suggested creating a jQuery plugin

I decided to go with this advice everything is working so far. I recommend this article as well.

$(function() {
  $.fn.updateCart = function() {
    /* Misc jQuery stuff */
  };
  $(document).ready(function() {
    ('#mytable').updateTable();
  });
});

As a footnote; I'm no Javascript or Jquery expert. Been playing around for a week and I found this information extremely hard to come by, so if it can help anyone else who's beginning to play with jQuery, then great.

Online courses

We have many nice lectures at Aalborg University but sometimes I have other stuff to do or am having problems getting out of bed (it happens). What I've been wanting is for the professors to publish their lectures online, but so far... no luck.

I don't feel like it is the University's job to force me to show up for lectures, I feel that it's their job to make it available and interesting for me to know more. Then it's my job to stay focused on what I want to learn and read up on the material.

I came across a link today to a lecture by Richard Buckland from UNSW and I watched one of his lectures about Complexity and different data structures for reading and writing. I just really wished that we'd had this lecture in our studies, because he really managed to explain WHY and HOW we have to worry about complexity and the different approaches. It's not that it wasn't explained in our lecture, its just that it was explained in terms of math, which is fine, if you're really into math; but I'm not.

So I've been going through his lectures and I'm really impressed with his course. So here's a link to Comp1917 - Higher Computing on Youtube as a playlist and you can see for yourself..

Your files, backups and Dropbox

All computer users have some files that they want to keep, regardless of what computer they may be using at the time. It would also be rather unfortunate if the computer would crash, therefore it's nice to have a copy.

Dropbox to the rescue!

  • Dropbox turns a folder on your computer into a "netfolder" and keeps it updated as long as your connected to the Internet
  • Dropbox runs on Mac, Linux or Windows
  • Dropbox can run on all of your computers, so you can use the same files while you're at home, at the office or even at school.
  • Dropbox also makes it possible for you to reach your files from a webpage
  • Dropbox stores all previous versions of your files, so if you accidentally delete something important or write over it; Dropbox still has a copy.
  • Dropbox comes with free 2GB of space and an extra 3GB if you invite your friends to join. Upgrades are also available.
  • Dropbox makes it possible to share files with your friends
  • I use Dropbox for my report work at school, sharing photos and other stuff, actually quite cool.

    If you install Dropbox from this link you get an extra 250MB space, and so do I for recommending it to you.

    Final words: Just consider installing this program vs carrying a USB stick with you everywhere and remembering to copy your files to it every day.

19 facts about left handed people

Collected this some months ago from various sites, not sure whats true and whats not. But here goes..

  • Over 2500 people die every year from using tools created for 'right handed' people
  • 'Right handed' people live approximately 9 years longer than left handed people
  • All polar bears are left handed
  • Most left handed people draw persons with the face to the rigt
  • There are considerable odds that one of two twins is left handed
  • Left handed people adjust faster to seeing in water
  • Left handed people do on average better in tennis, baseball, swimming and fencing (just not me)
  • On average, left handed people reach sexual maturity 4-5 months after the 'right handed' ones.
  • 4 out of 5 of the original designers of the Machintosh computer were left handed
  • 1 of 4 astronauts are left handed
  • Less than 10% of people in the world are left handed
  • There are 50% more men that are left handed, than there are women
  • 20% of all identical twins, one is left handed and one is 'right handed'
  • In some civilizations its considered to be rude if you eat with your left hand
  • Bart Simpson is left handed, according to the author of Simpsons, Matt Groening (who also is left handed)
  • Kermit the frog is left handed
  • Most left handed people tend to chew more with the left side of the mouth, while most 'right' handed people chew more with the 'right' side.
  • Dogs and cats share the left-right handedness of people.. og right or left paw
  • Left handed people can have an easier time opening jars than right handed people, although right handed people can have an easier time, closing them.
Syndicate content