<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" xml:lang="en">
    <title type="text">BigEvilEmpire</title>
    <subtitle type="html">This feed contains all posts from journal and codelog.</subtitle>
    <link rel="alternate" type="text/html" href="http://www.bigevilempire.com/journal/" />
    
    <updated>2010-02-04T09:20:09Z</updated>
    <rights>Copyright (c) 2009, BigEvilEmpire</rights>
    <generator uri="http://expressionengine.com/" version="1.6.8">ExpressionEngine</generator>
    <id>tag:bigevilempire.com,2009:06:02</id>


    <atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/atom+xml" href="http://feeds.feedburner.com/bigevilempire" /><feedburner:info uri="bigevilempire" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><entry>
      <title>Bondi Icebergs Club</title>
      <link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/bigevilempire/~3/Yi2-_lPDNuo/" />
      <id>tag:bigevilempire.com,2009:journal/1.46</id>
      <published>2009-06-02T05:34:45Z</published>
      <updated>2009-06-02T16:42:08Z</updated>
      <author>
            <name>BigEvilEmpire</name>
            <email>ronnieliew@gmail.com</email>
                  </author>

      <category term="Random" scheme="http://www.bigevilempire.com/journal/archives/category/category/random/" label="Random" />
      <content type="html">
        &lt;p&gt;Even if I do qualify to be a member, I am pretty sure I would not be brave enough to go swimming at the &lt;a title="Bondi Icebergs Swimming Club" href="http://www.icebergs.com.au/"&gt;Bondi Icebergs Club&lt;/a&gt;. Never mind the freezing cold water, they take their swimming seriously. To be a full swimming member, one has got to swim three out of four Sundays for 5 years.&lt;/p&gt;

&lt;p&gt;&lt;a class="no-ext" href="http://www.flickr.com/photos/arzie13/3586983689/" title="View 'Bondi Icebergs swim club' on Flickr.com by arzie13"&gt;&lt;img class="top" src="http://farm4.static.flickr.com/3364/3586983689_524461d7c0_o.jpg" alt="Bondi Icebergs swim club" width="614px" height="452px" /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;What I would want is to be there at the club on the cliff top overlooking the famous Bondi Beach, staring at the ocean as the waves repeatedly explode over at the defying sea wall. Preferably warmly clothed.&lt;/p&gt;

&lt;p&gt;The amazing photo shown above is courtesy of &lt;a title="Ross Zietz" href="http://www.rosszietz.com/"&gt;Ross Zietz&lt;/a&gt;.&lt;/p&gt; 
      &lt;img src="http://feeds.feedburner.com/~r/bigevilempire/~4/Yi2-_lPDNuo" height="1" width="1"/&gt;</content>
    <feedburner:origLink>http://www.bigevilempire.com/journal/entry/bondi-icebergs-club/</feedburner:origLink></entry>

    <entry>
      <title>Flashcamp SF</title>
      <link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/bigevilempire/~3/ps9V7M8i1Fw/" />
      <id>tag:bigevilempire.com,2009:journal/1.45</id>
      <published>2009-05-30T22:08:56Z</published>
      <updated>2009-06-02T16:44:31Z</updated>
      <author>
            <name>BigEvilEmpire</name>
            <email>ronnieliew@gmail.com</email>
                  </author>

      <category term="Events" scheme="http://www.bigevilempire.com/journal/archives/category/category/events/" label="Events" />
      <content type="html">
        &lt;p&gt;My Friday night was spent at the &lt;a title="FlashCamp homepage" href="http://www.flashcamp.org/"&gt;FlashCamp&lt;/a&gt; SF. This is the second FlashCamp organized by Adobe and like its predecessor, it was held over at the Adobe San Francisco Office. For the uninitiated, the FlashCamps are free developer events focused on the Adobe Flash Platform.&lt;/p&gt;

