Fresh system

I just bought a new MacBook since I managed to break my old one while travelling in Taiwan. I always love getting a new system, because the setting up phase is a good opportunity to get rid of old cruft and review what is essential for me.

Clean and fresh macOS desktop

Apps

What I like about macOS is that it comes with a lot of great tools out-of-the-box. However, I still ended up having to install a few essentials to get me started.

Additionally, I also installed a couple of apps that are not strictly necessary, but I still use them occasionally.

Instead of using the awesome shimo app, I opted for using the native IKEv2 support in macOS to set up some of my VPNs. It is always useful to have a few in case you are forced to use a questionable public WiFi. I probably will need to set up Shimo anyways to access my university’s VPN at some point in time.

Packages

With homebrew installed, I went on to installing some essential command-line tools, and updating others that Apple ships but are too old.

Dash

Out of all these great tools, there is one app that I want to highlight because it has radically improved my productivity. when I bought it in 2015. While I have been using it for so long, I still feel that not too many people know about it.

Dash is an offline documentation browser. That means that it has a catalog of documentation for various programming languages, frameworks, gems, pods, tools, etc. These are called docsets. Most docsets are official and autogenerated or maintained by the author, but there are also plenty of user-contributed ones. The format is open, such that you can create your own docsets. There are also a bunch of Dash clones for other platforms that use them, such as Zeal on Linux or Velocity on Microsoft Windows.

Dash

I love Dash because the interface is well-designed. For example if you want to find out something about the Ruby Array#join method, you try ruby: Array join into the search field. I find that using Dash is far more effective that googling for things, and you can explore classes and find out what methods they have. The docsets are really good and auto-update, which is important for languages like Rust that have new releases often.

Another interesting feature is that Dash can download all StackOverflow answers that are tagged to a specific programming language or framework. This can sometimes be useful if you can’t figure out from the documentation how things fit together, but I don’t use that feature much.

It does cost some money, I paid around 28€ for my license. But I think it is definitely worth it. Also, I think it is really awesome that my license, which I bought in 2015 for dash 3, was updated to work with dash 4 when it was released in 2017. Thanks Kapeli!

Conclusion

I am only as good as the tools I have at my disposal. And there are some really nice ones for macOS. Here I have shown what I consider to be my most useful ones—they might not be right for you. But maybe you didn’t know about some of these before, and they are useful to you. In that case, if you can afford it, I’m sure the author would appreciate if you bought it.