Edit File in OpenOffice.org

One of the great thing about Office software is, no matter how much you know about it, you can almost always find a feature you never knew existed. I am using OpenOffice.org for a very long time now (more than couple of years), though as my usage for office applications is quite low, I can be considered an average user for these applications.

Yesterday, while preparing for my exam, I was reading my handouts in OpenOffice Writer, when I noticed an “Edit File” button in toolbar, which I had never noticed before (though according to the screenshots I can see on web, it has been present since always). The button is used to switch between Edit and Read-only mode. If you are only reading a document and don’t want to edit it, switching to Read-only mode makes the experience more pleasent by removing formatting toolbars and improving overall page view.

Read-only Mode

Read-only Mode

Edit Mode

Edit file button can also be used to open a copy for editing, if you don’t have permissions to edit the file you are currently reading.

It’s not some huge feature, but if you read many documents / ebooks in OpenOffice.org, or want to edit a read-only file, it can be quite useful, and the fact that I (and few other people I know) didn’t know about such a simple feature made me write about it. It’s interesting how many people don’t know about most of the features present in such huge software. If you know any such feature which no one else seems to know, do share it with us! :)

Lahore Bloggers Meetup 2008

Yesterday I went to Lahore Bloggers Meetup, organized by Badar Khushnood, Google’s country consultant, IEEE Student branch of LUMS and CIO Pakistan.

Event started (I was 10 mins late, not sure if I missed something) with Badar Khushnood’s introduction to blogging and how to earn money from it. Main points of his presentation were:

  • Follow your passion
  • Find your audience
  • And earn money from it.

It was followed by success stories of 17 year old student Haris from Sizzledcore.com – told by Badar as Haris’ mother didn’t allow him to attend the meetup due to his exam next day – and Saad Hamid from Sizlopedia.com. Then came Maryam Nasim, a housewife earning from freelancing using her site PinkWool. Last hour was dedicated to Question and Answer session, which was pretty interesting as well as informative.

End results were, earning money from blogging takes lots of patience and hard work. Write original content, and follow your passion. If you work hard you will eventually start getting some results, but there is no shortcut. Most importantly, don’t write because you want to earn money, write because you love to.

In the end, I finally got to meet many people I already knew on web, some more thoroughly than others. It was great to finally meet them all.

This meetup is also covered (in more detail) by Sohaib Athar, UzEE, Imran Jafri and TechMynd (the most detailed roundup yet).

Must Have Plugins For WordPress

WordPress is a great blogging platform, in my opinion, the best. And if there is some feature not present in it, you can always install a plugin to get that functionality. There are few plugins which I believe to be must have for any wordpress user. (though I know some people who may not agree with it :) )

Subscribe to Comments: Unless you have comments disabled on your blog, this is the most important plugin to have (and the reason why I am even writing this post). Nothing is more frustrating for a commenter than to keep visiting the site to check new comments. Subscribe to Comments, as the name implies, allows commenter to subscribe (or unsubscribe) to the comments on post, every new comment posted after that will be emailed to all subscribed commenter.

Unfortunately, many bloggers don’t add such functionality to their blog, if that’s the case, you should poke them to install the plugin, if they still don’t install it, you can always use some comment tracking service like coComment, which enables you to track your conversations on different blogs on a single page.

All in One SEO: I don’t like to spend my time optimizing sites for search engines, but the sad truth is if you site doesn’t appear (and rank well) in search engines, people won’t be able to find it easily. And no matter how good your content is, if people can’t find it, it’s useless. That is why I like All in One SEO. Even though it is not needed to appear in search engines, it is useful to increase search ranking by removing duplicates, adding meta tags etc. If you like you can use additional SEO plugins too, but if not you should have atleast something basic like this.

WordPress Database Backup: Those who have never lost their data, usually does not feel the need to backup their data, that is, until they actually lose it. Even if you are sure nothing will go wrong, it’s better to be safe than sorry. WordPress Database Backup allows you to backup your database without any hassle. Just select any additional table present in your database that you may wanto to backup (additional to core wordpress database) and press the button to back it up on server, download it or email it to yourself. You can also schedule regular backups emailed to you.

WordPress Related Posts: Okay, this is not a must-have plugin, but I have still included it in this list as it’s one of those nice-to-have one. WordPress Related Posts simply add links to automatically generated related posts, found using post tags, at the bottom of the post. This makes it easier for the user, who has come to a specific post from searchengine to find more posts according to his interest.