&lt;p&gt;&lt;a class="no-ext" href="http://www.flickr.com/photos/75662727@N00/3576830951" title="View 'Tshirt from Flashcamp' on Flickr.com"&gt;&lt;img class="top right" src="http://farm4.static.flickr.com/3618/3576830951_c7314cf764_m.jpg" alt="Tshirt from Flashcamp" width="200px" height="272px" /&gt;&lt;/a&gt;This time, the event was mainly revolving around the next generation of the Flex SDK, code-named Gumbo. It was a huge night for the Flash community as Adobe presented a barrage of information on Flex 4, &lt;a title="Flash Catalyst on Adobe Labs" href="http://labs.adobe.com/technologies/flashcatalyst/"&gt;Flash Catalyst&lt;/a&gt; and the recently renamed Flash Builder.&lt;/p&gt;

&lt;p&gt;FlashCamp came with a whole bunch of free swag: beta software (Flash Builder 4 Beta, Flash Catalyst 1.0 Beta and Flex 4), eboy stickers and a t-shirt.&lt;/p&gt;

&lt;p&gt;For those who are yearning to lay your hands on the betas, it was alluded that they will be publicly released this coming Monday. Definitely watch for it over at the &lt;a title="Adobe Labs" href="http://labs.adobe.com/"&gt;Adobe Labs&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;The free t-shirt was surprisingly interesting and in all likelihood, the cream of the crop amongst the free swag. &lt;/p&gt;

&lt;p&gt;It depicted a woman (presumably a personification of Photoshop) receiving a gift box from a suitor (predictably a male geek representing Flex). The gift box symbolizes the crown jewel of the next wave of Adobe software releases: the Flash Catalyst. All these done in &lt;a title="eBoy" href="http://www.eboy.com/"&gt;eBoy-style pixel art&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;I thought the illustration seemed pretty fitting, considering the role that Flash Catalyst fill, is essentially a tool that bridges the workflow between design and development. A gift from the developers to get the designers more involved.&lt;/p&gt;

&lt;p&gt;&lt;a class="no-ext" href="http://www.flickr.com/photos/75662727@N00/3577917654" title="View 'Goodies won at Flashcamp' on Flickr.com"&gt;&lt;img class="top left" src="http://farm4.static.flickr.com/3660/3577917654_1866cc9423_m.jpg" alt="Goodies won at Flashcamp" width="200px" height="272px" /&gt;&lt;/a&gt;I was a particularly happy attendee myself this time round mostly because my ticket won me a stash of ActionScript and Flex-related books at the raffle.&lt;/p&gt;

&lt;p&gt;It was a total of 7 books, 5 of which from the O'Reilly series. Some of them were actually on my Amazon wish-list. Many thanks to Adobe and &lt;a title="Mike Chambers" href="http://www.mikechambers.com/blog/"&gt;Mike Chambers&lt;/a&gt; who drew my raffle ticket. I can now strike these books off my list without spending a dime and they are definitely going into &lt;a title="My Bookshelf" href="http://www.bigevilempire.com/journal/entry/my-bookshelf/"&gt;geek hoard&lt;/a&gt;. I am hopeful that the content in the Flex 3 books would still be applicable when Flex 4 is officially out. &lt;/p&gt;

&lt;p&gt;The entire night was a series of informative sessions. Regretably for most, it was quite a challenge to hear the speakers amidst of all the ongoing chatter in the background. Despite attempts from the organizers to keep the volume down, it was really difficult to concentrate.&lt;/p&gt;

&lt;p&gt;Generally, I think the event went quite well. Most people were pretty pleased about it and were typically curious about the new releases.&lt;/p&gt;
 
      &lt;img src="http://feeds.feedburner.com/~r/bigevilempire/~4/ps9V7M8i1Fw" height="1" width="1"/&gt;</content>
    <feedburner:origLink>http://www.bigevilempire.com/journal/entry/flashcamp-sf/</feedburner:origLink></entry>

    <entry>
      <title>The Shareen and Joe Show</title>
      <link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/bigevilempire/~3/gFfGfIyWNKI/" />
      <id>tag:bigevilempire.com,2009:journal/1.43</id>
      <published>2009-03-18T03:03:35Z</published>
      <updated>2009-03-18T03:47:35Z</updated>
      <author>
            <name>BigEvilEmpire</name>
            <email>ronnieliew@gmail.com</email>
                  </author>

      <category term="Leisure" scheme="http://www.bigevilempire.com/journal/archives/category/category/leisure/" label="Leisure" />
      <content type="html">
        &lt;p&gt;I have recently chanced upon a podcast done by some folks back in Singapore, "The Shareen And Joe Show". After listening to a few episodes, I feel that the podcast deserves more than a &lt;a href="http://twitter.com/ronnieliew/status/1340758876" title="tweet"&gt;tweet&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;As suggested by the title of the podcast, the people behind these daily episodes are &lt;a href="http://twitter.com/JoeAugustin" title="Joe Augustin"&gt;Joe Augustin&lt;/a&gt; and &lt;a href="http://twitter.com/shareenwong" title="Shareen Wong"&gt;Shareen Wong&lt;/a&gt;. Both of them were partners in crime as radio deejays for a radio station in Singapore. As as a result of an &lt;a href="http://morningjam.com/2009/02/10/radio-silence-broken-just-a-little/" title="unfortunate incident"&gt;unfortunate incident&lt;/a&gt;, the duo departed from the radio station, moved on and started this podcast.&lt;/p&gt;

