To use this website fully, you first need to accept the use of cookies. By agreeing to the use of cookies you consent to the use of functional cookies. For more information read this page.

# Jamie Balfour'sPersonal blog

For a long time I have been in and out of Microsoft's smartphone ecosystem with me buying my first Microsoft Windows powered device back in 2005 when I was 13. Back then they were called Windows Mobile phones.

I got my first Windows Phone, a HTC HD7, in 2011, and it feels like a lifetime ago. It was then that Microsoft announced that Windows Mobile was to be replaced by this new, more sleek and modern operating system known as Windows Phone 7. At first it was a great operating system, mainly because it was different to the competition, but within no time at all, I started to see the err in my ways choosing a device powered by Microsoft's operating system. Months into my Windows Phone 7 device there was still no Facebook, and half of the other most useful apps had no intention on coming. The big update known as Windows Phone Mango was supposedly bringing sweeping changes that would improve the device but it was a long wait for something that you weren't even sure would fix the issues.

Microsoft entered a market controlled by two large companies who had actually been their rivals in other markets before now, Apple and Google. Microsoft's corporate business model was their only strength here; the other two were focused on the overall dominance of the smartphone market, whereas Microsoft, with the Office brand amongst other things, could focus on making their devices more suited to the enterprise market.

Unfortunately for Microsoft, they actually went down the route of trying to sell their phones to the average user. This created a variety of different problems for Microsoft because instead of focusing on their enterprise market, they had to cater to everyone, much like how Apple and Google did with iOS and Android. This made them just another smartphone operating system manufacturer, and they lost their own identity trying to copy ideas from their competitors.

My HD7 was the only smartphone I have ever paid to get out of early, simply because the operating system was so bleeding awful. The phone itself was actually really good however.

Windows Phone 10 came out and it's release was a surprise to me, as I had thought by that point Microsoft might have realised that there was no point in continuing with something as dreadful as it. Microsoft even went as far as to buy the Lumia line from Nokia and tried to market them as Microsoft phones.

Nothing worked for them. Windows 10 Redstone 2 was released as a big update and a promised Surface Phone was rumoured. People actually thought that it had a chance of becoming something, but no. Nothing came of it, and this article that I have written was inspired by another, which also talks about how the fate of Windows Phone is a sad one.

Posted by jamiebalfour04 in Tech talk
windows
phone
mobile
fate

From the beginning of version 1.4.0 ZPE has taken codenames pretty seriously. Now it's a major thing as you'll see from version 1.7.x since each version goes by a different name. Originally, codenames were given when the parser changed underneath, whereas now it is actually if there are changes to any part of the whole package. Major releases are denoted by a change in codename. The following is a list of all codenames used to date as well as future planned versions.

The official ZPE codename roadmap to date is as follows.

• 1.4.0: Tummel
• 1.4.20: Tummel
• 1.4.0.23: Lyon
• 1.4.1.0: Lyon
• 1.4.2E: Tummel
• 1.4.2H: Experimental
• 1.4.3: Rannoch
• 1.4.3.10: Isla de Muerta
• 1.4.3.40: Isla de Muerta
• 1.4.4: Black Pearl
• 1.5.0: Black Pearl
• 1.5.0.1: Black Pearl
• 1.5.1: Black Pearl
• 1.5.2: Pelegosto
• 1.5.3: Isla Cruces
• 1.5.4: Port Royal
• 1.6.0: Severus
• 1.6.1: McGonagall
• 1.6.2: McGonagall
• 1.6.3: Dumbledore
• 1.6.4: Potter
• 1.6.5: Potter
• 1.6.6: Weasley
• 1.6.7: Waverley
• 1.6.8: Haymarket
• 1.6.8.1: Haymarket
• 1.7.0: Reindeer Lake
• 1.7.1: Kasba Lake
• 1.7.2: Nueltin Lake
• 1.7.3: Yathkyed Lake
• 1.7.4: Dubawnt Lake
• 1.7.5: MacKay Lake
• 1.7.6: Wollaston Lake
• 1.7.7: Nettilling Lake (planned)
• 1.7.8: Cedar Lake (planned)
• 1.7.9: Cree Lake (planned)
• 1.7.10: Dubawnt Lake (planned)
• 1.7.11: Baker Lake (planned)
• 1.7.12: Primrose Lake (planned)
• 1.7.13: Aberdeen Lake (planned)
zpe
codenames

