Categories
Tutorials

Automatic Backups for WSL2

Windows Subsystem for Linux (WSL) is pure awesome, and WSL2 is even more awesome. (If you’ve never heard of it before, it’s Linux running inside Windows 10 – not as a virtual machine or emulator, but as a fully supported environment that shares the machine.) I’ve been testing WSL2 for a few months now as […]

Categories
Development Security

CSRF Is Dead, Long Live SameSite=Lax! (or is it?)

In the original version my talk “Think Like a Hacker and Secure WordPress, live on stage“, I demonstrated a Cross-Site Request Forgery (CSRF) attack. While this attack worked perfectly during WordCamp Brisbane 2019, in-progress changes to Google Chrome (version 80) are bringing about the end of CSRF. (Well, sort of…) In light of this change, […]

Categories
Tutorials

How to Shrink a WSL2 Virtual Disk

I’m a huge fan of Windows Subsystem for Linux (WSL), especially WSL2 which uses a virtualisation layer to bring increased performance and compatibility to WSL. However, one of the few downsides of WSL2 is that it uses a virtual disk (VHDX) to store the filesystem. This means you can end up in a situation where […]

Categories
Security

Usernames Are Not Secrets

A common misconception that I have observed a lot online is the belief that usernames should be secret, unique and hard to guess. While there are some limited cases where having a secret username is a good idea, most of the time it has no real benefit. Usernames are not secrets and should not be […]

Categories
Development Security Tutorials

Signing Git Commits With A Keybase GPG Key

A relatively unknown and underused feature of Git is the ability to cryptographically sign commits. It is an optional feature that provides a way for the author of a commit to prove ownership. It uses the author’s GPG key to leave a signature in the commit that can be checked later. If you’re a Keybase […]

Categories
Pebble

End of Life for Zevive Pebble Apps

Unless you follow my work closely, you probably weren’t aware that I used to develop apps for the Pebble Smartwatch. The signature feature of my apps was a utilization of the awesome Pebble Timeline feature, which provided a new level of interaction and behavior that suited my apps perfectly. However, since Pebble was acquired by […]

Categories
Random thoughts

Hello World (again)!

Welcome to my new website. It’s been a long while since I rebuilt my last one (two jobs ago, infact!), so I figured I should launch a new site and get back into the blogging thing. It may surprise some of you, but my site is now running on WordPress again. Yup, WordPress. There are […]

Categories
Technical

Opening the GNOME Shell Overview with a Logitech MX Master

My beloved Logitech MX Revolution died recently, so I upgraded to the new MX Master, and I wasn’t disappointed -it’s just as awesome as the Revolution. 🙂 With the new mouse, I decided to try and use the extra buttons onthe Revolution. All of them work out of the box, with the exception of the […]

Categories
DigitalOcean Tutorials

Byobu for Terminal Management on Ubuntu

Note: I originally wrote and published this article as a DigitalOcean Community Tutorial. Introduction Byobu is an easy-to-use wrapper around the tmux (or screen) terminal multiplexer. This means that it makes it easy for you to open multiple windows and run multiple commands within a single terminal connection.

Categories
Pebble

Introducing My Habits for Pebble

I am really excited to announce the release of the much awaited Habits app paid upgrade: My Habits. This upgrade brings to you much awaited and requested features, including fully customisable Habit frequencies and times, the ability to select any day combination for your Habit, and hidden Reminder pins to keep your Timeline neat.