Tools, toys, and being productive
Tags: tools, productivity, opinion, software
Published: 2020-09-22 09:21:04

I've been using Windows in the workplace for nearly 20 years, and have had it as my main home OS for longer than that, right back to when Windows 3.1 on my 286 required a dozen floppy disks. In that time, I've found a whole manner of utilities and such that I use on a daily basis to make my life easier. Some of them are well known, others less so, but I thought I'd blog about each of them a little bit and give them their time to shine.

## Chocolatey

The first tool is an important one, as it's one that facilitates getting most of the others!

When I was introduced to the world of Linux, I found the concept of the package manager really clever. A central repository of tools, applications, *everything*, that was all available a single command away. Coming back to Windows, the concept of needing to find an installer, download it, run it, maybe even reboot just seemed so involved.

I wasn't alone. The team at [Chocolatey](https://chocolatey.org) thought similarly, and created the fantastic choco tool, describing it as *"The Sane Way to Manage Software on Windows"*.

Nowadays, if I want to install anything at all, the first thing I do is open a powershell window (in Windows Terminal, obviously) and try `choco search thingiwant`. Most of the time, someone has already packaged the thing I'm looking for, and so with a slightly different command - `choco install thingiwant -y` - I can have choco download that package and install it for me, whilst I go and focus on something else.

I currently have 71 different packages installed on my system via chocolatey, and the number grows regularly. On the odd occasion that I am asked to restore a broken machine, one of my first tasks after restoring Windows is to install chocolatey, and then just throw a list of packages at it and walk away. When I return, I return to a machine with everything installed and ready to go.

In recent times, Microsoft have announced their own package manager for Windows - winget - but it's going to be a while before I'm convinced that it offers me enough improvement over Chocolatey to switch.