&lt;p&gt;For someone miles away from home, this podcast is very heartwarming. The best part of it is that it has been tremendously entertaining and amusing. This podcast is my defense to why I have been laughing to myself during my daily commute to work. Both Joe and Shareen talks about everything and nothing, covering a wide range of topics from the current raves in Singapore to  weird subjects like Joe's interpretation of Shareen's nightmare. &lt;/p&gt;

&lt;p&gt;For any Singaporeans, whether you are overseas or not, this is a highly recommended podcast. Personally I find it a great way to stay in touch with things back home through this engaging and witty duo. So go on, give them your support and yourself a "keep-you-company-on-the-way-to-work" show (as Joe puts it), subscribe to &lt;a href="http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewPodcast?id=307895715" title='"The Shareen and Joe Show" on iTunes'&gt;"The Shareen and Joe Show" on iTunes&lt;/a&gt; or through their &lt;a href="http://morningjam.com/" title="The Shareen And Joe Show"&gt;website&lt;/a&gt;!&lt;/p&gt; 
      &lt;img src="http://feeds.feedburner.com/~r/bigevilempire/~4/gFfGfIyWNKI" height="1" width="1"/&gt;</content>
    <feedburner:origLink>http://www.bigevilempire.com/journal/entry/the-shareen-and-joe-show/</feedburner:origLink></entry>

    <entry>
      <title>Snowboarding In Tahoe</title>
      <link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/bigevilempire/~3/T8DAygXx9BY/" />
      <id>tag:bigevilempire.com,2009:journal/1.40</id>
      <published>2009-01-20T05:37:56Z</published>
      <updated>2009-02-14T10:11:57Z</updated>
      <author>
            <name>BigEvilEmpire</name>
            <email>ronnieliew@gmail.com</email>
                  </author>

      <category term="Trips" scheme="http://www.bigevilempire.com/journal/archives/category/category/trips/" label="Trips" />
      <content type="html">
        &lt;p&gt;Living on the equator means you do not get seasons. It is simply warm and humid all year round. No seasons also mean no snow. I grew up in &lt;a href="http://en.wikipedia.org/wiki/Singapore" title="Singapore"&gt;Singapore&lt;/a&gt; (a little island on the equator) and the only experience I have of snow is what I see in movies or television programs. We don't quite get the white Christmas.&lt;/p&gt; 

&lt;p&gt;Yesterday, I felt snow.&lt;/p&gt;

&lt;p&gt;Even better, I snowboarded. Something I always wanted to try; one more item off the list.&lt;/p&gt;

&lt;p&gt;&lt;a class="no-ext" href="http://www.flickr.com/photos/ronnieliew/3209384506/" title="View at the peak by ronnieliew, on Flickr"&gt;
&lt;img class="top" width="614" height="460" alt="View at the peak" src="http://farm4.static.flickr.com/3463/3209384506_9e7150a009_b.jpg"/&gt;
&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Ten things I learnt from snowboarding: &lt;/p&gt;

