Sunday 20 January 2013

New framework... Yet again


TL;DR: Fell out with PHP (site program language), but new tech means I'm rebuilding the site from scratch using a new PHP framework. No timescales yet, but I will be opening a "build schedule", progress, and a "poke" to keep me active. More info later.

Article:

Some of you will have noticed this site is built in PHP, but I would imagine only a few of you will realise that I coded this site over 10 years ago. Back then I didn't know anything about keeping my code tidy, readable, user-friendly etc. and that's hindering my development efforts as some of my code is, well, scary. Real scary.

But at the time, this code worked and I had no need to go back and re-do it; I had so much more I wanted to code instead. This was a mistake. And I'm paying the price for it as every time I revisit the code to redevelop it, I shudder and lose motivation, easily becoming distracted.

So why am I telling you this? Well, apart from hoping a new coder somewhere will take note of my mistakes, it's more of a "What I'm going to do now". I want to get ready for HTML5, I want to get ready for all that new technology and have something in place to experiment, play around and see what work and what doesn't. So I've made the decision to rebuild the site from scratch.  That's not a decision I take lightly as, well, I made that decision last year, and that was also a mistake...

I started building a new site using the PHP Framework Kohana and it was going well, but when I wanted to get something more complex involved, I found I had to do a lot of configuration to do something simple. Maybe I was doing it wrong, trying to be too complex with Model auto-committing and eager loads, but it just didn't click. I was spending too much time tweaking to make it work and not enough time building the content. This was coupled with a catastrophic hard disk failure and I lost a lot of the tweaking. I didn't go back after that (NOTE: Make backups. Now. Because you never know when the same will happen to you!)

This also came with the famous "PHP Hammer" (and related article, well worth a read if you code). I laughed when reading the "bugs" on PHP as about 3 of the issues I was experiencing were documented, and to be completely honest, I lost every ounce of motivation for PHP. And, hence, the site wasn't updated since.

But another article recently appeared, stating "Why 2013 is the year for PHP" and it appears the latest versions of PHP has fixed a number of the issues that I experienced last year, and included a number of new, needed functionality (finally, literally!). The release for this PHP 5.5 is in Feb/March, and I for one cannot wait.

There's also been a large amount of chat about a new framework, Laravel and I've heard nothing bad about it. So that's what I'm using, and after 3 days I am absolutely loving it. I still have a ton of coding to do before I can get close to having a website online, but it's progressing nicely and I'm not being blocked by constant "tweak this" and "re-work this". It just.. works. And as a coder, that's all I want for now.

So, that's my plan. New PHP Framework, starting from scratch, and to keep me motivated I'm also going to make my "todo" board public where you'll decide what's more important, and help me decide what to work on next. I'll also have a "poke" button so if I do go quiet again, you'll be able to poke me for an update and/or to get it done.

I hope this will be a new era for Shields Down, for myself, and something you will enjoy and use in the future.

Have a good one!

Robinb