Jamie Balfour BSc

Welcome to my personal website!

Technology enthusiast

I am very interested in technology, particularly relating to computer science. I am most interested in web design and development.

My main hobby is programming. One of my most well known products from this is ZPE. I also am the sole creator of BalfBlog, BalfBar and BalfSlider.

A little bit about me

In 1997, when I was six years of age, I got my very first computer. I was always very interested in the ins and outs of it and dismantled it to see how it worked.

Years later, in 2016 I received my BSc (with honours) in Computer Science, obtaining a First class degree.

I'd like to welcome you to my website and hope you enjoy using it as much as I have enjoyed building it!

Google Plus
Jamie Balfour BSc
Full stack developer

Personal Blog

I have been working quite a lot recently on my latest project, ClickIt. ClickIt is a web development tool using the new HTML5 drag and drop standards. It has been working fine with all browsers until very recently I discovered it had an issue with both Mozilla Firefox and Microsoft Edge. I have in the past stated my dislike for Firefox after it made my life much harder in one of my courseworks last semester and now my anger continues.

Chrome, Safari and Opera cover a reasonably large base of users but for full compatibability, I'm going out of my way to try and fix an issue which I don't even know what it is. The original problem occured when I used the W3 standard for drag and drop and did this:

function DragBlock(ev, mode) {
	setData(ev, "mode", mode);
	setData(ev, "text", ev.target.innerText);
	setData(ev, "style", ev.target.getAttribute("class"));
function setData(ev, x, v){
	ev.originalEvent.dataTransfer.setData(x, v);

The problem however is that when I then try to retrieve this information, none of it exists. It does in Chrome and Safari, but not in Firefox or Edge. If I find a solution I will post it here.

My good friend Merlin managed to discover the problem with my implementation, and it's hardly obvious nor expected! The problem actually occurs with the ev.target.innerText function. This function is not supported in Edge or Firefox, but is in Chrome and Safari. So there you have it. My problem is fixed.
Another update on the situation: I fixed the issue altogether after I learned that the first parameter to the setData function is actually not the name of the value but the type. For some reason, Chrome and Safari accept this as the name anyway and transform this to a map from the name to the value (or in this case x -> v). Instead of messing about with this, my solution, which is somewhat crude, is to use a global variable which in turn is a map from x -> v. Since I put these in functions, my functions were simply changed to modify this global variable upon request and retrieve information back from it. This solution is as I say crude since it relies on the fact there is only one object being transferred. I am most puzzled by the fact that the issue is totally different with Safari and Chrome and that they work this as if it were a map.

My last post mentioned that Minecraft 1.8 was released just two weeks ago this Wednesday. Now in a slightly saddening way Microsoft announced it had bought the company behind it - Mojang.

Now this is not necessarily a bad thing, just a worrying thing (there is no way to tell which way it will go at the moment). Minecraft has been nice as an indie game, albeit a very successful one, but now it will just join another collection of games Microsoft produces. 

I have written numerous times that Microsoft try too hard to enter every marketplace and product range out there.In my opinion they ruined some of their best products out there such as integrating Windows Live Messenger with Skype, Nokia by giving them Windows Phone and my personal favourite, Rare or "RareWare" back in the day by transforming them from a small company to one that works for Microsoft.

Analysts have said that Microsoft should break up into smaller companies but unfortunately they are still not going that way and obtaining more and more smaller companies.

I just hope that Mojang and Minecraft are not consumed by Microsoft and become a tiny little project nobody works on.

Click here for Microsoft's take on the aquisition

The next few months and the remainder of 2014 will see some really awesome games being released!


My Flygon plush Pokemon and I are so happy with the list of Nintendo games!

Nintendo are releasing the best games in my opinion.

  • Super Smash Bros for 3DS has got to be the biggest portable game release for me ever (other than Pokemon games). On 3rd October 2014, Nintendo will release the long awaited Super Smash Bros 4. The release will be the debut for Smash Bros on a portable console and hopes to gain more of an audience this way (albeit they have always been reasonably popular games on the whole).
  • Also on it's way to the portable Nintendo console are my favourite generation of Pokemon games remastered; Ruby and Sapphire. The games will be named Pokemon Omega Ruby and Pokemon Alpha Sapphire. Generation III was by far my favourite generation of Pokemon because of it's fluid story and the fact that Dragon Pokemon finally took off, particularly Flygon. The game is incredibly exciting for me personally, and I'm sure other Generation III fans feel the same. We're going to see that in stores on November 28th 2014.
  • Then there is Hyrule Warriors as well. The Zelda game that changes the idea of Zelda a bit and goes for a 'hack and slash' approach looks incredibly good fun. With stunning graphics and excellent visuals, this game looks like it will stand out as one of those excellent Wii U games (I'm so glad I bought a Wii U at the very start). That is to be released on 19th September 2014.
  • After all of that, there is still Super Smash Bros for Wii U to be released! It looks even more exciting than the previous bunch of already exciting games. The Wii U version with it's absolutely awesome graphics is set up for one of the best launches for the Wii U. Nintendo surely can't go wrong with this - there are already three generations of this game that have been best sellers on their respective console.


  • For the PC, there are two games that took my interest, namely GTA V and Middle-earth: Shadow of Mordor. GTA V is also being released on PS4 and Xbox One on the same day, although there is still no confirmed date for either game.


This is as far as I go with next generation gaming, as I may get a PS4 in the future.

  • For the PS4, The Last of Us: Remastered is the remastered version of the PS3 release that already looked awesome enough. But anyway, this is a remake of a game thats not even all that old (now why didn't they wait and release it on PS4 in the first place?)

I've definitely left some games out so feel free to comment.

In what I would personally say was a good move, Steve Ballmer is to step down as the CEO of Microsoft in the next 12 months, announced earlier today. Steve Ballmer has been running the company as CEO since 2000 and has been a key part of the company.I'm not fond of Ballmer and some of his work with Microsoft, but lately some of the companies failings have been pointed at Ballmer.

Ballmer leaving this role has made share prices rise, put confidence back into those of us who follow Microsoft and allows for new marketing strategies to be applied in relation to the company.

We shall see how this pans out in the future.

Site accessibility

A lot of the original functionalities that once existed here have been removed.

This page was generated in 0.27 seconds using 2097152 bytes. Slow? Let me know.

To use project mode, the window must be greater than 920 pixels in width.
Click here to disable Project Mode.
This site uses cookies to deliver its services, to personalise ads, to store preferences and to analyse traffic. Information about your use of this site is shared with other companies. By using this site, you agree to its use of cookies.
Contact me
Contact Jamie Balfour

Get in touch with me via this form.