Copyright Brian Starkey 2012-2014
Valid HTML 4.01 Transitional

Valid CSS!
iconAboutmax, min, close
About Me(top)
My name is Brian Starkey, and at the time of writing I'm studying Electronic Engineering at the University of Surrey.
I started messing around with electronics quite young, courtesy of my dad buying me a Radio Shack electronics experimenter set - one of those things with spring terminals around basic components and a book full of circuits to build with it. Things like AM receivers, touch-switches, 'burglar alarms' etc.
Getting the internet at home really set everything else in motion. I got into programming through a friend who spent a lot of time in IRC, and introduced me to both IRC and scripting within mIRC. I remember not understanding how something he wrote in notepad translated into things happening on screen, but there it was!
I became quite proficient at mIRC, writing auto-away scripts, things to tell everyone what I was listening to, customising the appearance and even a function that played an alert sound whenever someone in the channel mentioned my name, incase I was doing something else.
From there I started learning HTML (loved the <marquee> tag! :P) but soon wanted to write actual programs. I found a language called Rapid-Q BASIC, which was free and had a graphical IDE. The Windows software on this site was all written in Rapid-Q. I think the language is dead now, but it provided me with a valuable introduction to real programming.
Then I found Picaxe chips, and bought a few to play with - easy for me to get into because of my BASIC programming. Eventually their power was simply not enough. As part of my course, we were taught C, and so I looked into getting some real microcontrollers. I settled on AVR because I could get the programmer cheaply and there was a free toolchain for Linux (my OS of choice for several years now).

When I'm not making or breaking things, I like to rock climb with the university club.

About the Site(top)
After many years of almost finishing websites, I decided it was about time to actually sort one out and get it online.
The back-end of the site is a combination of XML/XSL, CSS and PHP. Each page is an xml document, which defines the content in terms of common elements (page, section, image, link...), then there is an XSL stylesheet which converts my tags into HTML, based on a CSS stylesheet.
A PHP script handles serving of pages and the transformation from XML to HTML. First it checks to see if HTML for the requested page has already been generated, and if it's up-to-date. If so, the HTML file is served, otherwise the XML is transformed, the result saved, and then served to the client. It also dynamically generates things like the menu-bar and image galleries so that I don't have to.

Why the stupid layout?(top)
I quite liked the idea of the site appearing to be a group of desktop applications (though I have since discovered that this is not new) on an old Windows 95 system - maybe you think it looks hideous, but it appealed to me :P
The advantage of the structure of the back-end means that I can write a different group of stylesheets to give a different appearance, maybe a more conventional layout, but not have to touch any of the content. Simply re-render with different parameters and Robert's your father's brother. Feel free to grab the XML if you feel you would rather read that, it should be fairly human-readable.

Contact(top)
If you want to get in touch, drop me an email at stark3y[AT]gmail[DOT]com.