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

This rebrand marks more than just a name change — it signals a renewed vision.

eTraxion consolidates its role as an all-in-one solution for tracking, reporting, and monitoring across the education sector. Designed with educators in mind, it brings together powerful features under a unified identity, streamlining everything from learner progress to departmental analysis.

The new name reflects my commitment to driving traction, promoting transparency, and fostering transformation in educational data management.

Starting with DragonSlides this evening, SSE is coming to my products.

With SSE DragonSlides Remote and DragonSlides Live, the state of the show is no longer received via polling. Instead, it uses Server-Side Events, similar to what I achieved using WebSockets in the past.

This reduces the load on both the server and the client. It also reduces the data sent back and forward and will, ultimately, make things so much better for the client and my server. I've also added polling as a fallback if the EventSource API isn't supported.

I never expected much from a Nintendo alarm clock, but Alarmo pushes all the wrong buttons for me, and I've hated it since day one.

First, the pros are that it's easy to set up, the interface is simple, the sounds are fab, and the sleep tracking is excellent. New music is being added over time, too!

But for me, that's where it ends. But the thing is, my Apple Watch can do all of that anyway, as can my iPhone. Additionally, it's fidgety having to stop and alarm (which I guess is the point), and it's made more fidgety by being on my bedside table and not responding to my voice (again, maybe the purpose of such a device is to do this). Next, the fiddly button on the top. Why not just add a touch screen? WiFi was particularly frustrating to do on this control stick. 

For now, my Alarmo will go away into a cupboard, and I will likely set it up in the spare room when guests come round. It no longer feels right having this wake me in the morning alongside my HomePod. 

This thing is a waste of money, even if you're a Nintendo fan like me!

We’ve gone full circle in UI design. What began as the richly tactile skeuomorphism of early smartphone interfaces gave way to the clean simplicity of flat design, only to reincarnate as the soft shadows of neumorphism—and now we find ourselves embraced by a new "glass" look. With Apple’s recent introduction of their frosted-glass style effect, it’s clear that designers are once again drawing inspiration from the physical world, layering translucency, depth, and context to bring digital surfaces to life.

From leather stitching to simple borders

In the late 2000s and early 2010s, skeuomorphic interfaces reigned supreme. Buttons looked like real buttons, notes looked like yellow legal pads, and readers flipped virtual pages in the Newsstand app. The goal was familiarity: to help users learn digital tools by evoking real-world metaphors.

But by 2013, Apple’s iOS 7 heralded a new era. Shadows vanished, textures flattened, and colours brightened. Suddenly, interfaces felt more abstract—icons became simple glyphs, and grids and cards organised content with minimal ornament. This "flat design" philosophy prioritised clarity, performance, and scalability, influencing everything from Android’s Material Design to countless web and desktop applications.

Neumorphism

Fast-forward to around 2020, and designers began craving warmth and tactility within flat layouts. Enter neumorphism—a style that married flatness with subtle, extruded shadows. Elements appeared as though gently raised or inset into the background, lending a sense of touchable realism without reverting to literal material textures.

While visually striking, neumorphism proved challenging for accessibility. Low contrast between elements and backgrounds sometimes made interfaces hard to navigate, and the delicate shadows could feel more decorative than functional.

Glassmorphism

Now, we're witnessing a resurgence of layered translucency with Apple’s freshly unveiled frosted-glass effect (first glimpsed in their latest OS previews). Unlike skeuomorphism’s heavy textures or neumorphism’s tonal embossing, glassmorphism leverages blur, light, and colour bleed:

  • Depth & Context: Background content subtly shows through translucent panels, reinforcing spatial relationships without overwhelming.
  • Focus & Hierarchy: Blurred backdrops push primary controls and information into sharper relief, guiding user attention naturally.
  • Modern Nostalgia: The effect nods to Windows Aero’s “glass” of the late 2000s while feeling fresh thanks to Apple’s refined blur algorithms and dynamic colour adaptation.

In practice, glassmorphism offers both form and function: you see hints of underlying content (context preserved), but the blur ensures legibility and focus. Apple’s implementation dynamically adjusts tint and translucency based on ambient lighting and on-screen content, creating a living, responsive canvas. This is rare in modern UIs.

So where are we now?

Design trends rarely die—they evolve. Skeuomorphism taught us the power of metaphor; flat design taught us clarity and efficiency; neumorphism reminded us of dimensionality; and glassmorphism now balances all three, marrying context, aesthetics, and usability.

