A camera hidden in a wall.
A camera hidden in a wall.
Do you know who’s tracking you?

If you’re like most people, you use Google Chrome as your default browser, you use Google as your default search engine, and you don’t often think about online privacy much further than that. Why should huge tech companies make fortunes at the direct expense of their users’ privacy?

There are a lot of ways you can protect yourself and your privacy online, if you care enough to make the effort.


If you use Google Chrome as your default browser, is spying on you. …

My experience migrating my home lab from Windows Server to TrueNAS

Photo by Jordan Harrison on Unsplash

Recently, I decided that I wanted to move away from Google Drive and Google Calendar, primarily for privacy reasons. I started searching around for a self-hosted alternative, because I wanted to be in full control of my data, and I came across Nextcloud, which perfectly fit my use-case, with one caveat; it only runs on Unix systems, and I was running Windows Server on my home lab server at the time.

I decided that since the only thing I was running on my server at the time was Plex, I’d migrate to a Unix-based server, as Plex runs on both…

A look at the hardware in my home office

Photo by Nelly Antoniadou on Unsplash

When COVID-19 first broke out, it forced a massive shift in the workplace; the only way to survive as a business was to have employees work from home. And it seems like work from home policies are here to stay, at least in the tech industry. The company I work for only had an “as needed” work from home policy before the pandemic, but now we will have an option to work from home full time, even after the office reopens, an option which I think many will take advantage of.

So, since we’re going to be working from home…

Most code comments aren’t necessary or helpful.

Code comments are lame.

Code comments once served a critical purpose; adding context or explanation to a snippet of code. But this was back when programming languages were mostly esoteric, and the barrier to entry for writing code was extremely high.

Today, though, we have extremely expressive programming languages, like C# (especially since the addition of LINQ), Python, Kotlin, etc. that make code comments virtually obsolete. With a highly expressive language, nearly all comments become unnecessary, because it’s easy to write self-documenting code; the code is easy enough to understand at a glance that you don’t need comments anymore.

TypeScript logo
TypeScript logo
TypeScript; making JavaScript usable at scale.

TypeScript is a great language. TypeScript takes JavaScript and makes it If there’s one glaring weakness, it’s the inability to use strongly typed catch blocks. However, this is mostly due to a design flaw in the JavaScript language; in JavaScript, you can throw , not just Error types.


Consider the following, completely valid TypeScript code:

You can quite literally throw anything.

It’s easy to see why this can be a problem. One use-case where this is less than ideal is consuming a web API from TypeScript. It’s quite common for non-success HTTP status codes (500 Internal Server Error…

Mat Jones

Software engineer, network admin, online privacy and security advocate. https://github.com/mrjones2014

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store