Do more, be better

Starting at the beginning

by John on 10 January 2011, filed under Wired in

Building a platform from scratch is a challenging task so the best place to start is at the beginning, creating a solid foundation before any code is written. We took this approach with Luumin, researching all of the tools, applications and development techniques that are currently being used to build web applications. Looking at how sites and services are being used by people we very early decided that Luumin was going to have a clear underlying API that the application was going to be built on top of. This approach means that we can keep what people see and use distinct from the “heavy lifting”  parts of the application and easily develop different front end clients to make use of the service.

By having an API from the outset means  that we will not need to revisit the application design again in the future should we wish to support different devices such as iPads and other mobile devices; we can simply implement a new front end client. As such the main application is just the first client that we are implementing.

Once we had decided upon building an API that various clients could connect to and work with we then went on to investigate what tools and platforms would enable us to actually build Luumin. When looking at these we wanted to be sure that what ever we choose would be flexible to allow us to develop quickly and operate at scale. Underpinning our API we have settled on using Apache Cassandra for our data store, PHP 5.3 as our primary programming language and the Apache web server. The front end application is going to primarily use Javascript and we have settled on the YUI 3.0 Javascript library to handle the process of both communicating with the API and handling the user interface tasks.

Being able to look at all of the great software, libraries and techniques that people are using to make web apps has allowed us to really push out into exciting new areas. Even though the core development team have more than 20 years commercial experience (working on both web applications and traditional applications) we are constantly looking for new ways of doing things and not just taking the norm as a given. As we learn new things and make new discoveries, we will share some of our encounters and code with you.

Tags: , , ,

Something you want to say?

If you'd like to drop us a line about this blog post - or about anything at all - fill in the form below. This isn't a public comments board, so all correspondence will remain private (unless we both agree otherwise!)