Mac OS X is probably one of my favorite operating systems these days, even though it has some major drawbacks (weird security for applications not from the App Store comes to mind). In this post I will share some of the software that I really can't live without. These picks will be general purpose, so nothing like Final Cut Pro, Logic Pro or similar special purpose software (though it might relate slightly to programming in some peoples view, even if that is not my view). Whether you are a new user of OS X, or a more advanced user, maybe you will get some tips to make your experience better?
NB! This is my list of essential software, and your list might differ! Feel free to share yours in the comments below :)
NB 2! I don't believe in any way that command lines or text editors are only for programmers. In my view these are general tools for basic computers usage. File management is done in the command line for me and I rarely use a graphical file manager. Just be warned if you think differently about using a computer
If any software on Mac OS X is truly essential, then this is it! Homebrew is a package manager that has lots of software for us to install. If you are familiar with any package manager in a Linux distribution, or even the package manager to make Windows slightly livable called Chocolatey, then Homebrew will be familiar to you. It is used from the command line to install all sorts of software. Everything from Emacs (see below), wget, Firefox, to FL Studio (music creation software) and more, is available. This is my preferred way to install software, as most of the tools I need is available there (as well as a reasonable way to install software, e.g,
brew install lolcat to install the lolcat package)
To install it, you just copy-paste a command from their website into your command line/terminal (which downloads a script and runs it), and you are ready to
iTerm2 (with ZSH and Oh-MyZsh)
The built in command line/terminal in Mac OS X is okay, but lacking in features. iTerm2 gives us more configuration options, like more advanced theming and different profiles with their own settings. In addition, you get tabs, images (also including unicode symbols and smileys), and triggers (trigger certain actions when a certain pattern of text happens). All in all a more modern experience when using a terminal on Mac OS X!
To make your experience even better, you might consider using ZShell. If you created a new account on your system post-Catalina, then you are probably already using ZShell. But if you are not using it yet, I recommend switching. Scripting OS X has a great guide to get you started! ZShell can be a little hard to configure by itself, so Oh-My-Zsh has been made to simplify the experience. Oh-My-Zsh makes installing different themes, plugins and more a breeze! Want a more fancy prompt with status icons and more? Powerline9k (and probably its successor) got you covered! Want auto completion with descriptions when using tab? There are many built in plugins you can activate straight out of the box! If you are not pleased with those, there are several other ready-made plugins for you to try!
Did I mention that ZShell and Oh-My-Zsh works for other systems as well, including GNU/Linux distributions? :)
Need to remember your appointments and meetings? Need notifications that are intrusive to really help you remember? Maybe because the notifications already present in your other applications gets hidden? This is exactly the kind of problems In Your Face! solves! It will pop up fullscreen so you can't miss it. You will have to click the ok-button to get rid of it, and will have already shown you which meeting, where it is and more!
This should not be a shock to most people, but is probably a weird pick as it's multi-platform (which is why I put it last). To me Emacs is an essential part of any system I set up. Some people might complain that it's just a text editor for programmers, but that could not be further from the truth. While you will have an easier time if you have technical skills, Emacs can also be used for writing essays and books (as well as blogging, hello!), using org-mode and olivetti. There are packages to solve lots of problems, so why not try Emacs as an MS Excel replacement? Or a file manager? Simple music creation? Testing REST APIs? There are tons more to check out as well! Maybe you want check out the amazing website called Emacs Rocks and be inspired?
Emacs can off course be installed with homebrew, which was mentioned earlier in this post :)
Bothered that your Mac sleeps while you do something without touching the keyboard or mouse for a while? (maybe you read something, wait for a process to complete or something else?). One option is off course to increase the time before your Mac sleeps, but if you want to add exceptions to that rule, then Amphetamine will keep your Mac awake while that application is running! Amphetamine can be extremely useful for some kinds of processes (reading newspapers, waiting for compilations or other things etc.), but I don't use it very often (though it is very useful the times I use it). (I realize that the last sentence can seem a little weird if you take it out of context, but this happens when developers give their software fun names :) )