Developer Tooling

When it comes to programming there is one area that is overlooked by most. This is area is the developer tooling and customizing the environment. On this blog post I will focus on the first one. Many beginners do not invest enough time to learn what tools there are, which can make their lives easier. I want to share with you what I use and for what purpose. Let’s get started.

Everything

Basically “Everything” is a search engine that locates files and folders by filename instantly for Windows. Unlike Windows search “Everything” initially displays every file and folder on your computer. You type in a search filter to limit what files and folders are displayed. This is a must have tool if you cannot tolerate Windows search.

Notepad++

Notepad++ is free open source code editor and Notepad replacement that supports several languages. Personally, I love its tabbing and auto-save features. If I need a quick write Notepad++ is the first thing that comes to my mind. Also, I can close it without saving the document and they will be persisted.

NimbleText

Nimble text is a text manipulation software and code generator. It is hard to explain what it really does so let me show it. Imagine that you have the following data:

Apple
Apricots
Avocado
Banana
Blackberries
Blackcurrant
Blueberries
Breadfruit
Cantaloupe
Carambola
Cherimoya
Cherries
Clementine
Coconut Meat
Cranberries
Custard-Apple
Date Fruit
Durian
Elderberries
Feijoa
Figs
...

And you want to put them as strings in code or insert them in a database table. Of course you can do it one by one, but using NimbleText you can do it in a matter of seconds:

NimbleTextDemo

Windows Terminal

Windows terminal is my favorite Windows terminal which I use almost every day. It is modern, fast, efficient, powerful, and productive terminal for users of command-line tools and shells like Command Prompt, PowerShell, and WSL.

It is also easily customizable. If you are not sure where to start with the customization check https://windowsterminalthemes.dev/. It has pre-designed themes which all you have to do is copy paste to your settings.

If you do not use Windows Terminal you are really missing out.

WSL2

My personal favorite. I hate installing a program which creates tons of folders in different places and when you uninstall it, almost every time you just remove the folder in Program Files. All the things created in Users directory stays with you forever.

With WSL2 you have a super lightweight virtual machine which you can install any cli software you like. It does not interfere with your host OS. You can easily uninstall and reinstall it. You can also install as many distributions you like from the Windows Store. All my cli tools lives inside WSL.

Aside from all of that, developers can develop applications inside WSL2. VsCode can connect remotely to WSL2 which allows you to write code from Windows and execute it in Linux.

Here is a quick introduction to WSL2 by Scott Hanselman.

Windows Sandbox

Windows Sandbox another lightweight virtual machine to safely run applications in isolation. Software installed inside the Windows Sandbox environment remains “sandboxed” and runs separately from the host machine.

Unlike WSL2 Sandbox is temporary and uses the host machine’s OS. Everything you install inside will be deleted when you close it. This is ideal to test some untrusted software.

Visual Studio

Every .NET Developer’s IDE of choice when it comes to .NET technologies.

SQL Server Management Studio

Best piece of software for SQL Server development.

Currently I do not have SQL Server in my machine. I host it in Docker, and I do not plan to go back.

Plugins:

  • Apex SQL Formatter - Free highly customizable SQL Formatter. You can define your own format style, export the file and take it with you wherever you go.

Docker

Docker is an open platform for developing, shipping, and running applications. Docker enables you to separate your applications from your infrastructure.

If you still not decided, whether to learn Docker or not, decide fast. Docker is awesome.

Fiddler

My REST Client of choice. I like Fiddler more than Postman or Insomnia simply because Fiddler do not add any headers or does not alter your request. It can also serve as proxy or sniffer and provides simple scripting to customize some of its functionalities.

Node.js

Node.js is a JavaScript runtime built on Chrome’s V8 JavaScript engine. The Node.js run-time environment includes everything you need to execute a program written in JavaScript. With the help of node.js you can do much more with JavaScript than just making websites interactive.

I personally use node.js inside of WSL2.

Git

There is no way if you are a serious developer you do not use version control. Just pointing out that zipping the project with date and time as name is not version control. Yes, it still happens in 21st century.

Git is a free and open source distributed version control system designed to handle everything from small to very large projects with speed and efficiency.

Git is easy to learn and has a tiny footprint with lightning fast performance. It outclasses SCM tools like Subversion, CVS, Perforce, and ClearCase with features like cheap local branching, convenient staging areas, and multiple workflows.

IIS Express

IIS Express is a lightweight, self-contained version of IIS optimized for developers. IIS Express makes it easy to use the most current version of IIS to develop and test websites. It has all the core capabilities of IIS 7 and above as well as additional features designed to ease website development.

Hugo

Hugo is a static site generator written in Go. Since its creation, Hugo has seen a great increase in both features and performance.

This blog is also generated with Hugo and host by Netlify.

F.lux

I personally spent a lot of time in front of the computer and since I have F.lux my eyes feel a lot more comfortable and I can sleep better.

F.lux is a software that makes the color of your computer’s display adapt to the time of day, warm at night and like sunlight during the day.

Give it a few days, you won’t regret it.

7-Zip

7-Zip is a free open source file archiver, a utility used to place groups of files within compressed containers known as “archives”. 7-Zip uses its own 7z archive format but can read and write several other archive formats as well.

Honorable Mentions - key combinations

  • Shift + V - Clipboard history. This is one of those things that you don’t know you need. Once you try it you start to wonder how you lived without it.
  • Win + Shift + S - Quick screenshot, If your friend tells you that he can make a quick screenshot on his fancy Mac, now you can too.
  • Win + L - Lock screen.

Become a Subscriber

Subscribe to my blog and get the latest posts straight to your inbox.