Below is a collection of tools, libraries, and resources I commonly use.
My Computer Setup
I’ve tried many configurations, and at one point, I even had three monitors.
What I discovered is that two 27-inch high-resolution monitors (4K+) work the best. I sometimes I miss the 3rd screen, but this is where the high resolution shines and I use split-screen.
I aim for a clutter-free workspace, it’s why I enjoy the iMac; it’s a beautiful computer with only a power cable.
![](/wp-content/uploads/2020/10/computer-setup-scaled.jpg)
It’s a compact, performant, capable computer, what else can I say?
As a hobbyist photographer, a good monitor is a must. The BENQ is this monitor with its excellent color and brightness. The icing on the cake is the HDR support.
The Craft keyboard is quiet with backlit keys and supports both Mac and Windows key layout.
The biggest drawback is the price.
The MX Master series of mice has been phenomenal since the first version. Each iteration brings it closer to perfect.
I don’t know about you, but when I’m coding, I like a distraction-free space. In an office, that is nearly impossible, and I’m always the guy stuck next to the breakroom.
I’ve tried many brands, including three generations of Bose QC’s (wired and wireless), the Sony MDR1AM2’s, the Turtle Beach XOFOUR’s, and the Beryerdynamic’s.
For sound quality, wired is the way to go. Please don’t get me wrong wireless headphones sound good, but they can’t beat wired headphones.
The Beyerdynamics are not for everyone, the cans are huge, and some people have complained about a tight fit. But they have a great sound stage and have good isolation without being noise-canceling.
Aeron Chair Remastered
Aeron Chairs are the gold standard of office chairs. I’ve worked in an office for years sitting in cheap chairs that hurt my tailbone and back.
The Aeron is a dream compared to those chairs. There are other cheaper chairs with the same level of comfort, but there is no consensus on which is comparable to the Aeron.
I had a dream of walking on a treadmill while coding; I purchased the NextDesk and a walking treadmill; it was awesome.
The dream lasted about a year.
Software
Operating System
In 2016, I switched from Windows to Mac, but since I develop in Microsoft technologies, I never truly left Windows.
Both operating systems have their appeal, but the integration between Apple’s products is hard to beat.
IDE’s
When JetBrain’s released Rider, I thought they were nuts to compete with Microsoft’s Visual Studio.
I was wrong.
Rider is faster and more innovative than Visual Studio.
As with Rider, WebStorm is an excellent IDE; it’s natural to use if you’re used to other JetBrains IDE’s.
Another IDE in from the JetBrain’s, but this one is for databases.
If you haven’t looked at JetBrains, I highly recommend you do.
Text Editors
A SQL editor from Microsoft built on top of Electron. Many applications built with Electron amaze me, Azure Data Studio is one of them. To think at its core, it’s just javascript and HTML.
As with Azure Data Studio, Visual Studio Code is built with Electron and is my de facto text editor.
I have to mention Sublime Text 3, from a performance standpoint, nothing can touch Sublime Text.
Programming Libraries
In the olden days, we’d set up our CI/CD pipeline using Cruise Control.net with an MSBuild or a Nant script. You’d copy your script to the build server and be off the races. The problem is if your build pipeline changed, older versions of your application are no longer buildable.
This is where Nuke Build comes in. All of your build IP is checked in and versioned with the code, so you can roll back to an older version, and it’s still buildable.
The two testing frameworks in the .Net eco-system are xUnit and nUnit. Both are great, but xUnit is simpler than nUnit, and as I mentioned at the start, I like simple.
Be honest, you don’t test as often as you should. I didn’t think so, me either.
Fluent Assertions provide English like assertions making asserts easier to write and easier to read.
In most unit tests, passing in dummy data is the norm. A good part of the time setting up the test is setting up the dummy data. Bogus eliminates the need to set up dummy data from scratch. It provides several common data formats out of the box.
If you haven’t used MediatR, you’re missing out. It’s an excellent implementation of the Mediator Pattern. I use it in all of my applications.
Miscellaneous
This is the best email client on the Mac.
What is there to say about Slack. It’s one of the best communication platforms out there.
Typora takes Markdown to the next level. If you haven’t used it, try it, you won’t regret it.
Finding the perfect solution for note-taking is nearly impossible, Notion is the closest I’ve gotten in a single application.
Beyond Compare is an excellent text comparer. I don’t use it often, but when I do, it’s well worth it.
If you’re looking for an application to visualize Git. GitKraken is the application for you.
Learning Resources
Udemy is an excellent resource for courses of any type. If you want to learn something, check here first.
Five years ago, Pluralsight, the king of technology videos. While they still have a great selection, other services have surpassed them. If you’re looking for .Net related content, check Pluralsight first, they’ll likely have a video.
Creative Live has a decent library of videos on drawing, photography, video production, etc. I’ve purchased courses on Final Cut Pro and photography.
Most of Creative Live’s videos are well produced and are high in video quality.
For me, this is the best learning platform for Software Engineers. It has videos, live sessions, hands-on coding, the entire O’Reilly book library, and Manning books.
Before subscribing to O’Reilly, I’d buy books from Amazon and Manning, now I don’t. Most of them are available on the O’Reilly Learning platform.