✦Entwicklergeschichte

Ich habe eine komplette App auf meinem iPad programmiert. So geht’s.

Xcode. Interface Builder. Der iOS-Simulator. Ein vollständiges Swift-Projekt mit 47 Dateien. Alles läuft über mein iPad Pro in einem Café. Keine Kompromisse. Keine Notlösungen. Hier ist die ganze Geschichte.

Das Problem mit „Coding auf dem iPad“

Jedes Jahr macht Apple das iPad leistungsstärker. Die Chips der M-Serie. Das Liquid-Retina-XDR-Display. Das Magic Keyboard. Und jedes Jahr stellen Entwickler dieselbe Frage: Kann man damit tatsächlich programmieren?

Die Antwort lautete immer „so halbwegs“. Man kann VS Code über GitHub Codespaces im Browser nutzen. Man kann sich mit Blink Shell per SSH auf einem Server einloggen. Man kann Apps wie Swift Playgrounds für einfache Experimente verwenden. Doch sobald man die echten Werkzeuge braucht – Xcode, Android Studio, Visual Studio, ein ordentliches Terminal mit den eigenen Dotfiles –, steckt man fest.

Das sind keine willkürlichen Einschränkungen. Apple erlaubt unter iPadOS keine vollwertigen IDEs. Xcode wird nie nativ auf einem iPad laufen (zumindest nicht die vollständige Version). Und browserbasierte Editoren sind, so gut sie auch werden, grundsätzlich durch das begrenzt, was ein Browser-Tab kann.

Also habe ich es anders versucht. Statt die IDE aufs iPad zu bringen, habe ich das iPad zur IDE gebracht.

Das Setup: Remio + Mac mini + iPad Pro

Mein Setup ist beinahe peinlich einfach:

Ich öffne Remio auf meinem iPad, tippe die auf meinem Mac mini angezeigte PIN ein, und innerhalb von zwei Sekunden sehe ich meinen Mac-Desktop. Volle Auflösung. Volle Farbtiefe. Mit meiner gesamten Entwicklungsumgebung genau dort, wo ich sie verlassen habe.

Kein VPN zu konfigurieren. Keine SSH-Tunnel, die gewartet werden müssen. Kein Konto anzulegen. Nur eine PIN und eine Verbindung.

Warum das besser ist als Programmieren im Browser

Ich habe alle Alternativen ausprobiert. Wirklich alle. Hier erfahren Sie, warum Remio mit einem echten Mac jede browserbasierte Lösung schlägt, die ich getestet habe.

GitHub Codespaces / VS Code Web

Codespaces ist für die Webentwicklung wirklich beeindruckend. Aber es läuft in einem Linux-Container. Kein Xcode. Kein Interface Builder. Kein iOS-Simulator. Kein Core-Data-Modell-Editor. Wer iOS- oder macOS-Apps baut, hat damit schlicht keine Option. Und selbst für die Webentwicklung setzt einem die Browser-Sandbox Grenzen – kein lokaler Dateizugriff, kein natives Terminal, keine Möglichkeit, beliebige Hintergrundprozesse auszuführen.

SSH + Terminal-Editoren

Ich liebe Vim. Wirklich. Aber eine SwiftUI-App mit 47 Dateien, Xibs, Asset-Katalogen und einem Core-Data-Modell in einem Terminal-Editor zu bauen, ist keine Produktivität – es ist Masochismus. IDE-Funktionen wie Code-Vervollständigung, Refactoring, Live-Vorschauen und der visuelle Debugger gibt es aus gutem Grund.

Cloud-Desktops (AWS WorkSpaces, Shadow PC)

Sie können sich in der Cloud einen Mac für etwa 50–100 $ im Monat mieten. Aber Sie besitzen bereits einen Mac. Warum zahlen Sie dafür, einen schlechteren zu mieten? Mit Remio nutzen Sie Ihren tatsächlichen Rechner – mit Ihren tatsächlichen Dateien, Ihrer tatsächlichen Toolchain, Ihrer tatsächlichen Umgebung. Und die Latenz ist besser, weil Ihr Mac in Ihrem Heimnetzwerk steht und nicht in einem Rechenzentrum in Virginia.

Ein Tag echter Arbeit

