Ruby on Rails:

March 8, 2009 § Leave a comment

Don’t know if many readers know this, but uses Ruby on Rails.

Below is the slide presentation by 1 of their developer.


DHH at startup school 2008

September 14, 2008 § Leave a comment

Other speakers at startup schools include:

Fun with search engines: RoR vs Django vs cakePHP vs cherrypy vs J2EE

December 22, 2007 § 4 Comments

Below are the results of comparing RoR, Django, cakePHP, CherryPy, and J2EE:

  1. Google Trends: Notice the sliding decline of J2EE
  2. Notice that J2EE receives 2.6 as of today
This comparison is definitely “just for fun”, but somewhat reflecting my general sentiment towards Java.
More importantly, CherryPy is rocking real hard! Its simplicity is way beyond anything else I have ever seen:
  1. Install Python
  2. Install CherryPy
  3. Make Web Application. That simple!
  4. Optional, if you need database, slap SQLAlchemy as the model layer.

 Luckily, based on this 1 information below, job growth in awesome languages is increasing.

ruby, python, perl, java, php Job Trends graph

Extra Info:

Some of my thought about Software Architecture

September 4, 2007 § Leave a comment

Upon various drinking occasions with fellow developers, there are a couple of wisdom worth sharing about software architecture. Enjoy…

Design Pattern:

Don’t do some of them because James Gosling said so. Don’t do some of them because the book said so. And more importantly, don’t do it because your blue suit client demand you to do so.

Use design pattern technique based on necessities and careful consideration about the feature’s purpose.

Don’t just use design pattern that you only know. Depending on the requirements, sometimes you just have to learn new design patterns. Better start learning now rather than never.


Be very careful with it. Don’t over do it. Nobody wants to see 10M lines of stack trace.

Remember that the purpose of polymorphisms is to re-use parent object’s properties as much as possible. Extending excessively cause object’s behavior to keep changing throughout software’s life cycle.

Web Frameworks:

Which one is really good for you? Is the company you are working for a JAVA shop? Is the application that you build need Perl? The answer of this question depends on what skills you already have. Unless, if you make an application for the sake of learning something new.

CakePHP is awesome by the way, but that’s me being a zealot.

If you think a framework sucks, is it because the framework really suck? or is it because you don’t want to learn it? or it’s because the learning curve was huge? It is best to stay objective when reviewing or using a framework, you might miss some awesome features.

Ain’t nobody cares about your choice of framework, as long as it get the job done.


Scale what? How to scale it? It is very important to be able to identify which part of the application that needs to scale well.

Software/Jargon Zealotry:

Between friends, the zealotry is fun (i.e. OS X rulez, Windoze sux) but in professional setting, this is bad. Not because it would make you look “unprofessional”, but because it will clouds your judgment.

Not everything needs to be Service Oriented Architecture & definitely not everything needs to be AJAX.

Ruby on Rails may be cool, it is actually so totally cool, but the performance may varied (depending on the Gems and many other things).

Sometimes reading Slashdot too much makes you think that all of your choices sucks big time. For example, client-side development requires AJAX, or Flash, or Java Applet, or Browser plugin. All 4 of them suck big time in different categories. Maybe it’s best to just pick 1 and read more API.

I think Java sucks, and becoming suckier in every upcoming version but it is de facto standard for blue suit jobs. If I’m starving, I will code in Java.

Debunking Old Myth:

Just because Javascript/Flash used to sucked, it doesn’t mean that both will stay suck.

It is true that IE 7 is still suck, but try opening IE 6… you will realized that the world had become a better place. In addition, Firefox was and is still awesome but the memory usage is still brutal.

Scriptaculous was great, but there are others which is flat-out better now, i.e. Mootools or Mochikit. Why I said that Scriptaculous was great? Browser memory is precious and Scriptaculous is not really efficient, new Effect is always creating a new object as opposed to recycling existing Effect object.


IBM – Best Practice for Web Developers Finding documentation has never been so easy

September 2, 2007 § Leave a comment

For readers and all fellow developers: Finding documentation has become less of a pain. Thanks to Gotapi.

Currently they have:

  • HTML/CSS/Javascript. Too bad they don’t have MSDN Javascript.
  • Javascript UI libraries.
  • XML
  • C/C++ libraries.
  • PHP
  • Ruby on Rails
  • Python (Reading from blog.gotapi, Python is 1 of the first documentation)
  • Perl
  • Erlang
  • MySQL
  • and much more…

I highly recommend readers to go check Gotapi. RTFM has just gotten easier.



July 24, 2007 § 3 Comments

Seems kind of weak to me.

Disclaimer: I’ve been developing a web application using Zend Framework for quite a while now (couple of months).

Couple of points why it is weak:

Using Zend_View is quite a labor. I have to setScriptPath() manually for various .phtml that’s located not in the standard location. Of course readers might wonder, why would I want to place .phtml files in NON-default places? Please see the next point below.

In RoR and CakePHP, inserting a block of view inside another view page is a breeze. Zend_View doesn’t have render_partial() or anything remotely close to that. In order to make my extended View object have renderPartial(…), I need to call setScriptPath() to include the inner view element.

Another “I cannot believe they didn’t have it” moment, Zend_View has no capability of setting global layout. Again, I have to implement such function in my extended View object.

Granted, extending Zend_View object is pretty simple job. Thus, it is not something to get mad about. But it would be nice to have out-of-th-box experience like Ruby on Rails.

Overall, Zend_View is definitely lagging behind its competitors.

Battle against RoR: gem install mysql…

May 17, 2007 § 12 Comments

is simply broken. Broken as hell.

This is my development environment:

  • Mac OS X 10.4.9
  • MySQL 5.0 under /usr/local/mysql
  • gcc 4.0.1 or gcc 3.3
  • readline 5.2
  • ruby 1.8.5
  • rubygems 0.9.3
  • fcgi 2.4.0

Everything was installed properly except mysql binding.

1. This is the command I called to install that module:

sudo gem install mysql — –with-mysql-dir=/usr/local/mysql

2. Didn’t work. Next:

sudo gem install mysql -- --with-mysql-config=/usr/local/mysql/bin/mysql_config
Chose MySQL 2.7 (ruby)

3. Works. But “rake migrate” didn’t work. Next:

4. Changed gcc from 4.0 to 3.3:

sudo gcc_select 3.3

5. Then ran:

sudo gem install mysql -- --with-mysql-config=/usr/local/mysql/bin/mysql_config
Chose MySQL 2.7 (ruby)

6. Didn’t even compile. Tried MySQL 2.6 (ruby):

sudo gem install mysql -- --with-mysql-config=/usr/local/mysql/bin/mysql_config
Chose MySQL 2.6 (ruby)

7. Didn’t even compile. Damn!

Google search revealed this. Damn! Why some configurations work for some people? What The Hell???

8. So, I changed gcc back 4.0:

sudo gcc_select 4.0

9. Uninstall gem mysql:

sudo gem uninstall mysql

Now, obviously, “rake migrate” works.

Conclusion: RoR 1, me? Big Fat 0.


Where Am I?

You are currently browsing the ruby on rails category at RAPD.