Behind the Times? Git Gud

I’ve recently decided to learn Git.

Yes yes I know, I’m over a decade late to the party. I haven’t taken a look at source control since I first played with SVN many (many) moons ago. I haven’t bothered for a few reasons. Mainly, I’ve not had a use for it. Though I have written some scripts for work and whatnot, I’ve not needed the collaborative advantages of using the tool, and neither have I really needed the version control side either.

Don’t get me wrong, it probably would have been useful, however I’ve not missed it or wanted the features it boasts until recently.

However, times are a-changin’. Some of the techs at work have started using my scripts over the last year and they’re beginning to identify issues or quirks which I would ignore or didn’t encounter. I wrote these scripts, so I know how to use them almost instinctively. These issues just don’t show their head for me, or when they do it’s sort-of by design and I don’t hesitate to work around it.

Since I’m now making small changes sporadically, and looking ahead I’m beginning to automate even more things now that I have a slither of free time occasionally, I’ve decided to jump head first into Git.

I’ve built an Ubuntu 18.04 VM at work and installed GitLab onto it. (Slight tangent, but their installation guides are very good.)

The Continuous Integration and Continuous Delivery stuff fascinates me, but I’ve disabled them from running on each project by default as I need to focus on learning Git first. I’m eager to learn more about this, though.

I’m going to make you cringe, but I’ve opted to use a GUI front end for my machine instead of relying on the CLI. This is because it seems to be a bit of a pain in the ass to run CLI git on a Windows machine (we’re a Windows network) and, although I will learn the commands eventually, I want to focus on the best practises of using Git rather than mess about with the command line syntax. The syntax is very simple, but I don’t trust my brain to remember it right now.

I’ve chosen to use the GitHub GUI for now. It works pretty well. I’ve moved six of my currently active scripts (all powershell) onto GitLab and have pushed commits to the projects.

I’ve also created a project for our network switch configs. I don’t know if this is something GitLab can do or if some other kind of automatic deployment technology is needed, but it’d be cool to make a change to the repository and for that change to be automagically applied to the relevant hardware. I can think of ways to script that myself, but is there a purpose built tool out there?

I’ve got lots of questions to ask and lots of avenues to explore. For now, though, I’m keeping it simple with version control & branching.

I’m considering eventually creating a public GitHub repo to put code out into the world. It would take some work to de-work-ify the existing scripts and remove any workplace data, but I could also eventually upload these scripts, too.

Boiler High Heat

We had a bit of a warm spell recently. One side effect for us was that some of our sites boiler control systems started to panic in an unexpected way.

Each boiler is fitted with a fire alarm which links into the site-wide system. Unfortunately it got so hot in a couple of the storage-heater boiler rooms that the temperature sensor started flipping out thinking there were flames causing the heat. Luckily, we caught the alarm within the 3 minute silent alarm before emergency services were automatically contacted and the site-wide alarm sounded, prompting an evacuation.

Overriding a firealarm long term is not a good idea, so we had to find a way to reduce the temperature in these small, cramped, dusty rooms.

Our solution was simple, but I liked it a lot – turn off the heating element, then run around the building turning on all the hot water taps.

This refilled the hot water storage tanks with cold water. The taps beng on carried all the heat away from the room and within minutes the room had cooled significantly. It is a bit of a waste of water, which is a shame, and there was no hot water in the building for the afternoon, but that beats evacuating out from our cool offices into the high-thirty-C outdoors.

The simple fixes are the best.

Witholding number on external calls on Avaya IP Office R5 Manager

It took some googling to figure out, but eventually I came across the answer to this problem across a combination of a couple of old forum posts. I’m writing it here on the off chance someone else needs this. Or if I need it again.

  • Log into the IP Office R5 Manager
  • Navigate to the Short Code tree
  • Find the “?” entry – the feature name is “Dial”
  • Change the “Telephone Number” field to one of the following depending on what you want
    • “.” – this will withold the number you’re dialing from
    • “.S<number>” – this will show <number> when you dial