It's an awesome tool, is Chocolatey, and it's available [here](https://chocolatey.org).


## Everything
I genuinely cannot remember what I did to find files before I found Everything. Searching in Windows is notoriously dreadful, but Everything makes it an absolute breeze. Know part of the filename? Or maybe you just know the file type? Or maybe you want to find every file in a particular tree? Everything can do it for you.

Once installed, the Everything service takes over and indexes your file systems in the background, invisibly. As a user, all you need to do is open the window and enter whatever search term you have and you will get instantaneous results ([a good example is how I discovered the name of HP's Recovery tool](https://ckempo.co.uk/Blog/Posts/2)).

More complex searches such as regular expressions are possible, as is the ability to filter your results to specific *kinds* of file - not just file types such as &#42;.jpg, but everything that is a *kind* of image - jpgs, pngs, gifs, whatever.

Everything is available [here](https://www.voidtools.com/), and can be installed via chocolatey with `choco install everything`.

## Ditto

Microsoft have introduced their version of clipboard management in recent builds of Windows; but way before they thought of that, Ditto was managing my clipboards.

If you have ever copied something, moved elsewhere in a document, copied something else then immediately realised that the first item is now gone, Ditto is for you.

Ditto says goodbye to that hassle and changes the way you work. Now you just copy whatever you need to - images, text, whatever - and when you need to paste, hit the ditto shortcut key and select the item you need. With special paste commands - transform the text as you paste into various different cases, paste formatted text as plaintext, paste images as text, etc - and the ability to group your clips into sensible collections, and to assign shortcut keys to specific clips, Ditto keeps your clipboard organised and your useful information a keypress away.

You can even share your clipboard between devices over a local network connection, if you ever need to keep more than one device's clipboard synchronised with another.

Ditto is available [here](ditto-cp.sourceforge.io/), and can be installed via chocolatey with `choco install ditto`.

## Windows Powertoys

I remember installing the Powertoys for Windows 95, waaay back in the day, so was delighted when MS announced that they were being resurrected for modern life.

Described as "Windows system utilities to maximize productivity", the modern Powertoys collection is an expanding suite of tools that expand upon and add features to Windows. Starting with a simple shortcut key guide, the collection has now expanded to include enhancements to the rename process and file previews in Windows Explorer; an image resizer; "Fancy Zones" - an tool that allows you to define custom screen layouts that suit you and your workflow best; a keyboard remapper and most recently "[Powertoys Run](https://github.com/microsoft/PowerToys/wiki/PowerToys-Run-Overview)", which is the beginnings of a true Windows keyboard launcher. Press the shortcut to invoke it, type a few characters of what you need, and it is offered up to you, much quicker than a search through the start menu, or finding something in Explorer, or similar.

The Powertoys are open source, and the Github repository can be found [here](https://github.com/microsoft/PowerToys/). They can be installed via chocolatey with `choco install powertoys`.

## Windows Terminal

In my first tech job, I spent a large part of my day logged into multiple HP-UX systems that we accessed via Pericom Teemtalk, which was a no-frills terminal. I got tired of it and sought a wrapper or similar that would modernise my workflow, which led to me finding [cmder](https://cmder.net/) and [ConEmu](https://conemu.github.io/). I used ConEmu for years, then when I switched jobs the importance of tabbed terminals became less, and I reverted to settling for the command prompt or Powershell terminal when needed.

In recent times, where you might need a command prompt, a Powershell prompt, an Azure cloud prompt, even a Linux ssh session (whether remote or on Windows with WSL), the need for a decent terminal has returned - but this time, Microsoft have stepped up and created Windows Terminal, which can contain all of the previous in a nice tabbed interface. Windows Terminal is my new default for any console activities.

Windows Terminal can be installed via the Microsoft Store, and the GitHub repository is [here](https://github.com/microsoft/terminal). It can be installed via chocolatey with `choco install microsoft-windows-terminal`.

## Vscode

For *years*, I used Notepad++ as my default text editor, with a suite of extensions installed to make my life easier - a spell-checker, an FTP manager, various transform utilities, etc. Then Microsoft did something that was very out of character at the time - they announced that they were making an open-source, cross-platform editor. I didn't pay too much attention at first - installed it, tried it for a bit but didn't feel it offered me a better experience than my precious Notepad++ did, so never switched full time.

Then, in a perfect storm of activity, a few things happened. Notepad++ had a series of dodgy updates in the transition from 32bit->64bit, and I found all my extensions gone (along with the extension manger to restore them). I found myself losing confidence in a tool I'd used for as long as I could remember. At the same time, VSCode continued to improve, and I found myself doing more web development and less documentation and configuration in my job roles. Putting all this together made me realise that I could try making the switch to VSCode, so I tried it out, seriously for once, and have never returned to Notepad++ since.

VSCode offers me the same flexibility to customise my install the way I want to with extensions, of which the choice is huge, much more so than I had available to me in Notepad++, and it offers it to me cross-platform. I'd been able to run Notepad++ in Wine under Linux but found myself preferring Geany when on Linux. Now the option to use the same application - wherever I am - exists, and it works just as I'd expect. With modern "Remote-" add-ons, I can even directly access my Linux machines and edit config files and code there, natively. Coupled with the fact that it also serves as a fully functional debugger for supported languages - such as C# via .Net Core - and it really does become a required install. 

The GitHub repo for VSCode is [here](https://github.com/microsoft/vscode), and it can be installed via chocolatey with `choco install vscode`.

## Paint.NET

I'm far from a capable digital artist, but I know how to mockup the odd screen or similar. The problem is, my skillset and requirements are somewhere above MS Paint, but below Adobe Photoshop.

Paint.NET fills that hole. It is a very capable image editor that has been my default on Windows for years now. All the expected tools - a paintbrush, a fill bucket, selectors etc - are present, but there's also another level that isn't too complex to understand - layers, or various additional tools such as blurs and transforms for example.

Whilst other options such as Photoshop exist, they aren't free for starters, even if you rule out the learning curve of such a capable tool. The Gimp (or Glimpse) exist but are both much closer to Photoshop than MS Paint. Paint.NET fits in just perfectly for most people's needs.

The Paint.NET homepage is [here](https://www.getpaint.net/), and it can be installed via chocolatey with `choco install paint.net`.

---

For the next part, I'm going to zone in tools in a more specific area: privacy and security.

I, like millions of others, am invested in the Google ecosystem. My mobile phone, my email, my calendar, my office documents, my photos, my mapping; pretty much everything Google do, I use. With one exception. 

Chrome. 

I don't (and won't) use Chrome to browse the web. You could argue that I've already jumped into Google's ecosystem with both feet - I pay them every month for family plans for storage and YouTube premium etc - but there's something about total and complete immersion that I've always held back from, and using their browser is where I've drawn the line. This stems from more than one reason: 

1. I don't believe in giving the biggest market player any more share - at somewhere around 70% of the market, Google aren't going to miss me anyway
2. I do have a soft spot in rooting for the little guy - and my browser of choice is definitely an underdog
3. As someone with a keen interest in technology - and who saw what the Internet Explorer dominance did years ago - I believe in the need for multiple browser engines
4. Customisation. A vanilla browser experience isn't for me, and as will be seen in the points below, it's important to me to be able to install some key extensions - and if my browser can reinforce this, even better.

But before I discuss my favourite browser and extensions, I'm going to mention a fantastic hardware/software combo that is a staple of my home network.

## Pihole

Say goodbye to internet advertisements, malware and the like. In their own words, PiHole is "_Network-wide Ad Blocking: A black hole for Internet advertisements_" but it's so much more than that if you really want to take advantage. My Pihole - despite the name - is running on my home server (running Linux), not a Raspberry Pi. Any old computer you have lying around is likely capable of becoming a PiHole and delivering hassle free internet to your household. But whilst the lack of ads is a massive improvement on your everyday browsing, it's the more advanced features such as being able to blacklist entire domains that I feel people should be taking advantage of: as an example, in my house you simply cannot access the 
Daily Heil
 
Daily Fail
 Daily Mail website, as that rag (amongst others) is on the blacklist. Via the power of community-maintained blocklists, I'm also filtering out known malware, ads and trackers from across the web, whilst white-listing some domains that I need to keep things functional (such as the various Xbox One related domains that Microsoft maintain). Once you've witnessed the amount of absolute filth that apps such as TikTok are performing - calling home to tracking domains - it's obvious that you should want to have a network level filter.

Alongside the filtering, PiHole can act as the DHCP server for your network, and has reports and graphs of everything it does, if that's your sort of thing.

PiHole is a great hobby project for someone to dive into, that offers real, tangible results when complete. Get started (and if you can, donate) at their website [here]https://pi-hole.net/).

## Firefox

So, with the discussion about PiHole out of the way - and confirmation that there's already some network-level optimisation happening - how do I suggest people _consume_ the internet on their devices?

The answer to that question, for me, has been Mozilla Firefox for as long as I can remember.

I've already mentioned my feelings about rooting for the little guy and disdain at the state of Internet Explorer (yes, I'm old) - this was really at play when in my first tech job in my very early twenties, I discovered that different browsers were feasible and the world didn't need to be locked behind that blue "e" logo. 

The fact that this alternative browser was small, fast, and had such legendary new features as "tabs" (this is hilarious, now) was the real reason to switch; that it could be customised in pretty much any way you wanted was the icing on the cake.

Firefox calls this customisation "Add-Ons" but other browsers call them "Extensions" - it amounts to the same thing; some additional code that adds or changes a feature in a way you like. Maybe just a theme, or something like a complete overhaul of your tab positioning. If you can think of it, there's usually an extension for it. Three key extensions that I insist on having, are:

### uBlock Origin

There has been something of a turf war between the various adblocking extensions; Ad Block Plus (ABP) was the clear number one for a long time, then got gradually more bloated and slow to the point where I went looking for an alternative. uBlock Origin is the de-facto number one ad blocker add-on nowadays, and with good reason. Fast, widely supported and frequently updated, this is like having PiHole in your pocket, as you can't always be on a network that has a PiHole.

Available for multiple browsers, the Firefox version is [here](https://addons.mozilla.org/en-GB/firefox/addon/ublock-origin/).

### Privacy Badger

Privacy Badger is an extension from the [Electronic Frontier Foundation](https://www.eff.org) that aims to block tracking cookies, so you are not followed around the web. For example, if you don't already know, the cancer that is Facebook (never had an account, I can say that) uses cookies and their social media "Like" buttons that you see on pretty much every article you read (but not this one!) to build a profile about your browsing. Read a tech article on The Verge, then wander over to Polygon for some gaming news? Not only have Vox (the owners of The Verge/Polygon) now got an idea on your interests, but tracking cookies from Facebook and others are building a profile of you too, primarily so that they can target you with more accurate ads by selling your details. Privacy Badger stops this activity in its tracks by preventing 3rd-party cookies from interacting with your browser.

In their own words, *"If an advertiser seems to be tracking you across multiple websites without your permission, Privacy Badger automatically blocks that advertiser from loading any more content in your browser. To the advertiser, it's like you suddenly disappeared."*

Privacy Badger is also available cross-browser like uBlock Origin; the Firefox version can be installed from [here](https://addons.mozilla.org/en-US/firefox/addon/privacy-badger17).

### HTTPS Everywhere

Another add-on from the EFF, HTTPS Everywhere upgrades your connection to sites to https automatically. If you browse to a site via http and a known https version is available, your connection is transparently upgraded. Privacy and security for free, you just install and go, there is no complicated setup or similar.

As per the other add-ons I've mentioned so far, HTTPS Everywhere is also cross-browser; the Firefox version can be installed from [here](https://addons.mozilla.org/en-GB/firefox/addon/https-everywhere/).

### Bitwarden

Bitwarden is my password manager of choice. Everyone should have a password manager in my eyes, or at the very least some form of password scheme (this is going to be the topic of a future post). Bitwarden has eerything I need and is an absolute steal for their annual subscription. Money very well spent, I feel.

As is par for the course, Bitwarden is also cross-browser; the Firefox version can be installed from [here](https://addons.mozilla.org/en-GB/firefox/addon/bitwarden-password-manager/) whilst their homepage is [here](https://bitwarden.com/).

---

Firefox has continued to add features over the years, with recent improvements including picture-in-picture video and a complete overhaul of the handling of tracking; I look forward to one day needing even fewer extensions installed as the browser does it out-of-the-box, as it were, but the extensions here are a brilliant start to you taking back control of your own details.

Firefox is available from the [Mozilla website](https://www.mozilla.org/en-US/firefox/new/?redirect_source=getfirefox-com) for all platforms - including your phone. Infact, the very fact that these extensions can be used on mobile is another key reason I avoid Chrome - my phone doesn't feel like a second-class citizen in comparison to my PCs.

Hopefully this post inspires you to check out some of the tools I mention. If they're new to you, try them and see if you become more productive and more secure.