Let me know if there is any other plugin you consider to be must-have.

Piwik + Adobe AIR = Open Source Desktop Web Analytics

My favourite web analytics software Piwik just got desktop integration.

For those who haven’t heard of Piwik before, it’s open source web analytics software which you can host on your own server. It is still in beta, but I am using it for few months now and haven’t faced any problem. You can try it out using the online demo on their site.

According to Piwik blog, two desktop applications for Piwik are now available, made by piwik users. One of them, Piwik Connector is a simple app that shows hourly visits on all your Piwik websites, it would be useful for people who track many sites and don’t want too much stats.

For power users, Desktop Web Analytics provides much more advanced view, it brings all piwik stats to your desktop. Both these software are still early in development, so, you might face couple of problems, for instance, I wasn’t even able to save my profile in Desktop Web Analytics, but the good thing is work is being done on it.

P.S: Forgot to mention, both these apps are developed in Adobe AIR, which means they are available on Linux, Mac & Windows.

Blog Updates

I have (once again) updated / changed couple of things on this blog. Most importantly, I have created a simple Yahoo! pipe to filter my feed, now you can subscribe to upto five different tags / categories, instead of subscribing to whole blog. As basically it’s my personal blog and I post anything I want to, many people are put off by it, now they can just get the updates they want. All you have to do is:

  1. Open http://pipes.yahoo.com/aqeeliz/blogfeed
  2. Enter any tag or category name in text boxes (one in a box, leave remaining empty)
  3. Run Pipe
  4. Click on “More Options” and Choose “Run as RSS”
  5. Subscribe to the feed.

Secondly, blog theme is updated. Now I have switched to very minimalistic design, which emphasis on content rather than other stuff. Let me know what you think about it, and if you face any problems. :)

TweetDeck – Reducing Twitter Information Overload

Yesterday I found out about new Adobe AIR Twitter client, TweetDeck, finally an application that makes it possible to cope up with information overload on twitter.

TweetDeck has multi-column view, it’s first column display all latest tweets (like “home” on twitter.com). Other columns can contain replies, direct messages, groups (tweets from selected people), searches and latest twitscoop. Of course if you like traditional twitter clients, you can close these other columns, but then you will not be using it’s full potential.

TweetDeck also features a “timeframe” feature, which allows user to filter tweets by time since posted, from last 1 hour to 48 hours, this can be very useful in filtering already read tweets and eliminating noise. All tweets are stored on local database, which also allows user to browse them while offline, any tweet posted or DM posted in that time are posted when back online.

TweetDeck is currently a beta, and even though it’s version is 0.18, it’s very functional and I haven’t encountered any bug yet. So, if you, like me have been overwhelmed by too much information on twitter and want to ease the load, give TweetDeck a try.

Now all that is remaining is to find a good feed aggregator!

Urban Terror – First Person Shooter

Since I have switched completely to linux, I am always on the look out for native linux games. A genre that is very easily available on linux is First Person Shooters. There are many good quality multiplayer FPS games available on linux, most of these are based on Quake 3 engine, resulting in very good quality even on little older machines.

Even though I used to think all these FPS games are similar to each, they offer very different game play from each other, so, I started the quest to try all of them out. Let’s start with my favorite (for now):

Urban Terror:

Urban Terror is a modern reality based multiplayer FPS. According to their homepage:

Urban Terror can be described as a Hollywood tactical shooter; somewhat realism based, but the motto is “fun over realism”. This results in a very unique, enjoyable and addictive game.

In game, everyone carries knife and handgun (Beretta or Desert Eagle), other than that, you have 6 available inventory slots, 2 for weapons, 1 for grenades and 3 for other accessories (Kevlar vest, helmet, silencer, laser sight, med-pack, extra ammo etc.), out of these 6, you can only use 4 at one time, so, you should choose the weapons/accessories which suits your style of playing and current scenario. Health system also has a touch of reality to it, once you get shot that part of the body starts bleeding, and loses health until you (or your teammate) bandages it. Stamina depends on remaining health, so, if you are low on health, you might not be able to sprint much.

Urban Terror offers different game modes, including Bomb (Red team plants bomb at one of two pre-defined position, blue team has to defend those by either defusing bomb or killing all members of Red team) Free For All (FFA – Shoot everyone, the one with most frags win), Catch the Flag (CTF – Catch other teams flag and take it to your flag to score a point), Catch and Hold (C&H – map has many flags, touch one to change it to your color, you get a point for every minute you hold a flag), Team Deathmatch (TDM – Kill member of other team, the team with more score wins) & Team Survivor (TS – Same as TDM but once kill, you don’t re-spawn till the end of the round). You can read more about these in Urban Terror manual.