&lt;ul&gt;
    &lt;li&gt;Kids are naturally and literally fearless.&lt;/li&gt;
    &lt;li&gt;You need waterproof pants.&lt;/li&gt;
    &lt;li&gt;You need thick knee pads.&lt;/li&gt;
    &lt;li&gt;You need thick butt cushions.&lt;/li&gt;
    &lt;li&gt;You cannot ski or snowboard if you have acrophobia.&lt;/li&gt;
    &lt;li&gt;Hardest part of snowboarding is getting up.&lt;/li&gt;
    &lt;li&gt;Snowboarding is like swimming, u get hungry fast.&lt;/li&gt;
    &lt;li&gt;Repeated falling on snow can hurt.&lt;/li&gt;
    &lt;li&gt;Slopes are &lt;em&gt;way steeper&lt;/em&gt; at the peak.&lt;/li&gt;
    &lt;li&gt;You can still perspire like a pig even if it is cold.&lt;/li&gt;
&lt;/ul&gt; 
      &lt;img src="http://feeds.feedburner.com/~r/bigevilempire/~4/T8DAygXx9BY" height="1" width="1"/&gt;</content>
    <feedburner:origLink>http://www.bigevilempire.com/journal/entry/snowboarding-in-tahoe/</feedburner:origLink></entry>

    <entry>
      <title>Weekend in Kuala Lumpur</title>
      <link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/bigevilempire/~3/pJTQU3ebjSk/" />
      <id>tag:bigevilempire.com,2008:journal/1.38</id>
      <published>2008-12-30T02:00:20Z</published>
      <updated>2008-12-30T16:49:20Z</updated>
      <author>
            <name>BigEvilEmpire</name>
            <email>ronnieliew@gmail.com</email>
                  </author>

      <category term="Trips" scheme="http://www.bigevilempire.com/journal/archives/category/category/trips/" label="Trips" />
      <content type="html">
        &lt;p&gt;Back home in Singapore for my Christmas vacation and next thing I know, I am off to Kuala Lumpur, Malaysia for the weekend! Many thanks to Eric and Qinxin for organizing this crazy pig-out trip to our northern neighbour.&lt;/p&gt;

&lt;p&gt;&lt;a class="no-ext" href="http://www.flickr.com/photos/ronnieliew/3143975338/" title="Night scene at KL by ronnieliew, on Flickr"&gt;&lt;img class="top" src="http://farm4.static.flickr.com/3287/3143975338_89091b6641_b.jpg" width="614" height="375" alt="Night scene at KL" /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;It was a really simple weekend that consisted of the following activities in no particular order and occurrences: eating, shopping, sleeping and driving (getting lost in the road networks of KL). There was no itinerary, no crazy schedule to follow and no tourist attractions to hit. We just roamed where we wanted and kept our eyes peeled for food that we can sink our teeth into. My kind of fun!&lt;/p&gt;

&lt;p&gt;&lt;a class="no-ext" href="http://www.flickr.com/photos/ronnieliew/3143970964/" title="BBQ chicken wings at Jalan Alor by ronnieliew, on Flickr"&gt;&lt;img class="top" src="http://farm4.static.flickr.com/3290/3143970964_53e975d61b_b.jpg" width="614" height="375" alt="BBQ chicken wings at Jalan Alor" /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;We nearly visited the Kuala Lumpur Bird Park, which was more of an accident rather than anything intentional. I blame it on the ridiculous road system that had us going in circles. It also had the retarded GPS as an accomplice.&lt;/p&gt;

&lt;p&gt;Despite the lack of a plan and a couple of navigational mishaps, we got along pretty fine in Kuala Lumpur. We had chicken noodles soaked in Chinese wine, really expensive tea, famous &lt;a href="http://en.wikipedia.org/wiki/Nasi_lemak" title="Nasi Lemak"&gt;Nasi Lemak&lt;/a&gt;, extremely unhealthy BBQ chicken wings and a lot of Japanese food. Good times.&lt;/p&gt; 
      &lt;img src="http://feeds.feedburner.com/~r/bigevilempire/~4/pJTQU3ebjSk" height="1" width="1"/&gt;</content>
    <feedburner:origLink>http://www.bigevilempire.com/journal/entry/weekend-in-kuala-lumpur/</feedburner:origLink></entry>


    <entry>
      <title>MapKit Framework Anomaly</title>
      <link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/bigevilempire/~3/soFMG47QRFI/" />
      <id>tag:bigevilempire.com,2010:codelog/2.49</id>
      <published>2010-04-06T03:31:26Z</published>
      <updated>2010-04-06T08:58:28Z</updated>
      <author>
            <name>BigEvilEmpire</name>
            <email>ronnieliew@gmail.com</email>
                  </author>

      <category term="Cocoa Touch" scheme="http://www.bigevilempire.com/codelog/archives/category/category/cocoa-touch/" label="Cocoa Touch" />
      <category term="Objective-C" scheme="http://www.bigevilempire.com/codelog/archives/category/category/objective-c/" label="Objective-C" />
      <content type="html">
        &lt;p&gt;I have been getting random crashes with the MapKit on the iPhone resulting in my discovery of an anomaly in the MapKit framework. With no access to the source code and insufficient documentation on the part in question, I am reluctant to label it as a bug.&lt;/p&gt;

