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

BalfVote is my latest addition to my WISP. Developed in a couple of hours, I developed a tool that I want to use in my classroom. Since I have already moved away from using Google Slides and to slides.com, which gives you much more granuallar control over the HTML and CSS on the pages, I have already made the change to a more consistent set of slides - all hosted on my website. I have also been creative with my interactivity in my lessons, for example in one lesson the pupils must provide the correct answer and when they do, the text box highlights green, whereas if they get it wrong it goes red. Other lessons have timers built-in to them, or quizzes built with BalfQuiz and much more. By having the ability to embed iframes and HTML I can do anything I want. 

As you'll know, being a dual-typed being, an educational practioner (aka teacher) and a computer scientist, I like to mix my skills together and come up with ideas that can really change and inspire children and over the last year my focus has been making my lessons more digital and more interactive. I mainly focused on moving away from standard PowerPoint based lessons, to more online tools such as Google Slides. I then opted to have much more control over my content so moved back to slides.com (I have been creating presentations with reveal.js since 2016). slides.com is only part of the picture as it helps me to make the slides and export them to HTML. I made a lot of the features I have in my lessons myself. And my slideshow player is where the magic happens. I have tons of features in JavaScript, CSS and PHP powering them. This makes my lessons consistent and very functional, but also engaging. 

This is exactly what BalfVote aims to do. By asking pupils questions regularly throughout a lesson I can guage how well the class is understanding a concept. Coming very soon is an option to have right and wrong answers too, which can make this more like a quiz. 

Head on over to balf.vote to find out more.

There are plenty more innovations like this coming, so keep an eye on my blog!

I'm really happy to announce BalfSlider V2 as of today. It is now fitted out with the generator and the samples as well as being used on my own website without any issues.

V2 breaks compatibility with V1 but offers much smaller file sizes and easier to maintain code. Packaged as always with the slideshow is the BalfSliderAnimations package. This has changed too, albeit, very marginally. Effects are still the same but the structure of the code differs.

Why did I bother?

The old version was, at the very least, difficult to maintain. I needed to streamline this version and move away from passing objects. The new version offers more functionalities that will allow future animations to be created with ease. 

You can download the latest version from my website from today. 👌

I have finally redesigned BalfPick from the ground up for the second iteration. This version is completely different and relies on much less JavaScript and does more using CSS. It's much higher performance, better on mobile devices with touch and much lighter in weight too. 

Part of the new design focuses on streamlining the manner in which it is used and instead of providing a custom dropdown list it simply uses the original dropdown list built-in to the browser or operating system.

Below is how these new dropdowns look on my website in dark mode.

I've been planning on getting BalfComment up and running for a long time and now it's finally here. I'm close to adding this to my own website and will start with my own ZPE Documentation pages.

Once again, BalfComment is neutral to designs.

For a long time it's been something I've needed to implement - a new version of my select element on my website.

Some of you may already know that styling select elements isn't easy and is incredibly restrictive in all of the main browsers. I'm sick of this attitude from the developers of these browsers and I really couldn't be bothered wasting my time trying to pull off some hack that fixes that so instead I followed my technique I used to create the radio buttons and checkboxes on this website - hide the actual form component and wrap it in a label. I call this BalfPick.

BalfPick is nearly finished and it's already across my website. I've had a few issues with Windows tablets but overall it's working on Android, iOS, Mac OS X Firefox, Chrome and Safari and the Windows equivelants with click and Edge on Windows. Surprisingly, each browser acts very differently and each operating system works differently too. As well as that, click and touch events must be registered differently (I developed a rather crude but very clever method for stopping click and touch events being registered at the same time in BalfBar back in 2014 and I'm using a slightly better version of that in BalfPick now too).

BalfPick is also available as a jQuery plugin as with the rest of my Web Independently Styled Project. What makes BalfPick different is it's unique support for both a really attractive desktop dropdown and it's ability to support the native dropdown on touch devices.