<number> should be your number. If I set it to a number I don’t own, it just shows the one I’m calling from.


Sometimes a business has some system or piece of infrastructure that just works. This is a good thing! Unfortunately, some businesses don’t like to invest in technology unless that technology breaks.

In related news, I recently had to figure out how to toggle a setting on some old software, Avaya IP Office R5. As someone who is totally not a phone/VOIP person this was a challenge. Add on to that the fact that the software isn’t very well designed and you have me fumbling about trying to understand terminology and remember where obscure settings are just to do the basics.

This software was managing a 15 year old phone system, and since its inception had been showing as a withheld/private number when calling out to external phones. Not sure why this was ever set, but it’s off now.

Fortinet Wireless, NPS & Called-Station-ID – can’t connect to SSID

Image not my own, I pinched it from Amazon

We’ve created a new SSID at work for our IT staff on our Fortinet (previously Meru) wireless network. Using Radius (through Microsoft Network Policy Server) we couldn’t connect even though it was set up in the same way as an existing, working network. It took us a while to figure out the issue once we thought we had everything configured correctly, but the TL;DR is, essentially, if you use the “Called Station ID” field (not “Calling”!) on the NPS box to specify which SSID the user is connecting with on a Fortinet wireless network, it doesn’t actually use the SSID of the wireless network, it uses the profile name of the ESS profile on the controller.

On the Fortinet box, we have an ESS Profile called “TECHS” within which sits the configuration for the “ITWIFI” SSID. In NPS, setting the “Called Station ID” to “.*:ITWIFI$” doesn’t let you log in, however setting it to “.*:TECHS$” does. This goes against any documentation I could find online.

We ended up just changing the SSID to match the ESS profile name.

Videos not loading in Google Drive

TL;DR: Check that Third Party Cookies are enabled in Chrome and/or G Suite Device Management user settings.

We use Google Drive a lot at work. We are also beginning to use video as a method of training or recording information that you would typically write down. We do still write this stuff down, but sometimes a video is easier to create and consume alongside a document.

We’ve had an issue recently where, seemingly randomly, some people wouldn’t be able to play any videos through Google Drive. They’d open the video and the youtube video player would load, but the video itself wouldn’t start.

Right clicking and downloading the video worked, but that’s not really a suitable workaround to the issue.

We weren’t really able to find anything online about this issue either, but we did find out what caused it so if someone else searches, here’s what we did to resolve the issue.

(more…)

Themes – Light and Dark

I’ve added a theme switcher that allows you to change between a light and dark theme.

Before adding this functionality, the default theme was dark. As you may now be able to tell the default is a light theme! I much prefer a darker theme myself but I know most people prefer a lighter one.

The toggle can be found in the very top left of the site, next to the menu across the top of the banner. This will eventually be updated with some CSS so it looks better but for now it appears to work, however it does need some more testing which I will do over the next few days.

If you configure dark mode, a cookie will be set to remember your choice. I don’t yet have the Privacy page finished (don’t tell the GDPR police!) but more details on this cookie will be found there once it’s done.

I can’t promise this feature works on every browser yet but I’ll iron out the kinks as I find them and make it more efficient to boot. If I do anything interesting I’ll document it in a future post.

Tech Support Management: Projects, Respect, and PlayStation 4’s

I am incredibly privileged to work with a team of technical support folks who not only get along very well, but actively support each other on a daily basis. As the manager of this team, it is my duty to ensure they are being supported in every way possible by the workplace itself as well as the other teams within the organisation. This is a very delicate balancing act that I have yet to master.

Often, this ‘support’ means answering questions, taking responsibility for issues or working behind the scenes to enable the team to do their job effectively. A lot of the work I do (that isn’t GDPR related, and there’s a lot of that) is aimed at improving the quality of the work we do as a team, which in turn improves the quality of work the rest of the organisation is able to achieve.

Unfortunately, this kind of ‘enabling’ work that I or my team do is often invisible to both the organisation ah large as well as the team itself. It can take many meetings and a long time to get anywhere in management as everything on the organisation level often happens too quickly to react to, or takes such a long time that any progress that is made is barely noticeable to anyone not involved. Either way, this work is often isolated into individual projects, each of which requires lots of careful thought and consideration before any work can be started.

