Matthew James

Inject/Add Custom Css in Umbraco Back Office

How to add custom styling to Umbraco's Back Office. Turns out that it is more effort than I thought.

Read More >

Adding Colour and Size to TinyMCE in Umbraco 11

Umbraco 11 changed the way that the config for tinyMCE RichTextEditor is consumed yet again. Adding in the basic 3 properties: font colour, font size and font family can trip up those new to .net core and those that are used to the old config files.

Read More >

JS Debugging: DevTools vs Visual Studio

What is debugging? What does debugging in JavaScript look like? Why is debugging JavaScript in Visual Studio not common? What are the alternatives and are they any good?

Read More >

Hex Editing TA For Better Pathfiniding

Recently I found myself returning to some of the old classics of the 90's. TA is one such staple RTS game that my mates and I enjoy tremendously. Spinning it up and playing it quickly shows that while the majority of the game has aged quite well, there are parts that uhh... leave something to be desired.

Read More >

Encapsulated JavaScript Components in ASP.NET Razor

ASP.NET MVC is my go-to stack for web projects and has been for years. I preferred it greatly over all the other frameworks I'd tried before working with it, like ASP.NET Web Forms, PHP smarty templates or whatever WordPress is doing. That said working with newer frameworks like React over the last 4-5 years has shown me that there's smarter ways to accomplish certain tasks.

Read More >

jQuery in 2022

jQuery will always have a special place in my heart. Those that can remember trying to develop for the web before its creation will remember the troubles of cross-browser support and shaky JavaScript API implementations. jQuery abstracted away many of the pains of web development into a nice, easy to use, cross-browser API. Despite exploding onto the scene in 2006 and maintaining a huge adoption since jQuery has started to decline in usage recently. I wanted to investigate why this is and indeed what are the use cases in 2022 for using jQuery.

Read More >

Steletric

A stand-alone program made for Stellaris made by myself. But what is it really? Why make it? How does it work? These questions and more design choices and information explored.

Read More >

Testing in-memory sqlite in Electron with TypeScript

Testing in Electron with TypeScript isn't always as easy as I'd hoped. I'm not ashamed to say that I struggled a bit when trying to set up an sqlite in-memory database to mock a file sqlite database in TypeScript-Electron. But I did manage to get it working... eventually.

Read More >

How I Last Setup A New Electron App (with React, TypeScript, Webpack)

A quick note-to-self for all of the things I do to a newly cloned electron project.

Read More >

Adding Colour and Size to TinyMCE in Umbraco 9

Umbraco 9 changed the way that the config for tinyMCE RichTextEditor is consumed. Adding in the basic 3 properties: font colour, font size and font family can trip up those new to .net core and those that are used to the old config files.

Read More >

Customising SVGs in Umbraco 9

Most of the properties of SVGs can be editied out of the box or through the normal CSS means. Those that can't can be changed easily by JavaScript, but what if JavaScript can't be used? Here's a pretty slick way to change the colour of an SVG in Umbraco 9 using just the built in backoffice pickers and 3 lines of custom view code.

Read More >

Razor "View" Changes in Umbraco 7 vs 8 vs 9

For a migration that happened a some years ago and that very explicitly asks the developer to re-write to upgrade, there is surprisingly little documentation on the fixes needed to patch Umbraco 7 views into Umbraco 8 compatibility.

Read More >

Progressively creating checksums in TypeScript

Checksums are a great tool to verify that the file you have received from the server is the same as the file on the server. They can be used for many things of course, after all checksums are just the result of a cryptographic hash function, but the main reason for their existence is verification.

Read More >

How to deploy WPScan to AWS

WPScan is a free, for non-commercial use, black box WordPress security scanner written for security professionals and blog maintainers to test the security of their sites. It can be deployed on a t2.nano AWS instance!

Read More >

Forest Road 2016

A quick summary of the steps I took to create a game back in 2016. It was called Forest Road and was in the Tower Defense genre.

Read More >

C# Nameof

This is more of a note-to-self than anything else. The nameof operator in C# is super useful when adding in reporting or doing any type of deep debugging. Really anything that requires parameters can make use of the operator.

Read More >

Why Accessibility is an Afterthought

Accessibility is generally an afterthought. I don't have hard evidence to back this up except for the all of the clients I've worked for but talk to anyone in the accessibility space and you will hear that phrase eventually. This fact is saddening to be sure, but to me it's not all that surprising.

Read More >

Most Important Thing in Programming

I was recently challenged to define the single most important thing needed to conduct a successful programming career. I wasn't able to scope it down to one answer, but I got it down to 2 things: genuine motivation and a solid programming support network.

Read More >

I Can Do Anything

Just give me time...

Read More >

Define Full Stack

I'm a Full Stack developer... I think. The title of Full Stack developer is a contentious subject, at least among the social circle I frequent. The main criticism of the title is that it lacks a formal definition and universal understanding.

Read More >

HTTP Strict Transport Security and IIS

I recently discovered HTTP Strict Transport Security or HSTS. It's been around forever and I am a little sad that I didn't know about it but also worried that I never came across it until now. The reason not knowing about HSTS is so worrying is because it is literally the first thing that the browser actually does when you attempt to visit any page - paint me humbled.

Read More >

Creating Bootable USB for Windows

We were unable to copy your files. Please check your USB device and the selected ISO file and try again.

Read More >