Urban Terror is a standalone Quake III Arena mod, though if you already have Quake III Arena, you can just install it as it’s mod, it is available on Linux, Macintosh & Windows. Image is taken from screenshots section on UrbanTerror.net

Atheros AR5007EG on Linux

Update 2008-09-26: Fixed the link to madwifi package.

In my previous post about Sony Vaio’s hardware compatibility with Linux, I linked to ubuntuforums for a howto of installing Atheros AR5007EG wireless driver. Apparently it is not available any longer, so, I am posting the steps that worked for me.

Note: This howto is for 32bit systems, for 64bit, check this post on ubuntuforums.

First configure the system for compiling madwifi driver (these steps are ubuntu specific).

  1. Make sure restricted drivers are disabled by unchecking atheros drivers from System -> Administration -> Hardware Drivers
  2. Install necessary packages for compiling, if you don’t have them already. From terminal:
    sudo apt-get update && sudo apt-get install build-essential

Now, to actual installation of the driver. These steps should work on any distro, just open the terminal and enter those commands.

  1. Get latest snapshot of madwifi from http://snapshot.madwifi.org
    <span style="text-decoration: line-through;">wget -c http://snapshots.madwifi.org/special/madwifi-ng-r3366+ar5007.tar.gz</span>
    wget -c http://snapshots.madwifi.org/madwifi-hal-0.10.5.6-current.tar.gz
  2. Untar the downloaded file
    tar zxvf madwifi-hal-0.10.5.6-current.tar.gz
  3. cd into directory and compile the driver (directory name might be different for you)
    cd madwifi-hal-0.10.5.6-current
    make &amp;&amp; sudo make install
  4. Load the modules
    modprobe ath_pci

You should now be able to view and connect to wireless connections now. If it works fine add “ath_pci” (without quotes) in /etc/modules, so that you don’t have to manually load these files on every boot.

Keyboard Layouts – QWERTY vs Dvorak vs Colemak

Until recently, whenever I got option to choose layout during any software installation, I always wondered what’s the reason of using anything other than the superior QWERTY layout. That is until I came upon Dvorak and Colemak.

QWERTY layout was initially designed for typewriters. One of the reason told for QWERTY design was to slow down typing and separate the keys so, that two keys pressed one after another are far away and doesn’t jam the early typewriters. It also helped salesmen to impress their clients by typing “Type writer” from single row .This resulted in very un-efficient design. QWERTY doesn’t make efficent use of home row, it places some of the most used letters on other rows, according to few researches, it’s home row is used only 32% of the time and not more than 100 English language words can be typed without leaving it’s home row, where as this amount is more than 400 for Dvorak and Colemak.

Even with all the problem, once it started getting widely used, it became difficult to change the layout cause of simple economics, as no one was able to justify expense of time and money to convert existing typists to new layout.

QWERTY Layout

Dvorak was designed in 1936 to overcome the problems of QWERTY keyboard layout. Dr. August Dvorak studied letter frequency and physiology of human hands to create a layout that requires least stress on fingers and increase typing speed significantly. He moved the most used keys to home row which is easiest to use and least used keys to bottom row which is hardest to reach. Also, it was made sure that pinky fingers should have least amount of work to do, and more frequently used keys should be under our strong fingers. According to carpalx, Dvorak reduces typing effort 35% – 40% over QWERTY.

Dvorak is optimized for English language; their are versions for different languages available, but they have few problems. Almost all these layouts leave roman characters (English alphabets) in their original position, even though letter frequency for their language is different and require different layout. Dvorak also puts curly brackets and semi-colon in hard to access place, which makes it worst than QWERTY for programmers.

Dvorak Layout

Colemak, as stated by their homepage, is modern alternative to QWERTY and Dvorak layouts. Colemak implemented same optimizations as Dvorak with few differences, like it too moved all the vowels and most used keys to home row, but it did’t attempt to maximize hand alteration. Also, Colemak keeps all the punctuation in it’s original place with the sole exception of semi-colon, which it keeps easily accessible, making it much better option than Dvorak for programmers. As colemak doesn’t change all the keys on the keyboard it is also much easier to learn.

Colemak Layout