&lt;p&gt;The scenario is pretty common: A UIViewController has a MKMapView in its view and the UIViewController gets dismissed when the user is done with the map. When the UIVIewController gets dismissed and subsequently deallocated, MKMapView in its view is also assumed to be deallocated as the chain of deallocation occurs. However, it seems that at times, the MapKit retains the MKMapView and prevents it from being deallocated because there is a pending operation (I'm guessing it's waiting on map loads).&lt;/p&gt;

&lt;p&gt;This itself is not the problem. The problem is that while the MKMapView is not being deallocated, it is still sending messages to its delegate, which is typically the dismissed UIViewController. This inevitably resulted in a crash since the UIViewController has already been deallocated.&lt;/p&gt;

&lt;p&gt;The solution is to set the MKMapView's delegate to nil and a bunch of other cleanup to prevent internal animation callbacks for the "user blue dot" at the  UIViewController's deallocation method:&lt;/p&gt;

&lt;pre class="code:ObjC"&gt;
- (void)dealloc{
    [mapView.layer removeAllAnimations];   // stop all internal animation
    mapView.showsUserLocation = NO;    // remove the UserLocation
    mapView.delegate = nil;  // release the map delegate 
    [super dealloc];
}
&lt;/pre&gt;

&lt;p&gt;This way, even if the MKMapView is still sending messages to the delegate, it will be ignored.&lt;/p&gt;

&lt;p&gt;For more information and background on this issue:&lt;/p&gt;

&lt;ul&gt;&lt;li&gt;&lt;a href="http://omegadelta.net/2009/11/02/mkdotbounceanimation-animationdidstop-bug/" title="MKDotBounceAnimation animationDidStop bug"&gt;MKDotBounceAnimation animationDidStop bug&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://jakebehrens.com/post/188698672/mapkit-bug" title="MapKit Bug"&gt;MapKit Bug&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; 
      &lt;img src="http://feeds.feedburner.com/~r/bigevilempire/~4/soFMG47QRFI" height="1" width="1"/&gt;</content>
    <feedburner:origLink>http://www.bigevilempire.com/codelog/entry/mapkit-framework-anomaly/</feedburner:origLink></entry>

    <entry>
      <title>Tweaking Vim on Mac</title>
      <link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/bigevilempire/~3/V20sfocAN7o/" />
      <id>tag:bigevilempire.com,2010:codelog/2.48</id>
      <published>2010-02-04T08:24:53Z</published>
      <updated>2010-02-04T09:12:54Z</updated>
      <author>
            <name>BigEvilEmpire</name>
            <email>ronnieliew@gmail.com</email>
                  </author>

      <category term="Mac" scheme="http://www.bigevilempire.com/codelog/archives/category/category/mac/" label="Mac" />
      <content type="html">
        &lt;p&gt;I'm never quite the &lt;a href="http://www.vim.org/" title="Vim"&gt;Vim&lt;/a&gt; kinda guy. I attribute it to my college programming labs that marred any impressions of command-line editors. In fact, I probably wasn't even using Vim back in school. Hard to recall but my guess is that it was more likely to be Vi or Emacs.&lt;/p&gt;

&lt;p&gt;It was a jarring experience to be thrown into the world of Unix/Linux coming from a pure GUI environment (Windows 95 then) . I started out in &lt;a href="http://en.wikipedia.org/wiki/MS-DOS" title="Wikipedia on MS-DOS"&gt;MS-DOS 3.1&lt;/a&gt; on an &lt;a href="http://en.wikipedia.org/wiki/Intel_80286"&gt;Intel 80286&lt;/a&gt; but the bash shell is its own beast, let alone the various flavours of command-line editors. There is a huge difference between coding Pascal in a GUI environment and hammering out C in Emacs. Well, not in the programming sense, more coming from the angle of the user experience in the IDE.&lt;/p&gt;