This cyclical return speaks to a more profound truth: users crave interfaces that feel both intuitive and alive. Pure flatness can feel cold, and overly literal textures can feel gimmicky. However, translucent layers create interfaces that are simultaneously minimal and rich, echoing how we perceive real glass.

We should expect that push to continue, with more skeuomorphic elements and interfaces creeping back into our everyday life, and I'm not happy!

Haddington was tied with Perth for being the happiest place to live in Scotland. I don't disagree, Haddington is a lovely place, and as someone who has lived in this area all my life and spent much of my youth in Haddington, I totally agree.

In the UK, Berwick-upon-Tweed was voted number one. Again, I don't disagree. I visit Berwick-Upon-Tweed once every few months because I love the town (and because it's such a nice drive to it). Other prominent places are York (which I love and visit once a year), Durham and Exeter. 

View the full list here.

Consistent DragonDocs auto-marking is finally here. And it's brilliant, even if I may so myself.

In late 2023, I added auto-marking, but it was on an assessment-by-assessment basis. So, it wouldn't be consistent and would vary slightly for each person. 

The latest version I've built today now works consistently, but requires the teacher or administrator to tell the system to mark all of them simultaneously. 

I'm seeking to create a free online system for creating your own DragonDocs in the next few months, and auto-marking would be part of this, too.

Ten years ago today, in May 2015, I rebuilt ZPE from the ground up, developing a parser that still powers it today. That parser, the Zenith Parsing Engine, completely changed ZPE and made it possible to create large programs that didn't experience slowdown. It also allowed me to develop more complex constructs and statements and build in backtracking, a once fundamental step in ZPE as a program. 

It was also the day I introduced the YASS language (known back then as Zenlang). 

ZPE 1.3 was the foundation of what ZPE is today. It completely changed ZPE. It's incredible to think how far it's come, and it's also amazing to believe that it's been a project for ten years!

I also intentionally timed it so that the next version of ZPE would be released today. So, ZPE 1.13.7 was also released today. This is an anniversary edition since it marks the ten-year anniversary.

You may also notice that I pushed a few more versions this year to try and get to 13.7 for this release, and that's because my birthday is 13-7-1991, so I wanted that to coincide with this release. 

After 3,500 builds, the latest release of jbTAR, version 1.1.2, will be available on 1 May 2025. This version fixes a few bugs and improves compliance with the ACID properties of databases. It's also powered by a slightly more up-to-date version of ZPE. 

jbTAR will not follow the release cycle that ZPE has followed for the past five or six years and will be released much more casually.

I am really excited for the launch of the next version.

Version 1.1.1 is a fully featured release, packed with powerful tools designed to make generating reports easier, faster, and more flexible than ever before.


jbTAR is perfect for anyone who needs to build professional reports using spreadsheet-style input. It provides:

  • Fast Report Generation: Quickly create high-quality reports from table data.
  • Highly Customisable Columns: Supports plain text, dropdown lists, and mapped values to make data entry easy and standardised.
  • Flexible Output: Generate complete, personalised Word documents based on your data with automatic placeholder replacement.
  • Easy-to-Use Interface: Simple spreadsheet-style editing with the ability to easily add, remove, and modify rows and columns.
  • Smart Templates: Design your own Microsoft Word templates with simple placeholders — no technical knowledge required!
  • Quick Actions Panel: Add or remove rows instantly and jump straight into a live preview of your report.
  • Cross-Platform Support: Built with Java, jbTAR runs seamlessly on Windows, macOS, and Linux.

Coming soon with version 2:

 • Dark Mode: Work comfortably in dark environments with full dark mode support.
 • Auto-Saving and Backup: Protect your work with built-in auto-save options and file backup prompts.
 • Customisable Settings: Tweak fonts, colours, and more to suit your working style.
 • Advanced Filtering: Filter multiple rows and columns to find and edit your data more easily.

Whether you’re building school reports, business summaries, client feedback forms, or anything else, jbTAR makes the process effortless.

Download version 1.1.1 today and start building better reports with less hassle!

Today is YouTube's birthday, and I remember watching the first video on YouTube ever! I remember going to my next-door neighbour's house and watching YouTube as it was a new service that they'd found out about prior to its launch. Before YouTube we all used to watch Stupid Videos (.com) and Weeble's Stuff. 

What a wonderful memory that is!

Powered by DASH 2.0