Even though many people claim that changing layout doesn’t make any difference, but mostly these are the people who haven’t tried any other layout. There is enough anecdotal & researched evidence on Internet that these layouts do make significant difference.

I compared all three layouts by typing different texts. Dvorak and Colemak outperformed QWERTY in all the English language tests, Colemak showed even better performance than Dvorak, but the difference between the two wasn’t huge. When tested using programming code, QWERTY’s performance was better than Dvorak but much less than Colemak. You can read more about different layouts on carpalx.

I am going to try out Colemak for a month or so, and see how it goes. I will post my results here.

Linux File System – Part 2

Let’s continue where I left my previous post on Linux file system, with information on different file systems commonly present in most distributions and small comparison between them.

ext2:

ext2 (or second extended file system) is the oldest file system for Linux still in use, and until recently one of the most famous. It was created to overcome the limitations of original ext file system (first file system for Linux).

ext2 is not a journaling file system and is not used by desktop users these days, but it’s still one of the most compatible and tested file system for Linux present.

ext3:

ext3 is the successor of ext2 and allows in-place upgrade from ext2. Main difference between the two is addition of journaling in ext3. As ext3 is basically just ext2 with some additional features, it can also be mounted as ext2, though doing so removes the advantage of ext3 file system. In other words, ext3 is backward-compatible. It also provides great compatibility with other operating systems, like windows, that is, you can mount ext3 (and ext2) partitions in Windows using utility.

ext3 provides three different level of journaling:

  • Journal
  • Ordered
  • Writeback

With “journal” offering maximum journaling (both meta-data and user-data), and “writeback” offering minimal journaling (only meta-data). Default journaling level is “ordered”, which is meta-data only journaling but which makes sure that data is written to disk before committing to journal (a precaution not taken in “writeback”), which save from data-corruption.

ReiserFS:

ResiserFS is also a journaled file system, but unlike ext3 it provides only meta-data journaling. It was introduced before ext3 and is the first journaling file system for Linux, though ext3, JFS and XFS very soon followed.

Even though ReiserFS is much faster than ext3, it is sometimes not preferred over other file systems. One of that reason was given by SUSE, when they changed their default file system from ReiserFS to ext3. According to them, ReiserFS doesn’t scale very well on multiple core systems as the critical sections are executed on only one core at a time.

Work on it’s successor Reiser4 is going on, and it has been announced that no new features will be added in ReiserFS. And as Reiser4 won’t feature in-place upgrade from ReiserFS (meaning all data will be lost on partition when upgrading), it has also turned down some ReiserFS users.

XFS:

XFS is another journaling file system and like ReiserFS, it only supports meta-data journaling. It is one of the oldest journaling file system for UNIX, which was later ported to Linux.

On average XFS’ performance is not much different from ReiserFS, though where ReiserFS’ provides great speed when dealing with smaller files, XFS is much better with large files.

Like all other file systems, XFS has it’s own disadvantages too, deleting files is slower than other file systems, and creating/deleting directories also takes more time. XFS also has no un-delete utility, which makes it almost impossible to recover any data once it is deleted (there appears to be one way to do it, if you are desperate enough). Also XFS file system can not be shrunk (it’s size can be increased though).

There is no utility to mount XFS file system under windows. There used to be crossmeta drivers that allowed read/write support in windows, but it isn’t available anymore, even when it was available, it was supposed to be quite buggy.

JFS:

JFS (Journaling File System) is one of the lesser known file system. Like XFS it has been around quite some and then later ported to linux. It offers meta-data journaling, similar to that of XFS and ext3′s “writeback”.

I haven’t tried JFS yet, but according to reviews and others I have checked with, it provides good speed and reliability. Also, it works efficiently even under high load, and doesn’t use too much CPU in these cases, which makes it preferred file system in cases when CPU efficiency is required, though it is not as widely supported by Linux distributions as the other file systems mentioned here.

I couldn’t find any utility or information to mount JFS under windows, most probably there isn’t one.

Conclusion:

All file systems have different advantages and disadvantages and is useful in particular scenario. ext2 is best to use when installing Linux on flash disk. ext3 provides better data recovery option than other file systems so, it’s preferred to use it for /boot or / (root). Either ext3 or ReiserFS can be used to share partition with windows installtion on same computer. XFS is good to use for large parition which contains large files, like movie collection, backup data etc. Whereas JFS can be used pretty much anywhere, preferablly on partition which contains both large and small files and when that system doesn’t dual-boot with windows.