Shortly after I built my latest PC, the Red Revolution, AMD released their Radeon VII cards. These were designed to compete with Nvidia's stiff competition that just gets stronger and stronger. The main focus of these cards were Nvidia's RTX 2080 cards which have allowed Nvidia to hold top dog position in the GPU market, with AMD more focused on the budget builder, or those just looking to save a bit.

AMD haven't done that as of yet, and the RX5xx series are a bit dated for someone who, like me, is building a new PC. My card in my gaming PC is an AMD Radeon HD 7950 and it's well and truly dated. But I've got brand loyalty, I've always gone for ATI/AMD cards as long as I can remember, because there was once a time when ATI cards were superior in many ways to Nvidia cards with the latter having troubles with overheating and the former having trouble with software.

It's time AMD launched their next generation of graphics cards. Mainstream cards are my focus, I had a high end one with this one and I probably could have just stuck to mainstream, as it replaced a Radeon HD 5670 which was extremely mainstream.

I'm holding out for AMD's next generation of cards in the hope I can get a mid-range card for a lot less than what I paid for my 7950, but I'm not impressed.

Does anyone know what's going on with the next generation of cards?!

Posted by jamiebalfour04 in Tech talk
amd
gpu
vii
6xx

Ever since objects were introduced in version 1.3.x they have been gaining more and more attention. They became a huge part of ZPE as the move towards making ZPE/YASS an object-oriented language became more and more clear with the need to be able to develop and teach simple object-oriented methodologies became more important.

ZPE 1.6.4 (August 2018) made a huge change that aligned structures and objects in a better way than before.

Now, with version 1.7.4, objects gain even more power. Previous versions of ZPE from 1.6.4 focused on using new object creation functions such as the generate_image, generate_ui and file_open_sequentially functions, but now ZPE in-lines the creation of objects such that it becomes possible to use internally created ZPE structures in the same way that user-defined structures are used. By this I mean using the new keyword:

YASS
function main()

$v = new ZPEImage()$v->display()

end function


This is positively one of the most important syntax changes that have been made for a while. As a result of it, certain functions such as the above-mentioned ones have now been removed.

ZPE 1.7.4 will be out in the next few days, bringing this new feature amongst many other fantastic features that will make this another one of those amazing releases. Other features coming include a much better GUI and ZPE Online features, lazy/short-circuit evaluation, the removal of an old version 1.3.x hack that affected performance, better-designed structure and object generation, and a few new functions.

zpe
1.7.4
objects
update

For the first time in however many years, I have been spending a lot of time on working on making ZPE talk to my website and web server. As a result, I have been working on making a shared community that will allow users to save their work to the cloud.

The cloud will be powered by my own website engine that allows the posting and getting of user contributed content. This will not only be very good for clients who would like to access scripts elsewhere, but it will also allow sharing of code.

This is no where near finished, but it's got some traction already. You can find out more here.

zpe
online
1.7.4

My 19th birthday present, a Fujitsu T4410 tablet PC, specifically bought for taking to university with me, has lay in the same place for months now, awaiting a new SSD after the scandal of OCZ drives failing (no wonder they disappeared).

But something that I cheaped out on when buying the tablet PC (it was already £1000) was both the CPU and the fact it didn't have 3G. I had hoped to upgrade my tablet to include a 3G card and bought over £250 worth of cards in the hope that one of them would work, including a Sierra Gobi 2000 that actually came from a Fujitsu Lifebook. Alas, none of them worked and I figured out that it was more than likely because the BIOS was locked to prevent it being added afterwards. I knew that there was really only one way to fix this, buy a new computer. I wasn't doing this in a hurry.

However, at the start of the year I was looking for a new battery for my tablet since the one I have now only holds about half of it's full charge, and whilst I was at it, saw a motherboard, which conveniently featured a better CPU and 3G/UMTS card support. It was also only £26. I decided to give it a go.

