[EN] My Macbook Installations for Development & Productivity
I am using MacBook Pro (16-inch, 2019) for development. I have a set of installations and configurations to increase my productivity. In this blog I listed them.
Productivity Tools
Iterm
The best terminal emulator I ever used on mac. It supports
- Hotkeys
- Multiple Profiles
Download from Iterm2
Brew
Package manager for MacOs an Linux.
Install brew with this command.
sh -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
Oh My ZSH
Oh My Zsh is a delightful, open source, community-driven framework for managing your Zsh configuration. It comes bundled with thousands of helpful functions, helpers, plugins, themes, and a few things that make you shout…
Install Oh My ZSH with this command.
sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
ZSH Plugins
Git and Z plugins are by default installed.
zsh-autosuggestions
Fish-like fast/unobtrusive autosuggestions for zsh.
It suggests commands as you type based on history and completions.
To install clone the plugin to zsh plugin directory.
git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
Add plugins to ~/.zshrc
plugins=(
git
zsh-autosuggestions
z
)
1Password
I am using 1Password to store my passwords, secure codes, etc. It can be used as virtual MFA device and you can store ssh keys also.
To use 1password, click to link. 1Password
Alfred
Alfred is a productivity app for macOS. You can replace Spotlight with Alfred. You can do with Alfed
- Personalized search
- A shortcut to the web.
- Quick access to your contacts.
- Custom commands
Download from Alfred
Choosy
Choosy opens every link in the right browser Instead of opening links in the default browser, Choosy sends them to the right browser. Every time.
Download from Choosy
Better Touch Tool
BetterTouchTool is a great, feature packed app that allows you to customize various input devices on your Mac.
- Customizable Window Snapping & Resizing & Moving tools
- Screenshot Tool & Editor
- Clipboard Manager
- Window Switcher
Download from Better Touch Tool
f.lux
f.lux makes the color of your computer’s display adapt to the time of day, warm at night and like sunlight during the day.
Download from f.lux
jq
jq is a lightweight and flexible command-line JSON processor.
Install jq with brew.
brew install jq
Pock
A free, opensource widgets manager for MacBook Touch Bar
Download from Pock
Chrome Extentions
OneTab
My favorite chrome plugin!!! It converts all the tabs into a list of webpages. You can restore that list to tabs. You can lock a list and restore again and again. It is very usefull if you are open too many tabs.
Install OneTab
Wappalyzer
Wappalyzer is a technology profiler that shows you what websites are built with. It reveals the technology stack of a website, CMS, web frameworks, javascript libraries, marketing tools, payment methods and other technologies .
Install Wappalyzer
Grammerly
Grammarly is a typing assistantthat reviews spelling, grammar and punctuation. It is very useful when you write blog posts, emails or documentations.
Install Grammarly
TransOver
TransOver is an on page translator. You just need to hover, click or select.
Install TransOver
Development Tools
OpenJDK
An open-source implementation of the Java Platform.
Install openjdk latest version with brew.
brew install openjdk
Install openjdk spesific version with brew.
brew install openjdk@8
Define JAVA_HOME add to PATH (add these lines to .zshrc)
export JAVA_HOME_8=$(/usr/libexec/java_home -v1.8)
export JAVA_HOME_11=$(/usr/libexec/java_home -v11)
export JAVA_HOME_17=$(/usr/libexec/java_home -v17)
export JAVA_HOME=$JAVA_HOME_17
export PATH=$PATH:$JAVA_HOME/bin
alias java8="$JAVA_HOME_8/bin/java"
alias java11="$JAVA_HOME_11/bin/java"
alias java16="$JAVA_HOME_16/bin/java"
Maven
An open-source package and build manager for java projects.
Install Maven with these commands.
export MAVEN_VERSION='3.8.6'
wget https://dlcdn.apache.org/maven/maven-3/$MAVEN_VERSION/binaries/apache-maven-$MAVEN_VERSION-bin.tar.gz
tar xzvf apache-maven-$MAVEN_VERSION-bin.tar.gz
sudo mv apache-maven-$MAVEN_VERSION /opt/apache-maven-$MAVEN_VERSION
Define M2_HOME and add to PATH (add these lines to .zshrc)
export M2_HOME="/opt/apache-maven-3.8.6"
export PATH=$PATH:$M2_HOME/bin
GO
Go is a statically typed, compiled programming language designed at Google.
Download from golang
Define GOPATH (add this line to .zshrc)
export GOPATH="$HOME/development/go"
Visual Studio Code
Visual Studio Code is a lightweight but powerful source code editor which runs on your desktop and is available for Windows, macOS and Linux. It is opensource and developed by Microsoft.
Download from Visual Studio Code
Intellij IDEA
The best IDE for java.
Download from Intellij IDEA
Create command line launcher for idea. It is very useful.
Docker
Docker is containerization technology that enables the creation and use of Linux containers.
Download from Docker
AWS CLI
AWS CLI is a unified tool to manage your AWS services from command line.
Install AWS CLI with these commands.
curl "https://awscli.amazonaws.com/AWSCLIV2.pkg" -o "AWSCLIV2.pkg"
sudo installer -pkg AWSCLIV2.pkg -target /
Github SSH Keys
Using the SSH protocol, you can connect and authenticate to remote servers and services. With SSH keys, you can connect to GitHub without supplying your username and personal access token at each visit.
- Create SSH Keys
cd ~/.ssh
ssh-keygen -f github -C "ihsan.caliskanoglu@gmail.com"
- Put Github host config to ~/.ssh/config file
Host github.com
HostName github.com
User git
IdentityFile ~/.ssh/github
- Add public key to Github