Ich zeige Ihnen, wie ein tatsächlicher Arbeitstag aussieht – ein Dienstag im Café.

08:30 UhrHinsetzen, verbinden, weitermachen

Ich setze mich mit meinem iPad und dem Magic Keyboard in ein Café. Remio öffnen. Mit meinem Mac mini zu Hause verbinden. Xcode ist bereits mit meinem Projekt von gestern Abend geöffnet – jeder Breakpoint, jeder Tab, jede nicht committete Änderung genau dort, wo ich sie verlassen habe.

08:35 UhrSwiftUI schreiben

Ich schreibe SwiftUI-Code. Die Code-Vervollständigung funktioniert einwandfrei, weil dort echtes Xcode auf einem echten Mac mit einem echten Swift-Compiler läuft. Jeder Tastenanschlag fühlt sich unmittelbar an – dank der nativen Eingabeverarbeitung von Remio gibt es keine spürbare Verzögerung zwischen dem Drücken einer Taste und dem Erscheinen des Zeichens.

Warum es sich lokal anfühlt

Native Eingabe, direkt an den Host geliefert – rund 8 ms Verarbeitung im LAN, intern gemessen; der Rest ist der eigene 60-Hz-Bildtakt Ihres Displays.

09:15 UhrIm iOS-Simulator ausführen

Ich muss im iOS-Simulator testen. Ich drücke ⌘R. Der Simulator startet auf meinem Mac, und ich sehe ihn auf meinem iPad-Bildschirm. Ich kann das simulierte iPhone mit Touch-Gesten auf meinem iPad bedienen – das fühlt sich überraschend natürlich an. Tippen, wischen, scrollen. Es funktioniert einfach.

10:00 UhrUI-Arbeit im Interface Builder

Zeit für etwas UI-Arbeit. Ich öffne den Interface Builder. Constraints ziehen, Layouts anpassen, Vorschau in verschiedenen Gerätegrößen. Genau diese Art von Arbeit ist in einem browserbasierten Editor unmöglich. Die visuellen Werkzeuge sind unersetzlich.

11:30 UhrNebenläufigkeit debuggen

Ich debugge ein kniffliges Nebenläufigkeitsproblem. Ich setze Breakpoints, gehe den Code Schritt für Schritt durch und untersuche Variablen im Debugger. LLDB funktioniert einwandfrei, weil ich das Original nutze und keine webbasierte Annäherung.

13:00 UhrWechsel zu Android

Nach dem Mittagessen wechsle ich zu meinem Android-Projekt. Ich schließe Xcode und öffne Android Studio. Dieselbe Verbindung, dasselbe Setup. Remio ist egal, welche App ich ausführe – es streamt den gesamten Desktop.

19:00 UhrDie Tagesbilanz

Am Ende des Tages habe ich rund 400 Zeilen Swift geschrieben, drei Bugs behoben, einen Build an TestFlight übermittelt und zwei Pull Requests geprüft. Alles von einem iPad in einem Café aus. Nichts davon erforderte eine besondere Konfiguration oder einen Kompromiss.

Die Details, die es möglich machen

Tastenkürzel

Hier scheitern die meisten Remote-Desktop-Apps. Remio leitet jedes Tastenkürzel korrekt weiter. ⌘B zum Bauen. ⌘R zum Ausführen. ⌘⇧O zum schnellen Öffnen. ⌃⌘Space für Emoji (ja, sogar das). Die Sondertasten des Magic Keyboards entsprechen 1:1 den Sondertasten des Macs. Es gibt keine Übersetzungsebene und keine Verwirrung durch Tastenumbelegung.

Textdarstellung

Code ist kleiner Text. Und zwar viel davon. Eine Remote-Desktop-App, die Text verwischt oder Artefakte erzeugt, ist für die Entwicklung völlig unbrauchbar. Die H.265-Kodierung von Remio mit auf Text optimierten Einstellungen hält Code gestochen scharf. Die Farben der Syntaxhervorhebung sind korrekt. Schriftstärken stimmen. In der Auflösung des iPad Pro sieht es tatsächlich aus, als liefe Xcode lokal.

Zwischen Bildschirmen wechseln

