Monday, December 6, 2010

pivotaltracker looks sharper this time around - kudos to the team

via Ping.fm

Thursday, December 2, 2010

Video stuttering in Maverick

After upgrading from Lucid to Maverick, I've been facing this problem. The video didn't really work in VLC or in Media Player. Even when viewing YouTube, the video always not playing smoothly. Either the video or audio kept stuttering. So today I have found the solution - remove .pulse folder and it's good like new.

I'm one happy girl right now.

Wednesday, September 29, 2010

Blog changes

I have made some changes to my blog. FYI, http://www.cawanpink.net no longer contains my blog posts. Instead it will display a collection of posts from all over the place. It's what I do most these days, microblog. I post pics, I curse at someone :P, I elevate at the awesomeness of linux, you get the picture. Usually it's kinda short update. So I guess it's better that way than have the visitors look to all over the places (Twitter, Mobypicture, Identi.ca, etc) to get latest updates from me.

Sure, if I have more than 140 characters to say, I'll blog in http://blog.cawanpink.net. RSS feed also changes. A couple of planets I know of subscribing from my blog, please use http://blog.cawanpink.net/rss.xml from now on. Else you're going to get a black hole.

But those who's interested to subscribe to my collection of life updates (you stalker crazy freakzzz), it's http://www.cawanpink.net/rss

Thanks. Talk to you later.

Sunday, August 22, 2010

Thinking of changing the blog template

Well coz it's been a while since I really blog these days. This is especially due to the existence of Facebook and Identica/Twitter. I used to blog alot but now any personal post I no longer post it here, only in Facebook. What to do with this blog? It's like a place where I throw code snippets stuff now and then, which primarily is for me, to grab later on.

Twitter is much faster to post, as I don't have to put in so much thought to express myself. It's so much easier to post short notices and pics these days using Twitter. Writing these 2 paragraphs is not easy, I really have to think to compose the words! The days when they are very fluid are over now. I'm getting old.

You know, one other thing that's been keeping me real slow in updating the blog is I kinda have this feeling that I don't have the freedom to write as much as in the old days. Maybe because I'm well aware of the audience of this blog now or maybe I don't have to ramble on as much anymore. See, old age catching up. Arrghh!!

Thursday, August 5, 2010

git git git!

Create repo
mkdir mygit
cd mygit
git init
git add .
git commit -m 'initial commit'

Checkout repo
cd mygit
git clone url myrepo

Create branch
git branch -a
git checkout -b branchtoworkon origin/existingbranch or git checkout existingbranch
git branch branchtoworkon
git checkout branchtoworkon

Push branch
git push origin branchtoworkon

Create tag
git tag -l
git tag 1.0

Push tag
git push origin 1.0

Delete branch/tag
git tag -d 1.0
git branch -d branchtoworkon
git push origin :branchtoworkon

Wednesday, August 4, 2010

KDE desktop - ick!

I hate it. No matter how much I tried to get used to it, it's just not working for me. It installed a horde of these K apps that I don't really like. This is the last time I ever will try KDE. LXDE is better, maybe Fluxbox even better who knows. I'm going to try that one after this.

Tuesday, July 6, 2010

Now that it's semester break again - my attention turns to books

Empress Orchid arrived at the most appropriate time. Perfect! By the way, I can't believe I didn't buy a single book in 2009. What a hectic life I had.

[caption id="attachment_2214" align="aligncenter" width="300" caption="Look at how battered they are (the red one has been passed around for 4 years!)"]

Media_httpblogcawanpi_hbcor

[/caption]

[caption id="attachment_2215" align="aligncenter" width="300" caption="This one has been to UK, US, Bosnia, Finland, Canada and now it's in Malaysia!"]

Media_httpblogcawanpi_bccul

[/caption]