&lt;p&gt;Ever since I switched to a mac and had to mess around more in the terminal, i started to appreciate how powerful these editors can be. Everything can be done without touching the mouse; all kinds of key strokes to do every imaginable tasks. After observing how some programmers use Vim (or Emacs), I decided to give Vim and myself a chance to be get more acquainted. The learning curve is there if you don't use it all the time but things are definitely picking up.&lt;/p&gt;

&lt;p&gt;Today, I got to exploring Vim configuration on the mac. Nothing complicated or groundbreaking. Anyone can do this either through the Vim configuration file at &lt;em&gt;/usr/share/vim/vimrc&lt;/em&gt; or &lt;em&gt;.vimrc&lt;/em&gt; in your home directory.&lt;/p&gt; 

&lt;pre class="code:bash"&gt;
set ai         " auto indenting
syntax on      " auto indenting
set hlsearch   " highlight the last searched term
&lt;/pre&gt;

&lt;p&gt;For now, I'm just enabling auto indentation, syntax highlighting and search term highlighting. Search term highlighting just makes it easier to spot strings that you searched in Vim. Some find it distracting for it to be highlighted. It's a small step but at least it's moving and the code looks prettier.&lt;/p&gt; 
      &lt;img src="http://feeds.feedburner.com/~r/bigevilempire/~4/V20sfocAN7o" height="1" width="1"/&gt;</content>
    <feedburner:origLink>http://www.bigevilempire.com/codelog/entry/tweaking-vim-on-mac/</feedburner:origLink></entry>

    <entry>
      <title>Change iPhone Status Bar Style</title>
      <link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/bigevilempire/~3/KvWs0BXeBv8/" />
      <id>tag:bigevilempire.com,2009:codelog/2.47</id>
      <published>2009-12-16T06:53:39Z</published>
      <updated>2009-12-16T07:02:40Z</updated>
      <author>
            <name>BigEvilEmpire</name>
            <email>ronnieliew@gmail.com</email>
                  </author>

      <category term="Cocoa Touch" scheme="http://www.bigevilempire.com/codelog/archives/category/category/cocoa-touch/" label="Cocoa Touch" />
      <category term="Objective-C" scheme="http://www.bigevilempire.com/codelog/archives/category/category/objective-c/" label="Objective-C" />
      <content type="html">
        &lt;p&gt;This is probably one of the most frequently asked question for anyone starting to do iPhone app development. Most would be confused with the "Status bar" option within Interface Builder and attempt to change it within the Interface Builder. &lt;/p&gt;

&lt;p&gt;That option is purely for simulating the color of the status bar within the Interface Builder to help with the visual design and layout of the views.&lt;/p&gt;

&lt;p&gt;There are two ways to change the style of the status bar. The first approach is to do it via code through the AppDelegate class.&lt;/p&gt;

&lt;pre class="code:ObjC"&gt;
- (void)applicationDidFinishLaunching:(UIApplication *)application {
    
    // Add the tab bar controller's current view as a subview of the window
    [application setStatusBarStyle:UIStatusBarStyleBlackOpaque];
    [window addSubview:tabBarController.view];
}
&lt;/pre&gt;

&lt;p&gt;However doing it this way, there is a momentary change in the style when the iPhone app is launched.&lt;/p&gt; 