The first step in any project is to figure out if it is even worth it. Whatever the idea or project is, you have got to make sure you are doing it for the right reasons. These reasons are varied, it could be cost saving or efficiency improvements, or the introduction of something new, such as a product, feature or resource.

Understanding the purpose is key to progressing into the planning stages. These plans could outline the single task required for the implementation of smaller projects or building a fully fledged project plan for larger endeavours, such as to introduce new technology or rebuild some core infrastructure. Whatever it is, planning is important, takes time, and happens invisibly to anyone not directly involved.

Working in the public sector, money is often the deciding factor when it comes to projects or general progress and change. Producing an effective budget is something that I am constantly improving on. It sucks up quite a lot of my time, however at the end of the day all that everyone else sees is a number that they can spend up to. It’s my job to make sure these numbers stay within certain bounds and do not change too much, and to also keep an eye on the state of things to see if any cost savings can be made. Doing this is quite time consuming and can often be invisible to the casual observer.

So there’s an idea for a project that you believe will be good for the organisation, those teams that it directly affects know that it will be great to do, and with luck you know that the money will be there (as it’s always worth getting buy-in from the finance team first!) The next step is trying to convince everyone else in the decision making chain that your idea or project is worth both the time to bother actually implementing as well as the money you want to spend on it. Working towards this “yes” from each person often requires background tasks, sometimes these involve the team in ways they don’t recognise, too…

Quite often I’ll ask my team to perform a string of seemingly unrelated jobs or to focus on a certain type of issue in order to affect the outcome of some discussion about a project I know will occur in the future. There’s an element of “keeping certain people happy” which unfortunately ties in to this, too, but I try very hard to treat everyone as equals, and certainly avoid treating anyone as inferior or less important. As anyone who has worked in a technical support role will know, this is a very difficult thing to do. That one customer who always brings you snacks and tasty treats? It’ll be near impossible for your team to not give them preferential treatment. That other customer who is constantly rude and abusive? Incredibly hard to work with and support effectively.

But that’s my job. Give the treats to the team, take the abuse so it doesn’t hit my colleagues. And get all the invisible management/planning/budgeting stuff done to enable the continual improvement of the organisation as a whole. Oh, and again, there’s a whole boatload of GDPR stuff to deal with, too.

It is difficult, tiring work. I am by no means perfect of course, but I like to think I’m generally successful in doing my invisible work. I always strive to improve and do better for the team and the rest of the organisation.

Unfortunately the team doesn’t often see what I get up to day to day. I’m often out in meetings or deep into spreadsheets, only to occasionally request work from them, seemingly for random reasons or for no reason at all. I’ve been on the other side of this and I know it can be quite frustrating. Communication with the team is key here, and I am always looking for ways to foster this within the team, but especially when it comes to myself communicating with the team members about what I’m up to and where all our work is heading.

Having their respect and support is important to me and I encourage open criticism, however it is very hard for me to measure how well I am doing with the team. It’s one thing to complete projects, but knowing that a team of people are happy with me (or not) is something I have yet to really figure out. It’s something I worry about quite a bit, actually.

So it came as a shock to me on the last day of work in 2018 when I arrived to find that the team had secretly set up a treasure hunt in the workplace filled with riddles and puzzles.

The team had come together and planned this months ago, contributing towards a gift, then working on the clues over the last couple of weeks and setting it all up without any indication to me that it was happening. All out of hours, I should add! After the dozens of clues and puzzles, the final clue led me to a box with a wrapped up Christmas present in it.

That present? It was a PlayStation 4 with four games. Yeah.

It blew me away. It was the last thing I ever expected anyone – let alone the team at work – to gift me. Despite my initial refusal to accept it, I now have it connected up to the 11-year-old 720p 40″ TV (which is now due an upgrade to at least a 1080p model thanks to the PS4) and have been enjoying it every single day of the holiday period.