I bought The Lovely Bone earlier this year coz I've been hearing people raved and raved about how good it was. It's an old book but good ones should have the same effect the very first time you read it. I'm losing touch with my inner nerdness - heh! I used ti visit bookstore often and I used to know what books were good and came well recommended. And mind you I don't read chicklit except for Cecilia Ahern's masterpieces ok.

I bet you don't know what chicklit is. It's short for chicks' literature. Books that fall into that category include the Shopaholic series, Devil Wears Prada, Bridget Jones Diary (yes people those are books before they are moviezzz). They're usually very light read, useful when you're in stress and need a quick pages of relief during lunch breaks. But I don't do that. It's just what I imagine the books for. I couldn't get myself to finish one of those (except for Ms. Ahern's) at any given time. And I won't buy any chicklits anymore, not ever (except for Ms. Ahern's).

I'm kind of an old soul. I think that's why I don't get chicklits. People are mystified why I like History channel so much. Or Discovery or NG, you get the idea. I don't watch Astro Ria that much, I think it's purely entertainment, not much substance there. But I don't watch much news channel either, as I don't like war and politics. Music wise, I like standards. Yes I do think it's odd but I like those, especially the lyrics in those times. See? Old soul :)

Been such a looooooooooooooong time since I updated my blog. This felt good.

Thursday, June 10, 2010

Bzr curl connection error when accessing using HTTPS

Note to self:

If using bzr to checkout svn repo and it spits out bzr: ERROR: Connection error: curl connection error, use https+urllib instead of only https. Refer http://doc.bazaar.canonical.com/bzr.dev/en/user-guide/http_smart_server.html

Saturday, April 3, 2010

Load model dynamically in CakePHP

Sometimes I may need a model that's only going to be used in an action, not the whole controller to lighten the load. Or in that rare occasion when I have to load a model that's not what the controller meant to work with.

I've used this for quite a while now, based on discussion in CakePHP mailing list here.

1. Controller::loadModel('yourmodel'); (preferred)

// in app/controllers/car_controllers.php
Controller::loadModel('Book');
$this->Book->find('all'); // the object initiated and added as a property to the controller, persistModel is enabled




or
2. ClassRegistry::init('yourmodel');

// in app/controllers/car_controllers.php
$book = ClassRegistry::init('Book'); // returns the object
$book->find('all');

Friday, March 26, 2010

A couple observation on people & the elevator

I use elevator to get to work and to get to home. So I spend time in elevators everyday for at least 4 times, no matter how brief it is, there's plenty to see and comment.

Observation 1 - People are selfish (or probably just ignorant), they don't hold the doors for others


This happened alot at home. It's general rule of thumb, if you're the first one to get in the elevators, be considerate enough to hold the doors for others who's coming after you lah! Most of the time I saw them just go in and right away stood at the very back and just stood there. In over 2 years I've been living here I can count how many times people held the door - it's no more than 10.

99.99% of the apartment's residence are malays. Is this a racial issue? Or is this about being in Putrajaya? In the city where people are more of a mixed race, I encountered better attitude. Whether they know you or not, they hold the doors for you, even more if you're a lady. Because this doesn't happen in the office. I'm not so sure about offices in Putrajaya - is it the same?? Or does this just happen at my apartment?

Guys, be a gentleman. Ladies, show them we have heart by doing so we kick ass.

Observation 2 - We are lazy, we live in first floor we still need to take the elevator


Use the stairs lah! Get some workout. In a country where people are not very health conscious and think gyms are for the rich and for people who have so much time on their hands, taking the stairs is good for you. Unless you have groceries or screaming kids or riding the elevator alone, consider getting some exercise.

I think this happens everywhere here. We are all lazy.

Sunday, March 21, 2010

Custom filter query in symfony 1.4

This cracked my head in this wee hour. Thankfully I got it working.


# add the custom field in myapp/modules/client/config/generator.yml
filter:
display: [ existing_fields, paid_up_cap_more]
fields:
paid_up_cap_more: { label: Paid up capital (RM) - more than }





// in lib/filter/doctrine
class CrmClientFormFilter extends BaseCrmClientFormFilter
{
public function configure() {
$this->widgetSchema['paid_up_cap_more'] = new sfWidgetFormInput();
$this->validatorSchema['paid_up_cap_more'] = new sfValidatorPass(array ('required' => false));
}

public function getFields() {
$fields = parent::getFields();
$fields['paid_up_cap_more'] = 'paid_up_cap_more';
return $fields;
}

// must be in this format addXXXXXColumnQuery
protected function addPaidUpCapMoreColumnQuery($q, $element, $value) {
if (!empty($value)){
$q->andWhere('paid_up_capital >= ?', $value);
return $q;
}
}
}

Tuesday, March 2, 2010

virtualenv

I kept getting back to virtualenv and every time I would totally forget how to go about it and had to start googling. Every time. Frustrating. This is usually when Plone is involved.

So.

$ sudo apt-get install python-virtualenv
$ virtualenv -p /usr/bin/python2.4 /home/cawanpink/python2.4
$ source /home/cawanpink/python2.4/bin/activate
(python2.4)$ deactivate




That's

  • install

  • create the Python 2.4 virtual environment

  • activate the environment

  • to get out of the environment

Saturday, February 20, 2010

Cheap cheap

[caption id="attachment_2172" align="alignleft" width="240" caption="RM19.90 only! Where else, MPH Alamanda Putrajaya where the shelves for English fictions are the same size with their Malay counterparts."]

Media_httpblogcawanpi_qzopv

[/caption]

After sooo many moons, I got this book.

I have quite a long list of books to read but have been resisting the urge to buy any coz I know they'll end up on the shelf collecting dust. I like going to bookstores. I love looking at the bestsellers and new arrivals. Books price here is considerably expensive for me. Average for those 300-pagish is around RM40 where in US it's only USD3.99. What a world would it be if they cost RM3.99 too here. Hmmpphh you wish!

I miss the feeling after reading a good book. I have no idea yet when to start reading this one, I bought it coz I've read Empress Orchid by the same author, and I liked it, and RM19.90 is cheap.

Friday, February 12, 2010

For Syah anak Pak Hilal

She's just soooo in angau right now that's it has become fascinating to read her FB status sometimes heheheheh... If only I can see the guy's picture. It seems like he doesn't realize that someone likes him that much. Syah kalau dia tu celebriti sori la aku takleh tulong... Yang lain aku leh usahakan ahaks! Bukan aku je, Elin, Jenet n geng aku rasa diorg akan beria-ria nak tulong nak hook you up girl. Teehee.

So what made me want to write this post? Just now on the way back to the office, Smile was playing on the radio and just like that, it reminded me of her.

You're better than the best
I'm lucky just to linger in your life
Cooler than the flip-side of my pillow, that's right
Completely unaware
Nothing can compare to where you send me
Lets me know that it's okay, yea, it's okay
And the moments when my good times start to fade

You make me smile like a sun, fall outta bed
Sing like a bird, dizzy in my head
Spin like a record, crazy on a Sunday night
You make me dance like fool, forget how to breathe
Shine like gold, buzz like a bee
Just the thought of you can drive me wild
Oh, you make me smile

Even when you don't
Somehow you come along
Just like a flower pokin through the sidewalk crack
And just like that
You steal away the rain
And just like that

Don't know how I lived without you
'Cuz everytime that I get around you
I see the best of me inside your eyes
You make me smile

Monday, February 8, 2010

No title for this one.

Had a very good sleep (the meds the doctor prescribed me knocked me out for a good 12 hours, twice). Fever is gone, headache's gone. I woke up fresh and relaxed. Thanks Dr., I like your clinic btw.

In the light of recent event, I admit that I've wronged my housemates. For that there's nothing I can say except I'm sorry. For the curious, sorry dear friends, I'd like to keep this to myself please. I have been selfish and inconsiderate, that I only realized recently. I will keep my self invisible as much as possible around the house for the time being. That's the only thing that I can think of at the moment that I can do to say I'm sorry.

Let me tell you about my housemates. I've never blogged about them, haven't I? Not once. Well I've been staying with them for 2 years now. Kak Yatie messaged me on the phone on the availability of the room. I quickly came over to have a look at the house. Physically she's tall, fair skinned, and she always has smiles on her face whenever she's talking to me. She's a neat and organized person, and such a gentle human being. The way she rearranges stuff in the fridge always made me smile. She come across as a very quiet person at first but after a while, I found out that heyyy... she's quite a talker. Sometimes, I overheard her talking on the phone in her northern accents, just remineds me of home. There's a high chance she's good with the kids too since I often saw she brought her nieces over for a visit. Siti came and joined us right after I settled in. As opposed to Kak Yatie, Siti has a strong character. Fair skinned and is of chinese descendant, she's one emotional person, and opiniated one at that too. She cracks jokes most of the time, sometimes even without her realizing it. She's honest and she can be the light of a party. Both of them like to have a good laugh, make fun of tv shows, share the same interests. That's how I'd describe them. We're not that close but yes they are good people.

Anyway, while I'm sad at the way things have happened, I can't help myself getting upset too. You know when people get angry and the say all this hurtful things to you? It is bound to happen no matter what and in my case there's no exception. That's why I prefer a more calmer, diplomatic way of approaching issues. I know that if I break out I'll say all those things I'll regret later. People are going to get hurt.

As wrong as I may be to you, it doesn't give you the right to judge me, who I am or who I am going to be. More importantly, it certainly doesn't give you the right to insult my friends. You have no idea to what length these people has gone for me. Insulting them is like insulting me.

A private person that I am, I only share minor details randomly with people. Somehow, people manage to connect the dots. While it may be true, it also may be wrong. When it's wrong it hurts.

Did I deserve to be yelled and shouted at? Yes, because I made a mistake. Talking bad about my friends? No.

I understand all is said while in anger, but I'm a human nevertheless. After all is done, I only believe in a more calmer approach to all of world problems. It may not solve the problem, but it won't create new ones unnecessarily.

I have been thinking to sit with them and talk this through. But I'm having second thought. After weighing the options, maybe not.

Wednesday, January 27, 2010

What a nice day to begin with, reading these lines

Got it from forwarded email. It made me feel good at where I am now. Anything better, it's a privilege. Anything less, I don't feel like I'll lose anything. I already have what I want.
Siapakah orang yang sibuk? Orang yang sibuk adalah orang yang tidak mengambil berat akan waktu solatnya seolah-olah ia mempunyai kerajaan seperti kerajaan Nabi Sulaiman a.s

Siapakah orang yang manis senyumanya? Orang yang mempunyai senyuman yang manis adalah orang yang ditimpa musibah lalu dia kata "Inna lillahi wainna illaihi rajiuun." Lalu sambil berkata,"Ya Rabbi Aku redha dengan ketentuanMu ini", sambil mengukir senyuman.

Siapakah orang yang kaya? Orang yang kaya adalah orang yang bersyukur dengan apa yang ada dan tidak lupa akan kenikmatan dunia yang sementara ini.

Siapakah orang yang miskin? Orang yang miskin adalah orang tidak puas dengan nikmat yang ada sentiasa menumpuk-numpukkan harta.

Siapakah orang yang rugi? Orang yang rugi adalah orang yang sudah sampai usia pertengahan namun masih berat untuk melakukan ibadat dan amal-amal kebaikan...

Siapakah orang yang paling cantik? Orang yang paling cantik adalah orang yang mempunyai akhlak yang baik.

Siapakah orang yang mempunyai rumah yang paling luas? Orang yang mempunyai rumah yang paling luas adalah orang yang mati membawa amal-amal kebaikan di mana kuburnya akan di perluaskan saujana mata memandang.

Siapakah orang yang mempunyai rumah yang sempit lagi dihimpit? Orang yang mempunyai rumah yang sempit adalah orang yang mati tidak membawa amal-amal kebaikkan lalu kuburnya menghimpitnya...

Siapakah orang yang mempunyai akal? Orang yang mempunyai akal adalah orang-orang yang menghuni syurga kelak kerana telah mengunakan akal sewaktu di dunia untuk menghindari siksa neraka..

Siapakah org yg KEDEKUT ? Orang yg kedekut ialah org yg membiar atau membuang email ini begitu sahaja, malah dia tidak menyampaikan pula pada org lain.

Thursday, January 21, 2010

I'm on semester break!

I suddenly found this huge amount of time. I mean really HUGE. I have week nights and weekends free. Well maybe not to you, but it is that huge if you're studying part time. I was so used to worry about assignments and studying every moment every day, now for the next 3 months I am free! So I've been this free only for a week, I got my room cleaned up - got it into much neater state (heh) by bringing in 3 new proper furnitures - a bed, a study table and a wardrobe. Now everything is in its place and happy.

I'm not going to take pictures of my room (sorry Kak Watiey heheh) - it's such a sacred place for me. But they are very similar like these, except mine all in dark wood colour:






Media_httpuploadecvvc_badql



Media_httpwwwhupsheng_wwcsv



Ok that's done and now last night I started looking at Django + PostgreSQL + Python in general. Was kinda slow, I have this habit of looking too far ahead (maybe it's thinking too much) so I was worried that I would ruin my laptop in the future by blindly install everything inside. Typical woman? Being paranoid of nothing? Yea jumping in too early is not my thing, I'm scared if anything goes wrong. Laptop dies, application breaks, stuff happens yes I know but I don't want it to be because I didn't do my best to prevent it from happening.

