Coding Standards – any standard you like


We (those who develop software) still argue over coding standards. I do not refer to meaningful discussions over clarity, readability or group/project management. I mean crazy, ranting and aggressive behaviour towards one another over a ‘trivial’ matter. Before anyone jumps on my face for using the word ‘trivial’, I offer the following advice: If you work at a place with a compelling reason to adopt a style, adopt it and join in on constructive discussions about its use at the appropriate time. If you have a personal preference, then apply it consistently and bask in the loveliness of your own code. I do not think code standards are trivial and pointless. I think they are important and create clarity. I think arguing about code standards is unimportant. Actually, I think arguing about code standards is more than unimportant, I think Continue reading

A Plea for Help

I will soon be talking in schools in my role as a STEM Ambassador and hope some of you might help me with an endeavour. With the introduction of a new computing curriculum in schools, I will be talking to school pupils about computing in the wide world and what an education in computing might lead to. I am not ‘selling’ computing over other subjects, I am letting people know about the opportunities that computing can lead to. One thing I would really like to do is make a video, because listening to a myriad of lovely, interesting people will be even better than just me, talking. Interested I hope you’re interested. If you are, what follows is a little more detail on how you can help turn my presentation into something special. Using a web cam, phone or other video Continue reading

Alan Turing – Pardon Me?

In what way does it make sense for the state to forgive Alan Turing for…well, being himself? A summary from BBC News: Computer pioneer and codebreaker Alan Turing has been given a posthumous royal pardon. It addresses his 1952 conviction for homosexuality for which he was punished by being chemically castrated. The conviction meant he lost his security clearance and had to stop the code-cracking work that had proved vital to the Allies in World War Two. The pardon was granted under the Royal Prerogative of Mercy after a request by Justice Minister Chris Grayling. It would seem appropriate for the state to apologise for its past actions and recognise that this is not a good way to treat other people. Making a request for the state to forgive him posthumously seems callous. “Overturn a conviction” sounds a lot better than “pardon”. Continue reading

Brooklyn Beta 2013

Camera Photo of Brooklyn Beta 2013 Main Event.

I have yet to fully ‘come-down’ from Brooklyn Beta. The come-down started the moment I walked away and it was intense. I had just experienced three days of cerebral stimulation and energising company. Walking to High Street station was ‘cold-turkey’, sobering and sombre. The sombre mood ebbed as the A-train took me North towards 185th Street. I felt privileged, energised and optimistic. I have a lot to consider. Enough about me, for now. What about Brooklyn Beta? A Conference, Literally When I think of industry conferences, I am often reminded of commercials and big unveilings of things you sort of know about already. Brooklyn Beta is a conference, the way a conference should be done. Brooklyn Beta brings many creative and technical individuals together in a friendly and a surprisingly, given 1300+ attendees, intimate atmosphere. Personally, I wanted to spend Continue reading

JavaScript Include, Part 3


In this third and (as seems most likely at the moment) final article about developing a JavaScript ‘include’ facility, I’ll address the provision of ‘include-once’ functionality. If you’ve not read the previous two articles, or you wish to refresh your memory, my first JavaScript ‘include’ article discussed the basic need for an ‘include’ feature, and offered a reasonable first stab at an implementation. It also outlined two key shortcomings of this first attempt. The first shortcoming, the proper handling of relative paths to included files, is dealt with in my second JavaScript ‘include’ article; the second issue of how to deal with the same files being included more than once, is presented here. Disclaimer Please see my JavaScript disclaimer in the first JavaScript ‘include’ article. It still applies, and constructive comments are welcome on any gaffes or oversights. What Is Include-Once? Continue reading

JavaScript Include, Part 2


In this second article about developing a JavaScript ‘include’ facility, I’ll deal with the handling of inclusion paths so that included source files can include other source code using paths that are relative to themselves, rather than relative to the page containing the ‘<script>’ element that made the ‘include()’ code available initially. (If you’ve not seen the previous article or you need a reminder, please take a look at my first JavaScript ‘include’ article.) Update: JavaScript Include, Part 3 article has now been published.

Agile Staffordshire May 2013

It’s that time again! Agile Staffordshire initiated a project a while ago aimed to provide a fun collaborative project that it could really sink its teeth into. Numerous changes of venue have hindered the project getting off the ground but there is now opportunity to get back on track. The full details of the May session are available, along with previous sessions, on the Agile Staffordshire Blog. This month’s session is on Thursday 23rd May at Staffordshire University, Beaconside Campus. Newcomers are welcome. The monthly sessions are a great way of getting involved in agile development practices and meet some industrial and academic practitioners.

JavaScript/HTML Synchronous and Asynchronous Loading


To complement my previous article about implementing a JavaScript include facility, I’m taking a closer look at the default behaviour of JavaScript and HTML (including HTML5) with respect to synchronous and asynchronous loading of script files (among other things). If you’ve ever wanted to include script files within an HTML page in an asynchronous way, or you’ve wanted to load a file synchronously using JavaScript, this article may well be of use to you. Disclaimer As included in the first JavaScript include article, I invite you to read my disclaimer. It still applies, and constructive comments are welcome on any gaffes or oversights. Synchronous to Asynchronous When a JavaScript source file is included in a web page via HTML’s ‘<script>’ tag, the loading of the included file is performed to completion before any more of the including page is rendered/executed. Continue reading