Knock::on_wood

unclear thoughts on software development

Articles written in January 2006

Sunday, January 29, 2006

The Rails Difference

There’s a lot of hype about Rails these days. Most of the chatter compares Rails to .NET, Java, PHP, etc. Though those are valid and often interesting discussions, I think they often miss the most unique difference.

That difference is what the average programmer spends much of their time doing: upgrading and deploying applications. Let’s face it. You only launch an application once, but you (or someone else) will be maintaining and upgrading it forever (... well, at least for longer than you expect to). I don’t see any communities addressing this nearly as aggressively and ambitiously as Rails.

It is very evident that Rails was built by developers in the trenches, by those living and breathing in the real world of maintaining applications. Microsoft just released ASP.NET 2.0 and VS2005. With all the new bells & whistles, they still don’t offer a solid solution for deployment and data migrations.

Side Note: I also love the fact that Microsoft only offers unit testing tools in the Enterpri$e version. Brilliant! Take a excellent open source tool, nAnt, integrate it into your product and then charge through the nose for it. Now that’s business model!

Enter Rails answer to these two issues: seemless database upgrades with Migrations and simply yet powerful deployments using SwitchTower. Keep on the lookout for follow-up posts on each of these killer tools.

Thursday, January 26, 2006

Hal sips the Ruby Kool-aid

I’ve long been a fan of Hal Helms. He’s a great teacher, thinker, and “coach” of ColdFusion. I learned a lot of my good coding habits from reading his newsletter. Although I’m not doing much CF anymore, I still read it. In his most recent newsletter, he notes that his study of Ruby is shaping his view of CF. In fact, he’s gleaning from Ruby:

I also began studying Ruby, a language that is unabashedly dynamically typed and fully object-oriented. After being immersed in that heady world for a bit, I emerged to again work with ColdFusion. This time, though, undoubtedly influenced by Ruby, I decided to dispense with the pseudo-strong typing.

Go Hal. Keep up the good work. Looking forward to more on this.

Wednesday, January 25, 2006

Blog moving

I’ve moved my blog to a new server. The old address should redirect, but it may wreak havoc with RSS feed. The new address is weblog.sourcescape.com.

Wednesday, January 25, 2006

Backing up MySQL

After committing the cardinal sin on a recent project of killing the production database without a backup the day before launch, I spent some serious time figuring out a solid back up solution. Thankfully I found automysqlbackup. Thought the name lacks creativity, the script rocks! It’s a unix shell script that creates 5 running daily, weekly, and monthly backups of multiple MySQL databases in a very clean directory structure. It’s highly recommended if you are doing anything with MySQL.

Oh, and thankfully, the host had a backup of the database as of 1am that night. Whew!

Saturday, January 14, 2006

Startup Mentality

I’ve considered starting my own company many times. It things like supporting my family, lack of customers and the insurance nightmare that keep deterring me. But I still can’t completely kill the idea. In the meantime, I’m learning as much as I can on the subject. I really enjoyed reading about Idealistic Opportunism. I think I’m a “opportunistic idealist” who wants to be a pure idealist but doesn’t quite have the cajones. We’ll see.

By the way, I just discovered Venture Voice, a great podcast on this subject. Take a listen if you’re interested. Peace out for now.

Saturday, January 14, 2006

Moving to a CSS Layout

For the past 3 years or so, there has been a shift in the web design field away from table based layouts toward the nirvana of standards-based, xhtml compliant, CSS driven layout. It is often a frustrating topic for those that have used tables for layout (pretty much every designer/developer I know). So most, despite noble intentions, end up doing a hybrid design (tables & CSS) or simply abandon CSS layout all together using CSS solely for formatting.

Well, times are changing and this task is getting slightly easier. With the new browsers (e.g. Firefox 1.x—get it and use it!), there are far less cross browser issues though some still exist. Here are some resources that I hope you find helpful:

Also, a side note on Firefox. It has a couple phenomenal extensions to help in this area:

  • The Web Developer Toolbar is invaluable. Just install it.
  • Aardvark lets you alter a web page on the fly, view partial source, delete elements for printing, and many more goodies.
  • IE Tab lets you open up IE within a tab in Firefox and see how the page will render without ever opening IE.

Hopefully you can start using CSS layout s in your app. The power is amazing. One thing that forced me to do this on a recent project was the print-friendly requirement. I wanted to hide both the header and menu areas when printing. With tables, I was stuck, but transitioning to a CSS based layout, it now works like a charm.

Tuesday, January 03, 2006

Rails Resources

I know most of the people who read this (all 2 of you) don’t use Rails. Maybe you want to, maybe you don’t. Either way I’m still going to talk about it. ; )

Anyway, here are a few resources to get someone started:

I’ll add more as I find them. Try it, go ahead, you know you want to.

Powered by Mephisto. Theme modified and ported by Ryan Wood, based on the WordPress theme minima.