Anyway, yea I'm embracing this temporary new found freedom - will put it to good use. Was so tempting to watch TV (I LOVE WATCHING TV - enough said) at nights but like my mom says "TV will be there forever waiting for you, go do something else better" so no worries there. Besides, I like programming. It's like a drug. I remember Harish Pillay said during FOSS.my 2009, "How do you think an author wins an award for his/her book? He/She probably reads alot of other books to write it. So, how do you be good in programming? You read alot of codes."

I love that man.

Thursday, January 14, 2010

Vista in Ubuntu

I had Windows Vista Home Premium installed last night on my Ubuntu machine. I have 2GB RAM and 250GB of hardisk. Initially I wanted to install XP but turned out the only original DVD we have is Vista Home Premium, so be it! I've been wanting to try virtual machine for a long time already but then yesterday that very geek kernel hacker, Nur Hussein, triggered the apt-get move in me with a line "VirtualBox is so cool!".

What's VirtualBox? In layman terms, you can have multiple OS running at the same time on your pc without rebooting. Those of you who only know Windows all their life, yes there are alot of other alternative OS you can try, like Ubuntu. Hey install Ubuntu on your Windows using VirtualBox, that's possible too.

Installing another OS (guest OS) on your existing OS (host OS) will take space and consume memory. In my case, I have allocated 1GB of RAM and 40GB of space for Vista according to its recommended system requirement. So that's 40GB off of my 250GB and if I switch on Vista I have only 1GB left for Ubuntu, which is ok for me (it only takes 384MB of RAM for Ubuntu). So you have to plan your memory allocation carefully as you must allocate as much as you can to let the guest OS run properly but do not do it until your host OS is left with not enough for it to run either.

