Why I Chose the M4 Max MacBook Pro
I’ve been an Apple user since 2007 when I got my first MacBook Pro in college. That was the moment I transitioned away from Windows as my primary OS and fully embraced UNIX-based systems. Since then, I’ve always had a MacBook as my daily driver, though I’ve used a few Windows machines, including my current one with an RTX 3090. I even had a high-end $15,000 desktop at one point, but dealing with fried processors and constant replacements made me realize that having a MacBook is my baseline requirement for development. While I’ve worked in environments like Verizon where Windows-specific builds were necessary, my work has always centered around UNIX/Linux-based machines.
As an AI developer, my workflow involves handling large language models, running complex DevOps pipelines, and optimizing blockchain consensus mechanisms. The new M4 Max MacBook Pro provides a powerful combination of performance, efficiency, and portability, making it an excellent choice for a machine-learning-heavy development setup.
This post details the command-line tools and IDEs I’ve installed to streamline my workflow.
Core Applications Installed
Beyond the command-line, I installed essential applications for productivity, note-taking, and development workflow.
General System Tools
Homebrew - The backbone of my package management.
Raycast - A powerful macOS launcher that replaces Spotlight.
Ghostty / Warp / Hyper Terminal - Terminal replacements for a smoother, GPU-accelerated experience.
Orbstack - Lightweight Docker alternative with fantastic MacOS integration.
DropOver - Drag-and-drop utility to manage files seamlessly.
Homerow Mac - Keyboard-first productivity booster.
Fantastical / Notion Calendar - Calendar and task management.
Browser & Communication
Arc / Chrome - Daily browsing.
Linear - Task and issue tracking.
Slack / Telegram - Communication tools.
ChatGPT / Claude / Perplexity Desktop - AI-powered research assistants.
Alex Sidebar - Sidebar utility for easier window management.
AI & LLM Development Tools
LM Studio / Ollama / GPT4All - Running local LLMs for offline AI development.
Satyrn Notebook - Notebook-style AI experimentation.
Limitless AI / Granola - AI-powered workflow automation.
Coding & IDEs
Zed / Zed Preview - High-performance text editor.
Cursor / Trae / Windsurf - AI-assisted coding.
TablePlus - Database management tool.
Rive Desktop - Motion graphics editing.
Xcode / Testflight - Native macOS and iOS development.
Ulysses Notes / Bear Notes / Obsidian / Notion / Tana - Knowledge management and research.
Command-Line Tooling
A good macOS developer setup isn't complete without powerful CLI utilities. Below are my essential command-line tools, categorized by their functionality.
System Utilities
bat - Better
cat
alternative with syntax highlighting.fd - Faster alternative to
find
.fzf - Fuzzy finder to speed up searching through history and files.
eza - Modern replacement for
ls
with better visuals.ripgrep - Lightning-fast searching.
mcfly - Smart command history search.
zoxide - Smarter
cd
for navigating directories efficiently.sevenzip - File compression tool.
uutils-coreutils - Rust-based replacements for GNU core utilities.
Development & Programming
LLVM & LLD - Compiler infrastructure and linker.
Solidity - Compiler for writing Ethereum smart contracts.
Zig - New-age low-level programming language.
Z3 - Theorem solver used in verification and AI/ML tasks.
Helix - Fast and modern text editor.
jq - Command-line JSON processor.
Typst - Modern alternative to LaTeX for document creation.
Git / JJ - Version control tools.
GH - GitHub CLI.
jless - JSON pager.
SD - Stream editor that simplifies text replacement.
LSD - Improved
ls
command with color coding.
Security & Networking
GnuPG / GPGME - Encryption tools for secure communication.
libssh / libssh2 - SSH libraries.
OpenSSL@3 - Cryptography and security toolkit.
Nmap / Rustscan - Network scanning tools.
Unbound - Local DNS resolver for privacy.
Multimedia & Graphics
FFmpeg - Command-line tool for video processing.
ImageMagick - Image manipulation.
Tesseract - OCR (Optical Character Recognition).
WebP / FLAC - Compression tools for image and audio.
Cairo - 2D graphics rendering.
Freetype - Font rendering.
Data Processing & Compression
SQLite - Embedded database for local storage needs.
Brotli / Zstd / LZ4 / XZ - Various compression algorithms.
libarchive - Archiving library.
libb2 - BLAKE2 hashing.
PCRE2 - Regular expressions processing.
Rust-Based Utilities (Cargo)
Bottom (
btm
) - Modern system monitor.Dutree - Disk usage visualization.
LSD - Enhanced
ls
alternative.SD - Alternative to
sed
for fast text replacement.
CLI Tools
Doggo - Modern alternative to
ping
.DUA-CLI - Disk usage analyzer.
Dust - Better
du
for checking disk usage.Erdtree - Enhanced
tree
command for directory visualization.GPing - Graphical ping tool.
Tig - Git TUI (text-based UI for Git).
Zenith - System resource monitor.
Yazi - TUI-based file manager.
Fonts & UI Enhancements
Font Symbols Only Nerd Font - Better terminal font support.
NPM Packages
Corepack - Manages package managers (Yarn, PNPM, etc.).
NPM - Node package manager.
Final Thoughts
This setup optimizes efficiency, AI development, DevOps workflows, and cryptographic security. The goal was to build an environment that supports:
Running local AI models (LM Studio, GPT4All, Ollama)
Smart contract development (Solidity, Z3, Zig, Rust tools)
Advanced networking & security (Nmap, Rustscan, GPG, Unbound)
Terminal-based productivity enhancements (Zoxide, FZF, Ripgrep, LSD)
Database & backend tooling (TablePlus, SQLite, Brotli, Zstd)
This is just my initial baseline setup, and I'll continue to update it as I refine my workflow and discover new tools. This will also be the first post in a series, where I'll dive deeper into some of these tools and their use cases. If there's a particular tool you're curious about, let me know, and I can write a more in-depth post about it!