Hi. This article is intended for those who have been working with Windows for a long time and are now transitioning to Mac. This article leans towards a developer’s use case, but I believe that it will be helpful overall. Mac, as an OS, is the beautiful blend between Windows and Linux, and from a developer’s perspective, it gets things done (Only if it could game as well as it runs After Effects).
It is surprisingly important to determine the CPU architecture. The simplest method to do so is to click the Apple icon on the top left and click on “About this Mac.”
I am using a Mac with an intel processor. Some of the applications and commands which I suggest may not be available for the M1 or M2 Architecture.
I personally use the keyboard more than the trackpad; however, there are a few things where the trackpad shines.
The ”Alt” key in Windows is ”Option” (⌥)
In most of the cases, the “Control” key is “Command” key (⌘)
Use ⌘ + Q to forcefully quit an application
Use ⌘ + Space to open Spotlight search. This is a super fast search that allows you to search for applications and files.
Task manager of Windows is called Activity Monitor.
Use ⌃ + ⌘ + Space to open emoji menu
Use ⌘ + Tab to cycle between applications and ⌘ + ` to toggle between multiple windows of the application.
By default, bash is installed. While you can certainly use it, I personally prefer using zsh. I recommend following this YouTube tutorial :
Customize your terminal on MacOS like a pro 🔥 | oh-my-zsh | powerlevel10k | iTerm2 - YouTube
Since I connect to a cloud machine quite a lot via SSH, I have a dedicated application to do so. The application is called Tabby, and it is….. beautiful.
Tabby - A Open Source Terminal Emulator tool for the modern self hoster. - YouTube
Homebrew is a package manager for terminals, and it is a must-have. Homebrew — The Missing Package Manager for macOS (or Linux)
Jq is a useful tool for parsing JSON files via a terminal. Guide to Linux jq Command for JSON Processing | Baeldung on Linux
Yq is a useful tool for parsing YAML files via terminal. yq - yq
yt-dlp/yt-dlp: A YouTube-dl fork with additional features and fixes is a tool for downloading videos and playlists from YouTube. It's pretty handy if you plan on watching a few videos offline.
This is done by using “pbcopy” command. Example usage is defined as follows:
echo "This article is the best article for windows users to quickly start working on mac" | pbcopy
The text “echoed” (a humble brag) will now be copied to your clipboard. Try pasting it in a text editor.
Similar to above, we can use “pbpaste” command to paste clipboard’s content to the terminal.
# wc is used for displaying the line, word and character count respectively
pbpaste | wc
If you are working in a directory where there is a certain file that needs to be opened (for example, you used a Python script to generate a CSV file and now want to see it in Excel), instead of manually navigating to the folder, you can use the “open” command in terminal.
# To check the latest modified file.
# The latest modified file will be displayed at the "bottom" of the output
ls -ltr
# Opening the file
open <filename>
The above has been mostly “new” for me from Windows to Mac. If I find any new things, I will probably publish part 2 of this article. Let me know if this helped and if you have any tips to enhance the experience further.