Finally, after about 5 hours of ripping out the insides of my 2010 Lifebook, I have managed to breathe new life into it. My once T6570 powered tablet PC now features a P8700 (lower TDP, better performance, longer battery life) and a new 3G card! Although this was more of an experiment, it was also to help bring back power to a laptop I love owning, even if just for fun or my own reasons. It has been a fun experiment that worked really well.

Posted by jamiebalfour04 in Tech talk
fujitsu
t4410
pc
tablet

Since it's getting close, I thought I'd post about what I think might happen if this final, epic season of the amazing TV series that is Game of Thrones.

First of all, let's talk about the wonderful Jaime Lannister, who has, in my personal opinion, gone from being an overly rude, full of himself, posh no-one-can-touch-me knight to one of the bravest, most sensible, and extremely caring individuals in the series. His transformation which took place across each of the previous seasons has turned him into one of the favourites for a lot of people, but that also then puts him in the firing line for HBO since they tend to just kill characters you love at the drop of a hat.

But here is what I think will happen to Jaime, and we can laugh at my thoughts after the new series is out and I am wrong. I think Jaime will redeem his title of Kingslayer and will be the one to kill the Night King. Except it will not be clean. Jaime will in fact sacrifice himself to achieve this. This would make sense because Jaime is already rebelling against Cersei's plans and plans to travel north to aid Jon Snow and Danny against the Night King.

Another loss that I would expect is Daenerys since I am half expecting Jon to rule at the end of this. I'm personally more in favour of a kind of world where Jon rules the North and Dany rules in the south but I can't see that happening anymore. I actually think that something will happen to Dany and she won't survive this.

I also have this other theory and I think this theory is pretty damn cool (I've also not found anyone else going on about it, so I think the chances of it happening are quite slim). Here goes. The Mad King was going mad and asking his pyromancers to "burn them all" simply because the Night King got in his head. He was not meaning burn the people of the city, he was meaning the white walkers - he thought that they had made it into the city and that he was surrounded because somehow he was having visions of the Night King in King's Landing.

Finally, there is another theory I have that I think works. Ser Davos will, with his amazing skills in parlay, convince the Night King to surrender. He will literally tell him, he is not a learned man but he believes this war is pointless.

Some of my points can also be reinforced by this article.

First of all, my previous post is not void. I'm still considering ditching Dash. But as a result of talking to a friend and a few members of my family who remember my joy in developing Dash, I am proud to say that I've reconsidered what was said in the post. It's with great joy that I am now able to say that rather than ditching Dash I'm going to consider redesigning Dash and releasing Dash 2.

Dash 2 will borrow tons of code from Dash and will be a total rewrite of the whole thing. Parts will remain almost identical but the majority of the system will be rewritten in an encapsulated, object-oriented manner. Further, it will be backward compatible with the original Dash system (Dash 1?) and the Dashboard will remain the exact same. In the meantime, I've removed download links to Dash.

I'm hoping to start it mid next week and have it finished by the summer.

Dash as it is has become hard to manage. As a result I've now decided that I'm no longer going to develop Dash. This will come as a shock to some of people who have downloaded collectively over 22,000 installers for Dash. I'm also almost in tears with sadness about this at the moment.

Dash as it is works really well for me and I like it as it is. The update that brought Girder to it this year made development easier but overall, I'm extremely unhappy with the fact it's not fully utilising encapsulation amongst several other issues.

This has the same feeling as the moment when I decided to stop working on Painter Pro and Cobweb four years ago since as much as I kept telling myself I'd give it a go again, I knew it wouldn't happen. I hope that doesn't happen here.

I have plans to rewrite it from scratch, drawing the key features like the Dash Dashboard back into the new version, but the rewrite will likely take me months to do again.

dash
update

ZPE 1.7.3 which is another major update to ZPE, is available from today. Major changes include the way that arrays work in ZPE, along with ordered associative arrays. Binary, octal and hexadecimal values have changed (see the changelog to find out more), structures are now less like standard objects where values can be set on them (see the previous post) and there's now several new documentation styles (@author, @date and @doc).

Also the update changes the parse_json, parse_csv and parse_xml functions to json_decode, csv_decode and xml_decode and there is now a new csv_encode function.

Overall, the tweaks made should make development even simpler than before.

zpe
1.7.3
update