<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-6823080099887112748</id><updated>2012-01-28T12:36:09.069+08:00</updated><category term='public authentication key'/><category term='install'/><category term='color scheme'/><category term='argouml'/><category term='linus'/><category term='lighttpd'/><category term='meetup'/><category term='sysadmin'/><category term='rsync'/><category term='zerocd'/><category term='dell mini'/><category term='firebug'/><category term='desire hd'/><category term='inigo'/><category term='lvm'/><category term='open source'/><category term='eeepc'/><category term='ms sql'/><category term='databinder'/><category term='shortcut'/><category term='midori'/><category term='bazaar'/><category term='firefox'/><category term='css'/><category term='git'/><category term='hostname'/><category term='printer'/><category term='inspect'/><category term='just life'/><category term='mandrake'/><category term='cakephp'/><category term='celcom'/><category term='email'/><category term='scp'/><category term='live usb'/><category term='vim'/><category term='eclipse'/><category term='Apache'/><category term='launchpad'/><category term='openSUSE'/><category term='digi'/><category term='mymeeting'/><category term='fossmy'/><category term='wget'/><category term='urxvt'/><category term='2008'/><category term='update repo'/><category term='high tech introduction'/><category term='scanner'/><category term='packages'/><category term='reading'/><category term='file recovery'/><category term='kms'/><category term='java'/><category term='arch'/><category term='webdav'/><category term='humour'/><category term='OpenOffice'/><category term='bash'/><category term='game'/><category term='usb live'/><category term='godaddy'/><category term='intrepid'/><category term='beta'/><category term='osdc.my'/><category term='movie'/><category term='trac'/><category term='disaster'/><category term='xrandr'/><category term='android'/><category term='import export'/><category term='intel'/><category term='dosemu'/><category term='mygosscon'/><category term='clamav'/><category term='web browser'/><category term='version control'/><category term='redmine'/><category term='aipa'/><category term='ubuntu'/><category term='svn'/><category term='subversion'/><category term='google'/><category term='selinux'/><category term='distro'/><category term='epunch'/><category term='server name'/><category term='javascript'/><category term='xmobar'/><category term='perl'/><category term='mirror'/><category term='postfix'/><category term='tomcat'/><category term='fedora'/><category term='auth'/><category term='conference'/><category term='littering cyberspace'/><category term='thank you'/><category term='gnome'/><category term='awstats'/><category term='Plone'/><category term='ldap'/><category term='sound'/><category term='wicket'/><category term='python'/><category term='freedom of choice'/><category term='.htacces'/><category term='zope'/><category term='script'/><category term='windows'/><category term='virtual machine'/><category term='hardy heron'/><category term='mint'/><category term='kvm'/><category term='oscc'/><category term='linux'/><category term='zenity'/><category term='centro'/><category term='aksa'/><category term='extensions'/><category term='birthday'/><category term='tabs'/><category term='ajax'/><category term='programming'/><category term='broadband'/><category term='buildout'/><category term='ssh'/><category term='games'/><category term='route'/><category term='smtp relay'/><category term='xmonad'/><category term='vb'/><category term='915'/><category term='regex'/><category term='mampu'/><category term='open office'/><category term='virtual host'/><category term='food'/><category term='netbook'/><category term='Proxy'/><category term='history'/><category term='mod_rewrite'/><category term='drupal'/><category term='chromium'/><category term='unifi'/><category term='qemu'/><category term='softlinks'/><category term='writing'/><category term='mercurial'/><category term='password'/><title type='text'>High-Tech Rojak</title><subtitle type='html'>Blog by abdza. Open Source, Computers, Gadgets, Life, Love and everything in between.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default?start-index=101&amp;max-results=100'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>119</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-4040912450423673191</id><published>2012-01-28T12:26:00.001+08:00</published><updated>2012-01-28T12:36:09.139+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='android'/><title type='text'>Ice Cream Sandwich on the cheap</title><content type='html'>&lt;p&gt;My son keeps on playing with my htc phone until the batteries run dry. People can barely contact me because if my son answers the phone he doesn't want to pass it on to me. What's a techie to do? Why, get his son something else to play with of course.. :P So I scoured the low yatt plaza looking for something that would be cheap enough that if my son breaks it, I wouldn't mind, but fast enough that he can play his games on it. After searching high and low, the best I could find was the android pocket pc. It's basically just a very cheap android tablet that comes with a casing with a keyboard in it. Funny thing is, the keyboard is usb, the tablet only accepts mini usb (not even a micro usb) and so they also give an adapter from usb to mini usb. It costs rm 699 a pop. If it's still running by the year end, I'd consider that already as ROI. They claim the cpu is 1.5 Ghz and memory 1 GB. I haven't installed any diagnostics software to make sure, but the internal storage is 1 GB just by looking at the application management settings. It doesn't have a back facing camera to take any pictures, but it does have a 1.3MP webcam you can use to video chat or something. And it comes with a somewhat customized android 2.3 (customized as in it looks like a tablet interface, something like the original galaxy tab I think).&lt;/p&gt;&lt;p&gt;So I just had to do it. This morning I was already ready to try installing ICS on it. Mmmmm... manufacturer... none that I can find.. model.. oh err... damn these cheap things... How on earth am I going to find info on how to go about flashing it and all. Finally I just googled the build number, and I come to this gem of a &lt;a href="http://groups.google.com/group/id-android/browse_thread/thread/5f831e002e2f27e8"&gt;post&lt;/a&gt;.. &lt;/p&gt;&lt;p&gt;So basically the steps are, download the ics image either from:&lt;br/&gt;   MOMO9c ICS v1&lt;br/&gt;   &lt;a href="http://www.google.com/url?sa=D&amp;q=http://narod.ru/disk/37351345001/MOMO9-neutral%25204.rar.html&amp;usg=AFQjCNFSxHNkP4h36-OgkloKzYkUqtTVeA"&gt;build #1&lt;/a&gt;&lt;br/&gt;   Model 97FC&lt;br/&gt;   Kernel Version 3.0.8+ inet_dada@Inetsoftware #1 (without market, still has bug)&lt;br/&gt;   Build Number 97F1-D1-H2-H01-N412-20120105&lt;br/&gt;   - Momo9c ICS v1&lt;br/&gt;   &lt;a href="http://www.google.com/url?sa=D&amp;q=http://narod.ru/disk/37649199001/MOMO9C-4-Kevin.rar.html&amp;usg=AFQjCNEXxsr0AvKAMVQ-DTH2_7SlFdcuzA"&gt;Kevin Custom build 12&lt;/a&gt;&lt;br/&gt;   Model 97FC&lt;br/&gt;   Kernel Version 3.0.8+ inet_dada@Inetsoftware #12&lt;br/&gt;   Build Number 97F1-D1-H2-H01-N412-20120111&lt;br/&gt;   - Momo9c ICS v2&lt;br/&gt;    &lt;a href="http://www.google.com/url?sa=D&amp;q=http://www.ployer.cn/download/pr/MOMO9%25E5%258A%25A0%25E5%25BC%25BA%25E7%2589%258897F2-A10%25204.0%25E7%25B3%25BB%25E7%25BB%259F-20120113.rar&amp;usg=AFQjCNG6LO5mFdw5icbjM9c6rRXDIttg_Q"&gt;build #15&lt;/a&gt;&lt;br/&gt;   Model MOMO&lt;br/&gt;   Kernel Version 3.0.8+ inet_hxj@Inetsoftware #15&lt;br/&gt;   Build Number 97F2-D1-H1-H02-1553-20120113&lt;/p&gt;&lt;p&gt;I tried both the #12 and #15 build. Both seems to work fine.&lt;br/&gt;After the image is downloaded, download the &lt;a href="http://www.google.com/url?sa=D&amp;amp;q=http://www.transmatt.com/android/LiveSuitPack_v1.07_usb_drivers.rar&amp;amp;usg=AFQjCNERR1YHiNqHZpM14EwcqscnSm3aAQ"&gt;LiveSuitPack&lt;/a&gt;.&lt;br/&gt;Run LiveSuitPack_v1.07.exe first,&lt;br/&gt;then run LiveSuit.exe. (Yes, I did this in windows. Since it involves hardware, I would highly not recommend you try it in wine or something).&lt;br/&gt;Running LiveSuit.exe will automatically run the wizard, if not click the third icon (the gears).&lt;br/&gt;Click on "Yes",&lt;br/&gt;then "Upgrade Mode",&lt;br/&gt;then "Format",&lt;br/&gt;then "Next",&lt;br/&gt;then "Yes",&lt;br/&gt;browse to the image you downloaded,&lt;br/&gt;click "Finish".&lt;br/&gt;Once that is done, there will be a progress bar but does not move. Now for the tablet.&lt;/p&gt;&lt;p&gt;First, switch off the tablet.&lt;br/&gt;Then press the + volume button,&lt;br/&gt;while keeping it (the volume button) pressed, connect the usb cable to the computer,&lt;br/&gt;press the power button 6 times,&lt;br/&gt;then let go of all the button. Fuh...&lt;br/&gt;I had to go &lt;a href="http://www.slatedroid.com/topic/25682-please-help-my-tablet-wont-power-on/"&gt;here&lt;/a&gt; to find out that.&lt;br/&gt;Once that is done, the dialog box to confirm will pop up 2 times. Answer yes for both, and soon the progress bar will start moving.&lt;br/&gt;Once it's finished, disconnect the table, turn it on, and there you have it, ice cream sandwich on the cheap.&lt;/p&gt;&lt;p&gt;Note about the build #15, it's in Japanese.&lt;br/&gt;So you should first go to the settings page (flick the screen to the left to go to the pan on the right, it's the black box with control setting on it).&lt;br/&gt;There choose the language options (it's the one with a capital A next to it),&lt;br/&gt;click on the first option,&lt;br/&gt;and select whichever english language you're comfortable in.&lt;br/&gt;Then you can start playing around.&lt;br/&gt;Both the build #12 and build #15 already has the market in it but I wasn't able to find the icon. What you should do is search for market, then you will find the market app. Install whatever you need.&lt;/p&gt;&lt;p&gt;Well, that's all for now. Time for me to keep on learning (playing) more about the ICS I've just downloaded.. :P&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-4040912450423673191?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/4040912450423673191/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=4040912450423673191' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/4040912450423673191'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/4040912450423673191'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2012/01/ice-cream-sandwich-on-cheap.html' title='Ice Cream Sandwich on the cheap'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-6459637366837587248</id><published>2011-11-25T15:53:00.001+08:00</published><updated>2011-11-25T15:57:45.729+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vb'/><title type='text'>Changing to text in Excel</title><content type='html'>I find that I have to do this once in a while and every time I'll have to look it up again. Basically the problem is that someone sent an excel file which the column need to be a string but the data is numerical, so without adding the tick in front of the number, excel interprets it as number. Here's the small script to add the tick:&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;For i = 2 to 196&lt;br /&gt;    Range("C" &amp;amp; i).Select&lt;br /&gt;    ActiveCell.FormulaR1C1 = "'" &amp;amp; ActiveCell.Value&lt;br /&gt;Next&lt;br /&gt;&lt;/pre&gt;Now I won't have to google all those mysterious command again the next time it happens..p/s: don't laugh at me struggling with vb you insensitive clod.. :P&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-6459637366837587248?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/6459637366837587248/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=6459637366837587248' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/6459637366837587248'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/6459637366837587248'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2011/11/changing-to-text-in-excel.html' title='Changing to text in Excel'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-5263768025943734283</id><published>2011-11-19T06:50:00.000+08:00</published><updated>2011-11-19T07:12:18.502+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='mint'/><category scheme='http://www.blogger.com/atom/ns#' term='fedora'/><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu'/><category scheme='http://www.blogger.com/atom/ns#' term='gnome'/><title type='text'>Back into Gnome 3</title><content type='html'>It has been quite a while since I've last used Gnome 3. The thing which I especially didn't like was starting an application by browsing the menu feels like a whole lot more cumbersome, mainly because it'll take the whole page filled with huge icons to do it and I didn't like how when you press alt-tab all the apps are grouped together kind of thing. So with a mind to get back to gnome 2, I switched my arch machine to use linux mint.&lt;br /&gt;&lt;br /&gt;But guess what? Even linux mint is moving to gnome 3 with it's upcoming release 12. Except it'll have a bunch of customization which keeps your workflow more the less the same. And not only that, it's even easy now to install the gnome-shell in ubuntu 11.10. So since now almost everyone is on that bandwagon, I might as well get on it myself.&lt;br /&gt;&lt;br /&gt;I've bought myself a spanking new laptop recently and thought that'd be a good candidate for a new start on gnome 3. At first I thought maybe I'll try fedora first (I've always been unlucky with fedora for some reason). Since the new laptop already comes with Windows 7 and I wanted to dual boot anyway in case there might be situation where I might want to use windows, I wanted the installer to automatically resize the partition and install it side-by-side. But alas, my bad luck streak with fedora continues as trying to use the installer to resize the partition gives an error. I've forgotten exactly what the error was, but after 3 attempts at it, I said, well maybe I'll try something else. Burned an ubuntu cd and a few minutes later I've finished installing ubuntu 11.10 side-by-side with windows resizing the partition just using the installer. Sweeeeeeeet.. :) And one 'sudo apt-get install gnome-shell' and I'm in the game again. Oh, looked at unity a bit again first before installing gnome-shell, still don't quite like it.&lt;br /&gt;&lt;br /&gt;One thing that I approach differently now when using gnome 3 is don't think so much of using it menus style, use it gnome-do style. Press the super key (that's windows key for those who don't know :) and just type a few letters of the app you want to start. Things I usually use like terminal and firefox usually come up right in front so it's really just pressing around 3 keys (super, f, enter). Apart from that I've wrapped my head around the idea of using the alt-tab and alt-"key above tab" for jumping between windows of the same app. So it's getting a whole lot more acceptable now. I might even convert my main desktop back to arch or something once I have the time. Starting to really like using gnome 3 again.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-5263768025943734283?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/5263768025943734283/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=5263768025943734283' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/5263768025943734283'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/5263768025943734283'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2011/11/back-into-gnome-3.html' title='Back into Gnome 3'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-8510181341780057490</id><published>2011-08-07T07:48:00.000+08:00</published><updated>2011-08-07T08:14:26.803+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='just life'/><title type='text'>When you have time...</title><content type='html'>Time management... How do you manage something which is not even physical? And you certainly can't put it here and there... All you can do is decide what action to take at certain time... So maybe it should be called action management? Never mind whatever it's called, there sure has been tons of literature on it. You'd think that we all would be absolute experts at it. But there is a very wide void between knowing and doing. And the successful ones are always the ones who are doing even though they might be lacking in knowing.&lt;br /&gt;&lt;br /&gt;Write your goals, then write your actions toward those goals, going from long term to short term. And very soon you'll end up with actions you can do here and now to reach your goals which might take years and years to reach. Write it down you so wont forget. Write it down so that you can focus. Write it down so that is your contract between you and the future you who might get distracted by other things happening around him/her. Have you written it down? No? Harder in practice than in theory eh?&lt;br /&gt;&lt;br /&gt;Choose success...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-8510181341780057490?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/8510181341780057490/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=8510181341780057490' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/8510181341780057490'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/8510181341780057490'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2011/08/when-you-have-time.html' title='When you have time...'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-3488565587933777891</id><published>2011-06-25T08:08:00.000+08:00</published><updated>2011-06-25T08:38:07.310+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><category scheme='http://www.blogger.com/atom/ns#' term='android'/><title type='text'>Android development</title><content type='html'>After putting it off for so long, I finally went all out and did it. But it took a far longer time than expected but at least I have taken the precious first few steps. I'm talking about developing for the android platform. I've bought my desire last year in december. But for almost half a year all I did was play around with other software on it, I didn't even start to do the very reason I bought it in the first place, develop my own software on it, until recently. After seeing how long I've procrastinated, I decided to get serious and even bought a few books off amazon and the one which I have been reading which got me over the first hurdle was "&lt;a href="http://www.amazon.com/Hello-Android-Introducing-Development-Programmers/dp/1934356565/ref=sr_1_1?ie=UTF8&amp;amp;qid=1308960769&amp;amp;sr=8-1"&gt;Hello, Android&lt;/a&gt;". It is a pretty nice walkthrough on how to write your first android software by showing you the steps to write a sudoku game. And a few other small apps to show how to implement other features. I highly recommend it if you're looking for good a beginner android development book.&lt;br /&gt;&lt;br /&gt;So the first android app I've written is about something which is quite dear to me, solat. I've wanted to write an application for referencing &lt;a href="http://www.e-solat.gov.my"&gt;http://www.e-solat.gov.my&lt;/a&gt; (which I use on my blog to display solat times) even before I've got my desire. But once I've got it, I found that Syakhir Jaafar already beat me to it by releasing &lt;a href="https://market.android.com/details?id=com.phonegap.uprayer&amp;amp;feature=search_result"&gt;MySolat&lt;/a&gt;. So I've been using that one until I've finally got the drive to write my own. The title of my application is "&lt;a href="https://market.android.com/details?id=com.abdullahsolutions.solatmalaysia&amp;amp;feature=search_result"&gt;Solat Malaysia&lt;/a&gt;", because, it shows solat times in Malaysia (Yeah, I'm really creative that way.. ). I am writing it more for my own use and practice in writing android app more than anything, so I'm releasing it as an open source software where you can get the code &lt;a href="https://github.com/abdza/solatmalaysia"&gt;here&lt;/a&gt;. So if you are a muslim and using an android phone, please try to download it from the market and maybe give some feedback. I have a few ideas on what feature to add next and all, but some feedback from other users would be great too. But if you are not a muslim (as in you don't have any use for my app), you can still learn from the codes or maybe even advice me on how I can improve mine, check out my &lt;a href="https://github.com/abdza/solatmalaysia"&gt;github&lt;/a&gt;. Any kind of input would be greatly appreciated. My development currently is mostly done in eclipse (yeah, haven't got raw yet.. :P).&lt;br /&gt;&lt;br /&gt;Programming for the android is certainly different than what I usually do (web apps mostly) but I can relate to the mvc style with declaring the inteface in the xml resources and the logic in the java codes and all. I guess the main hurdle was actually just getting a feel on how everything glues together (and there is a lot of things, the resources -  (strings, menus, layout), the android manifest, the codes, the intents etc). But once you've grokked it, it feels quite natural.&lt;br /&gt;&lt;br /&gt;Whichever way it is, the book helped a lot. Expect me to continue to improve the "Solat Malaysia" app (it is very rough right now) and hopefully I'll write even more software for the android platform in the near future. Stay tuned.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-3488565587933777891?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/3488565587933777891/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=3488565587933777891' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/3488565587933777891'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/3488565587933777891'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2011/06/android-development.html' title='Android development'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-6851488215958858662</id><published>2011-06-04T09:03:00.000+08:00</published><updated>2011-06-04T10:00:34.264+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='unifi'/><title type='text'>Welcome to a new age...</title><content type='html'>Since the dawn of time, man has always dreamed the impossible dream. Uploading photos in an instant, playing online games without lag, watching videos on youtube and ted without waiting for buffer. And now that I have got unifi up and running at my house, those impossible dreams has come true.. :P&lt;br /&gt;&lt;br /&gt;What can I say? So far I'm pretty impressed at the speeds I'm getting. Downloading gigs and gigs of stuff takes hours now, not days, not weeks, just mere hours. The installation went quite smoothly except for a bit of broken fiber problem but that was quickly resolved. Took only around 2 hours in the end. When I asked the technician what was the red marker around the last port of the router, he said it was for the tv. At first I thought he was joking. But when I finally tested it out, it is exactly that. A port for just the tv connection. Connecting other devices or computers to it would not resolve any ip for the said device or computer and connecting the tv to any other port would actually cause the set top box to give a connection error notice.&lt;br /&gt;&lt;br /&gt;Initially I was queued for installation at the end of next month, but suddenly someone from unifi called and said that a customer has cancelled their appointment and there is an opening for me the next morning if I want to. Of course I grabbed the chance.&lt;br /&gt;&lt;br /&gt;Regarding the tv, there would be extra charges if I wanted them to do the wiring all the way to the front. I said never mind I can do it myself. As soon as they were gone, I tried connecting the set top box to the tv in front and as for the networking I used my old Aztech Homeplugs 200Mbps. Works like a charm. But there is no Playhouse Disney channel on the unifi tv so I guess I'll have to continue using astro too. But apart from that, my installation is quite normal. Is it worth adding an additional rm 40/month to get the extra boost in speed that unifi offers? Definitely. Can the ip tv finally replace storm static astro? Not yet. Can I now p4wn people because of the increase speed and lack of lag? I've got hundreds of years to practice I think before I can shed my noobyness.. &amp;gt;.&amp;lt; Oh well..&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-6851488215958858662?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/6851488215958858662/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=6851488215958858662' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/6851488215958858662'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/6851488215958858662'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2011/06/welcome-to-new-age.html' title='Welcome to a new age...'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-2611881161103997193</id><published>2011-05-07T10:01:00.000+08:00</published><updated>2011-05-07T10:35:56.172+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='just life'/><title type='text'>Making time for yourself</title><content type='html'>Just yesterday I finally watched 'Eat, Pray, Love'. I especially liked the part where they talk about the 'sweetness of doing nothing' and compared the difference in attitude between an american man and an italian man. Where an american man hears "It's Miller time", he goes out and buy a six-pack and drink the whole thing in one night and waking up feeling terrible the next morning. An italian man walks by a sign that says "You deserve a break today" and he'd just say, "Yeah, I know".  The italians are the masters of doing nothing. In this fast paced world of ours (especially if you're involved in computers and software where even the latest is obsolete in just 3 years time), I think the 'sweetness of doing nothing' is very much under valued.&lt;br /&gt;&lt;br /&gt;I guess geeks are pretty acute to 'doing nothing'. Because even in 'Office Space', the rather geeky hero dreams of doing nothing if he had a million bucks before his neighbour reminded him "You don't need a million dollars to do nothing man, take a look at my cousin, he's broke and he don't do sh*t".. &amp;gt;.&amp;lt;&lt;br /&gt;&lt;br /&gt;Sometimes it's good to be able to do nothing. To just take a breather. It'd make you better appreciate what you already have and can even make big problems seem smaller. But then again, when I start to do nothing, the feeling of guilt starts to creep in and makes me question myself. It is in those times I guess I wish I am an italian man....&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-2611881161103997193?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/2611881161103997193/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=2611881161103997193' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/2611881161103997193'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/2611881161103997193'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2011/05/making-time-for-yourself.html' title='Making time for yourself'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-6612254864204978527</id><published>2011-05-01T11:18:00.001+08:00</published><updated>2011-05-01T11:46:26.558+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='arch'/><category scheme='http://www.blogger.com/atom/ns#' term='gnome'/><title type='text'>First Impression On Gnome 3 (Or Don't Judge A Book By It's Cover)</title><content type='html'>In the past few weeks since Gnome 3 came out, I've been reading a lot about what people think of it. My initial impression was it might be something like the Unity interface which I first used when I installed ubuntu-netbook 10.06 on my mom's netbook. I absolutely hated that. Almost made me redo the installation with a normal desktop ubuntu then. But I got to thinking, 'heh... my mom is the one who's going to use it, so maybe she might get used to it, as long as I've set up the side bar with all the software she usually use it should be fine'. And I guess I was right. Until once in a while my mom asks me to do something on it and I feel like redoing the installation again... &amp;gt;.&amp;lt;&lt;br /&gt;&lt;br /&gt;But finally I took the plunge and enabled the testing repo on my desktop, 'pacman -Syu' instantly installed all the latest package and boom, I'm running Gnome 3 baby... :D&lt;br /&gt;&lt;br /&gt;What do I think of it? I kinda like it. It's very clean. I mean, very very clean. I'm kinda a lazy so before this I even had icons littered on the top panel. Now I don't even the option to litter the top panel anymore. It's basically fixed like that. And I think for someone like me who likes it to be clean but can't be bothered cleaning up, that's good... :)&lt;br /&gt;&lt;br /&gt;I read reviews about how now it takes two clicks to switch to other windows which are open because there is no more bottom panel which can have a list of open windows. But luckily I find that it's not really that hard at all, just shove your mouse over to the top left and all your windows will show up 'expose' style. Very nice touch. So now you get to see even more context of the windows you want to choose. There was even some people saying alt-tab would not work. I guess they were really using pre-release versions because it works just fine for me. In fact, it's better than fine, alt-~ (the key on top of the tab key) will actually switch between windows of the same app. So you can have many writer windows open and need to switch between just them? No problem. Just alt-~.&lt;br /&gt;&lt;br /&gt;Another thing which got me concerned was no systray. How are you supposed to click on the pidgin icon to bring up your buddy list, or the dropbox icon to bring up your dropbox folder? Well, it's there. Just hidden from view. Shove your mouse to the bottom right and it pops out. I like that it stays out of the way and available only once you want it.&lt;br /&gt;&lt;br /&gt;For those who are used to using gnome-do and would rather type out the app to run, just hit the super button and type away. It does take 2 clicks to get to the 'main menu' though (if you're used to using menu's to start your apps). You have to click on 'Activities' (or actually just shove the mouse to the top left) and then the applications button. Then it will list down all of your applications. The buttons for the applications are huge and really makes me feel like this would be something I might like to use on a tablet or something. But it doesn't bother me much because whichever apps I use I've mapped them to keyboard shortcuts and also the side bar. So I don't usually have to view all the apps.&lt;br /&gt;&lt;br /&gt;I think having to press the alt key to get the 'Power Off' menu item at the Status menu is kinda neat because I rarely switch off my desktop anyway, and coming back from 'Suspend' (which is the default menu item) is a whole lot faster.&lt;br /&gt;&lt;br /&gt;For more tips and tricks on using the spanking new gnome-shell make sure you check out &lt;a href="https://live.gnome.org/GnomeShell/CheatSheet"&gt;https://live.gnome.org/GnomeShell/CheatSheet&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;To wrap it up, so far I like it. It feels minimalistic but at the same time very pretty. I'm very happy with it. Good job Gnome team.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-6612254864204978527?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/6612254864204978527/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=6612254864204978527' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/6612254864204978527'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/6612254864204978527'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2011/04/first-impression-on-gnome-3-or-dont.html' title='First Impression On Gnome 3 (Or Don&apos;t Judge A Book By It&apos;s Cover)'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-4486133743477606568</id><published>2011-04-07T05:51:00.000+08:00</published><updated>2011-04-07T06:06:51.681+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='just life'/><title type='text'>Documentation is a must... after this.</title><content type='html'>I've been thinking quite a bit about documentation and the 'cost' it involves. And when I say documentation, I mean documentation in general about anything. One obvious case with the industry I'm involved in is user documentation (a.k.a The Manual). Creating great features in software takes time and effort but if it is not documented then the user won't even know about it and finally it never gets used. But then while documenting it you just wish that you're working on the next cool thing rather than have to write this up. So finally you end up not doing the documentation or doing it rather badly.&lt;br /&gt;&lt;br /&gt;Same thing with this blog writing. I have been doing some pretty interesting things with my phone (rooting it and using cynogenmod and all), some pretty significant life changes (my grandmother passed away) and a lot of other things which I should probably like to remember better or reflect more on it but not documented (here or anywhere permanent) and it would probably be lost in the sands of time before long.&lt;br /&gt;&lt;br /&gt;I guess finally it falls on how you view it. If you see it as a burden, something which has to be done, then that's how it would be. But if you see it as a way to empoyer the user, or reflect more on your life, then that's how it would be too. And time... well.. that's the price which has to be paid no matter what. It ain't going to write itself.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-4486133743477606568?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/4486133743477606568/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=4486133743477606568' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/4486133743477606568'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/4486133743477606568'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2011/04/documentation-is-must-after-this.html' title='Documentation is a must... after this.'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-8049659950293714571</id><published>2011-02-11T16:10:00.000+08:00</published><updated>2011-02-13T21:24:15.437+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='redmine'/><category scheme='http://www.blogger.com/atom/ns#' term='Apache'/><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu'/><title type='text'>Redmine is awesome</title><content type='html'>Been trying out a new issue tracker at work, it's called Redmine. In ubuntu just need to do an:&lt;div&gt;&lt;pre&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div&gt;sudo apt-get install redmine redmine-mysql&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;Then once that is installed add the following line to /etc/apache2/mods-available/passenger.conf&lt;/div&gt;&lt;div&gt;&lt;pre&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div&gt;PassengerDefaultUser www-data&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;Then add the following lines in /etc/apache2/sites-available/default&lt;/div&gt;&lt;div&gt;&lt;pre&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&amp;lt;Directory /var/www/redmine&amp;gt;&lt;/div&gt;&lt;div&gt;        RailsBaseURI    /redmine&lt;/div&gt;&lt;div&gt;        PassengerResolveSymlinksInDocumentRoot on&lt;/div&gt;&lt;div&gt;&amp;lt;/Directory&amp;gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;Then enable the passenger module for apache by running:&lt;/div&gt;&lt;div&gt;&lt;pre&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div&gt;sudo a2enmod passenger&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;After that add the redmine softlink in the /var/www directory:&lt;/div&gt;&lt;div&gt;&lt;pre&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div&gt;cd /var/www&lt;/div&gt;&lt;div&gt;sudo ln -s /usr/share/redmine/public redmine&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;Then you should be able to access it from http://localhost/redmine. Default username and password is admin:admin.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-8049659950293714571?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/8049659950293714571/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=8049659950293714571' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/8049659950293714571'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/8049659950293714571'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2011/02/redmine-is-awesome.html' title='Redmine is awesome'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-7022378253394204034</id><published>2010-12-18T06:24:00.000+08:00</published><updated>2010-12-19T22:03:06.786+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='digi'/><category scheme='http://www.blogger.com/atom/ns#' term='desire hd'/><category scheme='http://www.blogger.com/atom/ns#' term='android'/><title type='text'>Finally what I Desire</title><content type='html'>I've been wanting to get an android phone ever since I gave up on WebOS ever reaching our shores. And especially since working in a big locked down corp I really need a way to escape into the virtual world and hence I've wanted the Nexus One, then the Desire then the Desire HD for a long, long time..&lt;br /&gt;&lt;br /&gt;I've signed up for the &lt;a href="http://www.digi.com.my/internet/smartplan/htc_desire_hd.html"&gt;Digi 2 years contract&lt;/a&gt; (heh.. I've been a happy user of Digi for more than 3 years already, so I don't reckon I've got anything to lose) at the Digital Lifestyle Expo at KLCC.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.flickr.com/photos/abdzah/5269232195/" title="Desire hd box by Abdullah Zainul Abidin, on Flickr"&gt;&lt;img src="http://farm6.static.flickr.com/5007/5269232195_94b8452de6_m.jpg" alt="Desire hd box" height="240" width="143" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;And so after a week of using it here's what I think of it.&lt;br /&gt;I LOOOOOOOOVE IT!!!! :D&lt;br /&gt;&lt;br /&gt;Okay.. now that is out of the way, let's be a little bit more objective here. First, what do I like about the phone.&lt;br /&gt;&lt;br /&gt;I like the big screen. It's huge and makes reading the internet and stuff a real pleasure. But of course there's a price to pay. I also like the 8MP camera. It takes nice pictures and I think extremely nice videos. I like that it can do 3G (yes.. been using the Palm Centro for quite a while makes me a little behind on this aspect :P) and uploading those pics and vids doesn't take very long (actually, there's no waiting for it since it's multitasking and you can just let it continue in the background). I like that it can be turned into an instant wifi hotspot. And I especially love that it is easy to tether even on Linux (it's just an 'ifconfig up' and dhcpclient away on a Ubuntu server without needing any gui at all). I like how it integrates facebook and twitter and yes, I'm now on plurk too. So viewing new status and replying to them is even easier now. I like the built in GPS and since I like Google Maps before on my Palm Centro, I love it more now on my Desire HD. But I have done much travelling yet since I've got it so have not yet tested out in real life situation. I like the android market and the large range of software available to download.&lt;br /&gt;&lt;br /&gt;And now for the not so nice part. One is the huge screen. Yes, it's lovely to look at, but the price is that it drains the battery like there's no tomorrow. I basically have to charge it every morning and afternoon. Of course it might be because I'm so new to it and I can't help but touch it all the time :P. I'm using it more like a little laptop rather than just a phone for calls and sms. So getting 4-5 hours of pretty heavy use is I think quite reasonable. And I'm not too far from a usb port most of the time anyhow. Another thing which I don't really like is... there's no physical keyboard. Being a long time Centro user, this is going to take a lot of getting used to. On the Centro, I was able to set shortcut on every single letter on the keyboard. So to bring up Butler to set my alarm, just press b for a long time. Want to call my wife, press w for a long time. But on the Desire HD, there's no such buttons. And you have only 7 home screen to set up shortcuts and widgets on. Another thing about the large display is that it makes the phone quite big. You can basically forget about using it on a single hand. Even to bring it up the display, you have to press on the tiny power button at the top of device, which means I usually hold it in my right hand and press the button with the index finger on my left hand. The fingers on my right hand isn't long enough to go around the device to reach it. Being big also makes it rather heavy. After hours and hours of use, you do feel a little cramped (okay, I don't use any other phones for hours and hours but I think anything smaller would have less effect physically). And typing means using a virtual keyboard on the screen. It is much easier than I thought but it's still not as easy as using the physical keyboard on the Centro. And though I like the large choice of selection in the app market, but being a noob makes it quite difficult for me to find what might be good and what is not.&lt;br /&gt;&lt;br /&gt;But overall I love this phone and hopefully will be able to use it happily for the next 2 years at least.&lt;br /&gt;&lt;br /&gt;*updated: only after reading kaeru's comment did I realize my palm was a centro, not a WebOS Pre. Changed the relevant parts.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-7022378253394204034?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/7022378253394204034/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=7022378253394204034' title='7 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/7022378253394204034'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/7022378253394204034'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2010/12/finally-what-i-desire.html' title='Finally what I Desire'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://farm6.static.flickr.com/5007/5269232195_94b8452de6_t.jpg' height='72' width='72'/><thr:total>7</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-5945922168516740793</id><published>2010-07-22T15:53:00.000+08:00</published><updated>2010-07-22T16:08:54.917+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='import export'/><category scheme='http://www.blogger.com/atom/ns#' term='ms sql'/><title type='text'>Grailsify legacy ms sql database</title><content type='html'>I had a problem. I'm developing using grails but my constraint is that I have to use a legacy ms sql database that was created by importing data from excel to access to ms sql. Thus the tables do not have any id field or primary key. And not only that, once I've done my work on my pc, and I do a full dump onto the server using MS own "SQL Server Import and Export Wizard 2008" it does not retain the identity property of the id field (that's auto-increment for all you lucky mysqlers). So when grails try to create a new record it fails. So so sad. But after a few days of depressive wanderings I decided to be a man and solve this. So here's the script in full, of how you would automatically create an id if the table does not have it yet, and if already has, will do the whole recreate process to make the id an identity again. Hope it would benefit someone.&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;declare @tablename varchar(1000),@importnew nvarchar(1000),@addconstraint nvarchar(1000),@dropold nvarchar(1000),@dorename nvarchar(1000),@dname nvarchar(1000),@dquery nvarchar(1000)&lt;br /&gt;declare tables cursor for select TABLE_NAME from INFORMATION_SCHEMA.TABLES&lt;br /&gt;open tables&lt;br /&gt;fetch next from tables into @tablename&lt;br /&gt;while @@FETCH_STATUS = 0&lt;br /&gt;begin&lt;br /&gt;    print 'processing ' + @tablename&lt;br /&gt;    if exists(select column_name from INFORMATION_SCHEMA.columns where table_name = @tablename and column_name = 'idold')&lt;br /&gt;    begin&lt;br /&gt;        set @dropold = 'alter table '+ @tablename +' drop column idold'&lt;br /&gt;        exec sp_executesql @dropold&lt;br /&gt;    end&lt;br /&gt;    if not exists(select column_name from INFORMATION_SCHEMA.KEY_COLUMN_USAGE where TABLE_NAME = @tablename)&lt;br /&gt;    begin&lt;br /&gt;        if exists(select column_name from INFORMATION_SCHEMA.columns where table_name = @tablename and column_name = 'id')&lt;br /&gt;        begin&lt;br /&gt;            set @dorename = 'exec sp_rename "' + @tablename + '.id", "idold", "column"'&lt;br /&gt;            exec sp_executesql @dorename&lt;br /&gt;            set @importnew = 'select identity(numeric(19,0)) as id,* into ' + @tablename +'_tmp from ' + @tablename + ' where 1=0'&lt;br /&gt;            exec sp_executesql @importnew&lt;br /&gt;            set @dname = null&lt;br /&gt;            select @dname = coalesce(@dname+',','') + column_name from information_schema.columns where table_name=@tablename           &lt;br /&gt;            print @dname&lt;br /&gt;            set @dquery = 'set identity_insert '+ @tablename  + '_tmp on;insert into ' + @tablename + '_tmp (id, '+ @dname +' ) select idold,* from ' + @tablename + ';set identity_insert '+ @tablename  + '_tmp off'           &lt;br /&gt;            exec sp_executesql @dquery           &lt;br /&gt;        end&lt;br /&gt;        else&lt;br /&gt;        begin&lt;br /&gt;            set @importnew = 'select identity(numeric(19,0)) as id,* into ' + @tablename +'_tmp from ' + @tablename&lt;br /&gt;            exec sp_executesql @importnew&lt;br /&gt;        end&lt;br /&gt;        set @addconstraint = 'alter table ' + @tablename + '_tmp add constraint ' + @tablename + '_pk primary key (id)'&lt;br /&gt;        exec sp_executesql @addconstraint&lt;br /&gt;        set @dropold = 'drop table ' + @tablename&lt;br /&gt;        exec sp_executesql @dropold&lt;br /&gt;        set @dorename = 'exec sp_rename ' + @tablename + '_tmp, ' + @tablename&lt;br /&gt;        exec sp_executesql @dorename&lt;br /&gt;        if exists(select column_name from INFORMATION_SCHEMA.columns where table_name = @tablename and column_name = 'idold')&lt;br /&gt;        begin&lt;br /&gt;            set @dropold = 'alter table '+ @tablename +' drop column idold'&lt;br /&gt;            exec sp_executesql @dropold&lt;br /&gt;        end   &lt;br /&gt;    end&lt;br /&gt;    fetch next from tables into @tablename&lt;br /&gt;end&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;It took a lot of googling to get that much. In that tiny piece of accumulated wisdom is how you would create a cursor so that you can loop over the items, how you would check whether a field exist or not in a particular table, does the table already have a primary key, how to rename column, how to insert value into an identity field by setting identity_insert to on, how to get a list of table fields and turn it into a comma separated string so that you can put that into another query. Phew.. But most importantly it allows me to import and export my ms sql 2008 database and know that this time the id field would still be intact and functioning (after running the script of course).&lt;br /&gt;&lt;br /&gt;/me misses mysql, postgres and zodb... :(&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-5945922168516740793?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/5945922168516740793/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=5945922168516740793' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/5945922168516740793'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/5945922168516740793'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2010/07/grailsify-legacy-ms-sql-database.html' title='Grailsify legacy ms sql database'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-8517773494431967680</id><published>2010-06-18T16:46:00.000+08:00</published><updated>2010-06-18T17:19:19.764+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='awstats'/><category scheme='http://www.blogger.com/atom/ns#' term='route'/><category scheme='http://www.blogger.com/atom/ns#' term='windows'/><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><category scheme='http://www.blogger.com/atom/ns#' term='tomcat'/><category scheme='http://www.blogger.com/atom/ns#' term='just life'/><title type='text'>New job, new things to learn.. gotta get in line..</title><content type='html'>It's been 3 weeks since I've started my new job at a big corporation. Transition into this new job was not easy and even now there is still a lot of pain of adapting. The biggest source of the pain? WINDOWS!!! T.T&lt;br /&gt;&lt;br /&gt;Being a big corp, it's almost a requirement that your reliance on all things microsoft has to be solid and deep rooted. Of course we have open source equivalent for most of the stuff but the pressure is on for me to perform and to present some tangible results as soon as possible thus I barely had time to put some basic best practices in place. But finally after 2 days of googling and tweaking, I've got a small pc running ubuntu server serving trac for ticketing and serving out our main mercurial repo. We don't even have the basic infra yet and still management says "these are things are nice to have, but you need to deliver those reports soon. Our deadline was last month".&lt;br /&gt;&lt;br /&gt;Then when starting to do development, I start to see how deep the rabbit hole goes. Never mind about the ton of spaghetti code we have to tangle with, database management (this is just our internal development database mind you) consist of importing excel file into access and using odbc to push those tables to ms sql server. Ha. Seamless I tell you.. &gt;.&lt;&lt;br /&gt;&lt;br /&gt;So of course there is nothing in the open source world that can match that kind of right click send seamlessness. So for now I concede I have to use windows. At least until most of our database stuff is fully in the ms sql server and I can connect to that directly. But the pain of working in windows.. oh my.. Even looking for text in all the source code is not as easy as 'grep -ir something'. I think I miss grep the most. But of course I miss all the rest of our little treasure trove of command line tools to make dev so much easier. How I wish I had a 'tail -f' in one window of terminator while I restart the server and redo the query in another.&lt;br /&gt;&lt;br /&gt;But I'm already here now and I should square my shoulders and get in line.&lt;br /&gt;&lt;br /&gt;Some interesting thing I've learned already is how to set the default gateway for windows for example. You just do a:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;route change 0.0.0.0 mask 0.0.0.0 &lt;gateway&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;That is to change the default gateway if it already exists. Want to know whether it already exists? Print it out:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;route print&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;And also for setting up tomcat6 cgi, edit the conf/web.xml file in the tomcat root directory. Inside there you would see already commented out parts for cgi config. Just remove tags from 2 parts:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;      &amp;lt;servlet&amp;gt;&lt;br /&gt;        &amp;lt;servlet-name&amp;gt;cgi&amp;lt;/servlet-name&amp;gt;&lt;br /&gt;        &amp;lt;servlet-class&amp;gt;org.apache.catalina.servlets.CGIServlet&amp;lt;/servlet-class&amp;gt;&lt;br /&gt;        &amp;lt;init-param&amp;gt;&lt;br /&gt;          &amp;lt;param-name&amp;gt;debug&amp;lt;/param-name&amp;gt;&lt;br /&gt;          &amp;lt;param-value&amp;gt;0&amp;lt;/param-value&amp;gt;&lt;br /&gt;        &amp;lt;/init-param&amp;gt;&lt;br /&gt;        &amp;lt;init-param&amp;gt;&lt;br /&gt;          &amp;lt;param-name&amp;gt;cgiPathPrefix&amp;lt;/param-name&amp;gt;&lt;br /&gt;          &amp;lt;param-value&amp;gt;WEB-INF/cgi&amp;lt;/param-value&amp;gt;&lt;br /&gt;        &amp;lt;/init-param&amp;gt;&lt;br /&gt;    &amp;lt;init-param&amp;gt;&lt;br /&gt;        &amp;lt;param-name&amp;gt;passShellEnvironment&amp;lt;/param-name&amp;gt;&lt;br /&gt;        &amp;lt;param-value&amp;gt;true&amp;lt;/param-value&amp;gt;&lt;br /&gt;    &amp;lt;/init-param&amp;gt;&lt;br /&gt;         &amp;lt;load-on-startup&amp;gt;5&amp;lt;/load-on-startup&amp;gt;&lt;br /&gt;    &amp;lt;/servlet&amp;gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;*note - you should add the passShellEnvironment part to allow the cgi to use perl and stuff.&lt;br /&gt;And from:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;    &amp;lt;servlet-mapping&amp;gt;&lt;br /&gt;        &amp;lt;servlet-name&amp;gt;cgi&amp;lt;/servlet-name&amp;gt;&lt;br /&gt;        &amp;lt;url-pattern&amp;gt;/cgi-bin/*&amp;lt;/url-pattern&amp;gt;&lt;br /&gt;    &amp;lt;/servlet-mapping&amp;amp;gt&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;And then you have to change the conf/context.xml file to enabled privileged like this:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;&amp;lt;Context privileged="true"&amp;gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Once that is done you've got it made baby.. you can now download &lt;a href="http://strawberryperl.com/"&gt;strawberry perl&lt;/a&gt; and &lt;a href="http://awstats.sourceforge.net/"&gt;awstats&lt;/a&gt; and have awstats even for a tomcat6 server. Follow the instructions here for more details: &lt;a href="http://www.wrenbeck.com/flowbuilder/$$download.xsp/blog/3eab0461f928f/awstats_tomcat.html"&gt;http://www.wrenbeck.com/flowbuilder/$$download.xsp/blog/3eab0461f928f/awstats_tomcat.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Just one more note on changes to tomcat to enable awstats. You need to enable the combined log for it to work. For that edit the file conf/server.xml and at the end of the file you might find something like this:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;       &amp;lt;Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" &lt;br /&gt;               prefix="localhost_access_log." suffix=".txt" pattern="combined" resolveHosts="false"/&amp;gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Release it from it's remarked prison and change the pattern from "common" to "combined".&lt;br /&gt;&lt;br /&gt;Learned quite a lot these past few weeks so I guess that's very good. Still have to use windows so that's pretty bad. But plus minus it all, it's still pretty good.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-8517773494431967680?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/8517773494431967680/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=8517773494431967680' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/8517773494431967680'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/8517773494431967680'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2010/06/new-job-new-things-to-learn-gotta-get.html' title='New job, new things to learn.. gotta get in line..'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-5093980904447764677</id><published>2010-06-06T19:18:00.000+08:00</published><updated>2010-06-06T19:54:08.880+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='just life'/><title type='text'>Unforgettable holiday</title><content type='html'>Just came back from having a holiday with the family at Lumut. It was quite an ad-hoc decision to follow my parents to Lumut on the family day of their respective companies. So they have already left for Lumut since last friday evening, we didn't even start to get ready till saturday morning. By around 11 am we were already on our way. Looking it up on google maps, estimated time of 3 hours 23 minutes means we should arrive there just about a little bit late for lunch. That was our initial hopes. &lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Once we were on the road, we didn't exactly know which way to go. And even though I've looked it up more the less on google maps before, I didn't bother much about it because I thought my brother knew the way. Well, we were supposed to get off the highway at Bidor. We didn't realize that till we called our father a little after we just passed the Tapah exit. So we had little choice but to exit at Gopeng. And we got lost more within the maze of village roads and mark less landscape. Finally we arrived at Lumut around 5 pm. That's a good 6 hours, twice the estimated time for us to arrive.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;We reached Lumut, exhausted and hungry. We ate a road side stall and they charged us quite outrageously I think. Finally we went to Teluk Batik, and we were even more disappointed by the humongous crowd there. I guess it is the weekend crowd, compounded with the school holiday crowd, compounded with even there was going to be a karaoke contest later that night crowd which we heard of at the stall we ate before. Even to get into the washroom was a long queue of at least 20-30 people OUTSIDE of the washroom building, never mind about the people still doing the 'washing'.  But at least my kids got a nice ride at the battery cars &amp;amp; bike. RM 2 per ride. Seeing their happy faces after such a long day was such a great relief.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;That night went to eat dinner, I don't even remember the name of the restaurant now. The food wasn't all that great. It tasted ok, but nothing to write home about. And the lights... Oh the lights.. Just while we were eating the whole restaurant (we'll, actually it was just a bigger road side stall) just went out. The whole place turned completely dark. Not once, not twice, but three times... By the third time we were done eating and decided not to spend any more time there.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Then the next day (today), I started to have a very sore throat. Actually it was already quite sore on saturday morning and I feel I was going to be unwell. And I guess compounded with all the stress of travel and all, by this morning it hurts for me to even swallow my own saliva. The pain almost makes me squirm. Eating breakfast was not a very pleasant experience. It was the usual nasi lemak buffet and the rendang ayam was quite nice, but the pain of swallowing stopped me from even thinking about taking seconds.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Then we went to the beach. Finally there wasn't too much people there. There was still a lot, but not as if you were in a mall on sale. And I finally had my first experience riding the banana boat. That's basically a long float where around 7-8 of us sit on and pulled by a speed boat. The speed boat would make a quick turn in the deeper waters which would make us all tumble over into the water. It was quite exciting. But then faced the unsurmountable problem of getting back on the float with a body as heavy as mine. Trying hard to pull myself on it, I nearly gave up. Good thing my brothers were able to pull me up. By the time we got back on, I just wanted to go back already. Was so exhausted. After a bit more playing in the water and the sands, we went back, cleaned up, checked out. Went to Lumut to have lunch and again I think the price was pretty outrageous.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Then we started to head back. Again, I didn't really know the way. And forgetting that I didn't know the way, we stayed back to buy some stuff at the Lumut Bazaar and didn't follow my father back. And so out of my ignorance, rather than heading to Teluk Intan where we would finally go back on the highway at Bidor, I went towards Klang. Oh my God. What a trip that was. I realized we probably made a mistake an hour or so later when there was still no sign of highway at all. And we ended up going through Sabak Bernam. And B44, Jalan Sungai Panjang, was one heck of a unmaintained road. It was like riding a speed boat on land. I had to drive slowly so as not to be thrown right off the road. It was painfully long and tedious to get through. By the end of it my nerves was really frizzled out already. Finally we went out onto the highway again somewhere at Behrang if I'm not mistaken. Felt so good to finally be on a road that you're sure off. Now finally the vacation is over and tomorrow is another day of work. I think I'm more tired now than before. This is certainly a vacation I won't soon forget.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-5093980904447764677?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/5093980904447764677/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=5093980904447764677' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/5093980904447764677'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/5093980904447764677'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2010/06/unforgettable-holiday.html' title='Unforgettable holiday'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-3374157727857420181</id><published>2010-05-08T15:04:00.000+08:00</published><updated>2010-05-08T15:18:46.536+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu'/><title type='text'>Ubuntu Lucid Lynx 10.04</title><content type='html'>Finally decided to install the latest version of Ubuntu on my laptop. I tried the upgrade through Update Manager path. Left it to run and by the time I came back from work, I booted to blank screens. The Grub works but that's basically it. So I booted into Windows, downloaded the CD iso and burnt it and did a completely fresh install. This went much more smoother. Everything worked out of the box for my Acer 4810TG Timeline. Wireless, sound, everything that I usually use (Haven't even tried out the webcam since I've never used it).&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;But then yesterday something strange happen. There was no more volume and chat applet on the panel. So had to search for how I would reset it to the default and found it &lt;a href="http://www.watchingthenet.com/restore-panels-in-ubuntu-back-to-their-default-settings.html"&gt;here&lt;/a&gt;. Basically the steps involve:&lt;/div&gt;&lt;div&gt; 1) gconftool --recursive-unset /apps/panel&lt;/div&gt;&lt;div&gt; 2) rm -rf ~/.gconf/apps/panel&lt;/div&gt;&lt;div&gt; 3) pkill gnome-panel&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;That's it and it all came back to normal default. Nice.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;One thing I've got to mention is about the placement of the windows controller. At first I balked at the fact that it was on the left side of the windows rather than the right side like usual. And at work I actually switched it to be on the right side like normal using the following command:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;gconftool-2 --set /apps/metacity/general/button_layout --type string menu:minimize,maximize,close&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;But after a while I realized that I don't like it being normal again much. I got kinda used to it being on the left and wouldn't actually mind it, maybe even like it because it does create a sort of a unique experience, could be called a sort of an ubuntuish experience.. :P But anyhow, I didn't bother to learn how to reset it back on the left side at work. But now having formatted my home laptop, I've decided to keep it on the left. Feels more original.. :)&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-3374157727857420181?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/3374157727857420181/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=3374157727857420181' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/3374157727857420181'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/3374157727857420181'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2010/05/ubuntu-lucid-lynx-1004.html' title='Ubuntu Lucid Lynx 10.04'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-1041286325357369198</id><published>2010-03-16T18:13:00.000+08:00</published><updated>2010-03-16T18:53:08.953+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='wicket'/><category scheme='http://www.blogger.com/atom/ns#' term='eclipse'/><category scheme='http://www.blogger.com/atom/ns#' term='databinder'/><title type='text'>Dive into Java</title><content type='html'>Recently a friend of mine asked me to help him develop a small web application to be run on a tomcat server. So that would mean I have to develop the application using Java, which I have not used ever since my student days. But because the requirements were pretty small, I took up the challenge just for the opportunity to learn something new.&lt;br /&gt;&lt;br /&gt;The system was meant to capture the answers of a questionnaire and calculate the score they got. Then display back the past scores. It's pretty small involving just CRUD and a small amount of business logic to calculate the scores. Could probably be done in a bit over an hour if using tools I'm already familiar with like CakePHP or Django. But with Java, it was a completely different story.&lt;br /&gt;&lt;br /&gt;My experience with CakePHP when developing MyMeeting made me quite reluctant to ever not use a framework ever again. Unless it's just a small trial program to understand a new language, it's better to use a framework. In the framework usually there is already quite a lot of thought put into how things should be organised and what's the best way to achieve our goals. So you get the benefit of quite a lot of wisdom without having to go through acquiring it. So that was the first thing I did. I googled for a 'java framework' and BOOM. Despair. There was tons of them. So many I had no idea what to choose. So I started to search for reviews and comparisons. You basically can't read about Java framework without struts being mentioned. Tapestry was pretty popular too. But they all seemed to have quite a high learning curve and you read a lot about the DREAD of configuring xml files and all. Finally I tumbled on &lt;a href="http://wicket.apache.org/"&gt;wicket&lt;/a&gt;. Reading reviews and presentations about it got me pretty excited. And when I started developing I realised this framework is just for the UI. It made it pretty easy to do quite ajaxy stuff, but there's nothing about database connection and stuff. And there was no tutorial on how to get CRUD even. So after more googling I finally found &lt;a href="http://databinder.net/wicket/show/overview/"&gt;Databinder&lt;/a&gt;. It is basically using Wicket as UI framework and either Hibernate, ActiveObjects or Cayenne for the database abstraction and interaction. Alhamdullillah. With plenty of examples to copy and paste from (hey, I didn't have a lot of time okeh.. :P) , I was finally able to get simple CRUD working.&lt;br /&gt;&lt;br /&gt;Of course by then I met with a lot of the things which made programming in Java a pain. The dependencies, all the declaration, putting in setters and getters for almost every variable. UGH!!!! But in the examples they showed how to set up your project to easily work in Eclipse. And I followed it. And now I understand why Java developers swear by their Eclipse IDE. It's way freaking cool. I mean want to put in all the setters and getters for every variable even though you've got around 50 of them? Forget about typing it, how about just right clicking on the file and choose 'source-&gt;generate getters and setters' and it will all be done for you. How cool is that? What's it? You just copied from one file to another a bunch of  lines which declared types you've got to import? No problem. Eclipse will automatically copy the imports too if it's already resolved. It's way seriously cool. If only it had vim keybinding.. :P&lt;br /&gt;&lt;br /&gt;Anyhow. That took most of my weekends recently but it was very well worth it. I'm not 100% comfortable with it yet, but at least now I can do dev in Java. And if someone was to read my resume and ask me do I know Java I won't have to answer 'Well.. I did a few assignments with it when I was a student'... :P So now the only languages I'd really really like to have a serious go at it is ruby (probably with Rails) and Lisp. Maybe the opportunity would present itself in the future. In the mean time, I still got to polish my Java-fu.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-1041286325357369198?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/1041286325357369198/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=1041286325357369198' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/1041286325357369198'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/1041286325357369198'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2010/03/dive-into-java.html' title='Dive into Java'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-8414836840153384965</id><published>2010-02-24T09:41:00.000+08:00</published><updated>2010-02-24T09:47:06.035+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='scanner'/><category scheme='http://www.blogger.com/atom/ns#' term='printer'/><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu'/><title type='text'>Ubuntu ROCKS!!!</title><content type='html'>ROCK!! Ubuntu really rocks!!&lt;br /&gt;&lt;br /&gt;I've spent quite sometime even getting the wifi of this acer timeline 4810tg to work in archlinux, but in ubuntu 9.10, even the live CD was able to detect and use it. But that's not the best part. The best part is that I've finally got my Samsung SCX-4300 to work in Linux.. Wooohooo!!!&lt;br /&gt;&lt;br /&gt;Followed the steps shown &lt;a href="http://www.uluga.ubuntuforums.org/showthread.php?t=1057344&amp;amp;page=2"&gt;here&lt;/a&gt;. Installed the samsungmfp stuff from repo and walah.. scanner up and running. Oh.. and don't worry about the printer. It was detected and able to be used almost without any effort.&lt;br /&gt;&lt;br /&gt;Sweet.. :) now I guess I'll need to buy a new toner for it, it'll be under heavy use from now on.. :D&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-8414836840153384965?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/8414836840153384965/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=8414836840153384965' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/8414836840153384965'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/8414836840153384965'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2010/02/ubuntu-rocks.html' title='Ubuntu ROCKS!!!'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-4854782894443976381</id><published>2010-01-29T19:09:00.000+08:00</published><updated>2010-01-29T19:31:07.833+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='just life'/><title type='text'>Random musings..</title><content type='html'>It seems I haven't written anything for quite a long time. In regards to tech, there wasn't much to write home about lately. I've tried out a bit of android programming (ok, actually only got to the point of running the SDK examples on the emulator.. :P), I've dabbled a bit more with django and learned how to create form generated from the models, and of course learned a ton of things about plone. Currently my focus is more on attempting to port PloneMeeting over to be used on Plone 3. Still learning a lot more about this. I'm very excited about Plone 4. It's fast and it runs on Python 2.6. And that's basically it for tech more the less.&lt;br /&gt;&lt;br /&gt;Apart form that, the current state of the country is pretty messed up if you ask me. I can't talk about it without feeling depressed. So I'm not going write anything about it here. It'll make me even more depressed.&lt;br /&gt;&lt;br /&gt;On a happier note, my new house is almost ready to move in. Just have to unpack and organize all the stuff which we just brought back from Sepang Putra last week. There was quite a lot of things not to like about the house at first, but after a new coat of paint, some fans, a new sink and some pipeworks, it's turning to be pretty sweet. I'm hoping to finally be able to sleep at my own house by next week.&lt;br /&gt;&lt;br /&gt;I really should try to write more often. My ideas are just not flowing anymore now.&lt;br /&gt;&lt;br /&gt;Oh and one more thing. If you are in an organization which needs an easy to use intranet where members can share information, upload files, mark events easily, do contact us (ie Inigo Consulting). Manage &amp;amp; share your organizational knowledge. For more information go to &lt;a href="http://www.inigo-tech.com"&gt;http://www.inigo-tech.com&lt;/a&gt;. And once I can get PloneMeeting to work, you can even manage your meetings in your intranet too. Contact us now.. :D&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-4854782894443976381?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/4854782894443976381/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=4854782894443976381' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/4854782894443976381'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/4854782894443976381'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2010/01/random-musings.html' title='Random musings..'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-6217270540460904297</id><published>2009-12-19T08:36:00.000+08:00</published><updated>2009-12-19T09:15:06.010+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='arch'/><category scheme='http://www.blogger.com/atom/ns#' term='games'/><category scheme='http://www.blogger.com/atom/ns#' term='windows'/><title type='text'>Happy new year...</title><content type='html'>Yesterday was Ma'al Hijrah marking the beginning of the year 1431 in the Islamic calendar. So with a new year comes new hope and a fresh new start. Even for my computer. I bought my acer aspire 4810tg a few month ago before the release of windows 7. Even then they already promised there will be a free upgrade once it is released. When I finally applied for my upgrade, found out that the software itself is free, but you still have to pay for the shipping (USD 18 to ship to Malaysia). I applied for it anyway. It arrived in the mail a couple of weeks ago but I was too busy then to actually do anything about it. But Alhamdullillah there's a bit of change in the pace of our work in Inigo and finally I've decided I've got enough time to risk it. And risk it I did. After making a full backup of my /etc, /var and /home directory of course.. :P&lt;br /&gt;&lt;br /&gt;It took a very long time to upgrade to Windows 7. It was searching for incompatible software, gathering settings and things like that I guess. And after a whole night (well, I started after 10.30, and by 2 I felt I needed to sleep already, so it might have completed sooner but I wouldn't know.. :P) I finally have a fresh install of Windows 7 on my trusty Delorian (it's a timeline model ok.. that's the best name I can think of in regards to time.. &gt;.&lt; ). But after a reboot I realised something which I should have known but completely forgot "Windows overwrote the MBR, now no more grub..". Ugh, and I didn't have any arch linux cd handy. Had to download the iso. I did have a copy of Fedora 12 iso already though so I thought I'd try to install that. It stoped booting with an error and mentioned something about the hardware. I didn't write it down, neither did I bother to google it, so not sure whether it's just my machine of for aspire 4810tg in general. Anyhow, I tried to boot with the latest arch linux iso, also said there was a problem. It was starting to not look good. I downloaded an earlier version of arch and that one finally booted. So I was able to access my old linux partitions and all but I didn't know how to just configure grub. After around 3 hours of googling and trying various things (going into the grub console and all) I just gave up and said "What the heck, I've got a backup anyhow". So I did a fresh install of arch linux on my laptop... Completely clean install. :)&lt;br /&gt;&lt;br /&gt;As you might have known already from my previous post, I've been on a minimalist streak for quite a while already. Using xmonad as my windows manager and even going so far as installing vimperator to control my browser completely by  keyboard. So since I'm already pretty comfortable with that setup, I thought that "hey, why not dump gnome and try to have an installation without the WHOLE gnome thing". I mean I even use wicd (it has a pretty cool curses interface when you really need it) as my network manager of choice so I don't even need the networkmanager. But seriously, I don't intend to use xmonad completely. I only use it for work when I need to really be efficent. When I'm just slowly browsing and enjoying my computer, I like to slow down a little and doesn't really need all the efficency a full fledge keyboard bounded setup could give me. So after some deliberation, I choose xfce. So now I've got a super light desktop for play and a super efficent setup for work. Hohohoho.. and oh yeah, I've got Windows 7 (/me do a little chicken dance to the dismay of my fellow open sourcians.. :P).&lt;br /&gt;&lt;br /&gt;Why on earth would I want Windows 7 you may ask when I've already got the best setup a man could ask for? Well... sometimes a man like to play games.. :P Yes, I only use Windows to play games.. :P Since I'm trying my best to be clean and since although I respect RMS very much I still think there is still such a thing as software PIRACY, I only play free games (at least till I can afford original ones.. :P). My favourite game currently, &lt;a href="http://sfront.ijji.com/"&gt;SOLDIER FRONT&lt;/a&gt;.. :D It's a pretty cool game, and if you decide to join in, look out for me.. jebat.. :D But sometimes I play extremely badly, when you see that please know that most probably that's my son playing using my account.. &gt;.&lt; (yes I know, I'm a bad father..)&lt;br /&gt;&lt;br /&gt;Ok. That's pretty much what's new with me in this new year. So to all my muslim friends "Happy new year.. ". I'm looking forward to a great one insyaAllah, hope you are too.. :)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-6217270540460904297?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/6217270540460904297/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=6217270540460904297' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/6217270540460904297'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/6217270540460904297'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2009/12/happy-new-year.html' title='Happy new year...'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-1687162486990235034</id><published>2009-12-10T00:37:00.000+08:00</published><updated>2009-12-10T01:08:28.543+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='just life'/><title type='text'>After all that, there is more...</title><content type='html'>I remember in my younger days when I actually had time to sit for hours and hours in front of a computer to play, just play, and had lots of fun. Some of the games that I still remember fondly is like the classic Digger, Doom (especially Doom 2), Monkey Island (1 and 2 was the most memorable to me), Days of the Tentacle, Full Throttle, Command and Conquer, Warcraft, Starcraft, Baldurs Gate, Outlaw, Fallout. I miss those days. Those easy times. Then it was a busy day if you only get to play for just 1 hour. And "balik kampung" was probably the worst time. You can't play for days on end.. :P&lt;br /&gt;&lt;br /&gt;And I remember strolling around Imbi Plaza (there wasn't any Low Yat yet back then) and just looked around. I couldn't afford ANY of the things I adored back then but just being able to window shop made me quite knowledgable. Friends and family come to me for advice on what computer they should buy, or for this price what are the recomended specs. I barely know it now. I have no idea what's the latest and greatest graphics card, or CPU, much less their prices. Those were the days.&lt;br /&gt;&lt;br /&gt;Now most of my days I'm pretty much stuck in front of a computer. Doing 'work'. And more of it. And once that is done, there's more where that came from. Living close by the seaside, I watch in awe at the waves and wonder "Maybe I should try to be a fisherman". When I said this to my wife, she just laughed and said I wouldn't last a day. The hard labour would probably kill me. I think she's right.&lt;br /&gt;&lt;br /&gt;I love programming. Don't get me wrong. I love doing my work. But when I think about my 'work', I've been doing web based things for almost 4 years already. As long as there is any sort of data mining and manipulation involved I would say 'I could probably build you a web app for that'. I know python, php, html, css, javascript, ajax, mysql, zodb, apache and stuff but when I think about it, I barely know C anymore, nevermind java. I look at all the jobs on jobstreet and find that they want a 'java' programmer. If I had to learn it back, it'd be pretty quick, but who's going to beleive just someone off the street that he's that good? Maybe I'm just tired. Or maybe I'm just a little bored. But anyhow, I'm thinking of ways I could diversify more of what I do and know with a computer. Not just software but also hardware. Not just web apps but also stand alone application optimized for the desktop. Not just another day of 'work', but an expression of an artistic soul. Maybe...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-1687162486990235034?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/1687162486990235034/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=1687162486990235034' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/1687162486990235034'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/1687162486990235034'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2009/12/after-all-that-there-is-more.html' title='After all that, there is more...'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-5631956806349796758</id><published>2009-11-18T20:00:00.000+08:00</published><updated>2009-11-18T20:26:04.640+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='arch'/><category scheme='http://www.blogger.com/atom/ns#' term='xrandr'/><category scheme='http://www.blogger.com/atom/ns#' term='xmobar'/><category scheme='http://www.blogger.com/atom/ns#' term='xmonad'/><title type='text'>xmonad settings</title><content type='html'>One thing that I did like about using gnome was that for most things, it was very discoverable. You click a few menus, try this and that. But with something like xmonad, it's much more configurable for sure but you certainly have to  know your way around. So after seaching the internet, I've finally had a setup which I pretty much like. Here it is for future reference. For ~/.xmnonad/xmonad.hs:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;import XMonad&lt;br /&gt;import XMonad.Hooks.DynamicLog&lt;br /&gt;import XMonad.Hooks.ManageDocks&lt;br /&gt;import XMonad.Util.Run(spawnPipe)&lt;br /&gt;import XMonad.Util.EZConfig(additionalKeys)&lt;br /&gt;import System.IO&lt;br /&gt;&lt;br /&gt;myManageHook = composeAll&lt;br /&gt;   [ className =? "Gimp"      --&amp;gt; doFloat&lt;br /&gt;   ]&lt;br /&gt;&lt;br /&gt;main = do&lt;br /&gt;   xmproc &amp;lt;- spawnPipe "xmobar"&lt;br /&gt;   xmonad  $ defaultConfig&lt;br /&gt;       { terminal = "urxvt"&lt;br /&gt;       , modMask  = mod4Mask&lt;br /&gt;       , borderWidth = 3&lt;br /&gt;       , manageHook = manageDocks &amp;lt;+&amp;gt; myManageHook &amp;lt;+&amp;gt; manageHook defaultConfig&lt;br /&gt;       , layoutHook = avoidStruts $ layoutHook defaultConfig&lt;br /&gt;       , logHook = dynamicLogWithPP $ xmobarPP&lt;br /&gt;                       { ppOutput = hPutStrLn xmproc&lt;br /&gt;                       , ppTitle = xmobarColor "green" "" . shorten 50&lt;br /&gt;                       }&lt;br /&gt;       } `additionalKeys`&lt;br /&gt;       [ ((mod4Mask .|. shiftMask, xK_z), spawn "xscreensaver-command -lock")&lt;br /&gt;       , ((controlMask, xK_Print), spawn "sleep 0.2; scrot -s")&lt;br /&gt;       , ((0, xK_Print), spawn "scrot")&lt;br /&gt;       ]&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;That will, amongs other things, make sure that gimp does not tile but stay float, it will start up xmobar, set my default terminal to urxvt, use the win key for meta (better than using alt since alt is used by most programs), logHook to create an output to be used by xmobar, make sure xmobar stay visible eventhough the screen is full of other programs, set win+shift+z will lock the screen with xscreensaver.&lt;br /&gt;&lt;br /&gt;Okay, next is setting for xmobar. This is my ~/.xmobarrc:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;Config { font = "-*-Fixed-Bold-R-Normal-*-13-*-*-*-*-*-*-*"&lt;br /&gt;      , bgColor = "black"&lt;br /&gt;      , fgColor = "grey"&lt;br /&gt;      , position = TopW L 90&lt;br /&gt;      , lowerOnStart = True&lt;br /&gt;      , commands = [ Run Cpu ["-L","3","-H","50","--normal","green","--high","red"] 10&lt;br /&gt;                   , Run Network "wlan0" ["-L","0","-H","32","--normal","green","--high","red"] 10&lt;br /&gt;                   , Run Network "eth0" ["-L","0","-H","32","--normal","green","--high","red"] 10&lt;br /&gt;                   , Run Memory ["-t","Mem: &amp;lt;usedratio&amp;gt;%"] 10&lt;br /&gt;                   , Run Date "%a %b %_d %Y %H:%M:%S" "date" 10&lt;br /&gt;                   , Run StdinReader&lt;br /&gt;                   ]&lt;br /&gt;      , sepChar = "%"&lt;br /&gt;      , alignSep = "}{"&lt;br /&gt;      , template = "%StdinReader% }{ %cpu% | %memory% | %wlan0% | %eth0% * &amp;lt;fc=#ee9a00&amp;gt;%date%&amp;lt;/fc&amp;gt; @ %hostname%"&lt;br /&gt;      }&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;Ok. This will create the xmobar on the top 90% of the screen. Another 10% we want to reserve for trayer for our programs that require a system tray (eg Pidgin) if we use any. It display a few useful info, but I think on of the most useful ones is the date, and also the output from xmonad which would show what workspace you are currently on (very very useful) and also the title of the window you're currently viewing (not so useful but still nice to have).&lt;br /&gt;Next is I want my urxvt to look nice. So here is the settings for my ~/.Xresources:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;URxvt*background: #242424&lt;br /&gt;URxvt*cutchars: BACKSLASH '"'&amp;amp;()*,;&amp;lt;=&amp;gt;?@[]{|}&lt;br /&gt;URxvt*colorUL: #86a2be&lt;br /&gt;URxvt*foreground: #ffffff&lt;br /&gt;URxvt*geometry: 80x25&lt;br /&gt;URxvt.cursorColor: #86a2be&lt;br /&gt;URxvt*internalBorder: 0&lt;br /&gt;URxvt*jumpScroll: true&lt;br /&gt;URxvt*loginShell: true&lt;br /&gt;URxvt*perl-ext-common: default,matcher,searchable-scrollback&lt;br /&gt;URxvt*pointerBlank: true&lt;br /&gt;URxvt*saveLines: 4000&lt;br /&gt;URxvt*secondaryScroll: true&lt;br /&gt;URxvt*scrollBar: false&lt;br /&gt;URxvt*scrollTtyKeypress: true&lt;br /&gt;URxvt*scrollWithBuffer: true&lt;br /&gt;URxvt*termName: rxvt-unicode&lt;br /&gt;URxvt*underlineColor: #86a2be&lt;br /&gt;URxvt*urlLauncher: /usr/bin/firefox&lt;br /&gt;URxvt*color0: #242424&lt;br /&gt;URxvt*color1: #bf7979&lt;br /&gt;URxvt*color2: #97b26b&lt;br /&gt;URxvt*color3: #cdcda1&lt;br /&gt;URxvt*color4: #86a2be&lt;br /&gt;URxvt*color5: #d9b798&lt;br /&gt;URxvt*color6: #a1b5cd&lt;br /&gt;URxvt*color7: #ffffff&lt;br /&gt;URxvt*color8: #cdb5cd&lt;br /&gt;URxvt*color9: #f4a45f&lt;br /&gt;URxvt*color10: #c5f779&lt;br /&gt;URxvt*color11: #ffffaf&lt;br /&gt;URxvt*color12: #98afd9&lt;br /&gt;URxvt*color13: #d7d998&lt;br /&gt;URxvt*color14: #a1b5cd&lt;br /&gt;URxvt*color15: #dedede&lt;br /&gt;URxvt*font: xft:Terminus:pixelsize=15&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;I found this in a Ubuntu &lt;a href="http://ubuntuforums.org/showthread.php?t=690532"&gt;forum&lt;/a&gt;. I changed the font to Terminus with size 15 though. Much nicer on the eyes not to have to squint so much trying to read a small font. Then finally to put it all together, I have this in ~/.xinitrc:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;xsetroot -cursor_name left_ptr&lt;br /&gt;if xrandr -q | grep -q "VGA1 connected"; then&lt;br /&gt;  xrandr --output VGA1 --mode 1024x768 --left-of LVDS1 --output LVDS1 --mode 1366x768&lt;br /&gt;fi&lt;br /&gt;trayer --edge top --align right --transparent true --width 10 --tint 0x191970 --height 12 --expand true --widthtype request --heighttype request --SetDockType true --SetPartialStrut true &amp;amp;&lt;br /&gt;xscreensaver -no-splash &amp;amp;&lt;br /&gt;xrdb -merge ~/.Xresources&lt;br /&gt;exec ck-launch-session xmonad&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;Amongst other things it detect whether I have an external monitor connected and automatically make xrandr extend to that if there is one. It sets up trayer (using the 10% we preserved earlier). It starts up xscreensaver. It actually load the .Xresources (normally this would be done by the gdm, but since I'm not using the gdm so this is how you load it and finally it launches xmonad. Phew.. That's basically it. As long as this blog post hold up, I can reformat my machine and recover the settings which I pretty much like for xmobar and gang.&lt;br /&gt;&lt;br /&gt;Disclaimer: None of these settings are my original. Some of them I've got from xmonad and xmobar faq's and tutorials, others I've got from other various pages on the net.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-5631956806349796758?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/5631956806349796758/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=5631956806349796758' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/5631956806349796758'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/5631956806349796758'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2009/11/xmonad-settings.html' title='xmonad settings'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-5877197059383851514</id><published>2009-11-15T02:37:00.000+08:00</published><updated>2009-11-15T02:58:56.593+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='arch'/><category scheme='http://www.blogger.com/atom/ns#' term='argouml'/><category scheme='http://www.blogger.com/atom/ns#' term='xmonad'/><title type='text'>argouml in xmonad</title><content type='html'>Recently a small window manager war broke out at the #archlinux irc channel. Not much to say about it because it's been done dozens of times already, but it did got me interested in trying out a tiling wm again. I've tried xmonad before and liked it quite a bit back then so I thought I'd give it another go. And sure enough I LOVE it.. :P Not having to touch the mouse (or the touchpad which is even worse) at all is a great feeling. You just want to go faster and faster. Then I fired up firefox and lo and behold, I have to use the mouse again. That's a cannot. So I installed the vimperator plugin. Now I can navigate and use firefox just like using my favourite editor.. :D&lt;br /&gt;&lt;br /&gt;But of course that's just the beginning, I had to look for replacement for a lot of other software I normally use too. So now:&lt;br /&gt;1. pidgin -&gt; finch (ym client)&lt;br /&gt;2. xchat-gnome -&gt; weechat-curses (irc client)&lt;br /&gt;3. evolution -&gt; alpine (mail client)&lt;br /&gt;4. exaile -&gt; herrie (mp3 player)&lt;br /&gt;5. nautilus -&gt; mc (file manager)&lt;br /&gt;&lt;br /&gt;Then I faced another problem. When  I started out argouml all it showed was a grey window. Nothing, nada. No display whatsoever. I really thought I had to go back to gnome already. Then I did a bit of googling and finally found &lt;a href="http://awesome.naquadah.org/wiki/Problems_with_Java"&gt;this&lt;/a&gt; at the awesome wm wiki (another tiling wm). Basically the problem is with jvm in a non-reparenting window manager. So to fix it, we can emulate another window manager which jvm thinks is a reparenting window manager. Just install 'wmname' (yes.. that is.. pacman -S wmname) and run:&lt;br /&gt;&lt;code&gt;&lt;br /&gt;$ wmname LG3D&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;And walah.. argouml running once again. Even though you close the terminal and start just argouml, it'll work. So far I'm loving this slimming down of my desktop, now if only I could start slimming down my own body.. :P&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-5877197059383851514?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/5877197059383851514/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=5877197059383851514' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/5877197059383851514'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/5877197059383851514'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2009/11/argouml-in-xmonad.html' title='argouml in xmonad'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-2187162246884393504</id><published>2009-10-11T06:47:00.000+08:00</published><updated>2009-10-11T07:11:48.209+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='fossmy'/><title type='text'>foss.my is back</title><content type='html'>Last year it was awesome and now it's back again. Yes, I'm talking about the free open source software conference by the people for the people, &lt;a href="http://foss.my/"&gt;foss.my&lt;/a&gt;, on 24th - 25th October at &lt;a href="http://foss.my/2009/venue/"&gt;UCTI, TPM&lt;/a&gt;. This year with even more reasons for you to attend. Personally for me, just one reason is enough. RMS (Richard M Stallman) himself will be there. Yes sir, the legendary founder of the &lt;a href="http://www.fsf.org/"&gt;Free Software Foundation&lt;/a&gt;. The man responsible for liberating mankind from the shackles of propietary software to the freedom of free (as in freedom, not free teh tarik) software. He will be giving the opening keynote on the second day, 25 October. So don't miss it.&lt;br /&gt;&lt;br /&gt;What other reasons you should come? There's no reason why you shouldn't. It only costs RM 20 for a &lt;a href="http://foss.my/2009/registration-overview/"&gt;barebone ticket&lt;/a&gt;. You don't get any lunch or t-shirt, but hey, if you just wanted to listen to great talks on free software, I think that's a great deal. Most probably would be too busy to have lunch anyway. And there's no one stopping you from bringing your own. :D&lt;br /&gt;&lt;br /&gt;There's a line-up of great talks and activities all about sharing the free software love. And if you register before 15th October, you are even in the running to bring back a free (free as in free teh tarik) netbook. So what are you waiting for? Register &lt;a href="http://foss.my/2009/registration/"&gt;now&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;And I'll see you there.. ;)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-2187162246884393504?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/2187162246884393504/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=2187162246884393504' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/2187162246884393504'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/2187162246884393504'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2009/10/fossmy-is-back.html' title='foss.my is back'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-8859582089396883446</id><published>2009-08-30T06:42:00.000+08:00</published><updated>2009-08-30T08:34:49.879+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='intel'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='qemu'/><category scheme='http://www.blogger.com/atom/ns#' term='kvm'/><category scheme='http://www.blogger.com/atom/ns#' term='virtual machine'/><title type='text'>Virtual machines</title><content type='html'>I finally tried to give kvm a try on a core 2 duo laptop. And what great fun it is. :D&lt;br /&gt;Following the instruction from the great arch linux &lt;a href="http://wiki.archlinux.org/index.php/KVM"&gt;wiki&lt;/a&gt;, I installed the qemu package. Once I've done that I added myself to the kvm group:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;# gpasswd -a abdza kvm&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;And then I loaded the kvm &amp;amp; kvm-intel module:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;# modprobe kvm&lt;br /&gt;# modprobe kvm-intel&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;To change the new kvm devices to the kvm group I modified the udev rules (had to create the file) at /etc/udev/rules.d/65-kvm.rules:&lt;br /&gt;&lt;pre&gt;&lt;span style="font-family:monospace;"&gt;&lt;br /&gt;&lt;/span&gt;KERNEL=="kvm", NAME="%k", GROUP="kvm", MODE="0660"&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;I downloaded some cd iso's to boot install into the "virtual machines". First I tried ubuntu. Once the iso has been downloaded I had to create a virtual machine image with:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;# qemu-img create -f qcow2 ubuntu 4194304&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;Not sure yet what all of that option is for but that basically would create an image named ubuntu with hard disk size of around 4GB. So I had to 'boot' that image with a cd (the iso image downloaded earlier):&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;# qemu-system-x86_64 --enable-kvm -hda ubuntu -m 512 -cdrom ~/Downloads/ubuntu-9.04-desktop-i386.iso -boot d -vga std -net nic,vlan=1 -net user,vlan=1&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;That would boot the machine with the cd "inside" it. It would run the live cd and allow you to install ubuntu on it and everthing. Then once it's already installed you can boot it without the cd with:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;# qemu-system-x86_64 --enable-kvm -hda ubuntu -m 512 -boot c -vga std -net nic,vlan=1 -net user,vlan=1&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;Notice that the boot flag has changed to c. Now with the current `-net nic,vlan=1 -net user,vlan1` you will already get normal internet access from inside the virtual machine. But that virtual machine would not be able to access any other machines on your network and no other machines on your network can access your virtual machine neither. Reason being is that it is actually on it's own virtual network provided by qemu. I've read that you need to set up bridge and tun/tap to be able to make it appear on your normal network. Haven't tried it out yet. That would be for the next part.&lt;br /&gt;&lt;br /&gt;Just a little side note. Whenever you click inside the virtual machine display, the mouse would be 'captured' by that machine. To release it like normal press ctrl+alt. That would release the mouse. Sometimes you might even like to view the machine full screen, to toggle that just use ctrl+alt+f.&lt;br /&gt;&lt;br /&gt;Another small note, 4GB isn't enough to install Fedora 11. For that I created an 8GB virtual machine.&lt;br /&gt;&lt;br /&gt;Another small note (my.. getting lots of small notes nowadays.. :P). To use sound in the 'virtual machine', add:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;-soundhw all&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;to the options. Can even view and listen to youtube from a 'virtual' ubuntu.. :P&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-8859582089396883446?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/8859582089396883446/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=8859582089396883446' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/8859582089396883446'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/8859582089396883446'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2009/08/virtual-machines.html' title='Virtual machines'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-3477773900421636423</id><published>2009-08-26T11:27:00.000+08:00</published><updated>2009-08-26T12:00:43.998+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='broadband'/><category scheme='http://www.blogger.com/atom/ns#' term='zerocd'/><category scheme='http://www.blogger.com/atom/ns#' term='celcom'/><title type='text'>ZeroCD broadband modem</title><content type='html'>Just a quick note. Recently my father asked me to get a broadband modem to work again after I installed Ubuntu on his computer. The modem was basically a rectangular black stick. The only brand it wrote on it was CSL. And when you plugged it in, it showed up as a thumb drive. This was expected behaviour in Windows because then they'd click on the driver installation of the thumb drive. Once the driver is installed it would detect and register the modem. I had no idea what was supposed to be done with it to make it work. Untill I ran `lsusb` to get the vendor &amp;amp; product number. Vendor was 0x1c9e and product was 0x1001. And I actually googled THAT.&lt;br /&gt;&lt;br /&gt;And then I within those pages I found this &lt;a href="http://blog.iklanglobal.com/cara-setting-usb-modem-speedup-su-8300u-di-linux-ubuntu-dengan-telkomsel-flash-unlimitted/"&gt;gem&lt;/a&gt;. The post clued me into a utility called usb-modeswitch which can actually switch the modes of the detected usb device. A search of ubuntu packages I found a deb for &lt;a href="http://packages.ubuntu.com/karmic/usb-modeswitch"&gt;karmic&lt;/a&gt;. Eventhough the computer is Jaunty but it seems the package works. I had to modify the installed /etc/usb_modeswitch.conf and /etc/udev/rules.d/usb_modeswitch.rules so that it would enable the modem device (use the vendor &amp;amp; product number, just uncomment the right one). The udev rules also needed to add so that it would load the usbserial module when it detects the modem. But the problem with Jaunty is that the module is already compiled in and cannot be unloaded and loaded. So I actually had to modify the kernel line in /boot/grub/menu.lst to have 'usbserial.vendor=0x1c9e usbserial.product=0x6061' (the device change from 1001 to 6061) to make it work (according to the notes in a bug report, this behaviour has been reversed. So insyaAllah in Karmic it would be a module once more). So once it detected the modem on ttyUSB0,1,2 I was able to use wvdial to connect to celcom's broadband. Contents of /etc/wvdial.conf is:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;[Dialer Defaults]&lt;br /&gt;Init1 = ATZ&lt;br /&gt;Init2 = ATQ0 V1 E1 S0=0 &amp;amp;C1 &amp;amp;D2 +FCLASS=0&lt;br /&gt;Modem = /dev/ttyUSB0&lt;br /&gt;Phone = *99#&lt;br /&gt;Idle Seconds = 300&lt;br /&gt;Modem Type = Analog Modem&lt;br /&gt;Stupid Mode = 1&lt;br /&gt;Baud = 460800&lt;br /&gt;Auto DNS = 1&lt;br /&gt;Dial Command = ATDT&lt;br /&gt;Ask Password = 0&lt;br /&gt;ISDN = 0&lt;br /&gt;Username = 'Celcom'&lt;br /&gt;Password = 'Celcom'&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;And then to connect to celcom I just had to plug in the modem. And run:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;sudo wvdial&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;And it would connect.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-3477773900421636423?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/3477773900421636423/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=3477773900421636423' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/3477773900421636423'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/3477773900421636423'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2009/08/zerocd-broadband-modem.html' title='ZeroCD broadband modem'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-7422258492010509424</id><published>2009-08-08T20:36:00.000+08:00</published><updated>2009-08-08T20:58:45.362+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='lvm'/><title type='text'>Mounting LVM on external hard disk</title><content type='html'>Uh oh.. Fedora laptop cannot start. Need to copy data out of it. Take out hard disk, put into usb external hard disk adapter and BAM!!! when you try to mount it says:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;mount: unknown filesystem type 'LVM2_member'&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;Alhamdullillah there's google. A quick search and I found this &lt;a href="http://ubuntuforums.org/showthread.php?t=656485"&gt;little gem&lt;/a&gt; which basically says to install the lvm2 package and as root do:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;#pvs&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;which would display the partition lvm, for example:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;  PV         VG   Fmt  Attr PSize  PFree&lt;br /&gt;  /dev/sdb1  R51  lvm2 a-   10.72G     0&lt;br /&gt;  /dev/sdb5  R51  lvm2 a-   26.31G 32.00M&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;And then use the lvdisplay command to show the volumes like so:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;#lvdisplay R51&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;Which would give more greater details about your lvm:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;  LV Name                /dev/R51/home&lt;br /&gt;  VG Name                R51&lt;br /&gt;  LV UUID                VfabJ0-E2hS-HLw4-3Swc-tnkm-SesH-fFxlUB&lt;br /&gt;  LV Write Access        read/write&lt;br /&gt;  LV Status              available&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;And then you should use the LV Name to mount your partition. But... it didn't work for me.. a little bit more googling found this &lt;a href="http://pissedoffadmins.com/index.php?entry=entry070507-105201"&gt;site&lt;/a&gt; which tells you to use the command:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;# lvscan&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;Which would display the state of the LV. And all of mine was inactive. To activate them all do:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;# vgchange -ay&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;And then alhamdullillah the partition was mountable. Fuh.. time to do some backup..&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-7422258492010509424?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/7422258492010509424/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=7422258492010509424' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/7422258492010509424'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/7422258492010509424'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2009/08/mounting-lvm-on-external-hard-disk.html' title='Mounting LVM on external hard disk'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-6767279935458805913</id><published>2009-07-28T00:09:00.000+08:00</published><updated>2009-07-28T01:21:05.451+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='oscc'/><category scheme='http://www.blogger.com/atom/ns#' term='inigo'/><category scheme='http://www.blogger.com/atom/ns#' term='just life'/><title type='text'>Once upon a time...</title><content type='html'>Another chapter of my life closes today. I have been at OSCC for almost 2 years. And those 2 years have brought so much memory of struggle and joy, pain and happiness, friendship and love. From the first time I saw the job on JobStreet I was already thinking, "Yeah, this is what I want to do. Open source for the good of the Malaysian public". Patriotic sentiments were oozing through my pores like sweat after a heavy workout (ok, probably that's not the best metaphor for that.. :P). So I applied and was quite suprised I actually got it.&lt;br /&gt;&lt;br /&gt;Almost immediately once I was in OSCC I got involved with MyMeeting (Version 1 at that time). And before I came to OSCC while working with Abdullah Solutions I was creating my own CMS, here at OSCC I finally had to learn to use Joomla. I hated both products at first. Joomla was confusing and foreign for me. And MyMeeting... well.. MyMeeting was quite a big mess at that time :P. But soon I got used to how Joomla was organized and became more comfortable with it. So comfortable to the point I even though "If one day I was to redo Abdullah Solutions again, I'd just package for my customers Joomla and customize it with some add-on products to meet their needs. It's so much easier than crafting your own each time." And MyMeeting? Well... MyMeeting grew. It grew till it can hit 2.0. We refactored the whole thing to cater for multiple committees using CakePHP as the framework. Now it is something that I'm rather proud about and would recommend to people heartily. And would actually be supportable because of the clean codes. Extensible even to those who can code PHP because it's so easy to follow the logic of the application. JPA did this and I was amazed. I'm not being very modest here but when I saw their demo, it flashed in my heart "Oh my baby have grown.. " :)&lt;br /&gt;&lt;br /&gt;Of my co-workers, what can I say? They are the best team anyone can ask for to work with. We sticked together through rough and easy times, we stayed back late at night working furiously to get the products ready for demo or some other things, we came over on weekends when it was too obvious we could not get the job done on time otherwise. We did what it took and never backed down. And through it all, we were glorious (ok... ok.. I've got to work on my being modest a bit more, I know :P) Seriously, it couldn't have been better. Eavay, Saro, Nuhaa and Mr Foong. I can never find the words to express how much I appreciate what we've all been through together. Thank you. And not only that, I personally consider Eavay and Saro as my students and they have made me proud. :D&lt;br /&gt;&lt;br /&gt;And of course OSCC doesn't consist of only the App Team. The whole of OSCC was one big family. Jacob was almost like a father figure to us. Watching over us as we play our little games of mischief :P. Kak Ct like a mother, so garang but loving and always available to refer to whenever we needed anything (like printing CD's and pamplets :)). Cikgu Haris teaching us things we didn't know and even something extra ;). Fauzi, Nicholas, Ella, Achik, Indhran, Shima, Leen, Eric, Ejat, Yana, Hafiz, Gopi, Kak Aida, Correen, Stanley, Nadia. They've all played their part into making OSCC that magical place where Open Source happens in the Malaysian Government. And not forgetting also the alumni of OSCC, Jamal, Alin, Hisham, Maisarah, Khairil, Firdaus, Amir, Azizul and many others (and there is many of them). I've now also joined their ranks :P. To all from OSCC, thank you.&lt;br /&gt;&lt;br /&gt;But OSCC wouldn't be there if it wasn't for MAMPU. And who else in MAMPU whose name, in regards to Open Source in the government, would stand out like a glorious beacon of light in the middle of a storm if not Madam Tan King Ing? Oh.. so many memories. Oh so many memories... ooooooh... oooooh.. *faints* ( I kid.. I kid.. :P) . Seriously, she was a tough customer. But only because she cared so much to make it the best it can be. Yes, I know a lot of people might argue there's certainly better ways to do that, well.. all I can say is that she can sing Frank Sinatra's "My Waaaaaaaaay" :D. And who could forget her protege, Jaja. Fuh.. now that's a work of art. I have no idea how she handles things the way she does. Balancing all the stuff at work (which she had a lot considering she was Madam's right hand man (woman actually) at that time) with all the stuff in her life. Just read her &lt;a href="http://dazzling948.blogspot.com/"&gt;blogs&lt;/a&gt;. It's amazing. And of course to everyone else at MAMPU too. Ananthi, En Omar, Yana, Joseph, Tn Hj Rosli and many others. You've all made Open Source a serious consideration in the Public Sector. Thank you.&lt;br /&gt;&lt;br /&gt;They say, when one door closes, another one opens. For me, it was more like, one door opened so I close this door. Working at OSCC, I finally met and worked with Khairil. He's a legend. An open source rock star :D. And when he asked me would I like to join Inigo and make it the BEST open source company on this side of the globe (well he didn't actually word it that way but that's the impression I got.. :P)  I immediately said YES... :D So that's where I'm going off to. Making Inigo the BEST open source company on this side of the globe and maybe even more. So I quit OSCC not because I loved it any less, but because I loved Inigo even more. And so I ride off into the sunset (actually it was already dark when I rode home)&lt;br /&gt;&lt;br /&gt;Opens a new chapter...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-6767279935458805913?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/6767279935458805913/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=6767279935458805913' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/6767279935458805913'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/6767279935458805913'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2009/07/once-upon-time.html' title='Once upon a time...'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-2382284554936478961</id><published>2009-07-17T21:51:00.000+08:00</published><updated>2009-07-17T22:09:17.048+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='reading'/><category scheme='http://www.blogger.com/atom/ns#' term='just life'/><title type='text'>More reading</title><content type='html'>Last weekend my family went to my in-laws. Because there is no comfortable working space there, I did not bother to bring my laptop along so I have quite a lot of time on my hands. Alhamdullillah I brought along and finished a book. It's title was "The Darkeing Sea" by Alexander Kent. It's written there on the cover, "The Master Storyteller of the Sea". Now I'm not much of a sea adventure fan, but decided I'd give it a try when I saw it at Carrefour last week. Especially one written by the "master storyteller". Well... I didn't enjoy it as much as "The Isle of Joy" but it was pretty enjoyable. And Alexander Kent being the "master storyteller of the sea", the details given were quite.... well.. detailed. Specific name of types of ships and all their parts and how the crew worked them. It is quite impressive I guess if I was a fan of ships and sea adventure.&lt;br /&gt;&lt;br /&gt;The story revolves much around a certain Vice-Admiral Sir Richard Bolitho. Set in the year 1809, Britain was at war with France. In the midst of things even America got involved and the British trade route was at stake. It was up to Sir Richard Bolitho to make sure of it's safety. It was quite interesting to read how battle on the high seas was done. The decision and maneuvering involved. Quite interesting.&lt;br /&gt;&lt;br /&gt;A few nights ago I went to Carrefour again to do a bit of shopping and realized the second hand books pile was left only 1 (before this there was 2) and now the price is only RM 3 (before this was RM 5). So bought another 2 books. Would write about it later once I finally get round to finishing it.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-2382284554936478961?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/2382284554936478961/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=2382284554936478961' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/2382284554936478961'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/2382284554936478961'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2009/07/more-reading.html' title='More reading'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-5730301297912812579</id><published>2009-07-09T18:01:00.000+08:00</published><updated>2009-07-09T18:11:45.430+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='hostname'/><category scheme='http://www.blogger.com/atom/ns#' term='email'/><category scheme='http://www.blogger.com/atom/ns#' term='python'/><title type='text'>Sending out email by python gaierror</title><content type='html'>I had to debug an instance of Plone that had an error to send out email today. First there was the whole problem with configuring sendmail to properly relay email. Finally I gave up, uninstalled sendmail and installed postfix.. :D Once I've verified the server can actually send email out, the problem still persist. It came to my mind that since the program (Plone) itself can send out email on other machines, it must be something else specific to that machine. Maybe python itself cannot send out email from that machine. So a quick google and I &lt;a href="http://love-python.blogspot.com/2008/08/how-to-send-email-from-python-script.html"&gt;copied the code&lt;/a&gt; to send email out using python. It gave out the error more verbosely:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;Traceback (most recent call last):&lt;br /&gt;  File "tryemail.py", line 24, in ?&lt;br /&gt;    server = smtplib.SMTP(SERVER)&lt;br /&gt;  File "/usr/lib/python2.4/smtplib.py", line 258, in __init__&lt;br /&gt;    addr = socket.gethostbyname(socket.gethostname())&lt;br /&gt;socket.gaierror: (-2, 'Name or service not known')&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;Googling some more and I found this &lt;a href="http://coding.derkeiler.com/Archive/Python/comp.lang.python/2007-08/msg03198.html"&gt;thread&lt;/a&gt; which basically says that python smtplib requires the hostname to be resolvable to send out email. So after some more googling (don't you just love google? :P) I found out how to change the &lt;a href="http://sysdigg.blogspot.com/2008/01/how-to-change-hostname-in-linux.html"&gt;hostname&lt;/a&gt;. So basically you need to change the HOSTNAME setting in /etc/sysconfig/network. But that requires a reboot. To avoid reboot just echo the hostname into /proc/sys/kernel/hostname. Finally. Now it's all done.. :)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-5730301297912812579?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/5730301297912812579/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=5730301297912812579' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/5730301297912812579'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/5730301297912812579'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2009/07/sending-out-email-by-python-gaierror.html' title='Sending out email by python gaierror'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-4562024002007302512</id><published>2009-07-07T19:05:00.001+08:00</published><updated>2009-07-07T19:27:12.265+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='just life'/><title type='text'>I am Caine, I will help you...</title><content type='html'>Waaaaaaah... I haven't felt like this for so long. What feeling am I talking about? You know when you read those Kung Fu comics and the masters meet up in a lone path in the valley and as they pass each other they both know, "He's a master of his craft". Last time I felt this way was when &lt;a href="http://kaeru.my/"&gt;kaeru &lt;/a&gt;was still a "Marketing" manager at OSCC. Now my replacement at OSCC is able to give off that kind of vibe, I know OSCC is in good hands.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;His name is Chang Phui Hock or just "pH" as he likes to be called. He's well versed in Java &amp;amp; Python. I know he must be pretty good but wasn't sure how good he really was. Until today. We were doing some modifications to the TaskManager this afternoon. First thing I noticed, this guy is quick. I didn't need to explain much, he's already got it and doing it. That is already pretty cool. Then while editing the files I saw it... his vim-foo was better than mine. OMG!!! He was editing the files like a beatiful dance, and fixing the tabs and spacings with grace and speed I've never seen before. I was awe struck. Okay... so maybe this is too early an assessment just based on his competence on using my favourite editor, but just seeing him work it dawned on me that "This is a master of his craft".&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-4562024002007302512?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/4562024002007302512/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=4562024002007302512' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/4562024002007302512'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/4562024002007302512'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2009/07/i-am-caine-i-will-help-you.html' title='I am Caine, I will help you...'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-8960700331005926383</id><published>2009-07-04T00:10:00.000+08:00</published><updated>2009-07-07T19:27:52.918+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='reading'/><category scheme='http://www.blogger.com/atom/ns#' term='just life'/><title type='text'>Reading</title><content type='html'>I haven't read a good fiction for a long time. It was the 'usual resistance' (tm) like I'm too busy, I have no time, I've got better things to do and stuff. But last week I've finally decided enough is enough. I've got to get a more balanced and less (much less) critical view of my life. So I picked up a book at Carrefour for 5 Ringgit (LOL... even then I didn't want to invest too much into something which I considered as 'a waste of my time'). The book was 'Isle Of Joy' by Don Winslow. It was only 296 pages but took me a week to finish. Just last night I've finally finished it.&lt;br /&gt;&lt;br /&gt;The book is about a Private Investigator by the name of William Withers who was assigned as a body guard for the young presidential hopeful Senator Joe Keneally. Things went wrong and the Senator's girlfriend got killed and everyone was trying to pin it on Withers. With his cool charm and sharp wit he handled it all. The book started off pretty slow at first. But once it picked up pace it was a very nice read.&lt;br /&gt;&lt;br /&gt;But what I actually liked most was the effect of reading the book on me. I haven't exercised my imagination for quite a long time. And to see the action in the eyes of my mind (as compared to the eyes in my head), it was great. It made me more relaxed as my mind loosened and didn't grip too much on whatever problems I was working on. And I think this is actually important and rather than being a 'waste of my time', it was a pretty 'good use of my time'. Not sure when I might just pick up another random book to start reading, but I'm hoping it'd been soon.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-8960700331005926383?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/8960700331005926383/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=8960700331005926383' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/8960700331005926383'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/8960700331005926383'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2009/07/reading.html' title='Reading'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-7783552859516109903</id><published>2009-06-20T23:30:00.000+08:00</published><updated>2009-06-21T07:09:55.882+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='chromium'/><category scheme='http://www.blogger.com/atom/ns#' term='google'/><title type='text'>Testing out Chromium</title><content type='html'>Finally I had time to install the AUR version of &lt;a href="http://aur.archlinux.org/packages.php?ID=26425"&gt;Chromium&lt;/a&gt; from the Chromium linux build. And it is running ever so sweetly on my Arch Linux... :D Been waiting for this for such a long time. Now it's not even close to being complete yet but it is usable enough for just normal browsing the web. The biggest thing not done yet? Flash... Yup.. No youtube or even fancy in browser multiple file select upload for flickr. Not yet anyway. But apart from that it's GREAT!!! :D&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.flickr.com/photos/abdzah/3644245822/" title="Chromium by Abdullah Zainul Abidin, on Flickr"&gt;&lt;img src="http://farm3.static.flickr.com/2426/3644245822_eb5ec42e1e.jpg" width="500" height="174" alt="Chromium" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Of course I had to try the standard fare. Gmail &amp;amp; GDocs of course works flawlessly. I was even able to login to Maybank2u (yup.. full https here baby. Not like if you run it under wine). And facebook works too. Normal browsing of web pages and planets of course work. Even dragging out the tab works. That was very-very cool. Only thing is that if you have 2 windows open, and one of them have only 1 tab, don't drag that single tab out to the next window. It would not close it gracefully yet and crash the whole thing. Bookmark manager doesn't seem to show anything for now (I guess not implemented yet). But you can already import all your bookmarks from Firefox. And that's good enough for me to make this the browser of choice for normal web browsing. Of course Firefox would still be my favourite for dev work mainly because of Firebug and of course in Firefox you can watch youtube.. :P&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Some of the other quirks that I can really feel is the whole dragging text and middle click paste and all doesn't work. But that's pretty minor. You can still right click copy paste. All in all it's pretty fast pretty nice looking. Good job Google (as if they need me to tell them that.. :P).&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-7783552859516109903?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/7783552859516109903/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=7783552859516109903' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/7783552859516109903'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/7783552859516109903'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2009/06/testing-out-chromium.html' title='Testing out Chromium'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://farm3.static.flickr.com/2426/3644245822_eb5ec42e1e_t.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-622993784337421229</id><published>2009-06-16T11:54:00.000+08:00</published><updated>2009-06-16T17:01:05.785+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Plone'/><category scheme='http://www.blogger.com/atom/ns#' term='buildout'/><category scheme='http://www.blogger.com/atom/ns#' term='python'/><category scheme='http://www.blogger.com/atom/ns#' term='zope'/><title type='text'>Buildout with python2.4</title><content type='html'>I've got to write this down before I forget. With the newer distros, python 2.5 or 2.6 is the default python version of choice. But plone and zope currently still use python 2.4. And if you want buildout goodness you have to get buildout working with python 2.4. So if you're on ubuntu, first install these packages:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;python2.4&lt;br /&gt;python2.4-dev&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;And then google for &lt;a href="http://peak.telecommunity.com/dist/ez_setup.py"&gt;ez_setup.py&lt;/a&gt;. Download it. Then run in your terminal:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;abdullah@codebase:/$ sudo python2.4 ez_setup.py&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;That would install the 2.4 version of easy_install. Then to install buildout you just have to do like so:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;abdullah@codebase:/$ sudo easy_install-2.4 zc.buildout&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;That would install buildout into your system. And then inside your plone or zope folder run:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;abdullah@codebase:~/taskmanager$ buildout init&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;That would create a local instance of buildout for you to run specifically for your app. All eggs will be downloaded into that folder and would not pollute your system. To run the app specific buildout just do a :&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;abdullah@codebase:~/taskmanager$ bin/buildout -vvvv&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;That would run the local buildout. I just like it very very very very verbose.. :P&lt;br /&gt;&lt;br /&gt;update: Sarogini found a link which deals with the problem of developing plone on ubuntu 9.04 in a more comprehensive manner &lt;a href="http://www.starzel.de/blog/developing-plone-on-ubuntu-9-04-with-virtualenv"&gt;here&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-622993784337421229?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/622993784337421229/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=622993784337421229' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/622993784337421229'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/622993784337421229'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2009/06/buildout-with-python24.html' title='Buildout with python2.4'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-6378365628589389438</id><published>2009-06-06T06:12:00.000+08:00</published><updated>2009-06-06T06:30:58.203+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='midori'/><category scheme='http://www.blogger.com/atom/ns#' term='web browser'/><title type='text'>More browsers</title><content type='html'>As a web application developer, one of the more annoying things that have to be done is to test out workflow and permissions of the system, thus requiring to login as one user, do a certain action, then login as another user, do whatever action that other user can now do. This is extremely tedious if you are only using 1 web browser since even though you can open many windows or many tabs, they will share the same cache and thus login only 1 user per site. So I like installing many web browsers and running them at the same time being logged in as different users.&lt;br /&gt;&lt;br /&gt;Usually I like the other browsers pretty light because I just need the basics. So the alternative browser of choice is usually epihany. But recently I stumbled upon this &lt;a href="http://scottnesbitt.net/ubuntublog/?p=455"&gt;article&lt;/a&gt; which talked about the &lt;a href="http://www.twotoasts.de/index.php?/pages/midori_summary.html"&gt;midori&lt;/a&gt; web browser. I immediately installed it and tried it out. It is very fast and very light. Flash sites like youtube works. Even heavy ajax sites like gmail, gdocs and facebook works. And most importantly, maybank2u works too.. :)&lt;br /&gt;&lt;br /&gt;So now I've got a new favourite alternative browser..&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-6378365628589389438?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/6378365628589389438/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=6378365628589389438' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/6378365628589389438'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/6378365628589389438'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2009/06/more-browsers.html' title='More browsers'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-5624568452961433066</id><published>2009-06-05T21:18:00.001+08:00</published><updated>2009-06-05T21:39:33.535+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='osdc.my'/><category scheme='http://www.blogger.com/atom/ns#' term='conference'/><category scheme='http://www.blogger.com/atom/ns#' term='meetup'/><title type='text'>Things have been happening</title><content type='html'>A lot of things have been happening lately. This week tops it off with the MSC Open Source Conference (&lt;a href="http://www.mscmalaysia.my/article/open+Source+Conference/open+Source+Conference"&gt;mscosconf&lt;/a&gt;). I was there for only 1 day (monday) but really felt the open source scene was coming alive here in Malaysia. Open Malaysia blogged about it &lt;a href="http://www.openmalaysiablog.com/2009/05/mscosconf.html"&gt;already&lt;/a&gt;. And since I wasn't involved very much with it, I'll just leave it at that I am very happy with the overall direction we're going in Malaysia in regards to open source and hope that it will only get better and better (prep yourselves for foss.my 2009 and MyGOSSCON 2009.. Coming soon and it's gonna ROCK.. :D )&lt;br /&gt;&lt;br /&gt;I was lucky enough to also be around for the lauching of OSDC.my dinner. Tun M was there and everything (first time I've seen him 'live' in person so that was fun). I'm not sure yet exactly what's the direction that osdc.my is going to take. Again I hope it would be successful at gathering the strength of all the various open source developers community we have here in Malaysia (you know, the whole single straw and many straw thing).&lt;br /&gt;&lt;br /&gt;I was also fortunate enough to be able to join this month foss.my meetup at MSC Malaysia Cybercentre - Incubation Centre, KL Sentral. Talk about google's use of python by Anthony Baxter. That was very fun. Yay for python.. \o/ Shame that I was pretty tired and blur blur at that time till I wasn't able to ask any questions or participate much in the discussions. But it was still great fun.&lt;br /&gt;&lt;br /&gt;So now it's already the end of the week. I'm taking some time out for a while writing out this blog and just chillin out. Things have been pretty hectic lately and I fully expect things to get much more worse before it get better.&lt;br /&gt;&lt;br /&gt;/me praying for the best...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-5624568452961433066?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/5624568452961433066/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=5624568452961433066' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/5624568452961433066'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/5624568452961433066'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2009/06/things-have-been-happening.html' title='Things have been happening'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-9102386085510705840</id><published>2009-05-08T10:38:00.000+08:00</published><updated>2009-05-08T10:45:55.097+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OpenOffice'/><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu'/><title type='text'>Installing OpenOffice 3.1.0</title><content type='html'>Finally there is a need for me to actually install the latest version of OpenOffice.org. To do it first install the &lt;a href="https://launchpad.net/%7Eopenoffice-pkgs/+archive/ppa"&gt;ppa&lt;/a&gt; by adding the following lines to your /etc/apt/sources.list:&lt;br /&gt;&lt;pre id="sources-list-entries"&gt;deb &lt;a href="http://ppa.launchpad.net/openoffice-pkgs/ppa/ubuntu"&gt;http://ppa.launchpad.net/openoffice-pkgs/ppa/ubuntu&lt;/a&gt; &lt;span id="series-deb"&gt;hardy&lt;/span&gt; main&lt;br /&gt;deb-src &lt;a href="http://ppa.launchpad.net/openoffice-pkgs/ppa/ubuntu"&gt;http://ppa.launchpad.net/openoffice-pkgs/ppa/ubuntu&lt;/a&gt; &lt;span id="series-deb-src"&gt;hardy&lt;/span&gt; main&lt;br /&gt;&lt;/pre&gt;And then you need to get the key for that ppa by running the command:&lt;br /&gt;&lt;pre&gt;sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 0xd2bb86e0ebd0f0a43d4db3a760d11217247d1cff&lt;br /&gt;&lt;/pre&gt;After that a quick update to update the list of packages:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;sudo apt-get update&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;And then I actually had to remove my old OpenOffice manually because it refused to upgrade it when I ran:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;sudo apt-get upgrade&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;So to remove the old OpenOffice I did:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;sudo apt-get remove --purge openoffice.org&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;And only after that I installed it again:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;sudo apt-get install openoffice.org&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;Now it's ready to be tried out. Hope it all works.&lt;br /&gt;&lt;br /&gt;p/s: Yeah. I'm still on Hardy. You should change that for you ppa if you are using intrepid or jaunty.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-9102386085510705840?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/9102386085510705840/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=9102386085510705840' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/9102386085510705840'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/9102386085510705840'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2009/05/installing-openoffice-310.html' title='Installing OpenOffice 3.1.0'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-8910272319000500134</id><published>2009-05-04T09:36:00.000+08:00</published><updated>2009-05-04T09:58:40.051+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='open source'/><category scheme='http://www.blogger.com/atom/ns#' term='915'/><category scheme='http://www.blogger.com/atom/ns#' term='conference'/><category scheme='http://www.blogger.com/atom/ns#' term='kms'/><title type='text'>Just some thoughts</title><content type='html'>April 24th was the date of my last post. That means I have officially missed last week. Didn't post anything at all. So in the end it's lucky when I actually get to write something once a week. At least that would keep my writing skill in practice.&lt;br /&gt;&lt;br /&gt;So what have I been up to all this time? Well, around two weeks ago I actually got to try KMS (kernel mode setting). High resolution terminal from the beginning FTW!!!. No flicker at all when logging into X and it even seems a whole lot faster too. But in the end I opt out because it requires acceleration to be enabled and when I do that, my poor onboard 915 display card just couldn't cope with anything beyond 2048x2048. I needed 2300x800 to stretch over two monitors to be able to work productively so I had to disable it.&lt;br /&gt;&lt;br /&gt;Apart from that there wasn't much else about open source that's worth while mentioning. Oh yeah... there was the buzz about the MSC Malaysia OSCONF 2009. You can check it out more &lt;a href="http://www.mscmalaysia.my/article/open+Source+Convention/open+Source+Convention"&gt;here&lt;/a&gt; and &lt;a href="http://www.mscoscon.my/"&gt;here&lt;/a&gt;. Kinda ironic for me actually the whole thing. Because (and this is from my personal point of view since working at oscc) I was first exposed to Open Source conference by the government of Malaysia with &lt;a href="http://mygosscon.oscc.org.my/"&gt;MyGOSCON&lt;/a&gt; 2007. Then there was the very cool and very happening community conference &lt;a href="http://Foss.my"&gt;Foss.my&lt;/a&gt; 2008 (which was held just a few days after MyGOSCON 2008 -  the second government conference). And now coming into the ring, conference by the business community.. jeng.. jeng.. jeng.. &lt;a href="http://www.mscmalaysia.my/article/open+Source+Convention/open+Source+Convention"&gt;OSCONF&lt;/a&gt; 2009. And the community seems to be buzzing about geekcamp too around that time. So looks like the open source scenario in Malaysia is coming alive with activity. I like this.. :D  Change is coming.. :)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-8910272319000500134?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/8910272319000500134/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=8910272319000500134' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/8910272319000500134'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/8910272319000500134'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2009/05/just-some-thoughts.html' title='Just some thoughts'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-1408265588034883182</id><published>2009-04-24T15:29:00.000+08:00</published><updated>2009-04-24T15:49:00.175+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Plone'/><category scheme='http://www.blogger.com/atom/ns#' term='buildout'/><title type='text'>Configuring webdav and effective user in plone-buildout</title><content type='html'>If you installed Plone 3.x from their universal installer, there is a default buildout.cfg provided. Edit this to installed cool additional packages and just run `bin/buildout`. It will download whatever you need and then ready to be up and running again. The buildout will override your zope.conf so if you want any settings to persist in your zope.conf it should be put into your buildout.cfg.&lt;br /&gt;&lt;br /&gt;Inside the buildout.cfg there is section for client1 and client2 if you installed the default cluster settings. So to configure the effective user for client1 (so that root can start the instance) you should add:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;effective-user = plone&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;in the client1 section. And inside client2 section you can just add:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;effective-user = ${client1:effective-user}&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;so that you don't have to edit at 2 places later. And do you want to enable webdav with that? Then just add:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;zope-conf-additional =&lt;br /&gt;                       enable-ms-author-via on&lt;br /&gt;                       &amp;lt;webdav-source-server&amp;gt;&lt;br /&gt;                       address localhost:1980&lt;br /&gt;                       force-connection-close off&lt;br /&gt;                       &amp;lt;/webdav-source-server&amp;gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;in the client sections. All done.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-1408265588034883182?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/1408265588034883182/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=1408265588034883182' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/1408265588034883182'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/1408265588034883182'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2009/04/configuring-webdav-and-effective-user.html' title='Configuring webdav and effective user in plone-buildout'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-3961385653813480266</id><published>2009-04-15T10:21:00.001+08:00</published><updated>2009-04-15T10:49:42.457+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='writing'/><title type='text'>The art of writing</title><content type='html'>I've always considered myself more of a coder than a documenter (if there is such a word). I like writing codes but I hate writing about them. I do write about it once in a while in a blog or something if it's something especially hard and I might have to refer about doing it again but usually I'll just file it in my head as "ooooh.. I can look it up later if I REALLY need it". So some of the stuff that I really hate to write up are user manuals and requirement specs.&lt;br /&gt;&lt;br /&gt;Now I've been burned enough times to know that requirement specs are really crucial to a successful software project. If the user does not know what they want, then you'll soon be sucked into the black hole of "user wants" pretty soon and it would take a whole lot of thick face justifying yourself just to save your sanity much less the project. But even then, I'm still very much unmotivated to do it. One of the reasons is that it is so bland and boring. Boring to write, boring to read. And finally nobody would refer to it. But recently I &lt;a href="http://www.joelonsoftware.com/articles/fog0000000033.html"&gt;read&lt;/a&gt; that you should strive to make it enjoyable to read. Maybe even funny. And I was awestruck. A funny user requirement specs, that'd be awesome. :)&lt;br /&gt;&lt;br /&gt;If you know me personally, I think you'd agree I try very very hard to be funny. Is it difficult to be funny? Hmmm.. I practice a lot and still sometimes it's just flat out come out flat. So I guess it's pretty hard. But you know what's even harder? Just becoming consistent in the discipline of writing. Ok.. maybe for me at least, being consistent in being disciplined in anything at all.. :P&lt;br /&gt;&lt;br /&gt;I have this blog right here, and I retain the rights to say whatever I want on it, and I could practice my writing skills every single day if I wanted to, but I know that would never happen (yeah... I hear your sighs of relieve for not needing to read my rants everyday). Because I know I'd never be able to stick to it. Maybe once a week, maybe, but anything more than that would be nigh impossible.&lt;br /&gt;&lt;br /&gt;You know what's another funny thing about writing in blogs? I used to write without a care in the world because I know nobody is going to read it. But since I know people know of it, and read it, and some even kind enough to leave comments in it, my mindset changed. I write as if I'm writing for an audience. Oh I know it's all my fault, that it is all in my mind, but I can't help it. That's how I feel about it. I don't think it's a bad thing, only that it sometimes makes me take a longer time to write it up. I think more about the words and composition, think more about how the references have to be right, think more about making it acceptable. So in the end, all the speed you get practicing touch typing for hours and hours becomes moot because you just sit there in front of the monitor for 5 minutes to write a single sentence. Of course once the idea comes rampaging through you're glad you can type pretty fast, but most of the time, you're no faster than a 'hunt and peck'er. Oh well... that's all for now I guess. See you again next week, same time, same place.. ta.. ta.. :D&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-3961385653813480266?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/3961385653813480266/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=3961385653813480266' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/3961385653813480266'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/3961385653813480266'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2009/04/art-of-writing.html' title='The art of writing'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-4928886306654080419</id><published>2009-04-11T07:52:00.000+08:00</published><updated>2009-04-11T08:06:00.943+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='arch'/><category scheme='http://www.blogger.com/atom/ns#' term='fedora'/><category scheme='http://www.blogger.com/atom/ns#' term='distro'/><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu'/><title type='text'>Joke's on you</title><content type='html'>I'm a Fedora ambassador, I recommend people to use Ubuntu, but I myself use Arch Linux. I'm not sure what that makes me.. :P But I love using Arch. It is lean, mean and geared towards the more tinkering inclined in the sense that almost everything is default and you have to hand configure yourself... with a text editor :D&lt;br /&gt;&lt;br /&gt;So it was really sad for me last week to read that they are going to &lt;a href="http://www.archlinux.org/news/440/"&gt;drop support for the i686&lt;/a&gt;. For a whole week I was contemplating which distro would I go to now? I really like Arch's way of a rolling update. Not waiting for a certain dateline but get the newest thing as soon as it's ready. But after reading that news I am concerned because I don't think my laptop support x86_64 (Haven't tried it yet though, but it's a really old laptop). And not only that, if one day I am fortunate enough to get myself a netbook of my own, I doubt those small atomic chips support 64bit either. So where should I go? My choice was 2. Fedora or Ubuntu. I haven't tried the latest (Fedora 10 and Ubuntu 8.10) but heard they have quite a lot of great new stuff. Fedora 10 even boots faster too. I'm still contemplating...&lt;br /&gt;&lt;br /&gt;Then today I read &lt;a href="http://www.archlinux.org/news/441/"&gt;this news&lt;/a&gt;. I was dumb struck. It's all an april fools joke? Wow.. they even mentioned about it in the forums and everything. I really thought it was real. But I'm glad it's not... :D So now I can be rest assured I can still use my favourite distro for quite a long while to come. I'm such an idiot.. :P Kudos to all the Arch Linux dev for pulling off such a convincing trick. And next time I'll be more careful to wait for a few days to confirm news heard on the 1st of April.. :D&lt;br /&gt;&lt;br /&gt;So finally I guess the joke's on me.. :)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-4928886306654080419?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/4928886306654080419/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=4928886306654080419' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/4928886306654080419'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/4928886306654080419'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2009/04/jokes-on-you.html' title='Joke&apos;s on you'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-3780130521904066263</id><published>2009-03-14T14:04:00.000+08:00</published><updated>2009-03-14T14:07:40.378+08:00</updated><title type='text'>Starting a script after NetworkManager</title><content type='html'>I need to access a VPN. But to be able to start the VPN I need a network connection. How to know when NetworkManager has already created your connection? By refering to here, you can add scripts into the /etc/NetworkManager/dispatcher.d to be run by network manager everytime an interface go up or down.&lt;br /&gt;&lt;code&gt;&lt;br /&gt;#!/bin/bash&lt;br /&gt;&lt;br /&gt;IF=$1&lt;br /&gt;STATUS=$2&lt;br /&gt;&lt;br /&gt;if [ "$STATUS" = "up" ]; then&lt;br /&gt;    /etc/rc.d/openvpn start&lt;br /&gt;else&lt;br /&gt;    /etc/rc.d/openvpn stop&lt;br /&gt;fi&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;So that openvpn will start straight away whenever any interface (IF) has the status up.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-3780130521904066263?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/3780130521904066263/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=3780130521904066263' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/3780130521904066263'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/3780130521904066263'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2009/03/starting-script-after-networkmanager.html' title='Starting a script after NetworkManager'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-8720942996990167860</id><published>2009-02-19T08:15:00.000+08:00</published><updated>2009-02-19T08:39:04.103+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='birthday'/><category scheme='http://www.blogger.com/atom/ns#' term='disaster'/><title type='text'>Lesson learned</title><content type='html'>Sometimes I just wonder, am I an idiot or just stupid. Last night was so bad I feel I've got to write something about it so that I'll never forget and repeat the same mistake again.&lt;br /&gt;&lt;br /&gt;Yesterday was my birthday, and my lovely wife decided she wants to take me out for dinner. When I asked where, she asked me to choose. My first mistake, I didn't decide something that I KNOW would be good. I'm not a choosy eater. I eat almost anything that's halal (almost.. things like tapai and tempoyak have a way of making me not really want to eat them.. :P). So anything like going to Nandos, Kenny Rogers, Pizza Hut, McDonanlds or even the Utama restaurant at Desa Serdang would have all been good. But I was undecided. Rather than picking something I know I like I said 'Why don't we drive around at Bangi and see what might be good to eat?'. And since she's adamant about me choosing the place she accepted the idea. Why I didn't choose anything that I already know I'll like? I have no idea.. Maybe wanted something different?&lt;br /&gt;&lt;br /&gt;So anyway we ended up going to this restaurant called 'Selatern &amp;amp; Western'. I saw the shop around a year ago and it was pretty empty then but of course that shop lot just opened so maybe there wasn't much customers yet. But when we came there yesterday it was pretty empty still, that should have sent me a warning like a shot to the head. But did I heed that warning? Oh no.. I thought lets give it a chance... (maybe I'm just a hopeless optimist?).&lt;br /&gt;&lt;br /&gt;Then when we decided to order my wife asked our waiter "What's the oriental squid?" and guess what his answer was? "I don't know. I've just worked here. Sometimes reading the menu even I don't know what's on it". I should have walked out there and then. I really should have. So after looking up at the menu I decided to order Set B (it was something like siakap 3 rasa, ayam goreng kunyit, kangkong belacan, tomyam) but the set was for 2 pax. There was 4 of us. So I said to the guy we want portions for 4 pax but only 1 fish. Lucky my wife persuaded me to go check out the order again at the kitchen because that guy didn't understand a thing and might have actually gave us everything double (including 2 fish rather than 1). So much bother. At that time the realization of my mistake started to dawn but I was too chicken shit to walk out since I've already ordered.&lt;br /&gt;&lt;br /&gt;Then the food came. The food wasn't all that good. And the worst part was that the watermelon juice was already turning a bit sour. Uh oh.. My heart was breaking. My poor wife basically wasted her money completely. None of us enjoyed the food. Fatimah even threw up because she chocked on a piece of chicken (granted that's our own fault for giving her too big a piece but we didn't realize it then because we were kinda depressed by then). And by this morning we all had stomach ache.&lt;br /&gt;&lt;br /&gt;What a night.. :(&lt;br /&gt;Happy birthday to me.. happy birthday to me.. happy birthday damn lucky guy with a nice wife.. happy birthday to me...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-8720942996990167860?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/8720942996990167860/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=8720942996990167860' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/8720942996990167860'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/8720942996990167860'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2009/02/lesson-learned.html' title='Lesson learned'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-8073576657561239690</id><published>2009-01-11T19:13:00.000+08:00</published><updated>2009-01-11T19:24:13.774+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='dosemu'/><category scheme='http://www.blogger.com/atom/ns#' term='intrepid'/><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu'/><title type='text'>Running dosemu in Ubuntu Intrepid</title><content type='html'>dosemu is a great little program to use to keep all those old legacy dos programs you might still use running even in this modern day and age. But in Ubuntu 8.10 (or Xubuntu 8.10 for that matter), running `dosemu` right after installation will give a&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;LOMRAM mmap: Invalid argument&lt;br /&gt;Segmentation fault&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;error. Based on the steps written &lt;a href="https://bugs.launchpad.net/ubuntu/+source/dosemu/+bug/216398"&gt;here&lt;/a&gt;, you need to edit (with sudo of course) the file '/etc/sysctl.d/90-low-memory-access.conf' (the file might not exist yet, so just create it if it doesn't exist) and add in the line:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;vm.mmap_&lt;wbr&gt;min_addr=&lt;wbr&gt;0&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;and then run&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;sudo invoke-rc.d procps start&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;Then you are all set. Now you can even run those old dos games of your misty youth or even some old dbase accounting programs if that's what you're into.. ;)&lt;br /&gt;&lt;br /&gt;Oh yeah.. and another thing, printing works almost out of the box. Configure your ubuntu box with a default printer and even 'shift-print screen' will work. How cool is that? :D&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-8073576657561239690?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/8073576657561239690/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=8073576657561239690' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/8073576657561239690'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/8073576657561239690'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2009/01/running-dosemu-in-ubuntu-intrepid.html' title='Running dosemu in Ubuntu Intrepid'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-1521623820506839471</id><published>2009-01-10T23:31:00.000+08:00</published><updated>2009-01-10T23:36:13.663+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='urxvt'/><category scheme='http://www.blogger.com/atom/ns#' term='tabs'/><title type='text'>Tabs in urxvt</title><content type='html'>Finally had it with opening with so many urxvt windows, I finally googled for 'urxvt tabs' and found &lt;a href="http://princ3.wordpress.com/2006/10/01/unicode-terminal-with-tabs-support/"&gt;http://princ3.wordpress.com/2006/10/01/unicode-terminal-with-tabs-support/&lt;/a&gt;. It is only a minimalistic tab (you can't move it around or anything) but it's all that I need. Just run 'urxvt -pe tabbed' and you're good to go. Press Ctrl-Shift-Down Arrow to create a new tab, Ctrl-Shift-Left and Ctrl-Shift-Right to move to previous and next tab. Simple.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-1521623820506839471?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/1521623820506839471/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=1521623820506839471' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/1521623820506839471'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/1521623820506839471'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2009/01/tabs-in-urxvt.html' title='Tabs in urxvt'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-4696766831903008257</id><published>2009-01-09T23:06:00.000+08:00</published><updated>2009-01-09T23:07:00.222+08:00</updated><title type='text'>As the Arabs see the Jews: His Majesty King Abdullah, The American Magazine, November 1947</title><content type='html'>This e-mail was forwarded to me from a friend. It is most enlightening&lt;br&gt;considering the current situation in Palestine.&lt;br&gt;---------------------------------------------------------------------------------------------------------------&lt;p&gt;Hi guys,&lt;p&gt;In light of the recent Gaza invasion by the Israeli Armies, I would&lt;br&gt;like to share with you a letter originally written by King Abdullah,&lt;br&gt;grandfather to King Hussein, the present King of Jordan.&lt;p&gt;I have decided in my conscious mind to forward this mail to you&lt;br&gt;regardless your religion, nationality nor creed.&lt;p&gt;This piece of thought provoking letter is rather long to read, having&lt;br&gt;read it myself I find that it is absolutely worth more than your&lt;br&gt;average tea time. This Article is sourced from&lt;br&gt;&amp;lt;&lt;a href="http://www.kinghussein.gov.jo/kabd_eng.html"&gt;http://www.kinghussein.gov.jo/kabd_eng.html&lt;/a&gt;&amp;gt;&lt;p&gt;*******************************************************&lt;p&gt;Summary&lt;p&gt;This fascinating essay, written by King Hussein&amp;#39;s grandfather King&lt;br&gt;Abdullah, appeared in the United States six months before the 1948&lt;br&gt;Arab-Israeli War. In the article, King Abdullah disputes the mistaken&lt;br&gt;view that Arab opposition to Zionism (and later the state of Israel)&lt;br&gt;is because of longstanding religious or ethnic hatred. He notes that&lt;br&gt;Jews and Muslims enjoyed a long history of peaceful coexistence in the&lt;br&gt;Middle East, and that Jews have historically suffered far more at the&lt;br&gt;hands of Christian Europe. Pointing to the tragedy of the holocaust&lt;br&gt;that Jews suffered during World War II, the monarch asks why America&lt;br&gt;and Europe are refusing to accept more than a token handful of Jewish&lt;br&gt;immigrants and refugees. It is unfair, he argues, to make Palestine,&lt;br&gt;which is innocent of anti-Semitism, pay for the crimes of Europe. King&lt;br&gt;Abdullah also asks how Jews can claim a historic right to Palestine,&lt;br&gt;when Arabs have been the overwhelming majority there for nearly 1300&lt;br&gt;uninterrupted years? The essay ends on an ominous note, warning of&lt;br&gt;dire consequences if a peaceful solution cannot be found to protect&lt;br&gt;the rights of the indigenous Arabs of Palestine.&lt;p&gt;*************************************************************************&lt;p&gt;&amp;quot;As the Arabs see the Jews&amp;quot;&lt;br&gt;His Majesty King Abdullah,&lt;br&gt;The American Magazine&lt;br&gt;November, 1947&lt;p&gt;I am especially delighted to address an American audience, for the&lt;br&gt;tragic problem of Palestine will never be solved without American&lt;br&gt;understanding, American sympathy, American support.&lt;p&gt;So many billions of words have been written about Palestine—perhaps&lt;br&gt;more than on any other subject in history—that I hesitate to add to&lt;br&gt;them. Yet I am compelled to do so, for I am reluctantly convinced that&lt;br&gt;the world in general, and America in particular, knows almost nothing&lt;br&gt;of the true case for the Arabs.&lt;p&gt;We Arabs follow, perhaps far more than you think, the press of&lt;br&gt;America. We are frankly disturbed to find that for every word printed&lt;br&gt;on the Arab side, a thousand are printed on the Zionist side.&lt;p&gt;There are many reasons for this. You have many millions of Jewish&lt;br&gt;citizens interested in this question. They are highly vocal and wise&lt;br&gt;in the ways of publicity. There are few Arab citizens in America, and&lt;br&gt;we are as yet unskilled in the technique of modern propaganda.&lt;p&gt;The results have been alarming for us. In your press we see a horrible&lt;br&gt;caricature and are told it is our true portrait. In all justice, we&lt;br&gt;cannot let this pass by default.&lt;p&gt;Our case is quite simple: For nearly 2,000 years Palestine has been&lt;br&gt;almost 100 per cent Arab. It is still preponderantly Arab today, in&lt;br&gt;spite of enormous Jewish immigration. But if this immigration&lt;br&gt;continues we shall soon be outnumbered—a minority in our home.&lt;p&gt;Palestine is a small and very poor country, about the size of your&lt;br&gt;state of Vermont. Its Arab population is only about 1,200,000. Already&lt;br&gt;we have had forced on us, against our will, some 600,000 Zionist Jews.&lt;br&gt;We are threatened with many hundreds of thousands more.&lt;p&gt;Our position is so simple and natural that we are amazed it should&lt;br&gt;even be questioned. It is exactly the same position you in America&lt;br&gt;take in regard to the unhappy European Jews. You are sorry for them,&lt;br&gt;but you do not want them in your country.&lt;p&gt;We do not want them in ours, either. Not because they are Jews, but&lt;br&gt;because they are foreigners. We would not want hundreds of thousands&lt;br&gt;of foreigners in our country, be they Englishmen or Norwegians or&lt;br&gt;Brazilians or whatever.&lt;p&gt;Think for a moment: In the last 25 years we have had one third of our&lt;br&gt;entire population forced upon us. In America that would be the&lt;br&gt;equivalent of 45,000,000 complete strangers admitted to your country,&lt;br&gt;over your violent protest, since 1921. How would you have reacted to&lt;br&gt;that?&lt;p&gt;Because of our perfectly natural dislike of being overwhelmed in our&lt;br&gt;own homeland, we are called blind nationalists and heartless&lt;br&gt;anti-Semites. This charge would be ludicrous were it not so dangerous.&lt;p&gt;No people on earth have been less &amp;quot;anti-Semitic&amp;quot; than the Arabs. The&lt;br&gt;persecution of the Jews has been confined almost entirely to the&lt;br&gt;Christian nations of the West. Jews, themselves, will admit that never&lt;br&gt;since the Great Dispersion did Jews develop so freely and reach such&lt;br&gt;importance as in Spain when it was an Arab possession. With very minor&lt;br&gt;exceptions, Jews have lived for many centuries in the Middle East, in&lt;br&gt;complete peace and friendliness with their Arab neighbours.&lt;p&gt;Damascus, Baghdad, Beirut and other Arab centres have always contained&lt;br&gt;large and prosperous Jewish colonies. Until the Zionist invasion of&lt;br&gt;Palestine began, these Jews received the most generous treatment—far,&lt;br&gt;far better than in Christian Europe. Now, unhappily, for the first&lt;br&gt;time in history, these Jews are beginning to feel the effects of Arab&lt;br&gt;resistance to the Zionist assault. Most of them are as anxious as&lt;br&gt;Arabs to stop it. Most of these Jews who have found happy homes among&lt;br&gt;us resent, as we do, the coming of these strangers.&lt;p&gt;I was puzzled for a long time about the odd belief which apparently&lt;br&gt;persists in America that Palestine has somehow &amp;quot;always been a Jewish&lt;br&gt;land.&amp;quot; Recently an American I talked to cleared up this mystery. He&lt;br&gt;pointed out that the only things most Americans know about Palestine&lt;br&gt;are what they read in the Bible. It was a Jewish land in those days,&lt;br&gt;they reason, and they assume it has always remained so.&lt;p&gt;Nothing could be farther from the truth. It is absurd to reach so far&lt;br&gt;back into the mists of history to argue about who should have&lt;br&gt;Palestine today, and I apologise for it. Yet the Jews do this, and I&lt;br&gt;must reply to their &amp;quot;historic claim.&amp;quot; I wonder if the world has ever&lt;br&gt;seen a stranger sight than a group of people seriously pretending to&lt;br&gt;claim a land because their ancestors lived there some 2,000 years ago!&lt;p&gt;If you suggest that I am biased, I invite you to read any sound&lt;br&gt;history of the period and verify the facts.&lt;p&gt;Such fragmentary records as we have indicate that the Jews were&lt;br&gt;wandering nomads from Iraq who moved to southern Turkey, came south to&lt;br&gt;Palestine, stayed there a short time, and then passed to Egypt, where&lt;br&gt;they remained about 400 years. About 1300 BC (according to your&lt;br&gt;calendar) they left Egypt and gradually conquered most—but not all—of&lt;br&gt;the inhabitants of Palestine.&lt;p&gt;It is significant that the Philistines—not the Jews—gave their name to&lt;br&gt;the country: &amp;quot;Palestine&amp;quot; is merely the Greek form of &amp;quot;Philistia.&amp;quot;&lt;p&gt;Only once, during the empire of David and Solomon, did the Jews ever&lt;br&gt;control nearly—but not all—the land which is today Palestine. This&lt;br&gt;empire lasted only 70 years, ending in 926 BC. Only 250 years later&lt;br&gt;the Kingdom of Judah had shrunk to a small province around Jerusalem,&lt;br&gt;barely a quarter of modern Palestine.&lt;p&gt;In 63 BC the Jews were conquered by Roman Pompey, and never again had&lt;br&gt;even the vestige of independence. The Roman Emperor Hadrian finally&lt;br&gt;wiped them out about 135 AD. He utterly destroyed Jerusalem, rebuilt&lt;br&gt;under another name, and for hundreds of years no Jew was permitted to&lt;br&gt;enter it. A handful of Jews remained in Palestine but the vast&lt;br&gt;majority were killed or scattered to other countries, in the Diaspora,&lt;br&gt;or the Great Dispersion. From that time Palestine ceased to be a&lt;br&gt;Jewish country, in any conceivable sense.&lt;p&gt;This was 1,815 years ago, and yet the Jews solemnly pretend they still&lt;br&gt;own Palestine! If such fantasy were allowed, how the map of the world&lt;br&gt;would dance about!&lt;p&gt;Italians might claim England, which the Romans held so long. England&lt;br&gt;might claim France, &amp;quot;homeland&amp;quot; of the conquering Normans. And the&lt;br&gt;French Normans might claim Norway, where their ancestors originated.&lt;br&gt;And incidentally, we Arabs might claim Spain, which we held for 700&lt;br&gt;years.&lt;p&gt;Many Mexicans might claim Spain, &amp;quot;homeland&amp;quot; of their forefathers. They&lt;br&gt;might even claim Texas, which was Mexican until 100 years ago. And&lt;br&gt;suppose the American Indians claimed the &amp;quot;homeland&amp;quot; of which they were&lt;br&gt;the sole, native, and ancient occupants until only some 450 years ago!&lt;p&gt;I am not being facetious. All these claims are just as valid—or just&lt;br&gt;as fantastic—as the Jewish &amp;quot;historic connection&amp;quot; with Palestine. Most&lt;br&gt;are more valid.&lt;p&gt;In any event, the great Moslem expansion about 650 AD finally settled&lt;br&gt;things. It dominated Palestine completely. From that day on, Palestine&lt;br&gt;was solidly Arabic in population, language, and religion. When British&lt;br&gt;armies entered the country during the last war, they found 500,000&lt;br&gt;Arabs and only 65,000 Jews.&lt;p&gt;If solid, uninterrupted Arab occupation for nearly 1,300 years does&lt;br&gt;not make a country &amp;quot;Arab&amp;quot;, what does?&lt;p&gt;The Jews say, and rightly, that Palestine is the home of their&lt;br&gt;religion. It is likewise the birthplace of Christianity, but would any&lt;br&gt;Christian nation claim it on that account? In passing, let me say that&lt;br&gt;the Christian Arabs—and there are many hundreds of thousands of them&lt;br&gt;in the Arab World—are in absolute agreement with all other Arabs in&lt;br&gt;opposing the Zionist invasion of Palestine.&lt;p&gt;May I also point out that Jerusalem is, after Mecca and Medina, the&lt;br&gt;holiest place in Islam. In fact, in the early days of our religion,&lt;br&gt;Moslems prayed toward Jerusalem instead of Mecca.&lt;p&gt;The Jewish &amp;quot;religious claim&amp;quot; to Palestine is as absurd as the&lt;br&gt;&amp;quot;historic claim.&amp;quot; The Holy Places, sacred to three great religions,&lt;br&gt;must be open to all, the monopoly of none. Let us not confuse religion&lt;br&gt;and politics.&lt;p&gt;We are told that we are inhumane and heartless because do not accept&lt;br&gt;with open arms the perhaps 200,000 Jews in Europe who suffered so&lt;br&gt;frightfully under Nazi cruelty, and who even now—almost three years&lt;br&gt;after war&amp;#39;s end—still languish in cold, depressing camps.&lt;p&gt;Let me underline several facts. The unimaginable persecution of the&lt;br&gt;Jews was not done by the Arabs: it was done by a Christian nation in&lt;br&gt;the West. The war which ruined Europe and made it almost impossible&lt;br&gt;for these Jews to rehabilitate themselves was fought by the Christian&lt;br&gt;nations of the West. The rich and empty portions of the earth belong,&lt;br&gt;not to the Arabs, but to the Christian nations of the West.&lt;p&gt;And yet, to ease their consciences, these Christian nations of the&lt;br&gt;West are asking Palestine—a poor and tiny Moslem country of the&lt;br&gt;East—to accept the entire burden. &amp;quot;We have hurt these people&lt;br&gt;terribly,&amp;quot; cries the West to the East. &amp;quot;Won&amp;#39;t you please take care of&lt;br&gt;them for us?&amp;quot;&lt;p&gt;We find neither logic nor justice in this. Are we therefore &amp;quot;cruel and&lt;br&gt;heartless nationalists&amp;quot;?&lt;p&gt;We are a generous people: we are proud that &amp;quot;Arab hospitality&amp;quot; is a&lt;br&gt;phrase famous throughout the world. We are a humane people: no one was&lt;br&gt;shocked more than we by the Hitlerite terror. No one pities the&lt;br&gt;present plight of the desperate European Jews more than we.&lt;p&gt;But we say that Palestine has already sheltered 600,000 refugees. We&lt;br&gt;believe that is enough to expect of us—even too much. We believe it is&lt;br&gt;now the turn of the rest of the world to accept some of them.&lt;p&gt;I will be entirely frank with you. There is one thing the Arab world&lt;br&gt;simply cannot understand. Of all the nations of the earth, America is&lt;br&gt;most insistent that something be done for these suffering Jews of&lt;br&gt;Europe. This feeling does credit to the humanity for which America is&lt;br&gt;famous, and to that glorious inscription on your Statue of Liberty.&lt;p&gt;And yet this same America—the richest, greatest, most powerful nation&lt;br&gt;the world has ever known—refuses to accept more than a token handful&lt;br&gt;of these same Jews herself!&lt;p&gt;I hope you will not think I am being bitter about this. I have tried&lt;br&gt;hard to understand that mysterious paradox, and I confess I cannot.&lt;br&gt;Nor can any other Arab.&lt;p&gt;Perhaps you have been informed that &amp;quot;the Jews in Europe want to go to&lt;br&gt;no other place except Palestine.&amp;quot;&lt;p&gt;This myth is one of the greatest propaganda triumphs of the Jewish&lt;br&gt;Agency for Palestine, the organisation which promotes with fanatic&lt;br&gt;zeal the emigration to Palestine. It is a subtle half-truth, thus&lt;br&gt;doubly dangerous.&lt;p&gt;The astounding truth is that nobody on earth really knows where these&lt;br&gt;unfortunate Jews really want to go!&lt;p&gt;You would think that in so grave a problem, the American, British, and&lt;br&gt;other authorities responsible for the European Jews would have made a&lt;br&gt;very careful survey, probably by vote, to find out where each Jew&lt;br&gt;actually wants to go. Amazingly enough this has never been done! The&lt;br&gt;Jewish Agency has prevented it.&lt;p&gt;Some time ago the American Military Governor in Germany was asked at a&lt;br&gt;press conference how he was so certain that all Jews there wanted to&lt;br&gt;go to Palestine. His answer was simple: &amp;quot;My Jewish advisors tell me&lt;br&gt;so.&amp;quot; He admitted no poll had ever been made. Preparations were indeed&lt;br&gt;begun for one, but the Jewish Agency stepped in to stop it.&lt;p&gt;The truth is that the Jews in German camps are now subjected to a&lt;br&gt;Zionist pressure campaign which learned much from the Nazi terror. It&lt;br&gt;is dangerous for a Jew to say that he would rather go to some other&lt;br&gt;country, not Palestine. Such dissenters have been severely beaten, and&lt;br&gt;worse.&lt;p&gt;Not long ago, in Palestine, nearly 1,000 Austrian Jews informed the&lt;br&gt;international refugee organisation that they would like to go back to&lt;br&gt;Austria, and plans were made to repatriate them.&lt;p&gt;The Jewish Agency heard of this, and exerted enough political pressure&lt;br&gt;to stop it. It would be bad propaganda for Zionism if Jews began&lt;br&gt;leaving Palestine. The nearly 1,000 Austrian are still there, against&lt;br&gt;their will.&lt;p&gt;The fact is that most of the European Jews are Western in culture and&lt;br&gt;outlook, entirely urban in experience and habits. They cannot really&lt;br&gt;have their hearts set on becoming pioneers in the barren, arid,&lt;br&gt;cramped land which is Palestine.&lt;p&gt;One thing, however, is undoubtedly true. As matters stand now, most&lt;br&gt;refugee Jews in Europe would, indeed, vote for Palestine, simply&lt;br&gt;because they know no other country will have them.&lt;p&gt;If you or I were given a choice between a near-prison camp for the&lt;br&gt;rest of our lives—or Palestine—we would both choose Palestine, too.&lt;p&gt;But open up any other alternative to them—give them any other choice,&lt;br&gt;and see what happens!&lt;p&gt;No poll, however, will be worth anything unless the nations of the&lt;br&gt;earth are willing to open their doors—just a little—to the Jews. In&lt;br&gt;other words, if in such a poll a Jew says he wants to go to Sweden,&lt;br&gt;Sweden must be willing to accept him. If he votes for America, you&lt;br&gt;must let him come in.&lt;p&gt;Any other kind of poll would be a farce. For the desperate Jew, this&lt;br&gt;is no idle testing of opinion: this is a grave matter of life or&lt;br&gt;death. Unless he is absolutely sure that his vote means something, he&lt;br&gt;will always vote for Palestine, so as not to risk his bird in the hand&lt;br&gt;for one in the bush.&lt;p&gt;In any event, Palestine can accept no more. The 65,000 Jews in&lt;br&gt;Palestine in 1918 have jumped to 600,000 today. We Arabs have&lt;br&gt;increased, too, but not by immigration. The Jews were then a mere 11&lt;br&gt;per cent of our population. Today they are one third of it.&lt;p&gt;The rate of increase has been terrifying. In a few more years—unless&lt;br&gt;stopped now—it will overwhelm us, and we shall be an important&lt;br&gt;minority in our own home.&lt;p&gt;Surely the rest of the wide world is rich enough and generous enough&lt;br&gt;to find a place for 200,000 Jews—about one third the number that tiny,&lt;br&gt;poor Palestine has already sheltered. For the rest of the world, it is&lt;br&gt;hardly a drop in the bucket. For us it means national suicide.&lt;p&gt;We are sometimes told that since the Jews came to Palestine, the Arab&lt;br&gt;standard of living has improved. This is a most complicated question.&lt;br&gt;But let us even assume, for the argument, that it is true. We would&lt;br&gt;rather be a bit poorer, and masters of our own home. Is this&lt;br&gt;unnatural?&lt;p&gt;The sorry story of the so-called &amp;quot;Balfour Declaration,&amp;quot; which started&lt;br&gt;Zionist immigration into Palestine, is too complicated to repeat here&lt;br&gt;in detail. It is grounded in broken promises to the Arabs—promises&lt;br&gt;made in cold print which admit no denying.&lt;p&gt;We utterly deny its validity. We utterly deny the right of Great&lt;br&gt;Britain to give away Arab land for a &amp;quot;national home&amp;quot; for an entirely&lt;br&gt;foreign people.&lt;p&gt;Even the League of Nations sanction does not alter this. At the time,&lt;br&gt;not a single Arab state was a member of the League. We were not&lt;br&gt;allowed to say a word in our own defense.&lt;p&gt;I must point out, again in friendly frankness, that America was nearly&lt;br&gt;as responsible as Britain for this Balfour Declaration. President&lt;br&gt;Wilson approved it before it was issued, and the American Congress&lt;br&gt;adopted it word for word in a joint resolution on 30th June, 1922.&lt;p&gt;In the 1920s, Arabs were annoyed and insulted by Zionist immigration,&lt;br&gt;but not alarmed by it. It was steady, but fairly small, as even the&lt;br&gt;Zionist founders thought it would remain. Indeed for some years, more&lt;br&gt;Jews left Palestine than entered it—in 1927 almost twice as many.&lt;p&gt;But two new factors, entirely unforeseen by Britain or the League or&lt;br&gt;America or the most fervent Zionist, arose in the early thirties to&lt;br&gt;raise the immigration to undreamed heights. One was the World&lt;br&gt;Depression; the second the rise of Hitler.&lt;p&gt;In 1932, the year before Hitler came to power, only 9,500 Jews came to&lt;br&gt;Palestine. We did not welcome them, but we were not afraid that, at&lt;br&gt;that rate, our solid Arab majority would ever be in danger.&lt;p&gt;But the next year—the year of Hitler—it jumped to 30,000! In 1934 it&lt;br&gt;was 42,000! In 1935 it reached 61,000!&lt;p&gt;It was no longer the orderly arrival of idealist Zionists. Rather, all&lt;br&gt;Europe was pouring its frightened Jews upon us. Then, at last, we,&lt;br&gt;too, became frightened. We knew that unless this enormous influx&lt;br&gt;stopped, we were, as Arabs, doomed in our Palestine homeland. And we&lt;br&gt;have not changed our minds.&lt;p&gt;I have the impression that many Americans believe the trouble in&lt;br&gt;Palestine is very remote from them, that America had little to do with&lt;br&gt;it, and that your only interest now is that of a humane bystander.&lt;p&gt;I believe that you do not realise how directly you are, as a nation,&lt;br&gt;responsible in general for the whole Zionist move and specifically for&lt;br&gt;the present terrorism. I call this to your attention because I am&lt;br&gt;certain that if you realise your responsibility you will act fairly to&lt;br&gt;admit it and assume it.&lt;p&gt;Quite aside from official American support for the &amp;quot;National Home&amp;quot; of&lt;br&gt;the Balfour Declaration, the Zionist settlements in Palestine would&lt;br&gt;have been almost impossible, on anything like the current scale,&lt;br&gt;without American money. This was contributed by American Jewry in an&lt;br&gt;idealistic effort to help their fellows.&lt;p&gt;The motive was worthy: the result were disastrous. The contributions&lt;br&gt;were by private individuals, but they were almost entirely Americans,&lt;br&gt;and, as a nation, only America can answer for it.&lt;p&gt;The present catastrophe may be laid almost entirely at your door. Your&lt;br&gt;government, almost alone in the world, is insisting on the immediate&lt;br&gt;admission of 100,000 more Jews into Palestine—to be followed by&lt;br&gt;countless additional ones. This will have the most frightful&lt;br&gt;consequences in bloody chaos beyond anything ever hinted at in&lt;br&gt;Palestine before.&lt;p&gt;It is your press and political leadership, almost alone in the world,&lt;br&gt;who press this demand. It is almost entirely American money which&lt;br&gt;hires or buys the &amp;quot;refugee ships&amp;quot; that steam illegally toward&lt;br&gt;Palestine: American money which pays their crews. The illegal&lt;br&gt;immigration from Europe is arranged by the Jewish Agency, supported&lt;br&gt;almost entirely by American funds. It is American dollars which&lt;br&gt;support the terrorists, which buy the bullets and pistols that kill&lt;br&gt;British soldiers—your allies—and Arab citizens—your friends.&lt;p&gt;We in the Arab world were stunned to hear that you permit open&lt;br&gt;advertisements in newspapers asking for money to finance these&lt;br&gt;terrorists, to arm them openly and deliberately for murder. We could&lt;br&gt;not believe this could really happen in the modern world. Now we must&lt;br&gt;believe it: we have seen the advertisements with our own eyes.&lt;p&gt;I point out these things because nothing less than complete frankness&lt;br&gt;will be of use. The crisis is too stark for mere polite vagueness&lt;br&gt;which means nothing.&lt;p&gt;I have the most complete confidence in the fair-mindedness and&lt;br&gt;generosity of the American public. We Arabs ask no favours. We ask&lt;br&gt;only that you know the full truth, not half of it. We ask only that&lt;br&gt;when you judge the Palestine question, you put yourselves in our&lt;br&gt;place.&lt;p&gt;What would your answer be if some outside agency told you that you&lt;br&gt;must accept in America many millions of utter strangers in your&lt;br&gt;midst—enough to dominate your country—merely because they insisted on&lt;br&gt;going to America, and because their forefathers had once lived there&lt;br&gt;some 2,000 years ago?&lt;p&gt;Our answer is the same.&lt;p&gt;And what would be your action if, in spite of your refusal, this&lt;br&gt;outside agency began forcing them on you?&lt;p&gt;Ours will be the same.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-4696766831903008257?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/4696766831903008257/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=4696766831903008257' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/4696766831903008257'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/4696766831903008257'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2009/01/as-arabs-see-jews-his-majesty-king.html' title='As the Arabs see the Jews: His Majesty King Abdullah, The American Magazine, November 1947'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-1421766425239540885</id><published>2009-01-08T08:14:00.000+08:00</published><updated>2009-01-08T08:40:25.008+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='open source'/><category scheme='http://www.blogger.com/atom/ns#' term='games'/><category scheme='http://www.blogger.com/atom/ns#' term='windows'/><title type='text'>How open source changed my world view</title><content type='html'>I have been using open source software almost exclusively for more than 3 years now. And quite frankly I am very comfortable using it. And not only that but I like seeing how open source software have improved so much in those 3 years. Leaps and bounds ahead. I nearly laughed myself silly when I first saw Windows Vista at Low Yatt and people were looking at it and going "oooh.. aah.. so 3d.." We had compiz even long before that.. :P&lt;br /&gt;&lt;br /&gt;Last year I went into one of those now very rare pirate software shops. And looking at the abundant choices of games available I find that I have changed my world view. It used to be that whenever I looked at all those lovely games I'd think "Oh man.. my computer could never run that. I need more RAM, I need a better display card, I need to upgrade my CPU!!!". But this time I didn't even think about that. In fact I was absolutely not interested in the games at all. All that crossed my mind was that "My OS can't even run these". :P&lt;br /&gt;&lt;br /&gt;I know we have &lt;a href="http://www.winehq.org/"&gt;wine&lt;/a&gt; and &lt;a href="http://www.transgaming.com/"&gt;cedega&lt;/a&gt; and all, but there are so many more interesting things to learn and discover in the open source world that I can't even bother to spend time getting games to run, much less play them till finish. And actually if I HAD time I would have spent it making my own games anyway. But I don't have that much time for now.&lt;br /&gt;&lt;br /&gt;And then once in a blue moon someone would ask me to install a pirated Windows on their computer. I hate it when this happens. Because especially since Microsoft started with the marking of "Your version of Windows might be pirated" when they update, people tend not to update. But then that would cause more problems because they would be exposed to all kinds of exploits and problems. I just wish these people would just move on to Linux and forget all these problems. No more trying to download drives because they lost the CD's a long time ago problem, no more have to reformat because computer starting to slow down problem, no more lost data because of virus problems. Just no problems. Either that or learn about computers yourself enough till you don't need me to install the *&amp;amp;$!@*#&amp;amp;! pirated Windows for you. Or buy an original one if you really need your Windows fix.&lt;br /&gt;&lt;br /&gt;All said and done, I no longer beleive that Windows is easier than Linux. My world view has changed permanently and I think it has changed for the better.&lt;br /&gt;&lt;br /&gt;First post for 2009. Wohooo!! \o/&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-1421766425239540885?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/1421766425239540885/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=1421766425239540885' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/1421766425239540885'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/1421766425239540885'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2009/01/how-open-source-changed-my-world-view.html' title='How open source changed my world view'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-4894640554698010907</id><published>2009-01-01T00:03:00.000+08:00</published><updated>2009-01-01T01:31:15.474+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='2008'/><title type='text'>A year to remember - 2008</title><content type='html'>I have spent at least 10 minutes thinking of an opening for this blog post. And no matter what I write it just doesn't do justice. 2008 was probably the most meaningful year of my life. Full of cherished memories and new experiences. There was a lot of very high highs and some very low lows.. And I'd like to think it all made me a better person today. So what happened in the year 2008?&lt;br /&gt;&lt;br /&gt;Fatimah... :) My daughter was born on 14th January. Since she's my second child, there wasn't as much anticipation and anxiety as Muhammad. But there was still a lot. And we even had a false alarm a few weeks before. Now she's almost 1 year old and she's already babbling baby talk. Babbling a LOT of baby talk. It's so cute.. :) Sometimes even when times are really trying, just looking at her smile makes it all okay. But of course when she's crying, and double that with her brother.. fuh.. fuh.. :P&lt;br /&gt;&lt;br /&gt;My wife's grandmother passed away on 21st June. It was a pretty big blow on my wife as they were very close since her grandmother was the one that raised her up. It was on days like this I missed the days of doing my own thing with Abdullah Solutions. I would have given myself a week off just to be with my wife no question asked. And actually I almost did but of course that ate away most of my emergency leave reserves.&lt;br /&gt;&lt;br /&gt;But for most parts things happened around OSCC. And mostly it had something to do with mymeeting. My talks about mymeeting continued. So after the first one given at the MyGOSSCON 2007, there was a seminar at Putrajaya, Miri, Langkawi, Terengganu. At all those seminars I had to talk about mymeeting. Mostly I do not like to travel and leave my family behind. So I really didn't want to go to Miri, Langkawi and Terengganu. But the big boss insist and finally I just tag along. I'm glad I did. Especially for Miri and Langkawi. At Miri we stayed at the Marriot Hotel and the food was EXCELLENT. Actually that's my most memorable thing there. Having roast lamb even at breakfast. OMG!!! And Langkawi was super fun with the whole gang there. I've never been to Langkawi before so even the cable car ride and the trip to the mangrove forest shall be cherised memories forever.. :D&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://farm4.static.flickr.com/3223/3153358909_2a04624648.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 500px; height: 375px;" src="http://farm4.static.flickr.com/3223/3153358909_2a04624648.jpg" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;And of course mymeeting also won AIPA (Anugerah Inovasi Perkhidmatan Awam) award. We submitted it for AIPA and APICTA (Asia Pacific ICT Award) actually and both of them caused a lot of late nights and the big boss treating us for dinner. But finally it paid off once mymeeting won AIPA. It would have been great if it won APICTA too but that might be a little bit out of our league for now. So finally I'm able to write, one of the developers of an award winning system, in my resume.&lt;br /&gt;&lt;br /&gt;Then there was MyGOSSCON 2008. Ugh.. had a hard time calling some of the speakers assigned to me. But in the end it was okay and all went pretty smoothly. But after MyGOSSCON, came the most AWESOME conference I had ever been to. FOSS.MY.&lt;br /&gt;Again I was invited as a speaker for mymeeting. Because I didn't have enough time to prepare anything beforehand (I deciced I can't use the slides for the OSCC seminars as they were all for the government post. It would have bore the pants off the participants from the community). So I made some last minutes changes and turned it into sharing the experiences we had learned in developing mymeeting rather than just a boring intro to mymeeting. Foss.my was awesome and it's very enjoyable to meet like minded people who loves open source. Even got to know some of the international speakers (Pia Waugh and Pamela Fox especially). Got me all revved up about contributing more for the local open source scene. It was great.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://farm4.static.flickr.com/3212/3015673204_6731e506c0.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 500px; height: 335px;" src="http://farm4.static.flickr.com/3212/3015673204_6731e506c0.jpg" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Overall I enjoyed 2008 and I like to thank all the people who made it special, my family, the app team (Eavay, Saro, Nuhaa and Mr Foong), all the staff of OSCC, all the organizing team members of foss.my and all the people who has made a diffence. Thank you all. Thank you.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-4894640554698010907?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/4894640554698010907/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=4894640554698010907' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/4894640554698010907'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/4894640554698010907'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2008/12/year-to-remember-2008.html' title='A year to remember - 2008'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://farm4.static.flickr.com/3223/3153358909_2a04624648_t.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-3059966718593254442</id><published>2008-12-27T08:05:00.001+08:00</published><updated>2008-12-27T08:05:47.154+08:00</updated><title type='text'>Laptop Reborn</title><content type='html'>&lt;div style="float: right; margin-left: 10px; margin-bottom: 10px;"&gt;&lt;a href="http://www.flickr.com/photos/abdzah/3139739696/" title="photo sharing"&gt;&lt;img src="http://farm4.static.flickr.com/3272/3139739696_d2120d1b3a_m.jpg" alt="" style="border: solid 2px #000000;" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-size: 0.9em; margin-top: 0px;"&gt;&lt;a href="http://www.flickr.com/photos/abdzah/3139739696/"&gt;snapshot-20081227&lt;/a&gt;&lt;br /&gt;Originally uploaded by &lt;a href="http://www.flickr.com/people/abdzah/"&gt;Abdullah Zainul Abidin&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;Maybe it was the limited 512MB ram, maybe it was the rather slow Celeron 1.5 GHz processor, maybe because I didn't spend time tweaking it, whichever way it was my old laptop was really crawling under Fedora 9. Hearing that Fedora 10 is so much faster I was kind of tempted to try it out. But when I think back I haven't got much time to upgrade and tweak my laptop all the time, I decided to just go the bare minimum way. I decided to go back to Arch Linux. Back home.. :) It'll take some time to get it exactly right, but I know once it's exactly how I like it, it can stay that way for a very very long time but still updated due to Arch rolling release life cycle.&lt;br /&gt;&lt;br /&gt;So I wanted something light. Very light. If possible no Gnome or KDE. So that's what I've got myself.. :D Installed xorg with Openbox. Fuh.. now finally my laptop loads under 1 minute again. In the end my desktop consist of openbox for window manager, wicd as network manager, docker as a dock manager, lal as clock in the dock, volwheel for a mixer, pcmanfm as the file manager and urxvt as a terminal emulator.&lt;br /&gt;&lt;br /&gt;Learned quite a few stuff too while looking for the lightest software to run. One of them being audacious. I hate xmms. But I don't want to install amarok or even rhythmbox neither due to their rather heavy kde and gnome reliance. So after googling through the arch linux forums I found audacious. It uses gtk+ so selecting which files to play looks very good but still kept very lean and mean.&lt;br /&gt;&lt;br /&gt;Another suprising discovery was wicd. I wanted a good network manager. I must admit gnome-networkmanager spoiled me a bit and I don't really want to have to go through the whole iwlist and iwconfig route anymore. Again the arch forums gave a hint about wicd. The interface is drop dead ugly compared to gnome-networkmanager but it works quite well. It automatically detects wifi ap and connects to them once the profile has been created. And since most of the time it just sits in the dock so you forget about the ugly interface after a while. At least till the next time you have to create another profile.. :P&lt;br /&gt;&lt;br /&gt;I found out even the gnome-terminal has spoiled me a bit too. Now xterm looks pretty ugly to me. The fonts are so retro. I want beatifully rendered anti-aliased fonts. Again the arch forums and wiki came to the rescue and pointed me in the direction of rxvt-unicode. It can do a lot of other stuff apart from anti-aliased font (like unicode, transparency, and lots of other stuff) but I don't really need them all that much. I just need to be looking at smooth curves all the time. That's all... :D&lt;br /&gt;&lt;br /&gt;So finally now my laptop is able to load up fully in under 1 minute and running everything I need to do my job, even mysqld and httpd. I'm happy.. till next time.. ;)&lt;br clear="all" /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-3059966718593254442?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/3059966718593254442/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=3059966718593254442' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/3059966718593254442'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/3059966718593254442'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2008/12/laptop-reborn.html' title='Laptop Reborn'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://farm4.static.flickr.com/3272/3139739696_d2120d1b3a_t.jpg' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-8596845057861147973</id><published>2008-12-21T22:33:00.000+08:00</published><updated>2008-12-21T22:42:01.733+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='sound'/><category scheme='http://www.blogger.com/atom/ns#' term='dell mini'/><title type='text'>No Sound From Dell Inspiron Mini using Ubuntu</title><content type='html'>Bless my mom. Even after a few weeks of using ubuntu on her Dell, she didn't realize that it cannot produce any sound at all. Recently my father was complaining about the windows on his Dell too, so he too wanted me to install ubuntu on it. Since now I've got a little bit more time on my hand, I wanted to do a proper job with all the codecs and flashplugin installed and everything.&lt;br /&gt;&lt;br /&gt;But after installing flash, going to youtube I realized, "Hey, this thing is not making any sound at all". So after much googling, I came to find out that I have to add the following line to the /etc/modprobe.d/alsa-base file:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;options snd-hda-intel model=dell&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;Once I've rebooted there was a new option in the mixer(Speaker). Just have to max that up and finally we have sound.. foss ftw :)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-8596845057861147973?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/8596845057861147973/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=8596845057861147973' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/8596845057861147973'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/8596845057861147973'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2008/12/no-sound-from-dell-inspiron-mini-using.html' title='No Sound From Dell Inspiron Mini using Ubuntu'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-8227937805861038896</id><published>2008-12-19T06:56:00.000+08:00</published><updated>2008-12-19T07:43:25.844+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='netbook'/><category scheme='http://www.blogger.com/atom/ns#' term='dell mini'/><category scheme='http://www.blogger.com/atom/ns#' term='aksa'/><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu'/><category scheme='http://www.blogger.com/atom/ns#' term='aipa'/><category scheme='http://www.blogger.com/atom/ns#' term='mymeeting'/><category scheme='http://www.blogger.com/atom/ns#' term='eeepc'/><title type='text'>MyMeeting, Ubuntu Netbook and other stuff</title><content type='html'>There has been a lot of things happening for the past month or so until I've been so busy I didn't get the time to update my blog properly and even if I had the time I'd rather use it to sleep to get back my energy. Anyhow things are much calmer now and let me take this opportunity to say a few things.. :)&lt;br /&gt;&lt;br /&gt;First off the bat, &lt;a href="http://mymeeting.oscc.org.my/"&gt;MyMeeting&lt;/a&gt; has won an AIPA (Anugerah Inovasi Perkhidmatan Awam) and it was awarded by The Pak Lah himself (some people call me Pak Lah too but this is the real Pak Lah, the one that's running this country. I don't wish to run this country.. :P) at the AKSA (Anugerah Kecemerlangan Sektor Awam) 2008 on 27th November 2008. Check out some of the pictures of the OSCC booth on that day &lt;a href="http://gallery.oscc.org.my/main.php?g2_itemId=192854"&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;I guess I'm pretty proud that it won that award. Now I can write on my resume, one of the developers of an award winning system.. :) LOL.. somehow I like the sound of that.. :P Whichever way it is, it has drawn quite a lot of attention to MyMeeting. And finally we get feedback from users.. Yay.. \o/ And thus why I've been so busy. MyMeeting has been developed quite a lot since then and finally I think I can be truly proud of it. Most of the features that I've been saying it has but wasn't actually implemented is now implemented.. &gt;.&lt; You can check it out at the MyMeeting &lt;a href="http://trac.oscc.org.my/mymeeting"&gt;trac&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Apart from that, quite recently (as in around 3 weeks ago), I've bought for my parents Dell Mini Inspiron 9. So one for my father, one for my mother (using their money of course.. :P). The funny thing was that my mother's mini just kept on having problems. It wouldn't shut down properly so suddenly you find that it's battery has been completely drained. It sometimes wouldn't detect the mouse. But my father's one was a-okay. My mom asked me to fix it. What was my answer? "You know you wouldn't have this problem if it was running linux rather than windows xp :P"... So she agreed to let me install Linux on it.. \o/&lt;br /&gt;&lt;br /&gt;So I went out to buy an external DVD drive (I know there's ways to install it using usb pendrive and all but I need an external DVD drive anyway.. :P) and promptly installed Ubuntu 8.10 on it. I've read that because the SSD have limited amount of write cycles you should limit the amount of writing to it as much as possible. So rather than formatting the hard disk with an ext3 that has journaling (and thus more writes for every file operation) I opted to use ext2. Some people would also suggest not to have a swap partition as there would be lots of writes there too. But I've read somewhere else that most of the time you don't use enough memory to require a swap if you've got 1GB of ram (which the Dell Mini has) and thus wouldn't use it even if it's there making it okay to create a swap partition. But I didn't create a swap partition because what's the point. If you want to create a swap partition for suspend and stuff you need to create it at least 2.5 times larger than your amount of RAM. The Dell Mini has only 8 GB of real estate. After installing Ubuntu you're left with only around 5GB (compared to only 3GB with bare windows). 2.5GB would take away half of the available space. So forget suspending this baby. Better just shut it down. Googled for Ubuntu &lt;a href="http://www.canonical.com/projects/ubuntu/nbr"&gt;netbook&lt;/a&gt; and followed the instructions written &lt;a href="https://launchpad.net/netbook-remix"&gt;here&lt;/a&gt;. Made sure to add maximus and netbook-launcher to the list of programs run at start-up (System-&gt;Preferences-&gt;Session for those who doesn't know).&lt;br /&gt;&lt;br /&gt;The verdict. After over two weeks of using it, my mom loves it.. :D Now she's not embarrased when she try to boot up the netbook in front of her friends it doesn't boot. Or when she tries to connect the mouse it doesn't work. It just works and it's interface is lovely. And then it happened... My wife asked me to install it on her EEEPC too.. :) Her EEEPC was still using the original custom Xandros which greatly limited the amount of software (and even drivers) available for her. So I went and installed it. And because it has a 20GB SSD, there's plenty of space to create the swap partition (which I did). So just like I suspected it now boots a lot slower than the original Xandros (but still much faster than any kind of windows xp installation.. :P) but at least now she's running the latest software and drivers. There's a whole lot more issue with the EEEPC actually and I've still haven't got the internal mic to work yet. But at least bluetooth doggle should work (actually I haven't tried it yet.. :P).&lt;br /&gt;&lt;br /&gt;Fuh.. this has turned into a longer post than I thought. So I'll just end it here. If you're a PHP developer (especially if you're a CakePHP developer) please check out MyMeeting and who knows, maybe you can contribute something. If you're not a developer but you know how to install web apps (php, mysql stack) try installing mymeeting and see whether maybe your organization can use it. If not give us a feedback on why and maybe we can make it happen.. ;) If you're neither of that but you know someone who is, tell them about it.. :)&lt;br /&gt;&lt;br /&gt;Alrighty then, till next time...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-8227937805861038896?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/8227937805861038896/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=8227937805861038896' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/8227937805861038896'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/8227937805861038896'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2008/12/mymeeting-ubuntu-netbook-and-other.html' title='MyMeeting, Ubuntu Netbook and other stuff'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-1826241594366130669</id><published>2008-12-14T04:31:00.000+08:00</published><updated>2010-03-07T08:53:06.747+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='movie'/><title type='text'>Leon: The Professional -- Shape Of My Heart</title><content type='html'>He deals the cards as a meditation&lt;br /&gt;     And those he plays never suspect&lt;br /&gt;     He doesn't play for the money he wins&lt;br /&gt;     He doesn't play for respect&lt;br /&gt;     He deals the cards to find the answer&lt;br /&gt;     The sacred geometry of chance&lt;br /&gt;     The hidden law of a probable outcome&lt;br /&gt;     The numbers lead a dance       &lt;p&gt;I know that the spades are swords of a soldier&lt;br /&gt;       I know that the clubs are weapons of war&lt;br /&gt;       I know that diamonds mean money for this art&lt;br /&gt;       But that's not the shape of my heart&lt;/p&gt;       &lt;p&gt;He may play the jack of diamonds&lt;br /&gt;       He may lay the queen of spades&lt;br /&gt;       He may conceal a king in his hand&lt;br /&gt;       While the memory of it fades&lt;/p&gt;       &lt;p&gt;I know that the spades are swords of a soldier&lt;br /&gt;       I know that the clubs are weapons of war&lt;br /&gt;       I know that diamonds mean money for this art&lt;br /&gt;       But that's not the shape of my heart&lt;/p&gt;       &lt;p&gt;And if I told you that I loved you&lt;br /&gt;       You'd maybe think there's something wrong&lt;br /&gt;       I'm not a man of too many faces&lt;br /&gt;       The mask I wear is one&lt;br /&gt;       Those who speak know nothing&lt;br /&gt;       And find out to their cost&lt;br /&gt;       Like those who curse their luck in too many places&lt;br /&gt;       And those who fear are lost&lt;/p&gt;       &lt;p&gt;I know that the spades are swords of a soldier&lt;br /&gt;       I know that the clubs are weapons of war&lt;br /&gt;       I know that diamonds mean money for this art&lt;br /&gt;       But that's not the shape of my heart&lt;/p&gt;&lt;p&gt;--------------------------------------------------------------------------------------&lt;/p&gt;&lt;p&gt;Great &lt;a href="http://www.youtube.com/watch?v=locIxsfpgp4"&gt;movie&lt;/a&gt;. Thanks to BuffaloSoldier for pointing it out. :)&lt;br /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-1826241594366130669?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/1826241594366130669/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=1826241594366130669' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/1826241594366130669'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/1826241594366130669'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2008/12/leon-professional-shape-of-my-heart.html' title='Leon: The Professional -- Shape Of My Heart'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-7654837049082121877</id><published>2008-11-17T14:55:00.000+08:00</published><updated>2008-11-17T16:46:51.710+08:00</updated><title type='text'>Get only the second column of output</title><content type='html'>Little bash script which took me quite some time to figure out:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;svn status | grep ? | awk '{print $2}'&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;Will get rid of the status field and that can be used to add to svn.&lt;p&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-7654837049082121877?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/7654837049082121877/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=7654837049082121877' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/7654837049082121877'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/7654837049082121877'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2008/11/get-only-second-column-of-output.html' title='Get only the second column of output'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-1737317398969763531</id><published>2008-11-14T08:30:00.000+08:00</published><updated>2008-11-14T08:51:32.828+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='food'/><title type='text'>Food first post</title><content type='html'>My blogs' name is High-Tech Rojak but I don't recall ever talking about food. So here's a first. Just recently I got some free time and finally got to cook the pasta I've bought for ages. So here's an account of how it went down.. :)&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_DrnA8N0YTqk/SRzHKHKiJaI/AAAAAAAAACA/Q1z08U7-SCs/s1600-h/Photo_111208_001.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 256px;" src="http://1.bp.blogspot.com/_DrnA8N0YTqk/SRzHKHKiJaI/AAAAAAAAACA/Q1z08U7-SCs/s320/Photo_111208_001.jpg" alt="" id="BLOGGER_PHOTO_ID_5268304640652486050" border="0" /&gt;&lt;/a&gt;Okay. That's the thing I cooked. I have no idea what it's called. At first I was thinking of buying the ribbon ones, then my wife looked at the colorful spiral ones and said "why not get these? they're more colorful" and so we got them (yes, we know nothing about pasta.. :) So I boiled it, actually put some salt and oil into the water so that they won't stick, drained it and tadaaaaa, you'd get the above. I remember once I tried to cook macaroni and I didn't drain it after boiling it, it filled up the whole pot. LOL... Learned my lesson.&lt;br /&gt;&lt;br /&gt;Next up the sauce. Like I said we don't know anything about pasta so here's the ingredients we prepared.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_DrnA8N0YTqk/SRzIUYdDHHI/AAAAAAAAACI/v0oHh7tHBC0/s1600-h/Photo_111208_002.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 256px;" src="http://3.bp.blogspot.com/_DrnA8N0YTqk/SRzIUYdDHHI/AAAAAAAAACI/v0oHh7tHBC0/s320/Photo_111208_002.jpg" alt="" id="BLOGGER_PHOTO_ID_5268305916603866226" border="0" /&gt;&lt;/a&gt;Yes ladies and gentleman. Instant pasta sauce all bottled up and ready to go. Some dried up basil also bottled up. Some onions and garlic. Hahahaha... The sauce is "traditional" lagi tu.. So yes, it's about as authentic as I can get it till I learn to do better. So on the color spiral packaging mentioned about frying some onions, garlic and capsicum. Since I didn't have any capsicum, garlic and onions would have to do. So into the frying pot.&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_DrnA8N0YTqk/SRzJOmTqCLI/AAAAAAAAACQ/FEzAVTWPXPU/s1600-h/Photo_111208_003.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 256px;" src="http://3.bp.blogspot.com/_DrnA8N0YTqk/SRzJOmTqCLI/AAAAAAAAACQ/FEzAVTWPXPU/s320/Photo_111208_003.jpg" alt="" id="BLOGGER_PHOTO_ID_5268306916754983090" border="0" /&gt;&lt;/a&gt;Once the smell has risen (how DO you say "bau dah naik" in english ?) you can just dump in the sauce. Stir it around a bit. Put water into the bottle and add that to the pot too so that nothing gets wasted. Once it start boiling dump in the minced meat (apologise for my vegetarian or non-cow meat eating readers, the following pic is rather graphical.. :P ).&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_DrnA8N0YTqk/SRzJ6t5om2I/AAAAAAAAACY/uvqOqi0Qn2s/s1600-h/Photo_111208_004.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 256px;" src="http://1.bp.blogspot.com/_DrnA8N0YTqk/SRzJ6t5om2I/AAAAAAAAACY/uvqOqi0Qn2s/s320/Photo_111208_004.jpg" alt="" id="BLOGGER_PHOTO_ID_5268307674707565410" border="0" /&gt;&lt;/a&gt;It doesn't look very impressive. Well, stir it up some more. Add diced vegetables. Add some salt (actually I overdid it with the salt &gt;.&lt; ). But in the end...&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_DrnA8N0YTqk/SRzKnru7rSI/AAAAAAAAACg/8tI32bwqerc/s1600-h/Photo_111208_005.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 256px;" src="http://4.bp.blogspot.com/_DrnA8N0YTqk/SRzKnru7rSI/AAAAAAAAACg/8tI32bwqerc/s320/Photo_111208_005.jpg" alt="" id="BLOGGER_PHOTO_ID_5268308447219920162" border="0" /&gt;&lt;/a&gt;Tadaaaa... Looks pretty good eh.. :) A bit salty I know.. But still edible enough that we went to sleep with a full stomach and even got enough for breakfast. I didn't do the whole pasta thing again but eating the sauce with bread is really nice. Fuh.. Now I'm hungry again.. &gt;.&lt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-1737317398969763531?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/1737317398969763531/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=1737317398969763531' title='6 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/1737317398969763531'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/1737317398969763531'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2008/11/food-first-post.html' title='Food first post'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_DrnA8N0YTqk/SRzHKHKiJaI/AAAAAAAAACA/Q1z08U7-SCs/s72-c/Photo_111208_001.jpg' height='72' width='72'/><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-6144506882658305015</id><published>2008-11-10T08:47:00.000+08:00</published><updated>2008-11-10T10:05:59.742+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='fossmy'/><title type='text'>foss.my is AWESOME!!!</title><content type='html'>Lol.. I can't help but keep on writing awesome in big capital letters.. AWESOME!!! :D&lt;br /&gt;&lt;br /&gt;That was the most awesome weekend that I have ever had. It's monday and I still feel the high.. &gt;.&lt;&lt;br /&gt;&lt;br /&gt;There was so many great things about it and a lot of people have written about it. Here is just some of my thoughts and what I'd like to highlight (and can read back this entry in the future and feel the awesomeness again):&lt;br /&gt;&lt;br /&gt;First impression when I just arrived was that the whole atmosphere was so cool. Everyone was friendly and down to earth. There was no special separation between any vip and the other participants or anything. Maybe I've just been to too many government conferences but I love this atmosphere and attitude.&lt;br /&gt;&lt;br /&gt;Then I remember when Collins mentioned special thanks to the sponsors. First one he mentioned was Microsoft and all was quite. As soon as he said Mozilla, WHOA!! Everyone clapped and cheered. And so was for Mixi, Bytecraft, Inigo and APIIT. LOL!! I felt sorry for the Microsoft rep there but at least they didn't boo or anything. I guess we're polite. Makes me so proud.. :)&lt;br /&gt;&lt;br /&gt;The Raj 'Dylan' strumming the "The Times They Are A-Changin' " song on his guitar. To tell the truth there was a few hiccups and most of the audience didn't know the song (yours truly included :P). But I thought it was great. Great for 2 things. One is the fact that "Hey, there's a guy who came forward and played his guitar at this conference.." and two is I find the lyrics very appropriate to how I feel about this conference. The fact that they was able to pull of this conference just shows that the foss community here is getting stronger and better and this could really be the sign of "Times They Are A-Changin'".&lt;br /&gt;&lt;br /&gt;Yoon Kit gave the opening keynote about the "Format Wars". There wasn't any keynote from APIIT as scheduled. Then it was my talk. Hmmm.. I think it went well despite the slides was just prepared a few hours before the talk. Could have been better if I had prepared earlier but with MyGOSSCON and all that's pretty much the best I could do. There certainly was more interest from the audience than normally from government conferences. Even on Sunday there was still some of the participants come up to me to talk about mymeeting and cakephp. Love it. Hope I stirred up enough interest in MyMeeting to get even more feedback and participation from the community. I better buckle up too and make sure MyMeeting gets better and better all the time.&lt;br /&gt;&lt;br /&gt;Then it was Google Summer of Code 101 by Raj 'Dylan' Kissu. Awesome talk. Wish I was still a student. I would certainly try my luck in getting into the Google Summer of Code. The opportunity to learn, the money incentive (4500 USD is a lot of incentive ;), the experience in getting involved with Google. After that Kaeru presented the Orca talk because En. Rahim wasn't able to make it. It was great.&lt;br /&gt;&lt;br /&gt;I stayed awhile for the Navigating the Commons talk but in the middle of it decided I'd rather go to the fosschix session. I missed the main presentation by Pia (until now I still regret it..) but it was great. Just chatting about how to make the working hours more family friendly so that the ladies can get more involved in IT. Love it.&lt;br /&gt;&lt;br /&gt;Lunch had McChicken. To tell the truth it was nearly enough for me. But I didn't come for the food anyway so I don't mind.&lt;br /&gt;&lt;br /&gt;Then listened to Toru about OSS at mixi.jp. Cool dude. Way cool.. :D you know how you read comics and all and you think, wow.. the japanese people are so cool. Well.. he's even cooler.. &gt;.&lt; Loved his style of presentation. Relaxed and walking around everywhere. I think if they have given him a clicker he might have actually walked of the stage and just talk and talk.&lt;br /&gt;&lt;br /&gt;Then went to a "Birds of A Feather" session on python. Kaeru and Bakhtiar were great. Talking about things which I haven't even heard of before.. :P Even gave me some new ideas I can try out with my projects. Programming in firefox. Sounds cool.&lt;br /&gt;&lt;br /&gt;Then end of day 1 with Pia's keynote. Almost the same as the one she gave at MyGOSSCON but with a bit of modification. Why do open source? "Fun, Work and making the world better". Great. Got me all revved up to contribute more.&lt;br /&gt;&lt;br /&gt;Then off to the speakers dinner. Great to be able to mingle with great people. But actually I was soooo tired I wasn't able to take full advantage of the opportunity. But it was fun nonetheless..&lt;br /&gt;&lt;br /&gt;Day 2 was full of awesomeness too. I actually didn't read the schedule and thought it would start like day 1 at 9 am. But actually it was scheduled to start at 10am. I was an hour early and apiit was noisy with a taekwondo competition downstairs.&lt;br /&gt;&lt;br /&gt;Keynote by Ditesh was again proof of how awesome he is.. :D Highlighted things which a lot of us didn't know of before. All the contributions of the community which we wasn't even aware of. Actually he gave almost the same talk at MyGOSSCON but now it was a bit modified to be more cool. :P&lt;br /&gt;&lt;br /&gt;Track session began and I was torn. I had no idea whether I wanted to listen to Toru on memcached or Kamal on git. In the end I decided on Kamal and again I must say this dude is one heck of a great speaker. Now he got me all excited on using git. I'm already using svn, hg, bzr. Now git pulak.. :D&lt;br /&gt;&lt;br /&gt;Followed by James Morris talk on kiosk mode in Fedora. Looks great. Reminds me of Juzt-Reboot card which I used to have. Do whatever you want. As soon as you restart the computer is restored into it's original pristine state. Would be great to be used in computer labs at school or libraries.&lt;br /&gt;&lt;br /&gt;Then off to fosschix. Pamela Fox is so cooool.. :D There was so many people that we had to move to a bigger room. And Pamela just sat on the table talking about webdevedu. Awesome.&lt;br /&gt;&lt;br /&gt;Lunch. And it is confirmed, python is used a LOT at google... :D Pamela is into languages too. Asked about the Malay language and all. Awesome.. :)&lt;br /&gt;&lt;br /&gt;SaaS and PaaS? I had no idea what that was until I heard the talk by Jerome. Software as a service, Platform as a service. It's the wave of the future and it is happening now. Hmmm.. MyMeeting as a service? Maybe one day.. :P&lt;br /&gt;&lt;br /&gt;Then OLPC talk by Pia. The thing I remember most about the talk? Pia raised the XO high above her head and dropped it.. 0_O wow... it still work. That thing was built to be abused. :P Wonder whether it can take on Muhammad.. &gt;.&lt; But seriously I want to get on to developing on it. Got some ideas of creating local content to learn. And I've got two beta testers at home. :P&lt;br /&gt;&lt;br /&gt;HTML 5 and google gears was presented by Pamela. WOW!!! Can't wait for it to be properly supported by mainstream browsers. It's seriously cool stuff. I know how l33t it is to be able to do complex ajaxy stuff right now, but soon those complex ajaxy stuff have to be standard fare and html 5 will help a lot in making that come true.&lt;br /&gt;&lt;br /&gt;Lightning talk... My first ever. And what do I remember most? Couch surfing by the totally awesome dude.. :D Lol.. wonder whether I might actually do that one day.. :P&lt;br /&gt;&lt;br /&gt;Keynote: Makkal Sakti by Jaya Kumar. Yeah!! Very cool. Run, study, redistribute, modify. The four freedom.. :D All men are created equal.. :D&lt;br /&gt;&lt;br /&gt;Then wrapping it up with all the speaker, crew and volunteers in front. Toru said it best when he mentioned "The world needs more love".. :D&lt;br /&gt;&lt;br /&gt;Foss.my was AWESOME!!! and I hope to be there next year (especially if it's at a beach.. ;)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-6144506882658305015?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/6144506882658305015/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=6144506882658305015' title='7 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/6144506882658305015'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/6144506882658305015'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2008/11/fossmy-is-awesome.html' title='foss.my is AWESOME!!!'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>7</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-3034787268892462035</id><published>2008-11-07T00:04:00.000+08:00</published><updated>2008-11-07T01:07:22.830+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mygosscon'/><category scheme='http://www.blogger.com/atom/ns#' term='thank you'/><title type='text'>MyGOSSCON 08 is over..</title><content type='html'>Alhamdullillah finally &lt;a href="http://mygosscon.oscc.org.my/"&gt;MyGOSSCON 08&lt;/a&gt; is over. InsyaAllah life will soon return back to normal.&lt;br /&gt;&lt;br /&gt;It is sometimes funny that when you talk in real life, face to face, you tend to forget or leave a lot of things out because you just missed it. So when you come back from the meeting only then do you realize the things that you really wanted to say. Happened to me after dinner going back home from oscc tonight. So I just want to say it here to get it off my chest.&lt;br /&gt;&lt;br /&gt;First and foremost, I want to congratulate the superb maestro Mr. Marzuki. He has done a great job conducting the implementation of &lt;a href="http://mygosscon.oscc.org.my/"&gt;MyGOSSCON 08&lt;/a&gt; from beginning to end. I was there and saw how much and how bad the problems he had to face, and even more amazingly how he overcame them with his trademark off handed coolness and kept his everlasting charm. **power** **power** /me doing the firdaus salute.&lt;br /&gt;&lt;br /&gt;Second of course a big thank you to the lovely &lt;a href="http://eavayatoss.blogspot.com/"&gt;Eavay&lt;/a&gt; for her excellent work in leading the development, design &amp;amp; maintenance of the &lt;a href="http://mygosscon.oscc.org.my/"&gt;MyGOSSCON 08 website&lt;/a&gt; and also for developing the &lt;a href="https://launchpad.net/plspeakers"&gt;plspeakers&lt;/a&gt; product for our intranet so that we can easily manage our speakers data. Personally I think that handling the speakers (something that I was actually officially responsible for, at least some of the speakers) has been made much easier with that product. And I think having a better infrastructure to actually work together and collaborate with in one of the primary reasons why I feel MyGOSSCON this year is a whole lot more easier than MyGOSSCON last year.&lt;br /&gt;&lt;br /&gt;Thirdly of course a big thank you to all of my team mates in SC1 (Shima, &lt;a href="http://razlina.blogspot.com/"&gt;Razlina&lt;/a&gt; and Yana) and not forgetting the head honcho &lt;a href="http://tboxmy.blogspot.com/"&gt;Mr Nicholas&lt;/a&gt; for all of their help and support in calling up the speakers and chair person. It wasn't easy but finally we got through it all (well, almost all.. ;). And later on MyGOSSCON itself &lt;a href="http://eavayatoss.blogspot.com/"&gt;eavay&lt;/a&gt; joined SC1 too and helped a lot. Another round of thank you to &lt;a href="http://eavayatoss.blogspot.com/"&gt;eavay&lt;/a&gt;. .. \o/&lt;br /&gt;&lt;br /&gt;Fourthly a big thank you to all the OSCC staff. It wasn't easy but finally we pulled it through, together. This thank you even includes ex OSCC staff the foss advocate extraordinaire &lt;a href="http://kaeru.inigo-tech.com/blog"&gt;kaeru&lt;/a&gt;. I can't help but think of him as I saw the awards for the OSS Case Studies given out to the winners. And thank you also Mr Firewall ;). It was tough I know. So to &lt;a href="http://kaeru.inigo-tech.com/blog"&gt;kaeru&lt;/a&gt;, kak siti, stanly, suria, Mr Jacob, Mr Foong, saro, &lt;a href="http://cawanpink.net/"&gt;nuhaa&lt;/a&gt;, &lt;a href="http://blog.harisfazillah.info/"&gt;cikgu&lt;/a&gt;, &lt;a href="http://linuxwave.blogspot.com/"&gt;hisham&lt;/a&gt;, &lt;a href="http://linux.indhran.info/"&gt;indhran&lt;/a&gt;, gopi, Mr Fauzi, &lt;a href="http://blog.myfenris.net/"&gt;e-jat&lt;/a&gt;, &lt;a href="http://slayachronicles.blogspot.com/"&gt;eric&lt;/a&gt;, achik, ella, kak aida, coreen and nadia, thank you all.&lt;br /&gt;&lt;br /&gt;Lastly thank you too all the speakers (especially those who I had to contact, please forgive me if I was ever rude or intruding) for their time and cooperation, thank you too to all the MAMPU staff and MEP staff who made MyGOSSCON 08 the success that it was. It was GREAT!!&lt;br /&gt;&lt;br /&gt;~~~&lt;br /&gt;&lt;br /&gt;Come to think of it, there is no way I could have thought of all of that on my feet ad hoc before dinner just now. So oh well, I need to improve some more.. :P&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-3034787268892462035?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/3034787268892462035/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=3034787268892462035' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/3034787268892462035'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/3034787268892462035'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2008/11/mygosscon-08-is-over.html' title='MyGOSSCON 08 is over..'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-7604906252478595357</id><published>2008-10-30T17:01:00.000+08:00</published><updated>2008-10-30T17:21:15.188+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='openSUSE'/><category scheme='http://www.blogger.com/atom/ns#' term='qemu'/><title type='text'>Running a service on qemu</title><content type='html'>Mmmmm.. choice is good. And one thing about linux is that there is a LOT of choices. Sometimes the differences between them is enough to make you think they are actually different OS's (/me ducks away from debate of what is an OS). But recently a user tried to install mymeeting on a SUSE machine and couldn't get it to work. When we tried a fresh install on our Ubuntu's the mymeeting version he downloaded worked just fine. So there might be something about the SUSE configuration that broke it. Since we didn't want to have to reformat any of our machines to do a fresh install of openSUSE we decided to just create a virtual machine and run it from there. Sure it might be slow. But we only got to make sure it can run je.. :P&lt;br /&gt;&lt;br /&gt;So we downloaded the &lt;a href="http://www.novell.com/products/opensuse/downloads/index.html"&gt;openSUSE&lt;/a&gt; iso and with instructions from &lt;a href="https://help.ubuntu.com/community/WindowsXPUnderQemuHowTo"&gt;https://help.ubuntu.com/community/WindowsXPUnderQemuHowTo&lt;/a&gt; we installed qemu. Then &lt;a href="http://kaeru.inigo-tech.com/blog"&gt;kaeru&lt;/a&gt; showed a neat trick. When we run the qemu, run it with redir like this:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;qemu -localtime -m 384 suse.img -kernel-kqemu -net nic -net user -redir tcp:8022::22 -redir tcp:8081::80&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;So the redir will open up the ports on your localhost to the virtual machine. `-redir tcp:8022::22` will open up the ssh port so you can do `ssh -p 8022 root@localhost` and manage the machine directly throught the command line. Haaaa.. Take that graphic heavy SUSE user interface... We beat you.. :P&lt;br /&gt;&lt;br /&gt;And of course `-redir tcp:8081::80` will open the http port so I can check the mymeeting system just by going to http://localhost:8081/mymeeting. Very usefull..&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-7604906252478595357?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/7604906252478595357/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=7604906252478595357' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/7604906252478595357'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/7604906252478595357'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2008/10/running-service-on-qemu.html' title='Running a service on qemu'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-2292479354644995791</id><published>2008-10-26T05:28:00.000+08:00</published><updated>2008-10-26T06:18:12.440+08:00</updated><title type='text'>Dell Inspiron Mini 9</title><content type='html'>Yesterday went to Low Yat to buy my cousin a sub RM 1500 notebook. Of course with that kind of price tag it would have to be a netbook jelah. Anyhow, I was short on time so I didn't get to browse thoroughly. Just went for one quick round around level 2 and picked the one that I thought would fulfil his need. The thing is, as soon as I stepped out of the lift there was a shop that sold the new Dell Inspiron Mini 9 for only RM 1199. I was suprised. Just 1199. I couldn't believe my eyes. With original Windows XP and all. RM 1199. I thought there must be something wrong. Better survey first. So went around level 2. There was nothing that could match that price. Most of the other netbook from acer, asus and lenovo even was around RM 1600. So I decided I'll just go with the Dell lah. But to tell you the truth if I had money to buy for my own use, I'd go with the Lenovo Ideapad S10. &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://laptoppimp.com/wp-content/uploads/2008/08/lenovo-ideapad-s10.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 500px; height: 366px;" src="http://laptoppimp.com/wp-content/uploads/2008/08/lenovo-ideapad-s10.jpg" alt="" border="0" /&gt;&lt;/a&gt;Fuh.. she's one sweet mama... Smooth rounded curves, slim white profile. Pergh.. But anyway, that was RM 1699 which is more than the budget so I went with the Dell.&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://farm4.static.flickr.com/3012/2971626064_963808b037.jpg?v=0"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 500px; height: 400px;" src="http://farm4.static.flickr.com/3012/2971626064_963808b037.jpg?v=0" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;The Dell has a keyboard with decent sized keys. I was actually able to touch type on it. But to achieve that there wasn't any dedicated function keys. So I don't think this would have been a good choice if say you wanted to give this to a blind person who uses the shortcuts a lot as he would not be able to find where the function keys are. And also there was some of the keys that moved from their normal place. The most obvious was the apostrophe which brought me to a screeching halt when I had to type it as it was not on the homerow as usual but on a tiny little key at the very bottom row.&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://farm4.static.flickr.com/3045/2971626060_82077a31f1.jpg?v=0"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 500px; height: 400px;" src="http://farm4.static.flickr.com/3045/2971626060_82077a31f1.jpg?v=0" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;The only downside was that it uses a 8GB SSD and with the minimal bare Windows XP there was only 3GB left... :D I asked the guy was there a Ubuntu Linux version. He went "Huh??". Very sad. In fact as far as I remember almost all the other brands were also displaying their XP variant. Yes, even asus was displaying their XP variant. Which is sad.&lt;br /&gt;&lt;br /&gt;As for the size of the netbook itself it is as small as most other netbook out there. It is small even when compared to my cute little face. :P &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://farm4.static.flickr.com/3232/2971626054_5091886310.jpg?v=0"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 500px; height: 400px;" src="http://farm4.static.flickr.com/3232/2971626054_5091886310.jpg?v=0" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Of course running Windoze XP it took a lot longer than my wife's asus which can be cold booted and used within 30 seconds. I didn't time it properly but felt close to 2 minutes before if became fully usable. As it came with a barebone Windows XP so as soon as I got home of course I downloaded firefox and OpenOffice.org. :D Not sure whether chrome might have been a better choice but firefox is good enough for me.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-2292479354644995791?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/2292479354644995791/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=2292479354644995791' title='21 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/2292479354644995791'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/2292479354644995791'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2008/10/dell-inspiron-mini-9.html' title='Dell Inspiron Mini 9'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>21</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-8701416618573843187</id><published>2008-10-25T03:49:00.000+08:00</published><updated>2008-10-25T04:57:32.703+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mercurial'/><category scheme='http://www.blogger.com/atom/ns#' term='launchpad'/><category scheme='http://www.blogger.com/atom/ns#' term='version control'/><category scheme='http://www.blogger.com/atom/ns#' term='git'/><category scheme='http://www.blogger.com/atom/ns#' term='bazaar'/><title type='text'>Of version control and hostings</title><content type='html'>Recently I was just stumbling along in the internet when suddenly I came to the &lt;a href="http://github.com/"&gt;github.com&lt;/a&gt; page. I had no idea there was such a page. And on that page came the answer to one of the questions that have been bugging me in my head, "why is the Ruby on Rails guru &lt;a href="http://blog.bitfluent.com/"&gt;Kamal&lt;/a&gt; giving a talk on using git at &lt;a href="http://foss.my"&gt;foss.my&lt;/a&gt;?". It is because RoR is hosted right there on &lt;a href="http://github.com"&gt;github.com&lt;/a&gt; as the most watched project. So he's been using git quite extensively then. Hmmm.. an example of how which project you are most involved with will effect your choice of version control tool.&lt;br /&gt;&lt;br /&gt;Some time ago I posted a few post on using mercurial and setting it up under lighttpd. &lt;a href="http://kaeru.inigo-tech.com/blog"&gt;Kaeru&lt;/a&gt; commented how he preferred bazaar over mercurial as his distributed version control of choice because &lt;a href="https://launchpad.net/"&gt;launchpad.net&lt;/a&gt; uses bazaar and zope (which he is heavily involved in) is hosted on &lt;a href="https://launchpad.net/"&gt;launchpad.net&lt;/a&gt;. Another example of how which project you are most involved with will effect your choice of version control tool.&lt;br /&gt;&lt;br /&gt;As for me I still prefer mercurial over bazaar mainly because that's what I've been using first since &lt;a href="http://torvalds-family.blogspot.com/"&gt;Linus&lt;/a&gt; mentioned it in his google &lt;a href="http://www.youtube.com/watch?v=4XpnKHJAok8"&gt;tech-talk on git&lt;/a&gt;. If it wasn't for because at that time there was a small possibility I might have to use windows so I preferred something written in python, I might have choosen git too. So I can't wait to hear &lt;a href="http://blog.bitfluent.com/"&gt;Kamal's&lt;/a&gt; talk.&lt;br /&gt;&lt;br /&gt;For most people they doesn't even use distributed version control but just version control in the form of subversion or even cvs. Of course the most famous hosting for this would be the venerable &lt;a href="http://sourceforge.net/"&gt;sourceforge.net&lt;/a&gt;. And so a lot of people would actually prefer subversion over git, mercurial or bazaar because their project of choice is hosted on &lt;a href="http://sourceforge.net/"&gt;sourceforge.net&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;But I did try bazaar a bit after &lt;a href="http://kaeru.inigo-tech.com/blog"&gt;kaeru&lt;/a&gt; mentioned it and even registered a project on &lt;a href="https://launchpad.net/"&gt;launchpad.net&lt;/a&gt;. Check out &lt;a href="https://launchpad.net/jocomgen"&gt;jocomgen&lt;/a&gt; if you are interested. It is a "Joomla Component Generator" for Joomla version 1.0. written in python and uses the mako template engine. It doesn't have any documention though but there is some example on how it could be used. And yes I do find it ironic that I'm using python to write php code. :P&lt;br /&gt;&lt;br /&gt;Another project on &lt;a href="https://launchpad.net/"&gt;launchpad.net&lt;/a&gt; is done by the lovely &lt;a href="http://eavayatoss.blogspot.com/"&gt;eavay&lt;/a&gt; called "Plone Speakers Product". Check out &lt;a href="https://launchpad.net/plspeakers"&gt;plspeakers&lt;/a&gt;. Basically it is a plone product which &lt;a href="http://eavayatoss.blogspot.com/"&gt;eavay&lt;/a&gt; created for use on the &lt;a href="http://oscc.org.my"&gt;OSCC&lt;/a&gt; intranet to manage the information of speakers for &lt;a href="http://mygosscon.oscc.org.my/"&gt;myGOSSCON&lt;/a&gt; 2008.&lt;br /&gt;&lt;br /&gt;And of course at &lt;a href="http://oscc.org.my"&gt;OSCC&lt;/a&gt; we use &lt;a href="http://svn.oscc.org.my"&gt;subversion&lt;/a&gt;. &lt;a href="http://knowledge.oscc.org.my/solution-areas/application/mymeeting"&gt;MyMeeting&lt;/a&gt; is also hosted &lt;a href="https://svn.oscc.org.my/mymeeting"&gt;there&lt;/a&gt;. In the end "Choice is good (tm)".&lt;br /&gt;&lt;span style="display: block;" id="formatbar_Buttons"&gt;&lt;span class="on down" style="display: block;" id="formatbar_CreateLink" title="Link" onmouseover="ButtonHoverOn(this);" onmouseout="ButtonHoverOff(this);" onmouseup="" onmousedown="CheckFormatting(event);FormatbarButton('richeditorframe', this, 8);ButtonMouseDown(this);"&gt;&lt;img src="img/blank.gif" alt="Link" class="gl_link" border="0" /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-8701416618573843187?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/8701416618573843187/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=8701416618573843187' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/8701416618573843187'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/8701416618573843187'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2008/10/of-version-control-and-hostings.html' title='Of version control and hostings'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-5776461748020850194</id><published>2008-10-18T09:06:00.000+08:00</published><updated>2008-10-18T09:07:57.503+08:00</updated><title type='text'>How to raise productivity</title><content type='html'>Lol... ain&amp;#39;t this the truth.. :P&lt;br&gt;&lt;a href="http://geekhero.iovene.com/2008/10/17/how-to-improve-productivity/"&gt;http://geekhero.iovene.com/2008/10/17/how-to-improve-productivity/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-5776461748020850194?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/5776461748020850194/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=5776461748020850194' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/5776461748020850194'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/5776461748020850194'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2008/10/how-to-raise-productivity.html' title='How to raise productivity'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-5368766366503958272</id><published>2008-10-11T05:34:00.000+08:00</published><updated>2008-10-11T05:39:58.789+08:00</updated><title type='text'>I love vim...</title><content type='html'>Vim is the ultimate editor for me. And the best thing is I can use it even if I *have* to work in Windoze... :D&lt;br /&gt;&lt;br /&gt;I wonder whether anyone is going to give some pointers in using it at the Malaysia’s premier Free and Open Source Software (FOSS) event.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://foss.my/"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 320px;" src="http://foss.my/wp-content/themes/w2_dnd/images/fossmy-logo.png" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;See you there..&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-5368766366503958272?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/5368766366503958272/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=5368766366503958272' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/5368766366503958272'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/5368766366503958272'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2008/10/i-love-vim.html' title='I love vim...'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-7790611713058809175</id><published>2008-10-04T14:17:00.000+08:00</published><updated>2008-10-04T14:35:46.988+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='centro'/><title type='text'>I love my Centro</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_DrnA8N0YTqk/SOcNkmw2zzI/AAAAAAAAAB4/mr4i-gSykig/s1600-h/Snap-C50D202E.bmp"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://2.bp.blogspot.com/_DrnA8N0YTqk/SOcNkmw2zzI/AAAAAAAAAB4/mr4i-gSykig/s320/Snap-C50D202E.bmp" alt="" id="BLOGGER_PHOTO_ID_5253182412882890546" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Lol.. I've been using my Centro quite extensively ever since I've got it. Especially after reading the book Kaeru recommended (although there's still a lot I haven't put into practice). But just yesterday was the first time I really fully appreciated the Google Maps on it. There I was thinking of how on earth do I get to KL from KB going through Terengganu. I've driven that way once, but that was a long time ago and my navigator at that time knew the road so I wasn't paying much attention. I could have called people up asking for directions, but that would have been a bit tedious too. Jeng.. jeng.. jeng.. I was able to look it up on Google Maps.&lt;br /&gt;&lt;br /&gt;So following route 3 all the way to Kuantan then jump on over to E8 for highway access all the way to KL. And quite surprisingly Digi's coverage is quite awesome. Of course I didn't check it every minute (don't drive while using Google Maps.. :p) , but whenever I did Google Maps was able to locate my location and show that I was on the right track home.&lt;br /&gt;&lt;br /&gt;Finally arrived at Serdang around 8.30 after 9 hours of driving.. :-S&lt;br /&gt;Fuh.. thank you Palm, Google, and Digi for showing me my way home..&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-7790611713058809175?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/7790611713058809175/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=7790611713058809175' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/7790611713058809175'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/7790611713058809175'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2008/10/i-love-my-centro.html' title='I love my Centro'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_DrnA8N0YTqk/SOcNkmw2zzI/AAAAAAAAAB4/mr4i-gSykig/s72-c/Snap-C50D202E.bmp' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-7648805240988896655</id><published>2008-10-01T00:54:00.001+08:00</published><updated>2008-10-01T00:54:53.367+08:00</updated><title type='text'>Raya again</title><content type='html'>Alhamdullillah it&amp;#39;s that time of year again. Ramadhan has marked a special time for me as it was just a few days before Ramadhan  last year when there was quite some major changes in my life. I moved from staying at Bangi to staying at Serdang. And I started working at oscc. So this raya comes as a witness that I have been at oscc for at least a year. And what a year it was.&lt;p&gt;There was ups and downs. There was joy and sorrow. There was pleasure and pain. But all in all it was all brilliant and I hope have made me a better person. And so to all that know me, I am sorry for any wrongs that I have done. Minta maaf zahir dan batin. And to everyone else, Selamay Hari Raya Aidilfitri and may we all be blessed.. :)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-7648805240988896655?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/7648805240988896655/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=7648805240988896655' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/7648805240988896655'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/7648805240988896655'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2008/09/raya-again.html' title='Raya again'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-7506497300393572511</id><published>2008-09-23T06:51:00.001+08:00</published><updated>2008-09-23T06:52:11.261+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='littering cyberspace'/><title type='text'>Long time no update</title><content type='html'>It has been a long time since my last post. And still longer actually. Just want to fill up the cyberspace with this empty post.. :P&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-7506497300393572511?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/7506497300393572511/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=7506497300393572511' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/7506497300393572511'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/7506497300393572511'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2008/09/long-time-no-update.html' title='Long time no update'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-3248133131378586793</id><published>2008-09-17T07:35:00.000+08:00</published><updated>2008-09-17T07:40:41.792+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mercurial'/><category scheme='http://www.blogger.com/atom/ns#' term='lighttpd'/><title type='text'>Serving mercurial using lighttpd fastcgi</title><content type='html'>Fuh.. Finally after 2 days of searching and experimenting I've gotten it to work. For the fastcgi part of lighttpd you have to have something like:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;&lt;tt&gt; "/hg" =&gt; (&lt;br /&gt;              (&lt;br /&gt;                      "bin-path"        =&gt; "/home/dev/web/hgwebdir.fcgi",&lt;br /&gt;                      "socket"          =&gt; "/tmp/hgwebdir.sock",&lt;br /&gt;                      "check-local"     =&gt; "disable",&lt;br /&gt;                      "disable-time"    =&gt; 1,&lt;br /&gt;                      "min-procs"       =&gt; 1,&lt;br /&gt;                      "max-procs"       =&gt; 1&lt;br /&gt;              ),&lt;br /&gt;&lt;/tt&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;Fuh.. That was where I was stuck with the most. For the rest just follow the guide at &lt;a href="http://www.selenic.com/mercurial/wiki/index.cgi/HgWebDirStepByStep#head-746ca383e3a62df34279ec2fca888113497da022"&gt;the mecurial wiki&lt;/a&gt;. As for configuring lighttpd authentication (very simple authentication at least :P) please refer to &lt;a href="http://www.cyberciti.biz/tips/lighttpd-setup-a-password-protected-directory-directories.html"&gt;this article at cyberciti&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Now I can get some work done.. :D&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-3248133131378586793?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/3248133131378586793/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=3248133131378586793' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/3248133131378586793'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/3248133131378586793'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2008/09/serving-mercurial-using-lighttpd.html' title='Serving mercurial using lighttpd fastcgi'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-7071880201489644328</id><published>2008-09-10T06:29:00.000+08:00</published><updated>2008-09-10T06:30:56.465+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='humour'/><title type='text'>Goggle chrome for Linux</title><content type='html'>Lol.. This is the current take on the newest google web browser on Linux.. Found while stumbling at &lt;a href="http://teddziuba.com/2008/09/a-web-os-are-you-dense.html"&gt;http://teddziuba.com/2008/09/a-web-os-are-you-dense.html&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-7071880201489644328?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/7071880201489644328/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=7071880201489644328' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/7071880201489644328'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/7071880201489644328'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2008/09/goggle-chrome-for-linux.html' title='Goggle chrome for Linux'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-7664426357954515324</id><published>2008-09-03T20:14:00.000+08:00</published><updated>2008-09-03T20:24:28.246+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='just life'/><title type='text'>Finally some peace...</title><content type='html'>Things are starting to calm down now. Before this things were pretty hectic at OSCC and at home. Next storm in the forecast is MyGOSSCON 2008. There might be little tornadoes here and there till then but insyaAllah mostly it will be alright.&lt;br /&gt;&lt;br /&gt;On the lighter side of things, my Centro is back. Palm finally replaced the unit and it is finally back in control of my life.. :P But there are still things to do. I didn't keep my mSD card properly while it was homeless and now it's pratically dead also. So got to get me a new one. Maybe an 8 gig one.. ;) A man can still dream...&lt;br /&gt;&lt;br /&gt;Puasa is already into the third day now. Mmmm.. so far not feeling the pinch yet. But I do miss being able to slowly sip hot Milo when thinking about whatever problems I have to face. And also miss being able to eat whatever Muhammad happens to not finish and try to put into my mouth.. :)&lt;br /&gt;&lt;br /&gt;Have learnt quite a bit lately. Especially useful is the `netstat -tupan | grep LISTEN` command which would show what programs are listening on what port. Very useful when troubleshooting a server that's running many things at the same time.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-7664426357954515324?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/7664426357954515324/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=7664426357954515324' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/7664426357954515324'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/7664426357954515324'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2008/09/finally-some-peace.html' title='Finally some peace...'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-230961380381072722</id><published>2008-08-23T19:12:00.000+08:00</published><updated>2008-08-23T19:14:13.365+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='sysadmin'/><category scheme='http://www.blogger.com/atom/ns#' term='linus'/><title type='text'>Tips for admins and more wisdom from Linus</title><content type='html'>I was reading the August edition of Arch newsletter (&lt;a href="http://www.archlinux.org/static/newsletters/newsletter-2008-Aug-04.html" target="_blank"&gt;http://www.archlinux.org/&lt;wbr&gt;static/newsletters/newsletter-&lt;wbr&gt;2008-Aug-04.html&lt;/a&gt;) and in it I found 2 articles which I was particularly interested in.&lt;br /&gt;1) 10 Essential tricks for admins (&lt;a href="http://www.ibm.com/developerworks/linux/library/l-10sysadtips/?ca=dgr-lnxw02aLinux10Tricks&amp;amp;S_TACT=105AGX59&amp;amp;S_CMP=GR" target="_blank"&gt;http://www.ibm.com/&lt;wbr&gt;developerworks/linux/library/&lt;wbr&gt;l-10sysadtips/?ca=dgr-&lt;wbr&gt;lnxw02aLinux10Tricks&amp;amp;S_TACT=&lt;wbr&gt;105AGX59&amp;amp;S_CMP=GR&lt;/a&gt;) is very useful and introduced me to a few things which I've never knew before. Haven't tried it yet but the combining of the screen session sounds cool. Gotta try it one day.&lt;br /&gt;2) Linus Torvalds, Geek of the week (&lt;a href="http://www.simple-talk.com/opinion/geek-of-the-week/linus-torvalds,-geek-of-the-week" target="_blank"&gt;http://www.simple-talk.com/&lt;wbr&gt;opinion/geek-of-the-week/&lt;wbr&gt;linus-torvalds,-geek-of-the-&lt;wbr&gt;week&lt;/a&gt;) is an interesting read on this man, Linus Trovalds. I know some people doesn't really like him for his rather... err.. not so polite ways of saying things. But I like the way he thinks. And doesn't mind his reference to masturbation once in a while..  :P Choice is good..&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-230961380381072722?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/230961380381072722/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=230961380381072722' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/230961380381072722'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/230961380381072722'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2008/08/tips-for-admins-and-more-wisdom-from.html' title='Tips for admins and more wisdom from Linus'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-6040179165210040104</id><published>2008-08-23T18:04:00.000+08:00</published><updated>2008-08-27T06:17:46.859+08:00</updated><title type='text'>Some tips for administrators and more wisdom from Linus..</title><content type='html'>I was reading the August edition of Arch newsletter&lt;br&gt;(&lt;a href="http://www.archlinux.org/static/newsletters/newsletter-2008-Aug-04.html"&gt;http://www.archlinux.org/static/newsletters/newsletter-2008-Aug-04.html&lt;/a&gt;)&lt;br&gt;and in it I found 2 articles which I was particularly interested in.&lt;br&gt;1) 10 Essential tricks for admins&lt;br&gt;(&lt;a href="http://www.ibm.com/developerworks/linux/library/l-10sysadtips/?ca=dgr-lnxw02aLinux10Tricks&amp;amp;S_TACT=105AGX59&amp;amp;S_CMP=GR"&gt;http://www.ibm.com/developerworks/linux/library/l-10sysadtips/?ca=dgr-lnxw02aLinux10Tricks&amp;amp;S_TACT=105AGX59&amp;amp;S_CMP=GR&lt;/a&gt;)&lt;br&gt;is very useful and introduced me to a few things which I&amp;#39;ve never knew&lt;br&gt;before. Haven&amp;#39;t tried it yet but the combining of the screen session&lt;br&gt;sounds cool. Gotta try it one day.&lt;br&gt;2) Linus Torvalds, Geek of the week&lt;br&gt;(&lt;a href="http://www.simple-talk.com/opinion/geek-of-the-week/linus-torvalds,-geek-of-the-week"&gt;http://www.simple-talk.com/opinion/geek-of-the-week/linus-torvalds,-geek-of-the-week&lt;/a&gt;)&lt;br&gt;is an interesting read on this man, Linus Trovalds. I know some people&lt;br&gt;doesn&amp;#39;t really like him for his rather... err.. not so polite ways of&lt;br&gt;saying things. But I like the way he thinks. And doesn&amp;#39;t mind his&lt;br&gt;reference to masturbation once in a while..  :P Choice is good..&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-6040179165210040104?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/6040179165210040104/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=6040179165210040104' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/6040179165210040104'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/6040179165210040104'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2008/08/some-tips-for-administrators-and-more.html' title='Some tips for administrators and more wisdom from Linus..'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-4851670660641896248</id><published>2008-08-20T22:49:00.001+08:00</published><updated>2008-08-21T06:29:28.963+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='just life'/><title type='text'>Humanity...</title><content type='html'>&lt;p&gt;Some of you might notice that I rarely write about non-technical stuff. Most of them are just notes for myself actually. But here's a post that is a bit different.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;kaeru introduced to me the book called "Time Management For System Administrators" and quite frankly it is a good book. And most of the tips are very applicable in real life unlike most "time management" ideas. But this week it has just been... emmm.. backfired, sort of. I can name at least two. The first one, my centro.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Oh my centro, what has happened to thee. I miss thy ever present memory of all things to come and needs to be. If any of you have been following my &lt;a href="http://identi.ca/abdza/all"&gt;identi.ca&lt;/a&gt; then you would know that my centro has kinda bit the dust. First it kept on syncing until it's batteries are dead. Then even when I have recharged the batteries it stays dead. Called palm and they want to replace my battery first. I know it's not just the batteries problem. After this they would have to replace the unit too. Why not just take it first already and spare me the agony of being centroless.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;So how did the book idea backfired? Well.. one of the great ideas in the book is that don't rely on your brains to remember stuff like todo's and appointments and stuff. Reserve your brain for more important things. Our tools like pda's and organizers keep a better record than our brains when it comes to just making sure you don't forget. So.. emmm.. I don't remember anything. It's all in the centro. If I had another one it won't be much of a problem, but I don't. Seriously thinking maybe I should just get myself an old fashion organizer. Won't be as effective but at least it is waaaay more reliable. Palm.. oh Palm..&lt;/p&gt;&lt;br /&gt;&lt;p&gt;What is the other one? Well.. one of the great ideas in the book is make a habit of filling your fuel consistently so that you don't get caught with no fuel. So you should set a certain time when you would fill your fuel tank to full even if it's not really empty yet (it cannot be completely full of course). So you don't have to every worry about suddenly finding that you are late for appointments and stuff but need to fill up your tank first. Mmmm.. I choose to fill my motorcycle's fuel tank 3 times a week. Going back from work on Monday, Wednesday and Friday. So today I went to KL to drop off my centro's battery at the drop off point. On the way coming back I saw my fuel tank almost empty. But thinking it would be alright because I'll be filling it up on the way back later, I didn't follow my gut feeling and went on with it. Guess what? On the way back right on the flyover heading towards Petronas at Precinct 8, my bike died (mmmm.. seems like my tools like to make a habit of dying on me).  So I had to push my bike.. :'( Ohhh... the agony... It is the most exercise I've got since a long time. Pushing motorcycles is hard work. Lucky for me some guy saw me pushing my bike and came to ask what's wrong. When I said I was out of fuel he offered to push me to Petronas. So lucky me was pushed from behind all the way to Petronas. I am sooo grateful. I didn't even get his name. Not even his plate number. Once we're there he just said okay and went off. God bless you unknown stranger. God bless you...&lt;/p&gt;&lt;br /&gt;&lt;p&gt;But in the book there is also another tip. Which was, use mantras. Things which normally happen to you. Make decision early about it, and remind yourself to take that decision every time using mantras. So my mantra now is "if it looks like it needs to refuel, just refuel damn&lt;br /&gt;it..'.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Oh well.. So that's what I wanted to share. Nothing all that spectacular and it ain't going to win a bestseller award or anything. So thank you for reading, and thank you unknown stranger for you help. Thank you. Thank you. Thank you.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-4851670660641896248?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/4851670660641896248/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=4851670660641896248' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/4851670660641896248'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/4851670660641896248'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2008/08/humanity.html' title='Humanity...'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-3477864438700730505</id><published>2008-08-12T06:51:00.001+08:00</published><updated>2008-08-12T06:51:35.204+08:00</updated><title type='text'>I'm on identi.ca too</title><content type='html'>&lt;div dir="ltr"&gt;Mmmm... I barely update this blog, maybe it&amp;#39;s too big. I should try something smaller. What&amp;#39;s smaller than a blog? A micro-blog. Just want to say I&amp;#39;m on &lt;a href="http://identi.ca/abdza"&gt;identi.ca&lt;/a&gt; now.&lt;br&gt; &lt;/div&gt; &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-3477864438700730505?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/3477864438700730505/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=3477864438700730505' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/3477864438700730505'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/3477864438700730505'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2008/08/im-on-identica-too.html' title='I&apos;m on identi.ca too'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-4571975084961619274</id><published>2008-08-07T10:00:00.001+08:00</published><updated>2008-08-07T10:00:41.668+08:00</updated><title type='text'>MyMeeting in the wild</title><content type='html'>&lt;div dir="ltr"&gt;Thank you cikgu for finally committing mymeeting into sourceforge and &lt;a href="http://blog.harisfazillah.info/2008/08/mymeeting-20-rc1-release.html"&gt;introducing&lt;/a&gt; it to the community. Even ccharles &lt;a href="http://www.bytebot.net/blog/archives/2008/08/05/malaysian-government-releases-first-open-source-software-package-mymeeting"&gt;blogged&lt;/a&gt; about it. As one of the developers of mymeeting I really hope this would be the beginning of something great in the Malaysian Public Sector. It would be good if we could get all of the great people out of the wood works of obscurity and make the open source community of Malaysia thrive with life. &lt;br&gt; &lt;/div&gt; &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-4571975084961619274?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/4571975084961619274/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=4571975084961619274' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/4571975084961619274'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/4571975084961619274'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2008/08/mymeeting-in-wild.html' title='MyMeeting in the wild'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-4438367633867877707</id><published>2008-07-29T10:34:00.001+08:00</published><updated>2008-07-29T10:34:13.282+08:00</updated><title type='text'>Creating a postgresql database in ubuntu</title><content type='html'>&lt;div dir="ltr"&gt;According to the docs I was supposed to just type `createdb debiancedb` but that would fail saying the user cannot be authenticated. Finally after much googling I found &lt;a href="http://ubuntuforums.org/showthread.php?t=43892"&gt;http://ubuntuforums.org/showthread.php?t=43892&lt;/a&gt; which basically says to do a `sudo -s -u postgres` first which would basically make me run the command as the postgres user. I think most probably the best solution is to add my user to the postgres group most probably. Haven&amp;#39;t tried it yet though.&lt;br&gt; &lt;/div&gt; &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-4438367633867877707?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/4438367633867877707/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=4438367633867877707' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/4438367633867877707'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/4438367633867877707'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2008/07/creating-postgresql-database-in-ubuntu.html' title='Creating a postgresql database in ubuntu'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-8720068185044758432</id><published>2008-07-19T17:32:00.000+08:00</published><updated>2008-07-19T17:51:10.683+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mercurial'/><category scheme='http://www.blogger.com/atom/ns#' term='update repo'/><title type='text'>Working with mercurial</title><content type='html'>A while back I wrote an intro about using mercurial as your own repository that does not require any network connection to commit. Finally I've come to the point where I have to send my modifications onto another machine. So how do I do it? Let's begin with having the project reside on a computer which we will call mainserver. On this machine we already have created a mercurial repo and has committed files into it. Let's say we have another machine which we will call devlaptop. And on the devlaptop there is no copy of the project yet. So here are the steps by steps to get your work done.&lt;br /&gt;&lt;br /&gt;1. First we will put a copy of the project into devlaptop. At the mainserver go to the project root directory and run the command `hg serve`. This should make the repo accesible on the default port 8000. Use the -p option to set to a different port. Then on the devlaptop run the command `hg clone http://mainserver:8000 projectname`. That will pull the project from the mainserver and put it into the projectname directory on the devlaptop. (Note: if your routes are not set properly just replace the name mainserver with the actual ip of mainserver)&lt;br /&gt;&lt;br /&gt;2. Do your thing. Fix up the project and stuff. Commit to the local repo like there's no tomorrow. Until your finally satisfied. All test have passed and it is time to finally put those changes on the mainserver.&lt;br /&gt;&lt;br /&gt;3. Put the changes from devlaptop onto the mainserver. First on the devlaptop go to the project root directory and run `hg serve`. That would make the repo available to others. Then on the mainserver just go to the project root directory and run `hg pull http://devlaptop:8000`. That will pull all the latest changes you've made on the devlaptop. But the repo will now be aware of the changes but have not applied them yet. To apply them run the command `hg update` on the mainserver and it should apply all the changes to the local repo. Now the mainserver has the most latest of your project.&lt;br /&gt;&lt;br /&gt;Simple...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-8720068185044758432?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/8720068185044758432/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=8720068185044758432' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/8720068185044758432'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/8720068185044758432'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2008/07/working-with-mercurial.html' title='Working with mercurial'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-130842632369875436</id><published>2008-07-18T16:31:00.001+08:00</published><updated>2008-07-18T16:31:17.219+08:00</updated><title type='text'>Answers of great programmers</title><content type='html'>&lt;div dir="ltr"&gt;This is already an old article actually, but stumbled upon it again. Just to share with all of you:&lt;br&gt;&lt;a href="http://www.stifflog.com/2006/10/16/stiff-asks-great-programmers-answer/"&gt;http://www.stifflog.com/2006/10/16/stiff-asks-great-programmers-answer/&lt;/a&gt;&lt;br&gt; It&amp;#39;s very interesting to see how great programmers think.&lt;br&gt;&lt;/div&gt; &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-130842632369875436?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/130842632369875436/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=130842632369875436' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/130842632369875436'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/130842632369875436'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2008/07/answers-of-great-programmers.html' title='Answers of great programmers'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-4998687968112644501</id><published>2008-07-16T11:58:00.001+08:00</published><updated>2008-07-16T11:58:57.704+08:00</updated><title type='text'>Infinite Hands are we...</title><content type='html'>&lt;div dir="ltr"&gt;Wow.. this is a pretty good song (imho) about free software and what it&amp;#39;s all about. Catch it on youtube at:&lt;br&gt;&lt;a href="http://www.youtube.com/watch?v=6B8SSKgkALc&amp;amp;feature=related"&gt;http://www.youtube.com/watch?v=6B8SSKgkALc&amp;amp;feature=related&lt;/a&gt;&lt;br&gt; &lt;br&gt;and if you want the lyrics check them out at:&lt;br&gt;&lt;a href="http://infinite-hands.rakjar.de/"&gt;http://infinite-hands.rakjar.de/&lt;/a&gt;&lt;br&gt;&lt;br&gt;And no law shall bind us or keep us for long, &lt;br&gt;for infinity&amp;#39;s ours and infinity&amp;#39;s free, &lt;br&gt; and no company owns us, and no land&amp;#39;s our own, &lt;br&gt;for Infinite Hands are we... :D&lt;br&gt;&lt;/div&gt; &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-4998687968112644501?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/4998687968112644501/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=4998687968112644501' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/4998687968112644501'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/4998687968112644501'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2008/07/infinite-hands-are-we.html' title='Infinite Hands are we...'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-629650313985960897</id><published>2008-07-15T11:37:00.001+08:00</published><updated>2008-07-15T11:37:53.357+08:00</updated><title type='text'>More eeepc resources</title><content type='html'>Here&amp;#39;s more resources for eeepc:&lt;br&gt;&lt;a href="http://wiki.eeeuser.com/howto:beginners_guide"&gt;http://wiki.eeeuser.com/howto:beginners_guide&lt;/a&gt;&lt;br&gt;&lt;a href="http://forum.eeeuser.com/"&gt;http://forum.eeeuser.com/&lt;/a&gt;&lt;br&gt;&lt;br&gt; And this article seems interesting about the Ubuntu Remix for notebook: &lt;a href="http://arstechnica.com/news.ars/post/20080604-hands-on-with-the-ubuntu-netbook-remix.html"&gt;http://arstechnica.com/news.ars/post/20080604-hands-on-with-the-ubuntu-netbook-remix.html&lt;/a&gt;&lt;br&gt; &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-629650313985960897?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/629650313985960897/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=629650313985960897' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/629650313985960897'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/629650313985960897'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2008/07/more-eeepc-resources.html' title='More eeepc resources'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-879466207183826569</id><published>2008-07-15T01:11:00.001+08:00</published><updated>2008-07-15T01:11:27.461+08:00</updated><title type='text'>More distros for the eeepc</title><content type='html'>Last week I got an eeepc for my wife&amp;#39;s birthday. She&amp;#39;s very happy with it. Thought I might like to borrow it once in a while, but after trying out the keyboard, it&amp;#39;s a no-go for a touch typist like me. But my wife&amp;#39;s a normal pc user who still hunt and peck most of the time. She&amp;#39;s very comfortable with it. Anyhow... I still wanted to hack the thing. Adding more repo would be the first thing I want to try. One of the page is: &lt;a href="http://www.r3uk.co.uk/index.php/home/36-useful-information/79-eeepc-tips-and-tricks"&gt;http://www.r3uk.co.uk/index.php/home/36-useful-information/79-eeepc-tips-and-tricks&lt;/a&gt;. But installing the repos there I find that there is a lot of broken packages where their dependecy is not met. Oh well.. the hunt continues...&lt;br&gt; &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-879466207183826569?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/879466207183826569/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=879466207183826569' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/879466207183826569'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/879466207183826569'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2008/07/more-distros-for-eeepc.html' title='More distros for the eeepc'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-8014399163886714667</id><published>2008-07-08T12:58:00.001+08:00</published><updated>2008-07-08T12:58:13.973+08:00</updated><title type='text'>Run C and Python in Flash?</title><content type='html'>Wow.. this would be so cool.. I want to run quake in my browser too.. :D&lt;br&gt;Check it out at &lt;a href="http://www.toolness.com/wp/?p=52"&gt;http://www.toolness.com/wp/?p=52&lt;/a&gt;&lt;br&gt; &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-8014399163886714667?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/8014399163886714667/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=8014399163886714667' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/8014399163886714667'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/8014399163886714667'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2008/07/run-c-and-python-in-flash.html' title='Run C and Python in Flash?'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-5889506448796944266</id><published>2008-07-07T16:22:00.001+08:00</published><updated>2008-07-07T16:22:57.882+08:00</updated><title type='text'>Important to priorities</title><content type='html'>I&amp;#39;ve always had to learn and relearn this lesson. You&amp;#39;ve got to get your priorities right. For example rushing for an appointment, and you&amp;#39;re already late. But your car or bike is low on fuel. Fill it first no matter how tempted you are to try your luck and hope you&amp;#39;de get there before your fuel runs out. You&amp;#39;d be late certainly but at least you&amp;#39;d arrive.&lt;br&gt; Same thing if you want to start your own business. It might be tempting to just dive in and get started but then if you didn&amp;#39;t stock up you might not even get there. But if you have took the time to plan and prepare you might get there a bit later but insyaAllah you&amp;#39;ll get there. And in every incident there is a lesson to learn if nothing else but to remind us to be humble as we move on in this life on our journey to the next. &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-5889506448796944266?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/5889506448796944266/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=5889506448796944266' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/5889506448796944266'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/5889506448796944266'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2008/07/important-to-priorities.html' title='Important to priorities'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-2512628229172905133</id><published>2008-07-02T08:28:00.000+08:00</published><updated>2008-07-02T08:33:48.748+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='centro'/><title type='text'>First thing to know</title><content type='html'>Hmmm.. I feel there is going to be quite a bit of change coming. Whichever way it is I feel there is a need for me to get my life together and start to be more organized. So what's the first step? Buy myself a &lt;a href="http://www.palm.com/my/products/smartphones/centro/"&gt;centro&lt;/a&gt; of course.. :P&lt;br /&gt;&lt;br /&gt;Haven't used a palm for quite a while since my lifedrive broke down about a year back. Guess what was the first thing I had to learn? Hard reset of course.. :D To do it on centro:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Take out the battery&lt;/li&gt;&lt;li&gt;Press the power button and keep it pressed while inserting the battery again&lt;/li&gt;&lt;li&gt;Release the power button only after the palm logo has finished loading&lt;/li&gt;&lt;li&gt;It will ask to press up to delete all the data. So press up&lt;/li&gt;&lt;li&gt;That's it&lt;/li&gt;&lt;/ol&gt;So next, how do I organize my life with this? Still a lot to learn..&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-2512628229172905133?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/2512628229172905133/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=2512628229172905133' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/2512628229172905133'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/2512628229172905133'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2008/07/first-thing-to-know.html' title='First thing to know'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-6519856723784649361</id><published>2008-06-28T18:58:00.000+08:00</published><updated>2008-06-28T19:02:11.404+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><category scheme='http://www.blogger.com/atom/ns#' term='python'/><title type='text'>VIM as a python IDE</title><content type='html'>Wow.. this is so coool.. Check it out at: &lt;a href="http://blog.sontek.net/2008/05/11/python-with-a-modular-ide-vim/"&gt;http://blog.sontek.net/2008/05/11/python-with-a-modular-ide-vim/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-6519856723784649361?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/6519856723784649361/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=6519856723784649361' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/6519856723784649361'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/6519856723784649361'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2008/06/vim-as-python-ide.html' title='VIM as a python IDE'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-6198255055746384327</id><published>2008-06-13T00:12:00.000+08:00</published><updated>2008-06-13T00:22:53.025+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mercurial'/><title type='text'>Own versioning repo</title><content type='html'>SVN is great as a version control system if you have many developers and require a single point of authoritative reference point for everyone. But if you're working on your own, it could get cumbersome since for every project you'd have to set up a repo first and then you can commit stuff. What's easier, &lt;a href="http://www.selenic.com/mercurial/wiki/"&gt;mercurial&lt;/a&gt;. How easy?&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;hg init&lt;br /&gt;hg add *&lt;br /&gt;hg commit -m "First commit"&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;And then the subsequent changes?&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;hg commit -m "Comment"&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;Need to browse the file changes and the like?&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;hg serve -n "Name of repo" -p 8091&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;-p is which port it'd run on localhost from. So the command above should be accessed at http://localhost:8091/. For more reference go to &lt;a href="http://hgbook.red-bean.com/hgbook.html"&gt;http://hgbook.red-bean.com/hgbook.html&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-6198255055746384327?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/6198255055746384327/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=6198255055746384327' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/6198255055746384327'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/6198255055746384327'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2008/06/own-versioning-repo.html' title='Own versioning repo'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-5762949760312360720</id><published>2008-06-05T07:15:00.000+08:00</published><updated>2008-06-05T07:18:30.489+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mirror'/><category scheme='http://www.blogger.com/atom/ns#' term='wget'/><title type='text'>Using wget to browse offline</title><content type='html'>I used to do this all the time, but haven't done it for quite a while until I forgot how to do it. Luckily I found back the original reference here:&lt;br /&gt;&lt;a href="http://www.gnu.org/software/wget/manual/html_node/Very-Advanced-Usage.html"&gt;http://www.gnu.org/software/wget/manual/html_node/Very-Advanced-Usage.html&lt;/a&gt; and in summary the command that need to be run is:&lt;br /&gt;&lt;pre&gt;wget -m -k -K -E http://www.gnu.org/ -o /home/me/weeklog&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-5762949760312360720?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/5762949760312360720/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=5762949760312360720' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/5762949760312360720'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/5762949760312360720'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2008/06/using-wget-to-browse-offline.html' title='Using wget to browse offline'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-6754533235411695305</id><published>2008-05-30T19:15:00.000+08:00</published><updated>2008-05-30T19:20:28.721+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='google'/><title type='text'>Learn to google</title><content type='html'>&lt;a href="http://google.com"&gt;Google &lt;/a&gt;is one of those things which is so widely used it has become a verb by itself 'Just google it up'. It has become synonymous to internet searches just like when people want to buy tooth paste they'd say 'I'm going to go buy some colgate'. But did you know it's even a calculator, a currency converter, a dictionary of sorts? Well, look it up &lt;a href="http://www.google.com/help/features.html"&gt;here &lt;/a&gt;and you'll find that you can use it for so much more.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-6754533235411695305?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/6754533235411695305/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=6754533235411695305' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/6754533235411695305'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/6754533235411695305'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2008/05/learn-to-google.html' title='Learn to google'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-1001093777887944326</id><published>2008-05-25T01:48:00.000+08:00</published><updated>2008-05-25T02:19:44.756+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='python'/><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><category scheme='http://www.blogger.com/atom/ns#' term='game'/><title type='text'>Develop it FAST!!!</title><content type='html'>I've always liked game programming. That's what got me to start programming in the first place. But even with all the current advancement in technology and tools I've never actually got round to making one to the finish. While idly stumbling I've found this interesting article entitled "&lt;span class="title"&gt;&lt;a href="http://www.gamedev.net/reference/articles/article2259.asp"&gt;How To Build a Game In A Week From Scratch With No Budget&lt;/a&gt;". That Jay Barson must be one heck of a talented fella to be able to pull of what he did. Takes a lot of experience to be able to tell which way down the road you need to go when you've got to get there quick. Anyhow, what I liked best about the article is the lessons he learned after finally having done it:&lt;br /&gt;&lt;/span&gt;&lt;ul&gt;&lt;li&gt;Lesson 10: Doing something like this really was worthwhile&lt;/li&gt;&lt;ul&gt;&lt;li&gt;I know what he means when he says "You wouldn't think that working on Yet Another Game would feel like a vacation, but it did." Sometimes I feel I need to do that too. After a long stretch on one project, you just need a short sprint on a smaller one to just revitalize yourself.&lt;/li&gt;&lt;/ul&gt;&lt;li&gt;Lesson 9: Cutting features isn't always free&lt;/li&gt;&lt;ul&gt;&lt;li&gt;Sometimes we think it's better to not do something in a more holistic way, we don't need THAT much bells and whistle. But in the end sometimes not doing it that way makes it so much harder to do even small things and things start to become repetitive and error prone REAL fast.&lt;/li&gt;&lt;/ul&gt;&lt;li&gt;Lesson 8: Do the important stuff first&lt;/li&gt;&lt;ul&gt;&lt;li&gt;"If I pretend that I only have those 8 hours to 'finish' the game, what could I do that would make the biggest difference in those 8 hours?". That's a good way of thinking what do we really have to do to make it work. Probably should apply to most of my projects too.&lt;/li&gt;&lt;/ul&gt;&lt;li&gt;Lesson 7: Scope will expand to exceed your budget and schedule&lt;/li&gt;&lt;ul&gt;&lt;li&gt;LOL.. I do this a LOT.. :D "Every programmer I've ever met tends to underestimate the time required for him or her to complete a feature.". Ask my manager, he'd know.. ;)&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;li&gt;Lesson 6: Get the game playable as fast as possible&lt;/li&gt;&lt;ul&gt;&lt;li&gt;I know I've always tried to get my projects up as soon as possible so that the clients can give feedback as soon as possible. Sure you have a list of features to implement, but sometimes when all is dark, a lone beacon in the distance can make all the difference.&lt;/li&gt;&lt;/ul&gt;&lt;li&gt;Lesson 5: It's sometimes much faster to throw away old code and start over&lt;/li&gt;&lt;ul&gt;&lt;li&gt;Ahhh.. one of those things that makes working in the software industry seems so volatile. You can work on a set of feature for a whole week to find that the way you should have implemented it is different and you just throw away the whole weeks' work. But actually it's never thrown away. It's hidden deep in your consciousness  on how you should implement it the next time.&lt;/li&gt;&lt;/ul&gt;&lt;li&gt;Lesson 4: Python Rules!&lt;/li&gt;&lt;ul&gt;&lt;li&gt;I couldn't agree more.. :D&lt;/li&gt;&lt;/ul&gt;&lt;li&gt;Lesson 3: Don't underestimate the art requirements&lt;/li&gt;&lt;ul&gt;&lt;li&gt;Oh yeah.. so many times I've implemented so many killer features only to find customers looking at the unmade up interface and say "where's the value added in this???". Huh!! It doesn't matter you can do this and that, if it's ugly I don't want it. Sadly I'm not a full fledged graphic artist though.&lt;/li&gt;&lt;/ul&gt;&lt;li&gt;Lesson 2: I need to be more efficient in my use of time&lt;/li&gt;&lt;ul&gt;&lt;li&gt;"Better use of my time means I can get more done AND have more 'free time' to do other things". Oh, how true.&lt;/li&gt;&lt;/ul&gt;&lt;li&gt;Lesson 1: IT CAN BE DONE&lt;/li&gt;&lt;ul&gt;&lt;li&gt;Yeah... :D&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-1001093777887944326?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/1001093777887944326/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=1001093777887944326' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/1001093777887944326'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/1001093777887944326'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2008/05/develop-it-fast.html' title='Develop it FAST!!!'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-14138037116268178</id><published>2008-05-24T09:21:00.000+08:00</published><updated>2008-05-24T09:33:40.091+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='live usb'/><category scheme='http://www.blogger.com/atom/ns#' term='fedora'/><category scheme='http://www.blogger.com/atom/ns#' term='clamav'/><title type='text'>Using clamav in fedora</title><content type='html'>Hmm.. I might have to try to scan a windoze comp for viruses later this afternoon. So thinking the best way to clean up the thing would be doing it from a linux boot and then scan it. First thing to pop up in my mind was "Hey, use the fedora usb drive you've got". So went scouring google for pointers on how best to use clamav under fedora and found one at: &lt;a href="http://blogs.warwick.ac.uk/jrose/entry/using_clamav_in/"&gt;http://blogs.warwick.ac.uk/jrose/entry/using_clamav_in/&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Anyhow, to summarise it you have to install the clamav and clamav-update package. Edit /etc/freshclam.conf file. Comment the `Example` line and change the `db.XY.clamav.net` to `db.MY.clamav.net` or whatever your country code happens to be. Run `freshclam` (as root) to update the database and `clamscan -r --quiet /to/windows/partition/mount` to scan the windows mount. The --quite part is so that it'd list only those that have been found problematic so that you don't have to look for them with you bare naked eyes in the middle of thousands of lines of filenames. That should be it. Hope it works this afternoon.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-14138037116268178?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/14138037116268178/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=14138037116268178' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/14138037116268178'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/14138037116268178'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2008/05/using-clamav-in-fedora.html' title='Using clamav in fedora'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-6079019554464462096</id><published>2008-05-21T11:51:00.000+08:00</published><updated>2008-05-21T12:14:23.633+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><category scheme='http://www.blogger.com/atom/ns#' term='history'/><title type='text'>The editor of a programmer</title><content type='html'>I think in every profession there is always a certain tool which is so important that the professional would have one very personal to his heart. He loves using it and would not think of using any other. For the chef would be his knife, for the samurai his katana, for the gamer his perfectly aligned customized and calibrated mouse (who on earth in his right mind would buy a 500 ringgit mouse???). But I consider myself a programmer and the tool close to my heart as a programmer is my editor. Oh how I love my editor, namely vim (please don't flame me, I like emacs too but don't use it anymore).&lt;br /&gt;&lt;br /&gt;So while I was just idly surfing around looking for inspirations I bumped into this page entitled "&lt;a href="http://www.theregister.co.uk/2003/09/11/bill_joys_greatest_gift/"&gt;Bill Joy's greatest gift to man&lt;/a&gt;" and it gives an interesting view on the origin of vi (vim's much revered parent). In the article in mentions "&lt;b class="Q"&gt;So the editor was optimized so that you could edit and feel productive when it was painting slower than you could think"&lt;/b&gt;. We don't live in that kind of world now. Our computers could probably render 3d worlds faster than we can imagine them now, but still the feel productive part is essential. How productive? Look at &lt;a href="http://www.viemu.com/a-why-vi-vim.html"&gt;Why, oh WHY, do those #?@! nutheads use vi?&lt;/a&gt; to understand. :D&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-6079019554464462096?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/6079019554464462096/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=6079019554464462096' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/6079019554464462096'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/6079019554464462096'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2008/05/editor-of-programmer.html' title='The editor of a programmer'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-3970548374311494815</id><published>2008-05-20T13:06:00.000+08:00</published><updated>2008-05-20T14:18:34.008+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='color scheme'/><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>vim colour scheme</title><content type='html'>Don't you just love the wide range of things you can customize with open source software. One of the things that some people really stick to is color schemes. Some like it light, others like it dark, even others like it pink :S.&lt;br /&gt;&lt;br /&gt;Anyhow, whichever your preference is, it's nice to know you can change the color scheme of your favorite editor, vim. Just create the directory ~/.vim/colors and copy any color_scheme.vim file you find there (eg. &lt;a href="http://blog.micampe.it/articles/2006/10/20/vim-tango-color-scheme"&gt;tango&lt;/a&gt;, &lt;a href="http://www.vim.org/scripts/script.php?script_id=1401"&gt;zen&lt;/a&gt;). Then restart vim and do a `:colorscheme name_of_color_scheme` or in gvim go to the edit-&gt;color scheme-&gt;name of color scheme menu. You can also add `colorscheme name_of_color_scheme` into your ~/.vimrc file to make it a permanent change everytime vim loads.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-3970548374311494815?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/3970548374311494815/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=3970548374311494815' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/3970548374311494815'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/3970548374311494815'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2008/05/vim-colour-scheme.html' title='vim colour scheme'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-2137108041538016142</id><published>2008-05-20T01:18:00.001+08:00</published><updated>2008-05-20T01:25:09.695+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='selinux'/><category scheme='http://www.blogger.com/atom/ns#' term='fedora'/><title type='text'>First hurdle</title><content type='html'>Lol... it's only been an hour of trying of fedora 9 and I have already stumbled into the first thing I have never had to face before, SELinux. I never had to face this problem on any of the distro's I've tried before (Namely because they didn't have SELinux installed on default). But as soon as I try to access my php project (which I checked out from svn, on a live usb disk... how coooool is that??? :D) it pops up saying that httpd is somehow violating it's policy by trying to access .htaccess (Huh??). Well, no biggie, just go to System-&gt;Administration-&gt;SELinux Mangement and change it to permissive (to turn it off requires a reboot, which I'm not willing to make) and the site works pretty well already. Man.. Now I can work on any computer I have access too.. But with lotsa RAM of course.. ;P&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-2137108041538016142?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/2137108041538016142/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=2137108041538016142' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/2137108041538016142'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/2137108041538016142'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2008/05/first-hurdle.html' title='First hurdle'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-5559148414695653178</id><published>2008-05-20T00:03:00.000+08:00</published><updated>2008-05-20T00:19:43.750+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='fedora'/><category scheme='http://www.blogger.com/atom/ns#' term='usb live'/><title type='text'>First taste of Fedora 9</title><content type='html'>Thanks to the constant persuasion by &lt;a href="http://blog.kagesenshi.org/"&gt;kagesenshi&lt;/a&gt; I finally tried out Fedora 9 as a Live USB Drive. And I am impressed. I haven't got any screen shots but the installation was way easy.&lt;br /&gt;If you have access to a windows computer (shouldn't be a problem for the majority of people) go to &lt;a href="http://lewk.org/blog/liveusb-creator-2.0.html"&gt;lewk.org&lt;/a&gt; and download the liveusb-creator 2. The program can download the iso required by itself but I have already downloaded it earlier. Just select the iso and choose how much persistent overlay that you want.&lt;br /&gt;Now here's the thing about the smart overlay. It is used by fedora to keep track of all the changes you made to your live USB so that your changes would be persistent. It's really nice. I tried installing inkscape after booting the usb and also saved a firefox bookmark. Both are still there when I rebooted again. Very nice.. :)&lt;br /&gt;But the smart overlay is no longer available for your normal usb use. So I would suggest that you give enough smart overlay for you to install your required programs and settings and such but leave the rest so that you can save your files where it can be accessed normally as a usb disk. With the smart overlay of course you can save all your files to the normal home directory but you will not be able to access this home directory if you did not boot from the usb. Kinda defeat the purpose of being able to be access everywhere.&lt;br /&gt;Haven't had the chance to extensively test it yet but so far I am very very impressed. Looking like another distro jump is possible in the near future... :P&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-5559148414695653178?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/5559148414695653178/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=5559148414695653178' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/5559148414695653178'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/5559148414695653178'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2008/05/first-taste-of-fedora-9.html' title='First taste of Fedora 9'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-3041093105228188734</id><published>2008-05-10T00:02:00.001+08:00</published><updated>2008-05-10T00:03:22.016+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='humour'/><title type='text'>My life..</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www2.picturepush.com/photo/a/381350/1024/random-pics/Moderniteit2008.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px;" src="http://www2.picturepush.com/photo/a/381350/1024/random-pics/Moderniteit2008.jpg" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;LOL.. found this while stumbling..&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-3041093105228188734?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/3041093105228188734/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=3041093105228188734' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/3041093105228188734'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/3041093105228188734'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2008/05/my-life.html' title='My life..'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-4592263960374458879</id><published>2008-05-07T17:49:00.000+08:00</published><updated>2008-05-07T17:51:38.244+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='css'/><title type='text'>Headaches of keeping up with standards</title><content type='html'>Ugh.. I haven't done any real top to bottom, beginning to end, full css tableless design for such a long time, I have forgotten how to do it. But here's a good place to start:&lt;br /&gt;&lt;a href="http://www.positioniseverything.net/articles/onetruelayout/"&gt;http://www.positioniseverything.net/articles/onetruelayout/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-4592263960374458879?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/4592263960374458879/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=4592263960374458879' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/4592263960374458879'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/4592263960374458879'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2008/05/headaches-of-keeping-up-with-standards.html' title='Headaches of keeping up with standards'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-6983019473384062976</id><published>2008-04-29T11:52:00.000+08:00</published><updated>2008-04-29T12:00:07.912+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='inspect'/><title type='text'>Inspecting object in javascript</title><content type='html'>An interesting problem is to inspect unknown objects in javascript. Found a good example of how to do it &lt;a href="http://www.codeproject.com/KB/miscctrl/JS_Inspect_Object.aspx"&gt;here&lt;/a&gt;. Just to rehash in case the site move:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;function inspect(obj, maxLevels, level)&lt;br /&gt;{&lt;br /&gt; var str = '', type, msg;&lt;br /&gt;&lt;br /&gt;   // Start Input Validations&lt;br /&gt;   // Don't touch, we start iterating at level zero&lt;br /&gt;   if(level == null)  level = 0;&lt;br /&gt;&lt;br /&gt;   // At least you want to show the first level&lt;br /&gt;   if(maxLevels == null) maxLevels = 1;&lt;br /&gt;   if(maxLevels &amp;lt; 1)    &lt;br /&gt;       return '&amp;lt;font color="red"&amp;gt;Error: Levels number must be &amp;gt; 0&amp;lt;/font&amp;gt;';&lt;br /&gt;&lt;br /&gt;   // We start with a non null object&lt;br /&gt;   if(obj == null)&lt;br /&gt;   return '&amp;lt;font color="red"&amp;gt;Error: Object &amp;lt;b&gt;NULL&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt;';&lt;br /&gt;   // End Input Validations&lt;br /&gt;&lt;br /&gt;   // Each Iteration must be indented&lt;br /&gt;   str += '&amp;lt;ul&amp;gt;';&lt;br /&gt;&lt;br /&gt;   // Start iterations for all objects in obj&lt;br /&gt;   for(property in obj)&lt;br /&gt;   {&lt;br /&gt;     try&lt;br /&gt;     {&lt;br /&gt;         // Show "property" and "type property"&lt;br /&gt;         type =  typeof(obj[property]);&lt;br /&gt;         str += '&amp;lt;li&amp;gt;(' + type + ') ' + property +&lt;br /&gt;                ( (obj[property]==null)?(': &amp;lt;b&amp;gt;null&amp;lt;/b&amp;gt;'):('')) + '&amp;lt;/li&amp;gt;';&lt;br /&gt;&lt;br /&gt;         // We keep iterating if this property is an Object, non null&lt;br /&gt;         // and we are inside the required number of levels&lt;br /&gt;         if((type == 'object') &amp;amp;&amp;amp; (obj[property] != null) &amp;amp;&amp;amp; (level+1 &amp;lt; maxLevels))&lt;br /&gt;         str += inspect(obj[property], maxLevels, level+1);&lt;br /&gt;     }&lt;br /&gt;     catch(err)&lt;br /&gt;     {&lt;br /&gt;       // Is there some properties in obj we can't access? Print it red.&lt;br /&gt;       if(typeof(err) == 'string') msg = err;&lt;br /&gt;       else if(err.message)        msg = err.message;&lt;br /&gt;       else if(err.description)    msg = err.description;&lt;br /&gt;       else                        msg = 'Unknown';&lt;br /&gt;&lt;br /&gt;       str += '&amp;lt;li&amp;gt;&amp;lt;font color="red"&amp;gt;(Error) ' + property + ': ' + msg +'&amp;lt;/font&amp;gt;&amp;lt;/li&amp;gt;';&lt;br /&gt;     }&lt;br /&gt;   }&lt;br /&gt;&lt;br /&gt;     // Close indent&lt;br /&gt;     str += '&amp;lt;/ul&amp;gt;';&lt;br /&gt;&lt;br /&gt;   return str;&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-6983019473384062976?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/6983019473384062976/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=6983019473384062976' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/6983019473384062976'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/6983019473384062976'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2008/04/inspecting-object-in-javascript.html' title='Inspecting object in javascript'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-5878406651702674840</id><published>2008-04-29T10:47:00.000+08:00</published><updated>2008-04-29T10:52:09.955+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='cakephp'/><category scheme='http://www.blogger.com/atom/ns#' term='ajax'/><title type='text'>Javascript ninja on Cakephp</title><content type='html'>Fuh.. Cakephp by default uses the &lt;a href="http://script.aculo.us/"&gt;script.aculo.us&lt;/a&gt; library for ajax which uses the &lt;a href="http://www.prototypejs.org/"&gt;prototype&lt;/a&gt; javascript library. To get you're ninja on prototype you can refer directly to the &lt;a href="http://www.prototypejs.org/api"&gt;docs&lt;/a&gt;. Good stuff..&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-5878406651702674840?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/5878406651702674840/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=5878406651702674840' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/5878406651702674840'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/5878406651702674840'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2008/04/javascript-ninja-on-cakephp.html' title='Javascript ninja on Cakephp'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-3261428818967475128</id><published>2008-04-29T08:54:00.000+08:00</published><updated>2008-05-14T08:23:16.496+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='hardy heron'/><category scheme='http://www.blogger.com/atom/ns#' term='firefox'/><category scheme='http://www.blogger.com/atom/ns#' term='beta'/><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu'/><category scheme='http://www.blogger.com/atom/ns#' term='firebug'/><title type='text'>Using firebug in Ubuntu Hardy Heron</title><content type='html'>*Update* Yesterday &lt;a href="http://kaeru.inigo-tech.com/blog"&gt;kaeru&lt;/a&gt; pointed out that firebug from the ubuntu repo works with the default firefox 3 beta on Hardy. Just tried it and I'm glad to report it does work very nicely. No more need for this workaround.. Just look for it in synaptic or apt-get install firebug.&lt;br /&gt;&lt;br /&gt;What can I say? Ubuntu is pretty bleeding edge. :P It comes with firefox 3 beta 5 which is pretty slick. But there are still a lot of add-ons which do not work with firefox 3 beta. Earlier on I've blogged about using the 1.1 beta of firebug with firefox 3 beta. It works pretty well on my home box which runs arch linux. But on my computer at the office running on Ubuntu, firebug doesn't even come out. So I had to find a way around.&lt;br /&gt;&lt;br /&gt;Luckily Firdaus of OSCC showed me that you actually can install Firefox 2 on Ubuntu. It's still in the repo and you just have to select it with synaptic or apt-get 'Firefox-2'. But the default installation will share the same default profile of Firefox 3 and so will break firebug when you launch Firefox 3. So what can you do? &lt;a href="http://blog.kagesenshi.org/"&gt;KageSenshi&lt;/a&gt; showed me how creating profiles for firefox will solve the problem. Well, first you have to create a different profile just for Firefox 2 by running 'firefox-2 -profilemanager'. There you can create your profile. Make sure you never use this new profile with Firefox 3 so what we do is that we change the command of the icon to start firefox 3 to 'firefox -P "Default"' and the icon to start firefox 2 to 'firefox-2 -P "firefox2"' (Use the name of the profile you created before). I don't think you can run both versions at the same time but I don't have time to experiment right now. These settings work and I have to get back to work.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-3261428818967475128?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/3261428818967475128/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=3261428818967475128' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/3261428818967475128'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/3261428818967475128'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2008/04/using-firebug-in-ubuntu-hardy-heron.html' title='Using firebug in Ubuntu Hardy Heron'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-3601836117535330708</id><published>2008-04-19T00:16:00.000+08:00</published><updated>2008-04-19T00:19:39.875+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='server name'/><category scheme='http://www.blogger.com/atom/ns#' term='virtual host'/><category scheme='http://www.blogger.com/atom/ns#' term='Apache'/><title type='text'>VirtualHost in apache</title><content type='html'>Finally understand it after reading:&lt;br /&gt;&lt;a href="http://www.onlamp.com/pub/a/apache/2003/07/24/vhosts.html?page=2"&gt;http://www.onlamp.com/pub/a/apache/2003/07/24/vhosts.html?page=2&lt;/a&gt;&lt;br /&gt;I was having lotsa trouble understanding why wasn't my rules applying to the vhost I was setting up. But after reading that I know you weren't suppose to create multiple NameVirtualHost entry. Just one. The ServerName inside the VirtualHost block will determine whether that block applies to the query or not.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-3601836117535330708?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/3601836117535330708/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=3601836117535330708' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/3601836117535330708'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/3601836117535330708'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2008/04/virtualhost-in-apache.html' title='VirtualHost in apache'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-293572360245694460</id><published>2008-04-18T09:54:00.000+08:00</published><updated>2008-04-18T10:02:27.045+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='public authentication key'/><category scheme='http://www.blogger.com/atom/ns#' term='password'/><category scheme='http://www.blogger.com/atom/ns#' term='ssh'/><category scheme='http://www.blogger.com/atom/ns#' term='scp'/><title type='text'>Using ssh and scp without a password</title><content type='html'>ssh and scp are very useful for making sure you work in a pretty secure environment. But sometimes it can be a hassle if you have to keep on keying in your password to login many times to the server or you might need to write a backup script but do not want to write your password in the script then I have found a solution at &lt;a href="https://help.ubuntu.com/community/SSHHowto#public-key-auth"&gt;https://help.ubuntu.com/community/SSHHowto#public-key-auth&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Basically what you need to do is copy your public key to the authorized keys file on the server. If you haven't got a public key yet just type in:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;ssh-keygen -t dsa&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;And that will create an id_dsa.pub file in your ~/.ssh folder (By default, you can set it in other places if you want). Anyway, copy the content of that file (it should be just one line) into the ~/.ssh/authorized_keys file on the server you want to login. Now whenever you ssh username@server you'll access it straight away without any password. And scp also works without password so you can write those scripts.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-293572360245694460?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/293572360245694460/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=293572360245694460' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/293572360245694460'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/293572360245694460'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2008/04/using-ssh-and-scp-without-password.html' title='Using ssh and scp without a password'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-8458384837501235871</id><published>2008-04-18T05:50:00.000+08:00</published><updated>2008-04-18T05:53:11.777+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='bash'/><category scheme='http://www.blogger.com/atom/ns#' term='script'/><title type='text'>Bash your head on this..</title><content type='html'>Uhm.. Bash scripts are really great.. But sometimes you just forget how to do even the simplest thing (like how do you set an else condition :P). So here's a very good and simple starting point at:&lt;br /&gt;&lt;a href="http://www.faqs.org/docs/Linux-HOWTO/Bash-Prog-Intro-HOWTO.html"&gt;http://www.faqs.org/docs/Linux-HOWTO/Bash-Prog-Intro-HOWTO.html&lt;/a&gt;. That should be able to bring you up to speed till you start writing whole apps in bash.. ;)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-8458384837501235871?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/8458384837501235871/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=8458384837501235871' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/8458384837501235871'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/8458384837501235871'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2008/04/bash-your-head-on-this.html' title='Bash your head on this..'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-4168492275268671725</id><published>2008-04-17T13:05:00.000+08:00</published><updated>2008-04-17T13:08:08.156+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ldap'/><category scheme='http://www.blogger.com/atom/ns#' term='svn'/><title type='text'>svn, ldap and groups.. big words</title><content type='html'>Alhamdullillah.. just got svn with ldap auth working. And even restricting commit by user group. It was quite tedious to finally get the settings right, but here's some references which was used:&lt;br /&gt;&lt;a href="http://directory.fedoraproject.org/wiki/Howto:Apache"&gt;http://directory.fedoraproject.org/wiki/Howto:Apache&lt;/a&gt;&lt;br /&gt;&lt;a href="http://authzldap.othello.ch/reference.html#AuthzLDAPGroupKey"&gt;http://authzldap.othello.ch/reference.html#AuthzLDAPGroupKey&lt;/a&gt;&lt;br /&gt;Starting to look good.. :)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-4168492275268671725?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/4168492275268671725/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=4168492275268671725' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/4168492275268671725'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/4168492275268671725'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2008/04/svn-ldap-and-groups-big-words.html' title='svn, ldap and groups.. big words'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6823080099887112748.post-1409990540970629569</id><published>2008-04-16T10:58:00.000+08:00</published><updated>2008-04-16T11:01:32.457+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='lighttpd'/><category scheme='http://www.blogger.com/atom/ns#' term='ldap'/><category scheme='http://www.blogger.com/atom/ns#' term='auth'/><title type='text'>Using ldap auth in lighttpd</title><content type='html'>Alhamdullillah.. It is quite easy to set up lighttpd to authenticate using ldap. Found a reference here: &lt;a href="http://wiki.netbsd.se/Lighttpd_on_NetBSD"&gt;http://wiki.netbsd.se/Lighttpd_on_NetBSD&lt;/a&gt;. Just enable mod auth and follow the examples in the wiki. Great.. :)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6823080099887112748-1409990540970629569?l=blog.abdullahsolutions.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.abdullahsolutions.com/feeds/1409990540970629569/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6823080099887112748&amp;postID=1409990540970629569' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/1409990540970629569'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6823080099887112748/posts/default/1409990540970629569'/><link rel='alternate' type='text/html' href='http://blog.abdullahsolutions.com/2008/04/using-ldap-auth-in-lighttpd.html' title='Using ldap auth in lighttpd'/><author><name>Abdullah Zainul Abidin</name><uri>http://www.blogger.com/profile/11911631264806130448</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DrnA8N0YTqk/SKD1Psxt_2I/AAAAAAAAABs/cgh66eiLivw/s1600-R/abdza-identica.jpg'/></author><thr:total>0</thr:total></entry></feed>
