Newest Posts

Rails 3 Beta is Released!

The core team just released 3.0 beta. I’ll post an update after playing around with it a little!

The Problem With the Availability of So Many Open Source Applications

Having an open source application to build on is great a lot of times. You save time building the core of the application and can spend your time on the things that are specific to just your application. Saves developers a lot of time and clients a lot of money.

The problem comes in when the developer has no idea how the initial application is made. Any change that can’t be made on the surface becomes VERY hard, because the developer doesn’t understand the code behind the application and what it’s doing. This leaves the developer or firm, in their mind, with two options:

  1. Hire a contracter to do it
  2. Blindly start modifying the original code

The first option should be taken with caution. Your initial contract with the client should give you permission to hire sub-contractors or you could be in some legal trouble; not to mention ethical issues. It’s a tough sell charging upwards of $100 an hour only to have the programming sent to someone in India who is working for 10% of that.

The second option ends up with a half working application with messy code. Sure you could add more messy code, fix all the bugs, and deploy the application for use, but it becomes unmanageable. All the money you saved them turns out to be for naught, since the website will need to be completely recoded the next time a competent developer takes a look at the crap you left him. The fact that all these open source applications and plugins are available makes people forget the third option:

Do it yourself!

Most open source applications are made up of useless fat. Given, some features are cool, but rarely necessary for the project you’re working on. This is especially important when working on Ruby on Rails applications, less is better. When I made my first content management system, I ended up re-using its foundation for 2 other websites. The one website I made using Mephisto, I took a good amount of time learning liquid. The MVC framework it was made on made it easy to learn where the modifications were needed, but that was because of my understanding of the Ruby on Rails framework. None of those sites have more than they need and the loading times are great because of it. Most of all, they’re easy to work with because it’s MY code.

Not to be taken the wrong way, open source software is great. I use it every day and it saves me a lot of time. But bottom line, if you can’t look at the source code and tell yourself what each line is doing, you shouldn’t be using it.

Andy Hertzfeld on programming

“It’s the only job I can think of where I get to be both an engineer and an artist.  There’s an incredible, rigorous, technical element to it, which I like because you have to do very precise thinking.  On the other hand, it has a wildly creative side where the boundaries of imagination are the only real limitation.”

Going to start using passenger

Let’s see how it goes. I’m too used to using Mongrel just because when I started, it was the most stable form of deployment. When Passenger came out, I didn’t make much of it because I didn’t find a lot of people using it in production.

Just recently, when I went to the Pragmatic Studio, at least 10 other people said their company uses Passenger for production. Top this with the fact that 37Signals uses it for Basecamp and all its other products, I’ve gotta give it a try.

Get Islamic date for your Ruby on Rails app

First off, credit where credit is due. Islamicfinder.org is who is actually providing the date.

The plugin and instructions to use the plugin are located in its github page:

http://github.com/abdulvayani/islamic_date

If you would like this plugin to work with your mephisto blog or site, here is a different version of this plugin.

http://github.com/abdulvayani/mephisto_islamic_date

NOTE: Installation of the gem Hpricot by Why the Lucky Stiff is needed.

Working example of this plugin can be found here.

Mephisto!

I’m actually quite impressed with how easy it was to change the theme of the site to a custom one and then add some additional functionality.

I was able to do all of that without touching the original codebase and it proved to be much faster than editing the original code. It’s too bad development has slowed down like it has.

Michael Jordan’s Induction Speech

This happened about two weeks ago but I just had the chance to watch it. This guy is just amazing.

Hello world!

Oh the amount of fun that is induced when you spend $500 on books for four classes…