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

Jamie Balfour'sPersonal blog

Goodbye 2022, hello 2023.

Happy New Year 2023! Wishing you all the very best for this new year!

This year has been one of the best years of my life.

January

Let's start with January. January was a pretty bad month for me in terms of work. I got into a big argument with someone at my work that made me decide to hand in my notice, despite loving the place I was working at. I was in a bad place as I was still recovering from COVID from the year before and was struggling to get back into the swing of things. Despite this punch-up, deciding to move on ended up being one of the best decisions I've made (more later).

February

In February this year, I decided to start looking into developing my teaching skills to be more digital. I began to build my slideshow engine in February which is now a key part of my day-to-day teaching. I also began to build my embeddable tools, which are a major part of this. I also began developing an interactive worksheet system that uses HTML, CSS and JavaScript to power it.

March and April

In March I applied for a job in one of the two schools I had always wanted. I knew after the interview that I wouldn't get the job and indeed I was correct. I also sat my driving test for the first time since 2016 (things had at last begun to settle down again and I found the time to do it). Unfortunately, I got one major fault (although, once again, no minors) and failed as a result. This was upsetting news but I decided I would persevere and try it again. Two fails in one week. 

I also could not forget to mention the big change that came to ZPE and that was the inclusion of passing by value and reference. 

May

May was perhaps the best month of the year. First of all, I resat my driving test and passed it at last! A week later, the other school I had always wanted to work at posted a job and so I applied. I went through the interview process but didn't think my interview went too well, but later in the day was offered the job! Both of these were within one week of each other too (it was the reverse of March). 

ZPE also got another big update with strong typing now being available in parameters. This was another huge update. 

In terms of my house, I finally got my garden done.

June and July

In June I went to see my new school and it was exactly as I remembered it. I also met my line manager who is the most awesome guy ever, although I had known that he was a nice guy from when I did volunteer work at the school way back in 2016. Over the next few months, I began to work hard on improving my slideshow engine, creating webpages for my class worksheets and making more digital tools for use in education.