&lt;p&gt;This is where the second approach comes in. You can add a key-value pair to the info plist of the app using a text editor. The key is &lt;em&gt;UIStatusBarStyle&lt;/em&gt; and the value can be &lt;em&gt;UIStatusBarStyleOpaqueBlack&lt;/em&gt; or any of the values permitted by &lt;em&gt;UIStatusBarStyle&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;You can also edit the plist from Xcode and editor would prompt you with the right key. In this case, in the information property list, the key would be "Status bar style" and the value would be "Opaque black style".&lt;/p&gt;
 
      &lt;img src="http://feeds.feedburner.com/~r/bigevilempire/~4/KvWs0BXeBv8" height="1" width="1"/&gt;</content>
    <feedburner:origLink>http://www.bigevilempire.com/codelog/entry/change-iphone-status-bar-style/</feedburner:origLink></entry>

    <entry>
      <title>Configure MySQL for UTF-8</title>
      <link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/bigevilempire/~3/jjbOgxUsY4Y/" />
      <id>tag:bigevilempire.com,2009:codelog/2.44</id>
      <published>2009-03-20T08:38:58Z</published>
      <updated>2009-04-17T09:46:59Z</updated>
      <author>
            <name>BigEvilEmpire</name>
            <email>ronnieliew@gmail.com</email>
                  </author>

      <category term="MySQL" scheme="http://www.bigevilempire.com/codelog/archives/category/category/mysql/" label="MySQL" />
      <content type="html">
        &lt;p&gt;Ever saved a record into a MySQL database and upon retrieval of the record, you realized that the non-Latin characters(e.g. Asian characters) don't quite turn up as expected? Specifically, they turn up as a bunch of "?".&lt;/p&gt;

&lt;p&gt;The likelihood of why this is occurring is that the MySQL database is configured as a default for Latin characters. In this day and age, one would assume that UTF-8 would be a de facto standard for this. Given my limited knowledge on database administration, I cannot fathom why Latin is chosen as a default over UTF-8. Shouldn't the benefit and the flexibility of supporting non-Latin characters outweigh whatever space that a Latin-only database saves (I am guessing this is the benefit) ?&lt;/p&gt;

&lt;p&gt;Oh well, what would I know.&lt;/p&gt;

&lt;p&gt;If UTF-8 is a foreign term, you absolutely need to read why it should even be a concern to any developer: &lt;a href="http://www.joelonsoftware.com/articles/Unicode.html" title="The Absolute Minimum Every Software Developer Absolutely, Positively Must Know About Unicode and Character Sets"&gt;The Absolute Minimum Every Software Developer Absolutely, Positively Must Know About Unicode and Character Sets&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;For those, who see the need to support UTF-8 in your MySQL databases, fortunately you can do so by editing the MySQL configuration file &amp;#40;my.cnf&amp;#41;. This file is typically found at: /etc/mysql/my.cnf if you are on Mac OS X or any UNIX/Linux-based OS.&lt;/p&gt;

&lt;p&gt;Add the following to the my.cnf:&lt;/p&gt;

&lt;pre class="code:bash"&gt;
[client]
default-character-set = utf8 
...
... 

[mysqld]
default-character-set = utf8 
character-set-server  = utf8
default-collation     = utf8_general_ci
...
&lt;/pre&gt;

&lt;p&gt;As an alternative, you can specify the default collation to be using "utf8_unicode_ci". The difference between them is :&lt;/p&gt;

&lt;blockquote&gt;&lt;p&gt;For any Unicode character set, operations performed using the _general_ci collation are faster than those for the _unicode_ci collation. For example, comparisons for the utf8_general_ci  collation are faster, but slightly less correct, than comparisons for utf8_unicode_ci. The reason for this is that utf8_unicode_ci supports mappings such as expansions; that is, when one character compares as equal to combinations of other characters. For example, in German and some other languages “ß” is equal to “ss”. utf8_unicode_ci also supports contractions and ignorable characters. utf8_general_ci  is a legacy collation that does not support expansions, contractions, or ignorable characters. It can make only one-to-one comparisons between characters.&lt;/p&gt;&lt;/blockquote&gt; 

&lt;p&gt;For more information on configuration of character-set:&lt;/p&gt;