Auf meinem Mac mini habe ich einen virtuellen zweiten Bildschirm. Mit Remio wechsle ich per Tipp, welchen Bildschirm ich ansehe – Code auf dem einen, der Simulator auf dem anderen. Auf dem iPad wische ich zwischen ihnen oder ordne meinen Arbeitsbereich mit Stage Manager an.

Zwischenablage und Dateiübertragung

Sie möchten eine Fehlermeldung aus der Konsole später suchen? Die Zwischenablage-Synchronisierung von Remio macht das mühelos – Text auf einem Gerät kopieren, auf dem anderen einfügen. Und wenn ich eine Referenzdatei in meinem Projektordner haben möchte, sende ich sie direkt vom iPad an den Mac.

Meine Workflow-Tipps

Nach sechs Monaten, in denen ich so programmiere, habe ich mir einige Gewohnheiten angeeignet, die das Erlebnis noch besser machen.

  1. Halten Sie Ihren Mac an einer Kabelverbindung. Mein Mac mini ist per Ethernet mit dem Router verbunden. Das beseitigt die größte Variable bei der Streamqualität.
  2. Nutzen Sie für das iPad eine stabile WLAN-Verbindung. 5-GHz-WLAN im Café ist meist in Ordnung. Ist die Verbindung wackelig, passt sich die adaptive Qualität von Remio automatisch an – doch eine stabile Verbindung bedeutet durchgehend scharfen Text.
  3. Stellen Sie die Schriftgröße von Xcode auf 13–14 pt. Das ist auf dem Display des iPad Pro über Remio bequem lesbar, ohne dass Sie zoomen müssen.
  4. Verwenden Sie für alles Tastenkürzel. Je weniger Sie Touch oder Maus für IDE-Aktionen nutzen, desto schneller werden Sie sein. Das ist auch für die lokale Entwicklung ein guter Rat.
  5. Aktivieren Sie in den iPadOS-Einstellungen „Bewegung reduzieren“. Das verringert den Animationsaufwand auf der iPad-Seite geringfügig und verschafft Remio einen Hauch mehr Leistungsspielraum.

Was ich nicht kann (ganz ehrlich)

Um ganz ehrlich zu sein, hier die Einschränkungen.

Diese Kompromisse sind real. Doch für mich werden sie bei Weitem davon aufgewogen, meine gesamte Entwicklungsumgebung auf einem 700 Gramm leichten Tablet mitzunehmen.

Der Traum vom iPad-Entwickler, wahr geworden

Jahrelang habe ich darauf gewartet, dass Apple Xcode aufs iPad bringt. Irgendwann wurde mir klar, dass es vielleicht nie passiert – zumindest nicht in der vollständigen, professionellen Version. Also habe ich aufgehört zu warten und eine bessere Antwort gefunden.

Remio bringt nicht Xcode auf Ihr iPad. Es bringt Ihren gesamten Mac auf Ihr iPad. Jede App, jedes Werkzeug, jede Datei. Mit einer Bildqualität und einer Eingabereaktion, die den Eindruck erwecken, der Mac stünde direkt vor Ihnen – denn in jeder Hinsicht, auf die es ankommt, tut er das.

Das beste Entwicklungs-Setup ist nicht das mit der meisten Rechenleistung. Es ist das, das Sie tatsächlich dabeihaben.

Mein iPad Pro mit Remio ist die beste Entwicklungsmaschine, die ich je besessen habe – nicht wegen seiner technischen Daten, sondern weil es überallhin mitkommt, wohin ich gehe, und meine vollständige Entwicklungsumgebung gleich mit.

Wenn Sie Entwickler sind und einen Mac und ein iPad besitzen, probieren Sie Remio aus. Die Einrichtung dauert zwei Minuten. Kein Konto erforderlich. Und wenn Sie neugierig auf die Gaming-Seite sind, lesen Sie unsere Anleitung zum Spielen von PC-Spielen auf dem iPad – dieselbe Technik mit niedriger Latenz, die das Programmieren möglich macht, macht auch das Spielen großartig.

Remio-App-Symbol

Probieren Sie Remio selbst aus.

Tragen Sie Ihren gesamten Mac in Ihrem iPad mit sich. Die Einrichtung dauert zwei Minuten, es ist kein Konto erforderlich, und dank nativer Eingabe fühlt sich das Tippen lokal an.

Kostenlos nutzbarKein KontoIn 30 Sekunden gekoppelt