I went to York with my mum for the first time in 11 years and this was quite an enjoyable experience, especially compared with my usual Scottish getaways that I do year upon year (I'm just meaning it was a big change, not that it was better). 

I also turned 31 years old.

August, September and October

I started my new job at my new school at last. My first few weeks were awesome! The saying the grass isn't always greener on the other side applies whenever you are applying for a new job, but in this case, the grass was greener. I'm very happy in my new job. Further, in September I got an award for settling into the school quickly and well. I love where I work.

Once again, this was a big month for ZPE when it was compiled to a native binary for the first time, seeing huge performance gains over the JDK version.

At the end of the first half-term, I knew that I had made the right choice with my new school. 

November and December

Not sure what to say about these two months, but they have been really lovely. The first few weeks of December were pretty tough as I got a cold and bunged up thing that just refused to go away - it lasted a total of four weeks before it cleared up completely. 

I spent a lot of time with my family in December after having several months of not speaking to my dad, and then of course Christmas was a lovely day at my parent's house, despite me originally not planning on going. On the 30th of the month I decided to go and buy a car. At last. I put down the deposit to get my self an MG4 EV. What a nice end to the year.

It was always going to be difficult to simply drop macOS and switch to Windows, but I've managed to barely touch my MacBook. I am typing on it at this precise moment as my EliteBook is currently set up on my desk as my gaming machine and ready for the morning where it will be used, and I still feel there is so much more that I can continue to get from my MacBook Pro.

To be honest, the typing experience on my MacBook isn't much different from my EliteBook and generally, it's just a lovely machine to use still. I don't like the TouchBar on this MacBook and that is something I voiced way back in my original review, so there are no surprises there, the touchpad does feel better, but only just and the laptop feels ever so slightly smaller and lighter. 

My transition isn't as plain cut as my transition from Windows to Mac. I still have an excellent quality MacBook Pro here and it would be a waste to see it just be left and ignored in the corner, but my development of software and websites has completely transitioned to my EliteBook - I'm so surprised at this as the main use for my MacBook was originally as a development machine. The crucial change for me, however, is moving away from a gaming desktop and a business laptop. Jambour's ProBook and EliteBook was the company's main machine for all things related to the company simply because we needed Windows-based laptops for taking to client meetings and for moving around, and my only other actively used PC was my gaming desktop which would not satisfy those requirements. So both my business machine (the ProBook) and my gaming desktop (The Red Revolution) have been replaced with my new EliteBook. The gaming desktop will likely have some parts sold but likely the case and PSU will be kept for the time being. 

As for my MacBook, as I say, it's got years still left in it and will continue to be used as a media machine for listening to music, watching films, and occasionally for things like browsing the web. But it's not longer my daily driver and I love my EliteBook already. Simple things like switching from Command to Ctrl that took me time back in the day have been really easy as I've been a Windows user as well as a Mac user since getting my Mac. Unifying all my computers into one machine has been my dream since I got a Mac. Unfortunately, Apple tried to make that difficult. However, even after this MacBook Pro goes, I will always have a Mac in the form of a Mac Mini. 

In summary, my transition is complete. I'm actually back as a PC user primary for the first time in about 11 years and whilst some may think it's a backward step, I'm quite happy to argue that now a lot of things have changed, particularly the new Linux Sub System and Windows Terminal that make it possible for me to enjoy development on a Windows machine again. 

Also, I'm still a software developer. A lot of my friends might think that I'm slowly fading away from it because I'm a teacher. But just because I'm a teacher, doesn't mean I've ditched my passion for software development or something like that. I continue to use my skills outside of teaching. In fact, ZPE is better, and faster, than ever.

Merry Christmas 2022! I hope you have a lovely Christmas and hopefully enjoy it with loved ones. I'm hoping to visit my parent's house and see my aunt and my cousin and his children there too. 

Free photos of Santa claus

One of the most exciting features coming to ZPE is cloud variables. This will allow booleans, strings, integers, reals and much more to be stored and retrieved from a ZPE Online account. This will, however, only work while the user is logged into the cloud. 

This is intended as the headline feature of ZPE 1.11.1. 

There is a possibility that serialisation of objects will come later too. 

The new global keyword that has come to ZPE is one that totally changes the way in which nested functions can be used. It's actually awesome in the way it works too as it doesn't break existing code (recompilation is required) as it still works with the same syntax as the function call from before. 

Performance-wise, it's much better. Feature-wise, this means that you can nest a function declaration inside an if statement and declare it as global in the if statement. This is awesome and it was by accident that I discovered this was already partially implemented in previous versions.

ZPE 1.10.12 will be available on the 12th or 13th of December.

We all know how infuriating it can be when a computerjust stops working, and repairability is the key to making the world more sustainable. But SoCs in general have made some parts of this easier than before but have also brought many other issues with them.

First of all, SoCs or System-On-Chips are replacements for the architecture that existed for generations where the CPU, GPU, northbridges and south bridges and the main memory are in completely separate parts of the system.

Back in the days of the Core 2 Duo and Phenom and Athlon days we had IGPs (Integrated Graphics Processors) that communicated through the northbridge which meant it was a long way a way from the central processing unit and were therefore slowed by long path that they had to take to perform operations. We also had two bridges; the northbridge (or memory hub) which communicated with the main memory (RAM and ROM) directly from the CPU, and in the case of an IGP, the graphics processor. This was removed first by AMD and then by Intel (you'll actually notice that whilst AMD has always been the underdog in the CPU market, it actually brought some of the best innovations to the market such as x86-64 and HyperTransport).

But we still had the southbridge for a very long time and it continued to provide backwards compatibility with older hardware such as PS/2, RS232 and other obsolete connectors using the SuperIO hub. Lately however, the SuperIO hub doesn't really need to exist and the whole southbridge has been integrated as a chiplet into the main chip (or SoC). Not only does this improve performance, but it reduces power consumption and heat.

The separate chiplet idea is also very feasible compared with integrating everything into the central processing unit or a dedicated external chip as you'll understand if you understand the term binning chips. 

SoCs have problems though

As an advocate for the concept of a SoC architecture over traditional architectures I can see the humongous benefits that they bring, and the bridge the gap that existed before whereby the performance of a computer was affected by how long the wires between different components was, but they do bring one caveat. 

That one caveat is the fact that all SoCs in laptop computers are soldered, often using the BGA-style of socket. This means that the whole board needs replacing when the the SoC has one faulty part, and, with more being integrated into the SoC, this is more likely to happen. This means that not only is it far more expensive to replace a SoC, but it also means that it is far more difficult. 

I've replaced many CPUs in laptops in my teenage years onwards, most notably is replacing my Pentium 4 laptop with a Pentium 4 Mobile-M chip but I would be hard-pressed to try and replace a BGA chip these days. 

How they need to be improved, particularly in laptops

As the Right-To-Repair movement progresses even further, one of the main areas people should be looking to push for is PGA-based or LGA-based sockets that allow direct replacement of the SoC again. Heck, even the Pentium-M CPUs with their Socket 479 sockets were replaceable to the point of remove and slot in. In a world where slimness is the most important thing, we really need to think about sustainability too.

I have mixed feelings about my new daily driver. For one, I've been a Mac user for over 11 years now and I have come to love features like Find My and Apple Maps as well as Keynote and Numbers as well as Graphics, Cheatsheet, Timetable (both available on iOS and iPadOS too, which means I can view on any device). I also love the other things like Preview, LanScan, Music, Apple TV, Quicktime and of course, control over my Home (this isn't a huge problem as I use Home Assistant anyway). I weighed up the advantages and disadvantages and the only major advantage the switch brings to me is that the parts in the computer are replaceable. 

Let's be clear though, my new laptop isn't designed to solely replace my MacBook Pro, it's purpose is to get rid of the desktop computer that I have and make the whole work and play more streamlined. That means the chances are my MacBook will still remain a major part of my daily life whilst my new laptop will remain as my work machine and gaming machine (through the eGPU). I do not want a repeat of the disaster that was my Razer Blade Stealth where it basically sat and did nothing for three years despite me dropping £1500 on it. I am, for the foreseeable future, intending to keep my desktop PC as I wish to look at using it as a storage server (as it has a whopping 9 drive bays in it). Plus, the desktop was only upgraded last in July of 2019 with a £150 PSU (which is another amazing Corsair 850W PSU). 

I finally decided to jump away from big towering desktop computers to a more reasonable laptop-based eGPU setup. 

In the next few months, I will begin dismantling my desktop setup which I have had since January 2019. The desktop I currently have has parts that have survived 5 generations of desktop PCs, and some parts in it are as old as 2007. The PSU in it replaced my 10-year-old Corsair HX850 which lasted exactly ten years from when I built my first PC in 2009. It marked the point when I was considering ditching the desktop PC altogether and going down the USB-C-based laptop route which I tried with my Razer Blade Stealth until the screen started to fail.

I have been torn between two laptops that both comply with my environmental concerns and my Right-To-Repair belief. They are the Framework laptop and the HP EliteBook 845 G9. I have mixed feelings about both, but I am more swayed towards the Ryzen processor than an Intel that offers little performance improvements over my brother's Skylake-based computer.

Apple makes many bold claims, not least about it's attitude to the environment. But it also forgets to mention how detrimental Apple is towards the environment when it comes to their laptops. As an owner of several Apple products from a Mac Mini to several MacBook Pros, iPhones, Apple Watches, iPads, Apple TVs and so on, you quickly realise the lack of repairability each of these has. They all have that one thing in common - lack of repairability.

This is, of course, good for Apple, whose core goal is to make as much profit as possible (even though they don't need half of what they have made). Apple will make a nice bit of extra cash when they have to repair devices for users because there is no easy method to do this. 

But it's the planet that suffers. MacBooks cannot even have their batteries replaced by the consumer anymore - meaning that people like me who are experienced and able to do things like replacing drives etc, cannot do this anymore. Most people, including myself, chuck away the old device and get a completely new one because replacing the battery is around about £200 or something crazy.

All of this, is totally against the Right To Repair movement. Proposals for the Right To Repair have emerged in the European Union, which could force companies like Apple to start making their devices more repairable. As an iPhone 14 user who was actually trying to desperately hold on to his iPhone 12 until the iPhone 15 was released (mainly for the USB-C port that will be required by law), I find that Apple's defiance to law is disgraceful. 

I personally will not be buying another MacBook Pro after this one, which is a real shame as I love the device so much, but the fact it lacks repairability (as well as ports) to try and make it as slim as possible is very anti-consumer. As a long time Mac user, I have finally had enough. I will miss macOS but I cannot justify the lack of repairability in Apple's products.

Powered by DASH 2.0