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

Over the next few months I want to add more to ZenPy to make a more complete representation of Python from YASS.

As well as that, I intend on developing ZenLua and ZenPHP. Both of these are in early stages and will be fully open source and available on my GitHub. 

ZenLua will transpile YASS to Lua. This is something I've been thinking about for a while now as I use Lua quite a bit. My plan is to make it very easy for myself to write Lua with a language I think is considerably easier to understand. 

I made some New Year's Resolutions and plans I want to try and stick to this year.

First of all, welcome to 2025! This is my first 'life' post of the year on my blog. I wish you a happy new year. At the end of 2024 I sat and had a little think about what's really important to me right now. I made a couple of decisions on what needs to change. Let's start with the basics.

Social media

x

While my website states that one of the people who inspired me the most was Elon Musk, I now wholeheartedly dislike what he stands for and have decided that I don't want anything to do with him or his platform. It's not political; I just don't like him anymore. This means starting right now; I'm beginning to move from x.com to Bluesky (https://bsky.app/profile/jamiebalfour04.bsky.social), which I am hoping many others will do too, so that it can become the number one platform. 

WhatsApp

Second, WhatsApp. I rely heavily on WhatsApp, but for the last few months, I have considered moving away from WhatsApp and, generally, Meta. It came up in the staff room the other day, and it reminded me that I was thinking about this a few months back, so I added it to my plans yesterday. I want to move to Signal, a more open, privacy-centred chat platform. The problem is trying to convince others to follow suit.

Facebook

Facebook is slightly more complex than the two previous ones. I've found some social networks like MeWe, which offer a similar experience to Facebook, but I'm not entirely sure about this yet. This is probably the hardest one out of the lot so far.

Life

I want to prepare myself for the next chapter in my book of life, and that is to move to somewhere new. I've lived in this area all my life (apart from 3 years living in Edinburgh when I was very young and living in Halls when I lived in Edinburgh for most of the year). 

Some people who follow me on here know I want to own a boat and want to live on a boat at some point in my life. Narrowboating has been a dream but actually isn't so much of a dream now but something I could potentially do now. I've got more than £150k invested in my house, and the sale of that could give me a narrowboating lifestyle. I want to prepare for this because I want to start by the time I reach forty (that's still 7 years away, though!).

Job

I enjoy my job and think I'm pretty good at it (certainly my knowledge is!). But my passion is coding, and I feel that in the next couple of years, I need to get a new job back in the industry. My New Year's Resolution is to try and set down the building blocks to try and do this and find a new job. So, I plan to try to make this my last year of teaching (at least at the moment). If it doesn't happen, then I'm still okay with this, and I don't want to put pressure on myself to find that new job and I do like my job at the moment anyway.

If I'm going to be narrowboating, I want to have all this sorted before I move on with that. 

ZPE now has ChatGPT integrated. The new ChatGPT object is available within the language and requires you to set up your own API key. 

I'm also working on the editor AI features, including AI Suggest, AI Assistant and AI Improve. All of these will connect to my webserver but will require a subscription. 

I'm really happy with this being the first feature of 2025.

2024 has been an exciting year. Personally, I believe there have been several key highlights. This is one of those sorts of sentimental look back at the year moments, particularly from my point of view. I mainly make these so I can look back, since a blog is kind of like a journal anyway.

First, in January, I launched my new balf.io platform. balf.io is an external way to view things like my slideshows and documents (DragonSlides and DragonDocs, respectively). It also acts as my URL shortener and redirect system. Overall, balf.io has simplified things that I do on a daily basis. Speaking of DragonDocs, January was the first year my new DragonDocs AI was released, allowing DragonDocs to mark answers provided automatically. 

Also, in January, I released ZPE 1.12.1, which brought the critical changes that made room for LAMEX2. 

In February, I updated my smart home to be entirely local for the first time since I built it. Nothing relies on the cloud, making it more streamlined and faster. 

The Internet turned 35 years old in March 2024 - a historic moment. 

ZPE 1.12.2 was also released in February and was one of the most significant updates in a long time, with LAMEX2 being included, offering up to 4 times the performance of the previous versions and having a much lower memory overhead. LAMEX2 became the standard LAME in version 1.12.3.

In May 2024, I released my first fully functioning ZPE transpiler, ZenPy, and I fixed the plugin system within ZPE (and then split ZPE's core so that parts that were not necessary became plugins). June saw the introduction of breakpoints to ZPE.

In July, we had the first election in over 14 years, which did not result in Conservatives and ended up with the Labour Party instead. ZPE finally got namespaces in July. In July, once again, I went to York, this time with my mum and dad. It was nice once again and I made some critical decisions about my life and what I'm planning on doing in the near future whilst on holiday this year. 

In October, my oldest/longest friend got married. It was a spectacular day up in Dunkeld (I stayed for three days), and the wedding itself was out of this world. Also, in October, I finally got back into YouTube and want to continue to do it again. I also finally updated my house infrastructure to use 2.5GbE for everything.

In December I got my routine MRI scan of my head and spine and all was clear. To top the year off, I went to my very first gig. I saw Travis in Glasgow (my second favourite band). It was exciting and one of the best events I have ever attended. Once again, I went with my mum and my dad came along as well (he's not a fan of Travis the way I am, or my mother even, so he didn't enjoy it the way we did). 

All I have to say now is that let's hope 2025 is a great year, too! Happy New Year when it comes.

ZPE 1.12.12 is now available. Sadly, not everything I had planned to bring in managed to be brought in. However, this version paved the way for further performance improvements with ZPEC (ZPE Performance Enhanced Cache), which precompiles code before execution and can make a serious difference to the program's performance.

Another nice new feature is that aliases are now stored in a file that is read on startup, meaning you can easily add or remove aliases to ZPE.

ZPE 1.13.1 will be released in January, and one of the significant features to be added is additional data formats, including the INI file format, TOML and JBML. I also aim to improve the caching system further.

Some bugs still need to be ironed out, such as the popups in the editor on Windows.

Also, I'm no longer doing ZPE throughout the year posts as they are actually reflected in the history of ZPE anyway.

I just wanted to say Merry Christmas for 2024! Have a great day!

I've had shares in Tesla since the middle of last year and bought them at approximately £144. Today, I decided to sell all 25. Each share was now worth £346, meaning a profit of £202 per share! This is only the second company which has been highly profitable, after selling my shares in AMD for five times more than I paid for them.

This is why I think it's important that when you've got some spare cash, invest it into big companies like this! The return I got today was incredible! 

Though don't take my advice as I've messed up in the past with investments that didn't work out.

The next version of ZPE, version 1.12.12, will introduce the new ZPE Performance Enhanced Cache (ZPEC). ZPEC will improve the performance of applications run through the -r ZAC by precompiling the application's bytecodes into a small file. The cached version will be stored in the ZPE folder as an unoptimised compiled program to make it as similar as the code it is based on.

The next time the program is run, ZPE will perform a cache lookup and, if the file exists, run it. If a cache miss occurs, it will compile and store the file in the cache and then run it.

It then performs some hashing to decide if the compiled program needs to be updated. 

ZPE nightly was introduced so that when a change to any version of ZPE was made, the download would automatically be the latest version. Ultimately, nightly was supposed to be the latest, but it was not necessarily the most stable version of ZPE. Alas, the plan to deliver this didn't really work as it relied on my laptop being on. 

The good news is that now, ZPE nightly is the most up-to-date commit on my GitHub. Once I commit to GitHub, the nightly will always be the ZPE that's on there. This means you can try out the latest and greatest ZPE anytime. You can head to my Download Center to download the newest version right away.

My website's function information on ZPE isn't always up to date with the internal function information from ZPE.

Well, from now on, the function information string will be automatically updated to align with ZPE. This is a big update that should hopefully make it easier in the future for me to update ZPE.

Powered by DASH 2.0