I’m sitting in a coffee shop in Berlin with nothing but an 11-inch M4 tablet and a Magic Keyboard. People look at the setup and usually ask the same thing: "Can you actually code with iPad Pro, or are you just answering emails?" It’s a fair question. For years, the answer was a resounding "not really," unless you enjoyed pain. But things changed. Honestly, the hardware has been ready since the M1 chip dropped, but the software felt like it was wearing handcuffs.
Now? It’s complicated.
If you expect to open an iPad and find a "Visual Studio Code.app" that works exactly like the desktop version, you're going to be disappointed. Apple hasn't given us macOS on a tablet yet. However, if you're willing to shift your workflow, the iPad Pro is a terrifyingly powerful development machine. I've built React apps, managed Kubernetes clusters, and pushed Python scripts to production from this exact device. It isn't for everyone, though. You have to embrace the "cloud-first" mindset or get very comfortable with some niche local tools.
The Local Development Problem (And Why It’s Better Now)
The biggest hurdle when you try to code with iPad Pro is the sandboxed nature of iPadOS. On a Mac, you have a terminal. You have a file system. You can install Homebrew and go to town. On an iPad, apps are isolated. You can't just run a Docker container in the background while you browse Stack Overflow.
That said, Swift Playgrounds has become shockingly capable. It’s no longer just a "learn to code" app for kids. You can actually build and ship real SwiftUI apps directly to the App Store from an iPad. It’s the only "first-party" way to develop locally with full access to the hardware. But let's be real—most of us aren't just building iOS apps. We're doing web dev, data science, or backend work.
For local web development, Play.ht and CodeApp are decent, but Blink Shell is the gold standard. Blink recently integrated a local version of VS Code (using the VS Code Web engine). It’s snappy. It works offline for basic web tech like HTML, CSS, and JS. But the moment you need Node.js or a Python environment, you hit the wall. You need a server.
💡 You might also like: Australian Phone Number Format: What Most People Get Wrong
Remote Development is the Secret Sauce
This is where the iPad Pro actually wins.
I’ve found that the best way to code with iPad Pro isn't to force the tablet to be a laptop, but to use it as a portal. Because the iPad has 5G and incredible battery life, it’s the perfect thin client.
- GitHub Codespaces: This changed everything. You open Safari, go to your repo, hit the '.' key, and boom—you're in a full VS Code environment. Since the "heavy lifting" happens on GitHub's servers, your iPad doesn't get hot, and your battery lasts ten hours.
- Tailscale + Home Server: I have a Mac Mini at home. Using Tailscale, I can SSH into that Mac from anywhere in the world using the iPad. When I use Blink Shell to connect to my home machine, I'm basically using a $2,000 supercomputer with a cellular connection. It feels like magic.
- Coder/Code-Server: If you're a DIY type, you can host your own VS Code instance on a VPS.
Honestly, coding on a remote server feels faster than coding locally on an older MacBook Pro. The M-series chips in the iPad Pro handle the rendering of the UI so smoothly that you forget the code is actually running in a data center in Virginia or London.
Why the Magic Keyboard is Mandatory
Don't try to do this with a folio case. You need the trackpad.
The way iPadOS handles the cursor—that little circle that snaps to buttons—is actually great for coding. Selecting lines of text or navigating a nested JSON file is surprisingly tactile. But without the Magic Keyboard (or a high-quality alternative like the Logitech Combo Touch), you're just fighting the hardware. The keys need to be backlit. You need that "command-tab" fluidness to switch between your editor and your documentation.
The Real-World Limitations
Let’s talk about the stuff that sucks.
Multitasking is still "Stage Manager." It’s better than it was, but it's not a windowing system. Sometimes you just want to overlap four windows in a specific way, and the iPad says "no."
Also, browser dev tools. This is the "achilles heel" of trying to code with iPad Pro. Safari on iPad has "Inspect Element" if you connect it to a Mac, but who wants to do that? There are apps like Inspect Browser, but they feel clunky compared to the Chrome DevTools we all know and love. If you’re a heavy frontend dev who spends 50% of your time in the "Network" or "Application" tabs, you’re going to feel the friction.
Another thing: Package managers. You aren't running npm install or pip install locally on iPadOS (unless you're using a specific environment like a-Shell or Pyto). These apps use "fake" environments or WebAssembly to mimic a terminal. They're impressive technical feats, but they're flaky. One minute your Python script works, the next it crashes because a specific C-extension isn't supported by the app's creator. It’s a game of cat and mouse.
The "Zen" of the iPad Workflow
There is a weirdly specific benefit to coding on an iPad: Focus.
👉 See also: Why My Question Mark Doesnt Work: The Fixes That Actually Matter
Because the screen is smaller and the OS is more restrictive, I find myself "deep working" more often. There are fewer distractions. I’m not constantly fiddling with system settings or being distracted by a dozen background apps in the menu bar. It’s just me and the code.
I remember a trip to the mountains where the Wi-Fi was spotty. I had to rely on a local Python environment called Pyto. It wasn't perfect. I couldn't use some of the heavier libraries like Pandas easily. But I wrote some of the cleanest logic of my career that weekend. There's something about the constraints of the device that forces you to be a more intentional programmer.
Actionable Steps to Get Started
If you want to try this, don't go out and buy a $1,000 tablet immediately. If you already have one, follow this path to see if the workflow sticks:
- Step 1: Get a Terminal. Download Blink Shell. It’s the best $20 you’ll spend. It supports Mosh and SSH, which are vital for stable connections on mobile networks.
- Step 2: Try a Cloud IDE. Open a project in GitHub Codespaces or Gitpod. See how it feels to type in a browser-based VS Code. If the latency bothers you, the iPad life might not be for you.
- Step 3: Setup Tailscale. If you have a "real" computer at home, install Tailscale on both. This lets you access your home files securely without messing with port forwarding.
- Step 4: Use a-Shell for local tasks. It’s a free terminal for iPad that lets you do basic file management, some Python, and even C/C++ via WASM. It’s great for scratching that "local terminal" itch.
- Step 5: Master the Shortcuts. Learn the iPadOS keyboard shortcuts.
Cmd + Spacefor Spotlight,Cmd + Tabfor switching apps, and the specific shortcuts within your editor.
The iPad Pro isn't a laptop replacement for everyone. For a DevOps engineer or a backend dev who lives in Vim or VS Code, it’s a dream. For a game developer using Unity or Unreal Engine? Forget about it. You’re better off with a MacBook Air.
But there’s something special about pulling a tablet out of a small bag, hitting a 5G signal, and being able to fix a production bug while sitting in a park. It makes the world your office in a way a laptop never quite does. You just have to be willing to learn a few new tricks.