&lt;ul&gt;&lt;li&gt;&lt;a href="http://dev.mysql.com/doc/refman/5.0/en/charset-connection.html" title="Conection Character Sets and Collations"&gt;Conection Character Sets and Collations&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://dev.mysql.com/doc/refman/5.0/en/charset-unicode-sets.html" title="Unicode Character Sets"&gt;Unicode Character Sets&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; 
      &lt;img src="http://feeds.feedburner.com/~r/bigevilempire/~4/jjbOgxUsY4Y" height="1" width="1"/&gt;</content>
    <feedburner:origLink>http://www.bigevilempire.com/codelog/entry/configure-mysql-for-utf-8/</feedburner:origLink></entry>

    <entry>
      <title>Learning Ruby</title>
      <link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/bigevilempire/~3/r4jvupD2t7I/" />
      <id>tag:bigevilempire.com,2009:codelog/2.42</id>
      <published>2009-03-09T00:21:09Z</published>
      <updated>2009-03-20T18:55:15Z</updated>
      <author>
            <name>BigEvilEmpire</name>
            <email>ronnieliew@gmail.com</email>
                  </author>

      <category term="Ruby" scheme="http://www.bigevilempire.com/codelog/archives/category/category/ruby/" label="Ruby" />
      <content type="html">
        &lt;p&gt;As I delved more into the world of the Ruby Programming language, I am discovering tools and resources that would be of help to someone new to Ruby. I want to log my learnings as I go along in hope that it would benefit anyone who might be trudging down this same path. &lt;/p&gt;

&lt;p&gt;I may have jumped the gun when I wrote about &lt;a href="http://www.bigevilempire.com/codelog/entry/using-ruby-modules/" title="using modules in Ruby"&gt;using modules in Ruby&lt;/a&gt;. To kick-start learning about Ruby, it might be prudent to understand about the syntax of Ruby. There are several gems (pun intended) available online that cover the basics of the Ruby language:&lt;/p&gt;

&lt;ul&gt;
    &lt;li&gt;&lt;a href="http://en.wikibooks.org/wiki/Ruby_Programming" title="Wikibooks: Ruby Programming"&gt;Wikibooks: Ruby Programming&lt;/a&gt;&lt;/li&gt;
    &lt;li&gt;&lt;a href="http://www.rubycentral.com/pickaxe" title="Programming Ruby"&gt;Programming Ruby&lt;/a&gt;&lt;/li&gt;
    &lt;li&gt;&lt;a href="http://poignantguide.net/ruby/" title="Why's (Poignant) Guide to Ruby"&gt;Why's (Poignant) Guide to Ruby&lt;/a&gt;&lt;/li&gt;
    &lt;li&gt;&lt;a href="http://www.cs.auckland.ac.nz/references/ruby/doc_bundle/Newcomers/ruby.html" title="Things That Newcomers to Ruby Should Know"&gt;Things That Newcomers to Ruby Should Know&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;In addition to these guides, there are also tools which are pretty handy for Ruby. For some quick action and experimentations with Ruby, there is always the &lt;a href="http://en.wikipedia.org/wiki/Interactive_Ruby_Shell" title="Interactive Ruby Shell"&gt;Interactive Ruby Shell&lt;/a&gt; (commonly referred to as IRB). To use the IRB, just launch the Terminal app in Mac OS X and type "irb". Within the IRB, you will be able to enter Ruby commands and have the interpreter respond immediately.&lt;/p&gt;

&lt;pre class="code:ruby"&gt;
$ irb

irb(main):001:0&gt; myArray = [1,2,3,4,5]
=&gt; [1, 2, 3, 4, 5]
irb(main):002:0&gt; myArray.each do |x|
irb(main):003:1* puts x
irb(main):004:1&gt; end
1
2
3
4
5
=&gt; [1, 2, 3, 4, 5]
irb(main):005:0&gt;
&lt;/pre&gt;

&lt;p&gt;For quick-access to view Ruby documentation off-line, you can always fall back on the ri documentation viewer. Launch the Terminal app in Mac OS X and invoke "ri" followed by the name of a Ruby class, module or method and ri will pull up the documentation accordingly.&lt;/p&gt;

&lt;p&gt;Here are some sample usage of ri:&lt;/p&gt;

&lt;pre class="code:bash"&gt;
ri Array
ri 'Array#&amp;lt;&amp;lt;'
ri Array.each
ri Array::new
&lt;/pre&gt;

&lt;p&gt;For any initiate to Ruby, these should be more than enough to get u moving along. Happy learning.&lt;/p&gt;

 
      &lt;img src="http://feeds.feedburner.com/~r/bigevilempire/~4/r4jvupD2t7I" height="1" width="1"/&gt;</content>
    <feedburner:origLink>http://www.bigevilempire.com/codelog/entry/learning-ruby/</feedburner:origLink></entry>

</feed>
