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've been banging on about BalfBlog for at least the last two months. The most important two months of it's journey to becoming a stable content management system that can be used by many. 

The staple aim of BalfBlog is to develop a concise, well-defined, well-built and independent of any styling, content management system. It will always rely on the host website's core styling in order for it to produce posts. This means that a bit of technical knowledge is needed, but very little.

The Dashboard is very easy to configure, with a set of easy to use options and tools to make it easy to manage your content. 

In May 2016 my own website changed to BalfBlog for article and review management and in October 2015 my website introduced my very first journal (one that nobody can access but me, of course).

Of course with time, the focus has shifted from being a blogging system as it was when JBlogs first started. In fact JBlogs never meant to come out of it's shell and become anything for use outwith my own website. When BalfBlog was announced, I made the version jump from version 1.1 to BalfBlog 2.0. This name change was made in 2016 to keep in line with my other projects in my Web Neutral Project (WNP) such as BalfBar, BalfSlider and BalfRibbon but it was never going to be permanent.

With the introduction of Article Mode - which is used in my articles and reviews, BalfBlog stopped just being a blogging system but a full on content management system (CMS). This was a big step and one which made it difficult to keep under the BalfBlog name. For a long time a name change has been on the cards.

Now, I'm proud to announce that BalfBlog will be known as Dash Content Manager from now on!

Why Dash?

Dash is always stylised in italic when I refer to it because it's similar to what the logo for Dash will look like. The name Dash came from several roots. Originally I was going to name it Atomic, based on the concept of atomicity within databases, but I liked the name Dash better.

The name is far more representative of what it is. Dash represents a fast system, which indeed it is. The name Dash is actually a bit of a homage to the agile way in which it was developed since to me a dash is like a sprint. 

Dash of course also represents the core part of the Dash structure, since the main focus for BalfBlog 2.4 and Dash is the dashboard. 

Dash is itself a recursive acronym:

Dash: Adaptable, Secure and High-performance Content Management

Let's go through those words to see where they fit in:

  • Adaptable - BalfBlog 2.2 introduced plugins, and Dash extends the way plugins interact. This makes Dash adaptable
  • Secure - Dash is designed with a sophisticated and secure system to authenticate users and verify they are who they say they are. No unencrypted passwords are saved in any database and it's not possible to access data outwith the boundaries of the dashboard.
  • High-performance - Dash is designed to be lightweight and fast. Features that have been added have been designed to have minimal impact on the performance of Dash.
  • Content Management - BalfBlog was a blogging system originally, and only managed content in a blog. Dash on the other hand (and of course later versions of BalfBlog) is designed with all kinds of content in mind. 

Dash can now even manage your files within the assets directory thanks to the new file manager.

Another big update

Another big thing I should mention is some that related to the version jump from 1.1 to 2.0 when JBlogs became BalfBlog. Now that Dash is nearing ready for release, I'm doing another version jump. Except:

BalfBlog 2.4 => Dash 1.0

Yeah that's right, BalfBlog 2.4 is actually now called Dash 1.0. 

The future

There's still plenty planned for Dash such as single installations multiple blogs, page management and a new comments system (possibly).

If you are wanting to see the latest version as it develops, visit http://dash.projects.jamiebalfour.com/. This rubbish subsite is dedicated to new features being added daily, so it will vary all the time. At some point I will add styling to it but it's low priority.

I have been working a lot harder than usual on my projects, particularly on BalfBlog, which has been my sole focus (even above my own site maintenance) for some time now. 

