Technologies we use
Just because a particular technology is available does not mean that it has be used...
Its easy to become breathless at the pace of change in the Internet world. There are so many new technologies coming out, some of which every developer should become proficient in before they can do their jobs, other technologies are more specialised with fewer uses while others still will never get off the ground and will disappear as quickly as they arrived.
On all to many sites you will see examples of people using technologies where they shouldn't. Just because a particular technology is available does not mean that it should be used. That is why we try to keep a breast of the new technologies coming out but also try to find out where they can be best used (if at all). As is often the case, less can be more. Knowing which is the right tool for the job is half the battle.
Having said that there is always the problem of people getting the sights set on a particular language or technology as a result here are a list of buzzword technologies that you might be on the lookout for which we use everyday (the technologies that is not just the buzzwords):
- XHTML - The stepping stone replacement for HTML. XHTML is used as the main presentational language for web pages and forces us to be strict in the code we produce by complaining if we produce sloppy markup. It also allows us to do more with less, correctly written XHTML markup can be a lot smaller than old school HTML which means faster download times, less bandwidth costs and easier maintenance and readability. To prove the point you can validate this page as being valid XHTML by using the W3C's XHTML Validator.
- CSS - Allows us to keep content and presentation separated, thus greatly speeding up any design changes and ensuring that those changes are consistent through out the site.
- XML - Creating, reading, consuming, transforming...
- .Net - Microsoft's latest programming framework, which we code for using the C# language.
- ASP - The older brother to .Net but still very close to my heart. ASP has been around the block a few times but in the right hands is still a fantastic language for creating web sites with.
- Ruby - Our favourite scripting language, we love to use Ruby to create scripts which we can run on my development machines to help with data crunching, etc. Recently we have produced a few which generate out XML based Google site maps for a number of my clients.
- Ruby on Rails - A new comer to the web development world but built on a strong 10 year foundation of the Ruby language. Created by web developers for web developers it offers very quick development times to smaller projects.
- Javascript - The webs most underrated and most misunderstood languages.
- AJAX (aka Web 2.0) - The latest Buzzword, AJAX allows you to turn your browser into a powerful application. Still an emerging language though and not suitable for all sites, yet.
- JSON - Used hand in hand with Javascript and AJAX, JSON allows servers to send code to and from users.
- SEO - We do not like to try to cheat the search engines, instead try to give them what they like. Well coded pages which contain the content they say they do. By following the search engines own guidelines on content and site design you can achieve good ranking without having to resort to dirty tricks such as hidden text, key word loading or site masking.
- Website Accessability - It is now a legal requirement to make your website accessable to as many users as possible, while we don't claim to be an experts at this we do like to do our bit as we think it just one of those things that website developers should do automatically and not as an after thought. Using the mark up available in XHTML its possible to do your bit without much extra effort.
- Unit Tests - Where ever possible we unit test all our code. All this means it writing automated tests which can be run every time we make a change to our code. It is a great way of catching any bugs that would other wise slip through the net and help to keep my code stable.
- Source Control - Every change in my code is tracked and saved in my Source Control software which allows me to roll back any amendments to a previous version at anytime.
- Documentation - We run a wiki (a website accessable documentation site) for every project which is used to store all the documentation for any project.
- Back ups - A daily backup program which saves all the information on our development machines onto an external hard drive as well as trickling it to an offsite storage.
Where ever possible all our work follows industry and best practices. Comments, clean layout, optimised code, tidying up after ourselves etc.
Not seen what you wanted?
Above we have listed the technologies we use almost everyday, but there is always the chance you are after something different. If that is the case then get in touch and let me know what you are after.