Categories
web

CodeIgniter and Agile Development

Just been getting to grips with the CodeIgniter MVC framework built on PHP using the book from Wrox: Professional CodeIgniter. Having tried RoR and ASP.net, and gone through the days of highly productive but low maintenance spaghetti code, worshipping the monolithic PEAR libraries, making my own frameworks around templating engines, I think – why do I even bother? Why not stick to the language you know better than your mother tongue – in my case – PHP flagyl price. The author, Thomas Myer, makes a convincing argument about this, saying that some people may view this as being an intellectual coward cialis canada. But if we achieve tasks and make the client happy, why waste their money training yourself to learn a new language?

While I haven’t worked on a proper project with this framework yet, it seems an awesome blend of MVC’s simple-to-understand coding structure with a massive time-saving library of helpers. Never before has web development with PHP seemed so friendly – times have moved on since I was an active freelance developer 3-4 years ago, and is my cue to get my ass into gear and keep up with the times!

What’s the difference between the agile software development methodology and user-centered design I learned so much about in the HCI courses? I guess, theyre both based on the same core concept of letting the client have a core part to play in development and have iterative cycles.

5 replies on “CodeIgniter and Agile Development”

Have you heard of Symfony (symfony-project.org). I heard of it before CodeIgniter, and while they are very similar I think I prefer it to CI. CI, while trying to be quite strict with the MVC framework it seemed a bit open to me. Maybe I didn’t read the docs well enough (I’ve only tinkered with both, and Symfony has a free book written by the developer) but I could never really work out where each operation should be done. For instance, can a class representing an object have static methods that get the items from the db? I can only assume it must, as there doesn’t seem to be any other way. Symfony specifically makes you use two separate classes for object methods and statically called functions. For instance, a blog article has a class of Article, but the class you call statically to get an article (or a list of articles with a given criterion) is ArticlePeer. It makes nice sense to me. I know it may seem wasteful to have two separate classes, but it makes the code feel nicer to me.

I dunno. If you haven’t heard of Symfony, check it out (and read the docs, free book and check out the example project). You may prefer it to CI… You may find it more work, and these frameworks are made to simplify our existence. I guess you can see it either way. I haven’t given up on CI – I’ll continue playing with it, but we’ll see how it goes.

Leave a Reply

Your email address will not be published. Required fields are marked *