Programmer sur l'Apple Watch
Je prends les expériences folles au sérieux
- Publié
- Mis à jour
- (créé )
- Écrit par
- Willem L. Middelkoop
- Sujets
- SSH · ThinkPad · apple · créer · créativité · expérience · hacking · iOS · iPhone · ordinateur portable · linux · minimaliste · programmation · rétro · smartphone · vim · montre · travail
- Version humaine de cet article
- https://willem.com/fr/2017-02-16_programmer-sur-l-apple-watch/
- English
- Programming on Apple Watch
- Nederlands
- Programmeren op de Apple Watch
- Deutsch
- Programmieren auf der Apple Watch
- Español
- Programando en el Apple Watch
- Italiano
- Programmare su Apple Watch
- Português
- Programar no Apple Watch
- Papiamentu
- Programá riba Apple Watch
- Frysk
- Programmearje op de Apple Watch
- Langues
- Traduit de l’original anglais par un modèle de langage en deux passes (traduction et relecture) avec un glossaire et un correcteur orthographique ; pas encore relu par un lecteur de langue maternelle.
Résumé
Ces dernières années, les expériences folles ne m'ont pas fait peur, mais cette fois, je voulais vraiment pousser le curseur à l'extrême : programmer sur une Apple Watch. Est-il possible d'écrire vraiment du code sur un appareil aussi minuscule ? Pourquoi s'embêter avec ça ? Cet article plaide pour les expériences folles, et pour que tu essaies toi aussi !
Texte intégral
Il y a une semaine, j'échangeais quelques e-mails avec mon pote Niels, et je lui parlais de cette idée d'utiliser un iPhone pour faire mon travail. Il m'a suggéré (en néerlandais) de passer à l'étape supérieure... l'Apple Watch.

Pendant qu'il utilisait ses brillantes compétences en Photoshop, moi, j'ai utilisé Xcode, mes connaissances de Linux, SSH, VIM, le réseau local, un clavier Bluetooth, une vraie Apple Watch, du temps et de la patience.... ce qui a donné cette preuve de concept :


Comment ça marche (pour les nuls)
J'ai créé une petite appli pour la montre qui se connecte à un ordinateur externe sur lequel tourne le logiciel de développement. Le clavier est relié à cet ordinateur externe, ce qui me permet d'écrire du code pour de vrai. Le principe est simple et ressemble à l'appli Appareil photo qui est présente par défaut sur la montre : tu utilises la montre comme viseur pour l'appareil photo de l'iPhone. Cette appli est comme un « viseur » pour le code de programmation.
Comment ça marche (pour les geeks parmi nous)
Dans le réseau local, je fais tourner un petit serveur NodeJS sur une machine Linux, qui prend des captures d'écran d'une session shell où tourne mon éditeur de code préféré, VIM. Le clavier est relié à cet ordinateur portable en Bluetooth. Sur la montre, j'ai créé une appli simple qui récupère une nouvelle capture toutes les quelques secondes et l'affiche en plein écran. C'est une preuve de concept, rien de digne de l'App Store (il y a pas mal de latence entre les rafraîchissements, mais ça marche). Si tu penses à le construire toi-même, cherche WKInterfaceImage, UIImage, NSURLSession et dataTaskWithURL

Pourquoi
J'expérimente régulièrement, parce que ça m'apprend comment je fais les choses. Les expériences m'obligent à repenser des choses que je tiens pour acquises ou normales. À bien des égards, « la poursuite vaut mieux que la prise ».
J'expérimente activement avec de nouveaux matériels et logiciels, juste pour rester à jour et apprendre de nouvelles choses. En 2008, quelques mois après le lancement de l'App Store, j'étais parmi les tout premiers à me lancer dans le développement iOS. Même si le potentiel n'était pas clair, j'ai appris et expérimenté avec cette technologie. Cette expérience précoce m'a aidé à programmer l'appli Snake '97 en 2011, une autre idée folle qui est devenue un jeu à 20 millions de téléchargements... :-))

Ce que j'ai appris
Alors au lieu de demander « Pourquoi ? », mieux vaut demander « Qu'est-ce que j'ai appris ? ». Eh bien, pas mal de choses en fait :
- Déplace ton environnement de programmation dans le terminal : passe au texte, laisse tomber l'IDE (comme Visual Studio) et apprends à bien utiliser VIM (ou emacs) avec les raccourcis clavier. Ces outils tournent pratiquement sur n'importe quel appareil et ne demandent aucun système d'exploitation propriétaire.
- Adieu la souris : garde tes doigts là où tu écris du code, sur le clavier. Au lieu de chercher la souris, utilise le clavier (les raccourcis). Ça peut prendre du temps de les apprendre, mais au final, tu es beaucoup plus rapide. En plus de la vitesse, tu peux utiliser n'importe quel écran, puisque de plus en plus d'appareils acceptent un clavier mais pas de souris (pense aux consoles de jeux, aux télés connectées, à l'AppleTV, aux appareils à l'ancienne)
- Utilise les pixels avec sagesse : si tu t'imposes un petit écran, tu es obligé de mieux réfléchir à l'utilisation des pixels. As-tu vraiment besoin de toutes ces barres d'outils visibles, tout le temps ? Moins il y a d'éléments d'interface en permanence à l'écran, plus tu as de place pour le contenu. Moins de distraction, plus de concentration.
- Écris un meilleur code : pour que ça reste lisible sur un petit écran, tu apprends à vraiment faire attention à la structure du code, à la logique des fonctions et aux noms. Les petits écrans encouragent des lignes de code plus courtes et des corps de fonction plus compacts. Ça t'oblige à simplifier, à raccourcir, à te répéter moins. Ces avantages valent aussi pour les grands écrans.
- Tu n'as plus vraiment besoin d'un PC : si c'est possible sur une montre, pense aux autres appareils que tu transportes, comme ton smartphone et ta tablette. Mieux utiliser tes appareils mobiles te rendra moins dépendant des PC traditionnels.
- L'Apple Watch a du potentiel : des développeurs de Facebook avaient déjà réussi à faire tourner le célèbre jeu 3D Doom sur l'Apple Watch. J'ai appris moi aussi que l'appareil a un vrai potentiel. Je commence à penser que l'Apple Watch est bien plus un « ordinateur mobile toujours là » que quelque chose à comparer à une montre mécanique traditionnelle.

Conclusion
Toute cette expérience m'a vraiment fait avancer en matière d'informatique mobile. J'ai appris à optimiser mes outils et ma façon de travailler. En fait, tout cet article de blog a été créé sur un iPhone, photos comprises (les prendre, les recadrer), et ça ne m'a pas paru bizarre du tout. J'adore ça parce que ça rend tout plus facile, et c'est ce qui a rendu cette expérience utile
Bonus : Nokia Communicator et Jolla
Pendant que j'écrivais cet article, je me suis demandé si mes vieux Nokia Communicator fonctionnaient encore. Après avoir bricolé avec les vieilles batteries, j'ai réussi à faire démarrer le E90 et le 9300i. Avec Putty et le WiFi 802.11b, j'ai réussi à me connecter au système de développement que je venais de créer pour cette expérience avec l'Apple Watch. Devine quoi ? Ça marchait très bien. Qui a besoin d'un nouveau téléphone, au fond ? :-)



