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).
Checking Your CPU Architecture
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.”
- If your processor is an intel processor, then whatever application you will be downloading will be suffixed with x64
- If your processor is an Apple processor (M1 or M2), then the applications that you will be downloading will be suffixed with “arm.”
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.
Basics of Switching to Mac
Trackpad Commands
I personally use the keyboard more than the trackpad; however, there are a few things where the trackpad shines.
- Use three fingers and swipe from the bottom of the trackpad to the top to see all the applications that are opened.
- The last three gestures mentioned in the article How to use MacBook trackpad: Mac trackpad gestures you should know | Macworld are pretty useful.
Keyboard Shortcuts
-
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.
- For example, let us assume that we have three windows of Firefox opened, along with one window of Zoom and one window of Outlook
- By pressing ⌘ + Tab, we will be cycling between applications
- Using ⌘ + ` , we will be cycling between the windows of the current application
- Using AltTab tool is a better option as it emulates the Windows style of switching between tabs. Check the Open Source Tools category.
- For example, let us assume that we have three windows of Firefox opened, along with one window of Zoom and one window of Outlook
Open Source Mac Tools
- Maccy - macOS clipboard manager: A clipboard manager. It is far better than the one present in Windows (in my opinion ofc) and also has the option to “Paste without Formatting.”
- AltTab - Windows alt-tab on macOS: By default, the way to cycle tabs in Mac is plain annoying. To get the Windows style of cycling between tabs, use this.
- kyleneideck/BackgroundMusic: Background Music, a macOS audio utility, automatically pause your music, sets individual apps' volumes, and record system audio. : I personally use it for changing the volume of individual applications (like how we can do in Windows)
- KeePassXC Password Manager: An open-source password manager that gets the job done. It is available for Windows, too, and you can use Google Drive or any cloud provider to sync the database between different devices. One drawback is that this is not available for mobile devices.
Using The Mac Terminal
Tools
-
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.
Commands
Copying Text From Terminal’s Output
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.
Pasting Clipboard Content on Terminal
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
Opening a file via a Terminal
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>
Closing Notes
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.