The four games are:

  • The Last of Us (remastered)
  • Uncharted 4
  • Red Dead Redemption 2
  • Shadow of the Colossus (remastered)

To top it off, my partner has known about this for months and got me God of War for Christmas. She somehow kept it secret the whole time. I had no idea this was happening, even up until holding the thing in my hands. It still blows my mind that anyone would do this for me.

Clearly, I must be doing something right!

I’ve had a PS3 since release, but it died around six months ago. Not that I played any games on it anymore, it was a glorified Netflix box. Normally my gaming was done on a PC, however that too had suffered from age. The newest component is at least 4 years old so it’s not able to run modern games too well, but the PSU has also failed and I haven’t yet replaced it.

I used to play video games a lot, however since moving out I’ve been rather preoccupied with all the renovating and cleaning. I still dabble, though. I’ve been playing a little bit of Borderlands 1 & 2 and The Witcher 3, which I have been running on a borrowed laptop. Since the PS3 died, Netflix was being run through Firefox on Linux Mint which I installed on my partner’s low-to-mid-end-at-release laptop that’s ageing quite rapidly.

As you can probably guess, this has now changed. I’m still a PCMR at heart, but the ease of playing on a console and the fact that it’s the only reliable access to gaming I have, PLUS the fact that it’s the most modern bit of technology I own, means that I am now back on the gaming scene. There are a lot of current gen games I’ve missed out on, plus some really awesome looking PlayStation exclusives that I can now play.

I suspect, though, that this gaming will be infrequent once the holiday period is over. I will still make time for it of course!

In fact, I plan on writing reviews of the games I play on here. They may not all be modern games, nor will they be overly professional or likely to contain anything new, but I have plans for a “media review” feature for this site that has now opened up quite significantly in scope with the addition of modern video games. There’s no better time to start than now!

The first game review will be Uncharted 4 as I have already completed it.

If any of the team from work eventually come across this: thank you. Now get back to work 😁

The Misconfigured Switch

I love reading technical post mortems from big-name organisations or experts in their respective fields. If you’re interested in reading some, here’s a list. They’re fantastic insights into some very complex and highly technical issues.

I investigated an odd issue recently involving a misconfigured switch which caused some very abnormal symptoms. I don’t think this qualifies as a legit post mortem article as I don’t have the niche expertise in any particular field to produce one, neither do I have in-depth knowledge of the network within which the issue occurred, but it’s about as close as I’ll be able to get to one at this time.

Here’s what happened.

(more…)

Google Night Sight

A short while ago Google released an update to their Camera app which adds in their Night Sight feature. It is essentially a low-light camera. It takes several photos in quick succession and combines and enhances the batch to produce one image.

I’ve recently been playing with it and it is surprisingly good! Check out some of these nighttime pictures, taken during a long late night walk with nothing but a fairly bright moon sometimes hidden behind the clouds using a Pixel XL.

I want to say those spots are stars but I’m pretty sure it’s an artifact. Possibly from the building at the bottom of the image
Night time sheep!
The moon behind some clouds
A car driving towards me in the distance

The only issue is the blurryness. Due to the nature of how the feature works it can only really be used on a still subject. Any movement within the frame or of the camera itself will make for a blurry image. Some of the images above probably suffer from this. Still, can’t complain! I like the feature a lot.

Davis update

I use the “Davis” theme on this site. It’s minimal and plain and has a built in dark-mode, which I’ve set as the default – my preference to be honest, eventually I’ll add a theme changer like on the old site. It does everything I need it to so far! I will eventually extend it but for now everything I need is there.

An update recently came out for it (1.13 >1.14) which changed a few things. The header in the banner across the top changed, as well as the headers used in posts. They’re now more standardised and “correct” according to the HTML spec, which is great. Unfortunately I decided to update the theme before realising these changes were implemented and it messed up a couple of my custom CSS rules.

I think I’ve fixed the issues now, but it goes to show that even on something as simple and minor as this blog, you should test your changes in dev before pushing them to production!