Backend Selection Issues

Posted by Chris Fullelove on 09 October 2011

For the last couple of weeks I've been struggling with a problem with the roster management application I'm building. As I've mentioned before, I've already got a working version of the app running, but I'm not happy with how its built and am trying to do an overhaul.

I have made a little progress with the front end - I've been playing with Twitter's Bootstrap CSS for the styling and using jQuery for the front end programming. Here's a quick screenshot of part of what I've come up with.

Frontend

What I've been stumped by lately however is how to approach the backend. Currently the application runs on a basic LAMP stack (Linux, Apache, MySQL and PHP) but I am thinking that perhaps better solutions exist for what I am trying to do. One of the options I've been suggested is to use Google's Appengine platform. I really am interested in this, but its a bit of a change from the style of web development I'm used to - it's built on Java (and Python) which I know, but am not as experienced in as PHP and it uses an object-style datastore (kinda NoSQL) instead of the traditional MySQL table style database that I'm used to.

Basically, I can't decide which approach to take. I can either go the route I'm used to (PHP + MySQL) which has the added advantage of being easier to deploy more places, or use Appengine which is possibly more suited to the application in terms of data stores but a less familiar language and lesser in deployment options. Of course, there are probably other options I have yet to think of yet which could complicate the decision even more.

So what should I do? I'd really appreciate some feedback if you have any experience in this field. At the moment I'm leaning towards going the LAMP option due to it possibly leading to quicker development..