What do you need for virtual machine?
1. PC that can meet the minimum requirement
2. VirtualBox
3. Guest OS installation CD/DVD

Install VirtualBox
Add deb http://download.virtualbox.org/virtualbox/debian karmic non-free in /etc/apt/sources.list then sudo apt-get update.

$ sudo apt-get install dkms
$ wget -q http://download.virtualbox.org/virtualbox/debian/sun_vbox.asc -O- | sudo apt-key add -
$ sudo apt-get install virtualbox-3.1



Install Vista on Ubuntu Karmic
1. Insert installation CD/DVD.
2. Follow instructions here. It's well documented!

And then finally.

[caption id="attachment_2141" align="aligncenter" width="602" caption="Windows Vista Home Premium on Ubuntu Karmic"]



[/caption]

I think 40GB of hardisk is abit overkill for me. And 2GB of RAM is kinda limiting for virtual machines. Well, despite all that, I'm going to have fun first and then think. That's the way to go in this crazy days. You'll never know when you're going to be hit with molokov cocktails....

Wednesday, January 6, 2010

Now I know how to mine data

There's just too many techniques on how you can do data mining. In grad school we only got to know 1 technique - by using artificial neural network. There's a tool for this - Weka. Download and install it or sudo apt-get it (yes imagine my surprise when I found out about this).

