Jamie Balfour

Welcome to my personal website.

Find out more about me, my personal projects, reviews, courses and much more here.

Jamie Balfour'sPersonal blog

I just wanted to share this really funny article by the wonderful Ars Technica:

http://arstechnica.co.uk/information-technology/2015/10/new-subreddit-chronicles-the-most-public-blue-screens-of-death/

Posted in Just for fun
bsod
blue
screen
of
death
public
memory
leak
failure
windows
funny

I'm rather happy to say that the wonderful company of Indeeo, whose software I have used in the form of iDraw which was used largely to make the icons and graphics for this website, has been taken over by AutoDesk.

iDraw as it was known is now known by the name Graphic.

iDraw
Posted in Tech news
indeeo
idraw
autodesk
aquisition

After a couple of hours of work, JBlogs is finally written in an object-oriented manner. To use JBlogs is far easier than before thanks to this.

Getting started requires a simple few edits to data.php file and then putting this code on your website:

PHP
$jblogs = new jblogs();
$meta_data = $jblogs->getMetaData();
$jblogs->generatePosts();

Since I first learned to program in early 2005 I have always been an object-oriented programmer. PHP became an exception in 2012 to this rule but I have since begun to move some of my own work to an object-oriented PHP. This change does mean you must be using PHP 5 or later by the way!

Posted in BalfBlog
jblogs
update
blog
jblog
jamie
balfour
open
blog

Mac OS X has featured a dashboard for a long time. It was introduced in Mac OS X 'Tiger' (version 10.4) and since Mac OS X Lion (10.7) it has received barely any attention from the developers.

OS X Dashboard

Dashboard still has yet to change

But now since Lion it has had absolutely no updates. It still looks like something from pre-Yosemite with it's skeuomorphic icons and it just doesn't fit into OS X. I love the dashboard in OS X, but it looks close to it's end.

Posted in Apple Corporation
apple
dashboard
mac
os
x
10.11
replacement

I don't often post now about updating my website but as this is the first real change to my website since I designed the HTML structure of the page in November 2012 in version 2.0 of my website I am putting it up so I can remember this day.

You may know that my website is built with a structure that keeps the content and sidebar separate. This structure has followed the following pattern (each of these are IDs to divs on the page):

html > body > #container > #page > #main_content > #textZone > article > *

Where the * represents all of the content of the page. Now I have decided to drop #textZone and #main_content is now just #content:

html > body > #container > #page > #content > article > *

This shorter name reduces the size of the CSS file by ~120 bytes and reduces the JavaScript file by ~100 bytes. It also reduces the number of elements on the display. 

Posted in Website news
website
update
balfour

After serving power (and heat) for 46 years, Cockenzie power station came to the end of it's service life as coal fired power station on the 15th of March 2013 at 8.30am. Since then, the people of East Lothian have been awaiting it's demolition and today on Saturday the 26th of September 2015, the landmark chimney stacks finally came down. 

But it was not to everyone's liking. I personally miss it already. It was someone's architectural idea and some team's work in building it. 

In my eyes though, because of my concern for the environment, the closure was a wonderful thing. 

I'd have liked the towers to have remained as a monument but that was never going to happen.

It's also sad that I really wanted to tour the power station before it went but it is long too late now!

Below is my YouTube video of the chimney stacks and turbine hall coming down:

Click here to view the video

Posted in Life
cockenzie
chimney
stack
demolition
26
september
2015

Today my tutorials have finally become recognised! An online company known as Udemy sent me this email:

Hi Jamie,

I was doing some research for our students here at Udemy on people using PHP resources and when I came across your site, saw you were using the tutorial from w3schools.

We really like your resource, and actually created our own that we think is a perfect supplement! This PHP tutorial is text-and image-based, easy to search for quick answers, and super helpful for anyone: as a base for learning or as a reference guide. 

Do you think this would be a helpful resource? If so, please use it on your site. I'd love to see more people learning PHP!

Thanks so much, 
Tiffany

This makes me feel so proud of what I have achieved with my website and will go on my list of recommendations! 

Posted in Website news
tutorials
udemy
php
sql
mysql
vb
.net
html
css

I am just reposting this article.

Posted in Tech talk
who
killed
internet
explorer
firefox
chrome
safari
browser

In this post I am going to talk very quickly about what is new to JBBar and what it offers. Bear in mind JBBar was designed with my own requirements at the forefront which include a dark mode, floating 'orb' icon, a search box and the ability to flip between fixed mode and non-fixed mode (and of course to be responsive, essential of any menu these days).

JBBar has at the very core the intention of being a lightweight, easy to use menu that is open for future development and expansion. The aim of the menu is to create a flexible menu that takes little or no real room on the host server and takes no time to download to the client's computer. 

Although in appearance this menu is identical to the menu used before (jQuery SmartMenus), it is an entirely new menu. The menu I had before appeared the same way due to make a lot of modifications to the design, most of which inspired JBBar. These core design concepts paved the way to the creation of this menu - too much modification of another menu is counter productive when an update comes out that fixes vulnerabilities or core flaws. 

One of the key things missing from the other menu used was the search box. JBBar does not include a search box but provides a wrapper so that you may choose your own search box. 

The next core concept that I have kept is my floating orb idea. I have integrated this much more deeply into the menu which should help improve compatibility with older browsers as well. 

I also mentioned dark mode. This was a key feature I wanted in JBBar. Now it is deeply integrated as a core feature. 

There are plans to bring div dropdowns as well as the possibility of a right-hand side menu and I am considering options such as instead of using the dropdown menu in mobile using a slide out menu (there will be a quick option to toggle between left hand slide out menu and top drop down). 

jbbar
menu
fresh
lightweight
info

As you may already know, I have been working on a new project which is known (currently, maybe not forever) as JBBar. JBBar is a lightweight menu for websites that you will find across my website (look up at the top of the page). It is designed to be flexible in that it will work on a mobile device as well as on a desktop device. A lot of time went into this menu before I officially released it to my own personal website as a non-development stage menu.

A lot of time was spent getting round a major flaw in devices of today. I talk specifically about interaction. It is of course somewhat obvious that touch devices work differently to those which include pointer devices, and currently JavaScript is not quite ready enough to detect these differences. The resolution is somewhat annoyingly fiddled together. 

The issue arises because touch devices register a hover event as an event despite tablets not really featuring hover. Thankfully, they also register click events. Of course, on a desktop browser, you want to hover over items to show them when in the full-sized menu but when it scales down you really want to have to click on items (if you are on a desktop browser, take a look and see what I mean by scaling the page).

Here's the issue: click and touch register at the same time (sometimes even twice each) on touch devices. To fix this, there is a very slight delay then a variable is set to say the event has been fired and not to fire again. This then causes problems on desktop (a viable 'hack' would not be to use user agent sniffing - it's ugly). The issue resolves itself however, I do not need to register hover events on screen sizes that use the mobile menu (900 pixels or less) and only want to see click events. 

There you go. Done.

If you interested in a free, open source, very lightweight menu for your own projects or websites, feel free to read more about it from here.

web
menu
jamie
balfour
jbbar
open
fresh
light
responsive
Powered by DASH 2.0