I'm also planning on bringing BalfPick to Dash in the next few days because some of the dropdowns could do with this.

Take a look at an example of this on my site here https://www.jamiebalfour.scot/about/interests/gaming/warcraft3/spellcraft/.

balfpick
dropdown
select
option

In the last few hours I have brought a ton of new features to the BalfGallery project - features that make this gallery miles better than what I had with my previous gallery.

In essence, BalfGallery is formed of two of my components - a PHP scripts aptly named BalfGallery and a jQuery plugin called BalfPopup. The popup is used in multiple places on my website and replaced MagnificPopup earlier this year on my website. This was a big change and required a lot of my time to make BalfPopup actually useful. In comparison to the previous gallery, BalfGallery is lightweight, fast and it takes advantage of features of my own BalfPopup which make it really powerful.

On top of this, it integrates better into my own website by flowing with the design concepts of it. Although currently available as a jQuery plugin, it is actually written differently to the other plugins I provide and the jQuery plugin is nothing more than a wrapper.

New features to BalfPopup now include left and right arrows for images - it cleverly finds the next images using the PHP script thus saving JavaScript resources. 

balfpopup
balfgallery
updates

The Zenith Parsing Engine 2.0 and a lot of the interpreting and compiling features are coming soon. 

ZPE 2.0 differs hugely from ZPE 1.x because it is being rewritten in C++. As you can imagine this is a huge job for me but I've already begun rewriting the amazing parser and will soon begin work on a compiler and later interpreter. 

It's easy work for me and I love it so there's nothing to worry about. I will also likely open source the project too :). We can work together to develop the best programming language ever! Let's make it powerful, fast and efficient with memory (I'll need to write some GC tool at some point for it, if you've got experience in this, please please get in touch and we can work on bringing it to ZPE).

ZPE 1.x will continue to evolve alongside ZPE 2.x and will continue to recieve updates until I officially declare that ZPE 2.x is powerful enough to do what ZPE 1.x can. 

Next topic, Dash. Dash is now on hold for the foreseeable future. No reason other than a lack of motivation for it for now. And again, the lack of motivation is not because of anything but since it's in a really good position I want to leave it for a while before I work on it again. 

I'm working on website hosting and websites at the present time, so both of these projects are taking a backseat for the current time.

Also, I will rewrite the SCSS for BalfBar in the next few weeks because it was getting a bit messy.

Also, my Halloween theme on my website is here for 2017! 

zpe
2.0
2.x
java
c++
update
dash
halloween

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 have been trying to find time to make this video and finally got round to it last week. In this video I take you on a small tour of BalfBlog and explain what it is. I hope you find it useful and interesting.

Click here to watch it.

balfblog
update
nutshell
description
features
video

Working on many projects at once means you get genius ideas every day! Today's post is about the genius idea that came to BalfBar today.

When I say genius, it was actually inspired by my main competition, jQuery SmartMenus. However, my own ideas were used to actually make BalfBar work the way I want it to.

What happened was that I finally got round to adding scrollable menus to BalfBar. In some ways it's pretty sad when layout needs to be done using JavaScript, and I'm more a fan of green code over yellow code (CSS vs JS for those who don't know my naming for CSS and JS). However, the layout is instant, and even on older computers running on older versions of Google Chrome it still runs perfectly fine. My main concern for BalfBar is the amount of work being done in the JavaScript so I am working on removing more of the older features found from earlier versions and working to improve performance and reduce memory overheads generated. 

Scrolling is managed by binding the scrollwheel and some clever stuff to do with absolute position and calculating the distance to the top versus the height of the dropdown. I've also removed the fixed positioning on menu items since there was no need once I figured this out, were are back to absolute positioning (which is great because it works well on all browsers when zoomed).

I believe this concludes all of the main features I wanted in BalfBar and in a way, brings this project to an end, or at least a feature end. Bugs can still be reported to me as usual. 

fixed
absolute
position
menu
update
december
Powered by DASH 2.0 (beta)
Code previewClose