However, I want to inform you all that from now on I will only be spending the half hour lunch I have and some Saturdays working on these projects. Support can now only be done by contacting me on a Saturday (I won't read any that are not on Saturdays by the way). 

Site issues

Whilst I call it a site issue, it's not in my control at present. Somebody has declared my web host's IP that my site is using is spamming them (probably Microsoft themselves) and therefore no emails are being received by Hotmail/Outlook.com email addresses. This is because the IP address range has been blacklisted. I've been in touch with my webhost about this. But more importantly I am looking at moving to a paid email service now anyway.

Please note that subscriptions and new users are currently not supported. I will send out a push notification about this too.

I'm starting to produce a new version of BalfBlog each month, similar to how ZPE works.

This will allow me to add new features every month that make huge changes to the way you can use BalfBlog.

Here are a list of new features set for the middle of May:

  • New custom alert boxes
  • Validation on forms (something I have wanted to have for a while but as I've rebuilt it, everything has changed so much)
  • CSS, JavaScript and PHP tidy up
  • A central database query generator
  • A tidy up of the IA of the system
  • User preferences
  • All Ajax posting will also have an equivalent non-Ajax version and vice-versa.

A huge change has recently made BalfBlog even more object oriented, now the whole core of the system is being divided up into smaller classes, all of which are included appropriately when needed. This makes it easier to develop in BalfBlog.

BalfBlog needs to maintain its focus and not get lost the way that some other CMSes have. The focus must be on getting it to the level where it allows you to produce articles and blog effectively and not stray from that. Plugins will soon be available to improve features but not detract from the original aim.

Notice anything different about my blog? No, you don't. And actually, this change came on the front end for a change. Yup, that's right. An unnoticeable change that no one would be aware of unless they are hosting using BalfBlog 2.3's latest update, which currently only I have. 

So what is it?

Templates are finally back

What this means is you no longer follow the styling of BalfBlog in the front end at all, let your site do the work is now completely true. You can design a post template very easily by just editing the appropriate template. I have provided several basic templates with the default installation and these will soon be editable from the dashboard.

There are currently just two templates, introduction and post. These templates will be supplemented by a third one soon for single post view and further on I will perhaps change the way that the journal mode works to use one of these as well. This gives flexibility over the way posts are represented far more than before.

I will push this change live to my other BalfBlog installations very soon. Also, the standard GeneratePosts has been moved to GeneratePosts2 and the new GeneratePosts follows this template scheme.

One of the biggest updates in terms of what it brings is the move from MySQLi to PDO - PHP's data objects for databases. Not only does PDO make it easier for me to add future database systems, it makes it easier for me to write the code.

MySQLi's biggest problem is the way in which prepared statements are formed:

$stmt -> bind_param("ss", $username, $password);

PDO solves this issue by making it possible for me generate any query and provide any number of parameters, thus allowing me to call the execute on the query at just one point. If you look through the new version BalfBlog you will understand why this is crucial.

Nothing will change on the front end, although the performance is much better with PDO because of the way it is written.

BalfBlog now features a built in 'related posts' tool. Nothing needs to be changed to have this in an existing blog other than one setting needing changed to enable it. This new feature makes it even easier to generate your own related posts section than I had done before. Simply turning the toggle to on will then make BalfBlog auto generate this after each post. 

It's a very powerful feature that will help generate more readers for each post.

As part of a few fixes I laid out on my own website, I have decided to updated both BalfBar and BalfBlog today.

Most crucially, BalfBlog received an update that makes it more compatible with future versions of PHP. When it was written it was written for use with PHP 5.2. Now it is compatible with newer versions of PHP so you should have no trouble installing it on your newer installation.

BalfBar has now received an important update that adds more flexibility to the SASS code (and even provides all of the settings to rip off the menu from my own website) as well as changes that make the JavaScript more flexible.

My next major project is to develop a bulletin system. If you've ever used phpBB you'll know how great it is. I was a huge fan and used to run it on my own development sub-domain, DevNet. 

All that aside, phpBB is easy to manage and has the concept of integrity within the network security triangle. This means that users are assigned different roles and given different access rights. 

However, phpBB has a pretty big collection of files during installation and it didn't fit with the rest of my website. This is where my next project will come in.

BalfBulletin will be the next big project in my Web Neutral Project. Since my Web Neutral Project's core principal and aim is to develop web applications that fit in to any website, BalfBulletin will leaving styling to the website and the developer of the website. It will also focus on being very lightweight. As with all of my projects, particularly those in the Web Neutral Project, a lot of time will go into actually planning the application.

The main premise and indeed the motivation for the development of this is because I'm planning on developing a forum for my PhD project (more will come with time).

The other idea I came up with was integrating this into BalfBlog. For now however, it will be a separate project altogether. 

BalfBlog 2.1 is the next big iteration of BalfBlog and it will be released maybe by the end of the year. 

In the meantime, BalfBlog's updates are still being rolled out weekly and the next update will focus on consistency. I've had some suggestions put forward about the RSS and emails, and in general notifications, that BalfBlog is producing. Suggestions mainly attack the fact that entries in the RSS are currently including the whole content of the post and that emails are including a length-limited strip of the content. If there was one way I could unify it we could look back to June's update in which the Introduction Mode came to BalfBlog. 

This update enforces the use of introductions on all posts. As a result of the feedback that was received about emails particularly, I've decided that all future versions of BalfBlog will enforce this no matter what the mode.

Version 2.1 is going to focus on one BalfBlog dashboard for multiple BalfBlog powered blogs and sections - something that currently is needed for my website. It will also focus on management and administration of your blog, particularly with multiple users. If you have any further ideas and would like to see them integrated into version 2.1, please suggest them using the normal method of contact. 

Live posts/live blogs are a thing now and while BalfBlog has had them since late 2014, they are really not well enough implemented to be used. A friend on mine suggested a new way to bring these to BalfBlog and in the near future, they will come to BalfBlog. For now, checking the box to make a post live does nothing anymore. 

Hidden posts on the other hand are getting more emphasis. Now hidden posts can be changed from the dashboard (before now I only had these in for my own use). Posts can be hidden when you don't want to publish at the very second you leave the page, and then they can be revealed again by just changing a box.

These new features aren't exactly amazing, but they are pretty damn important. 

Site accessibility

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

This page was generated in 0.28 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.