The Docker Reality Check
Docker on the M4 Air is fast enough for most development work, but you'll hit limits. I regularly run 3-4 containers simultaneously for web development - PostgreSQL, Redis, Node.js backend, and a React frontend. Memory pressure starts around 5-6 containers, but that's more than most developers need locally.
The big win is speed. Container startup times are genuinely fast - PostgreSQL boots in under 3 seconds versus 8-12 seconds on my old Intel machine. Docker Desktop uses about 2GB of RAM baseline, leaving 14GB for your actual work with the standard 16GB configuration.
Platform compatibility gotcha: Some x86-specific Docker images still run slower through emulation. If your team uses ARM-native images, you're golden. If they don't, expect 15-20% performance hits on specific containers.
Docker Desktop randomly stops working and nobody knows why. Restart it, curse at it, restart again. That's the Docker Desktop experience on any platform. x86 Docker images are a pain - half the images on Docker Hub still don't have ARM versions, so you're stuck with slower emulation or hunting for alternatives.
VS Code and IDE Performance
VS Code runs like butter. I keep 20+ tabs open across multiple projects, with extensions for Docker, TypeScript, Python, and Go. The M4 handles it without breaking a sweat. Indexing large codebases is noticeably faster - my 50,000+ line React project indexes in about 30 seconds versus 2+ minutes on Intel.
Extensions break with every update though. Disable auto-update or suffer through random crashes and missing functionality.
IntelliJ IDEA and WebStorm work well but consume more RAM. IDEA with a large Java project uses 4-6GB RAM. Still workable with 16GB, but you'll want 24GB if you're a heavy IntelliJ user. IntelliJ eats RAM like Cookie Monster eats cookies - 24GB recommended if you're serious about Java development.
ARM compatibility: All major IDEs are ARM-native now. No more Rosetta performance hits. Xcode builds are fast, but the simulator crashes more than Windows ME. Android Studio works fine once you get past the initial setup hell.
Node.js and Build Performance
Node.js build times are excellent. My typical React + TypeScript project that took 45 seconds to build on Intel now finishes in 18 seconds. Hot reloading in development is instant. The M4's single-core performance makes JavaScript compilation noticeably snappier.
npm install fails randomly on ARM packages though. Use yarn or pray to the JavaScript gods. Hot reload randomly breaks in React - restart the dev server, curse, repeat.
Database Development
Local PostgreSQL and MySQL perform well. Complex queries that took 200ms on Intel now run in 80-100ms. The unified memory architecture helps with database caching - your entire test dataset often stays in memory.
Redis is particularly fast on Apple Silicon. Simple key-value operations are nearly instant, making development with Redis caching a smooth experience.