Like Me? Follow Me.
Ogres Developers (intrepidus defensor) are like onions. Yes, they have layers... On the surface they appear to be strange, skeletal creatures with curious habits, such as frequent pounding of the desk, waving of arms in the air as if to celebrate a magnificent victory, mass consumption of caffeine and sugary snacks and hunching over the desk hammering the keyboard more vigorously than the Mad Hatter doing futterwacken. However, beneath this peculiar exterior shell, there’s plenty of brain-cogs churning away furiously to generate the thought processes and procedures that go into creating fantastic web applications, although the evidence of which might not appear so obvious as the work done by SEO Consultants, Web Designers and Copywriters (but far more obvious than Business Directors!). This blog post discusses what a developer actually goes through to deliver a complete website.
A web developer, yesterday.
The development process begins with the developer sitting down with a client to discuss their exact requirements. It involves going from a simple statement to a thorough breakdown of each and every little feature that the website should have. Whilst this may seem like overkill, it has been proven time and time again that a clear specification will lead to a better product (in the hands of a capable developer of course).
An example of such breakdown would be a client saying “the website needs user accounts”, whereas what they’re actually trying to say is, “I need...
- A public registration form allowing visitors to register an account. This form should contain the following fields: name, email address, password and address. The address can be optional.
- Upon successful registration the user should be sent an email containing message X along with a URL to the login page (detailed in step 4)
- A login form should be displayed on a dedicated page, along with a smaller version displayed on all other pages of the website. Successful logins should redirect to the users own profile page
With a well thought out and structured specification, the developer won’t be asking questions such as “will users be able to register themselves, or will accounts be created via the admin?” and “what information should be collected during registration?”, or in some cases guessing what a client means!
Search Engine Optimisation
A developer should sit down with an SEO consultant to discuss how to best optimise the website for search engine performance. This includes taking the following things into consideration:
- What will be the main heading (h1) tag on a page?
- Where will the meta description and keywords be generated from?
- Is there a certain URL structure to be use for friendlier URLs?
Choosing a platform
Prior to getting stuck into the code, a developer needs to determine the best way to implement the specification. By platforms, it could mean using a readily available web script which already covers all the features discussed in the spec, for example for a blog, Wordpress could be used, or ModX for a CMS, or Prestashop for an e-commerce website. If nothing suitable can be found, then the developer may decide to write the application from scratch, or perhaps modify an existing script that already offers similar or partial functionality and adding/modifying the areas where it’s lacking.
Once the platform is chosen, the developer can do the coding of the website. The implementation stage consists of two main stages:
1. Back End Development.
This is usually done using a dynamic programming language such as PHP or ASP.NET. Backend development, as the name suggests, is the part of the functionality which actually happens behind the scenes. This usually involves interaction with a database such as checking to see if the credentials entered on a login form are valid, or loading the correct content and page title for a blog post based on the URL in the visitors address bar.
2. Front End Development.
Firstly, a developer will go through and ensure that all the requirements discussing in the spec have been completed and work as expected.
Next comes the stage of expected the unexpected and dealing with it accordingly. This involves things like:
- What to do if a requested blog post doesn’t exist anymore?
- What happens if someone who’s already logged in goes to the login page?
- What to do if the database server is unavailable?
There’s cross-browser testing which is going through the various popular web browsers such as Firefox, Chrome and Internet Explorer and making sure the site looks consistent across all the browsers.
User Acceptance Testing
Once work on the website is complete the developer will setup the website onto the live server to make it publicly available. This isn’t a simple matter of flipping a switch, but a very long process of going through a series of checks to ensure that it works as it did on the test site, and ensuring that it’s configured correctly to be safe and secure from any malicious activity.
When an individual’s capable of doing so much (and often more), a slightly quirky personality and a mild sugar addiction certainly deserves to be overlooked. So next time you walk into a developer, don’t think “what a freak”, think "wow, still waters run deep - there's more to him than I thought"!