What's data mining?


Well, basically it's a process to get a knowledge (eg. if customers buy diapers, most likely they will buy beers too) from your data (imagine spreadsheets filled with numbers and strings). You may have thousands of records but how do you make sense of it? You mine those data, and get a pattern. From there you'll get a knowledge. So from this you can put beers next to diapers in supermarkets to increase sales. That's the general idea.

There's a 90% chance that the data you got is not cleaned aka there's missing values, some data are not consistent (eg. in sex can only have F or M, there's a value Q?), and some data are just plain rubbish. The data need to go through preprocessing stage. For missing values, you have to filled them up, either using mean or median values, whichever is best for your data. The same goes to inconsistent data. This is where working with experts in the domain you're working in is very important. You don't want to remove what you think is rubbish but it actually means something.

Then we have data discretization process where you reduce that huge amount of data but they still carry the same value. Afterwards we normalize the data. After this is done, then the data is ready for the modelling exercise.

Classification


One of the benefit you get from data mining is classification. It's where you can predict if you have this data (eg. male, married, doesn't have children, have regularly purchase beer for the past year) whether beer purchase is likely. So it will classify to something like this purchase_beer equals to 0 (no) or 1 (yes). In order for the model to predict 0 or 1, the model itself has to be trained with alot of data. Train it until it reaches the accuracy we want, above 90% is good. A trained model with very high accuracy is going to be an asset as you can feed it data and it will spit out what we want.

