• Memeburn
      Tech-savvy insight and analysis
    • Gearburn
      Incisive reviews for the gadget obsessed
    • Ventureburn
      Startup news for emerging markets
    • Jobsburn
      Digital industry jobs for the anti 9 to 5!

An idiot’s guide to web technologies

You work in an online industry, or at least deal with online marketers and web developers every day, but you don’t always get the tech, and you have to fake it when the techies start speaking. No need to be shy, you don’t need to understand everything, just how it all fits together in the bigger scheme of things.

Let’s take a whirlwind tour through some of the most popular technologies being used online today.

HTML (Hypertext Markup Language)
HTML is not functional – it does not do anything, like manipulate data or do maths. The purpose of HTML is to describe the content of a web page, so that it can be interpreted properly. The two most important things that need to interpret web pages are web browsers and search engines. HTML helps to communicate important and varied information, from what the title of the web page is, to what is text and what is images, and what is a link and where it links to.

CSS (Cascading Style Sheets)
CSS, like HTML, is not functional (except in a superficial but visually awesome way – CSS3 does cater for some animations). It is used to define the styling of a website in an easy and efficient way. A CSS file allows a web designer to specify such rules as the colour of a link, the width of a content area or the border around images in just one place, and then reference those rules on any number of web pages, making updates incredibly easy.

XML (eXtensible Markup Language)
XML, like HTML, describes data. Unlike HTML it does not have a finite number of predefined tags with which to describe things – you can create your own. What is important to know is that this means that different applications, different services, and different programming languages can share data. As long as each application or service knows what the XML tags mean, data can be shared between two completely different systems, written by different people in different programming languages.

JavaScript is a programming language of sorts, usually used for fairly light functionality, although recently used heavily as the backbone for a lot of the more modern, slick, animated interfaces on contemporary websites. One major point to be aware of is that JavaScript runs in your browser, not on the website’s server.

This has a few implications – firstly users can turn it off, secondly different browsers might support (or not support) different aspects of a piece of JavaScript code. Thirdly it means that processing can occur live on a website, rather than requiring a page reload to send data to the server and back. JavaScript is used extensively for other things on the web, such as web analytics, tracking code and the setting of cookies.

JavaScript libraries
JavaScript libraries are collections of pre-written JavaScript code that one can reference, style and tweak to achieve certain functionality on a website, without writing everything from scratch. Whilst JavaScript is a fairly versatile language, most of the more popular libraries deal with creating fluid and dynamic interface elements, such as tabs, drag-and-drop functionality and live system messages (imagine the password strength indicators present on many websites). Popular JavaScript libraries include JQuery, MooTools and Prototype.

Ajax (Asynchronous JavaScript and XML)
This is a term that is bandied about quite a lot these days, and refers to any kind of dynamic interface element. Technically ‘Ajax’ refers to the use of a group of technologies (including HTML, CSS, JavaScript and XML) to dynamically retrieve data from a server, and present it on a web page without the web page having to reload. A good example is the new Google Instant interface, where search results are retrieved automatically as the search query is entered, and the user does not have to click submit and wait for a page reload as with previous Google interfaces.

SQL (Structured Query Language)
A language used to access and edit databases. Commonly used database systems online include MySQL and PostgreSQL which are both open source, and Microsoft SQL server. Almost all dynamic websites and web applications utilise databases to store information. SQL is a common language used to store, edit and retrieve the information from these databases.

Programming languages
Java is a big boy, often used for enterprise level development. .NET, C# and ASP.NET are all Microsoft technologies (which means you have to pay to use them), and are also often used for enterprise level development. PHP, Ruby and Python are all modern open source favourites for creating web applications and dynamic websites of all sizes. Perl is these days often used for more nitty gritty tasks such as CGI programming. ActionScript is the programming language of Flash, and used heavily in sites that require full and extensive animation.

Web Frameworks
‘Web Frameworks’ is a fairly generic phrase, that could refer to a number of different things, but most commonly it refers to a bunch of pre-written code that is paired with an existing programming language. This pre-written code includes lots of commonly found structures and functionalities in web applications, such as administration panels and membership functionalities, as well as architectural structures, such as distinctions between the logic of the applications and the rendering of the actual web pages. Some popular web frameworks include Rails for Ruby, Cake for PHP, Django for Python and Apache Struts for Java.

Well, that’s all for now. Understanding a broad overview of how different technologies are used to create websites and applications is becoming more and more essential in a growing number of businesses and professions. Hopefully, this was a good starting point.