Web applications normally have many forms. Building forms is always a mind-boggling task because it involves repetition and chaos. A shortcut is to use a form builder / DSL, such as Formtastic. As I am using Rails 3, and the Rails 3 port of Formtastic isn’t complete yet, I thought I’d just use the plain vanilla Rails built-in form helper. First of all, I am using Haml instead of ERb. Already, I got the out-of-box clean looking Haml markup. Some of you might not be aware of the fact that Rails…
This is from an email newsletter I received in my Gmail inbox from Macheist. Note to all the designers out there, please don’t use fancy CSS, not even some of the basic ones, because they don’t work in email clients! Here’s a great table of contents on what you can and cannot use for different email clients.
Okay, this is actually an archive post from my other blog Beyond Coding, but I feel like reposting it here for some humour. :) Today I decided to upgrade my Windows 7 build 7000 to the latest build 7057. The system is installed on my Fujitsu P1610 which I use as an e-book reader and ultra-portable. I ran the DVD inside Windows, then I chose to archive the old installation and install the new version from scratch. Here is a screenshot of the archived Windows folder, apparently Microsoft has…
In case you don’t already know, both PunyPNG and Smush.it are lossless image compression services. From my experience, PunyPNG produces better results than Smush.it does. The sprite image for this blog yields 160kb when it was created. Smush.it reduced the size by 30%, PunyPNG reduced the size by 50%. The PunyPNG API is going to be extremely useful when it is out of beta.
When making the new design of this blog, I inevitably come to the dilemma of whether to use traditional CSS sprites (i.e. to use background image positions to locate the images) or to use Data URI sprites (i.e. to use Data URI / MHTML to replace the actual image files). First of all, during the design and development stage, everything was built without any sprites in mind. It is just so much easier to build the template without worrying about background image positions. After the template is…
After spending the weekend coming up with the design, one night of chopping and slicing and half a night of Tumblr themeing, I have finally done it! Thanks to 960.gs and the Variable Grid System, they made making layout so easy! The theme is tested in all major browsers, except IE6. Let me know what you think! :-)
Dear Photoshop, please don’t, just don’t.
Don’t you just hate that. Fortunately I have the ‘CMD + S’ syndrome.
Today Opera has released its latest and greatest version of Opera browser 10.5 Beta for Mac. It features speed enhancement as well as a unified Cocoa interface. Just how speedy is it exactly? Let’s test it out against other major browsers. The benchmarks were run on my Macbook Pro (OS X 10.6.2, 2.53GHz CPU, 4GB RAM). I have performed three benchmark tests from Dromaeo - All JavaScript Tests, DOM Core Tests and JavaScript Library Tests. The following browsers are used: Firefox 3.6 Minefield…
So we want to dynamically instantiate an object (i.e. convert a string to a class constant). Instead of doing this: You can do this: See more about the constantize method in Rails’s API.