The most difficult part in doing this for me is the data preprocessing part. You have to have quality cleaned data to produce quality results. You have to carefully select which kind of data is relevant to your goal (eg. would you want to include one's job as one of the attributes considered for the diapers-beers example?) which is why having domain experts is important. They also have to determine how each data should affect the result (eg. job probably affects 10% but marital status affects 80% towards diapers-beers purchase).

I just love AI


There are just so many preprocessing methods & data mining hybrid techniques already been researched by academicians. I'm just so overwhelmed by the amount of technical papers on this. They probably not so much IT savvy like us, the implementors as they call it, but they definitely have the brain on that part of the world. We just have to scour through this massive database and get it to run on our apps. Well, should you need it that is. Coz processing thousands of data can take hours or days, some months, depending on your machine spec.

Open data


While doing data mining assignment last 2 weeks, I became frustrated with the unavailability of data in Malaysia. Sad. Maybe it's still difficult for us to see it now, I'm already imagining all the stuff we can do with those data like in JPA, MOHR, MOH, MOHE - fuhhhh I'm all shuddery now. Even in OSCC, those training feedback forms and MyGOSSCON feedback forms - hmm whatever happened to those?

There are concerns of exposing private data I guess. Well, if you ask me make the data anonymous, as I couldn't care less who got promoted last year. I only want the 'spec' of that person who got promoted - age, sex, location, department, salary, is he respected by peers, does he drive, etc, that kind of stuff, you get the idea.

Hmm.. this will take another 10 years to realise, I think.