2 points par GN⁺ 2024-01-06 | 1 commentaires | Partager sur WhatsApp
  • BoopSnoop est une application de messagerie ultra-simple créée pour être utilisée par quatre membres d’une même famille ; lancée la première semaine de janvier 2020, elle a été téléchargée par quatre personnes réparties sur trois fuseaux horaires, puis a conservé 4 utilisateurs actifs quotidiens et un taux de rétention de 0 perte
  • Après l’arrêt de Tapstack, au lieu d’utiliser un groupe Instagram ou WhatsApp, la famille a créé sa propre app et a repris une structure où les messages photo et vidéo s’affichent en plein écran avant de disparaître
  • Elle se compose uniquement d’un écran caméra, d’un badge de messages en attente, d’AWS S3, d’AWS Lambda et d’une distribution via TestFlight ; n’ayant besoin ni de connexion ni de gestion des contacts, elle est encore plus simple en tant que situated software
  • Sa réalisation a pris environ une semaine, dont près de la moitié consacrée aux problèmes de signature de code et de provisioning Xcode, mais des composants open source et du code d’exemple ont rendu l’implémentation possible
  • Même sans être un logiciel professionnel et scalable, une app créée pour des proches peut devenir un logiciel comme une maison, qui ne change que lorsque ses utilisateurs veulent le changer, sans redesign soudain, publicité ni pivot

Le canal familial laissé par Tapstack

  • Tapstack était une app qui affichait une grille de visages de personnes ou de groupes sous le flux en direct de la caméra du téléphone
    • Un tap prenait une photo, un appui long lançait l’enregistrement d’une vidéo
    • Le message était envoyé dès qu’on retirait le doigt, sans étape d’édition ni de relecture
    • Les messages reçus s’empilaient dans une « stack », puis disparaissaient après avoir été parcourus par l’utilisateur
  • La grille Tapstack de la famille était composée de quatre cases : maman, papa, la petite sœur et un groupe réunissant les trois
  • L’intérêt de cette app résidait moins dans la coordination pratique ou l’organisation que dans une présence ambiante
    • Comme il n’y avait ni fils de discussion ni historique, on ressentait moins la pression d’une réponse attendue
    • Un selfie avec un café, la photo d’un étang gelé ou une vidéo espiègle des neveux étaient autant de façons de dire « je pense à toi »
  • Tapstack ne semblait pas avoir conquis une grande base d’utilisateurs, n’avait pas de publicité et ne demandait pas aux utilisateurs de payer
  • Après l’arrêt des mises à jour en 2019, l’app a annoncé sa fermeture à l’automne, a fourni aux utilisateurs un moyen d’exporter leurs données, puis a mis la clé sous la porte

BoopSnoop, l’app de remplacement pour la famille

  • Après la fermeture de Tapstack, la famille avait besoin d’une solution de remplacement, mais un groupe Instagram ou WhatsApp donnait l’impression qu’un chaleureux canal familial se retrouvait entouré de tout le reste
  • BoopSnoop est une app semblable à une fenêtre magique conçue uniquement pour la famille
    • Elle capture des photos et des vidéos pour les transmettre à la famille
    • Les messages restent dans une file d’attente puis disparaissent une fois consultés
    • L’écran de consultation est toujours en plein écran, sans éléments incitant à commenter ou à partager
  • L’interface est presque inexistante
    • Il y a un bouton caméra
    • Un discret badge vert dans un coin affiche le nombre de messages en attente
  • Elle a été lancée la première semaine de janvier 2020 et téléchargée par quatre personnes réparties sur trois fuseaux horaires
  • Depuis, elle a maintenu 4 utilisateurs actifs quotidiens et zéro attrition, devenant un succès qui a dépassé toutes les attentes de son créateur

Une implémentation rendue possible par la simplicité

  • BoopSnoop a été conçue pour être encore plus simple que Tapstack
    • Pas besoin de système de connexion
    • Pas besoin d’interface de création ou de gestion des contacts
    • On sait déjà exactement qui l’utilise
  • Comme dans le concept de situated software de Clay Shirky, il ne s’agit pas d’un logiciel à personnaliser, mais d’un logiciel personnel dès le départ
  • Le cœur de l’app est un écran caméra servant à saisir photos et vidéos
    • Elle reprend une interaction familière : tap pour prendre une photo, appui long pour enregistrer une vidéo
    • Cette partie s’appuie sur le composant open source SwiftyCam
    • Sans ce composant, le projet aurait été difficile
  • Le backend est réduit au minimum
    • Un bucket AWS S3 stocke les photos et les vidéos
    • Quelques fonctions AWS Lambda exécutent le traitement nécessaire lors de l’upload de nouveaux messages
  • La distribution familiale se fait via TestFlight, et l’app reste en permanence dans une « bêta éternelle et confortable »

Les obstacles rencontrés en développement réel

  • Dans un monde meilleur, c’est le genre d’app qu’on aurait pu créer en une journée avec un outil moderne et flexible pour iOS, façon HyperCard
  • En réalité, cela a pris environ une semaine, dont près de la moitié consacrée à gérer les problèmes de signature de code et de provisioning d’identifiants
  • Malgré cela, des composants open source et du code d’exemple ont rendu le projet possible, preuve que le monde actuel n’est pas totalement cassé
  • La programmation du XXIe siècle peut donner une impression d’assemblage façon Lego lorsqu’on travaille à l’intérieur des frontières des technologies modernes
  • Publier le code pourrait servir de guide à d’autres, mais le code de l’app mélange beaucoup de valeurs spécifiques à l’application et de clés d’authentification
    • Cette app n’est ni un framework ni un template : c’est l’app elle-même
    • Cette nature est inséparable de l’esprit dans lequel elle a été créée

Programmer comme on fait la cuisine à la maison

  • Son créateur se voit moins comme un ingénieur logiciel professionnel que comme un programmeur qui cuisine à la maison
  • L’injonction « apprends à coder » est souvent liée à la valeur marchande, au levier économique, à la reconversion professionnelle et au CV
  • Dire « apprends à cuisiner » n’existe pas seulement pour devenir chef
    • On peut apprendre pour mieux manger
    • On peut apprendre pour manger à moindre coût
    • On peut apprendre pour faire vivre une tradition
    • On peut aussi apprendre par ennui, ou pour passer du temps avec la personne qui nous l’enseigne
  • La cuisine dépasse le seul domaine de l’achat et de la vente ; elle touche au foyer, à la curiosité, à l’histoire, à la culture, au soin et à l’amour
  • Au XXIe siècle, beaucoup des gens qu’on aime nous attendent dans les ordinateurs de poche qu’ils gardent toujours près d’eux, donc le code peut lui aussi se relier à eux de cette manière
  • Quand la programmation s’affranchit des exigences de professionnalisme et de scalabilité, elle devient une autre activité
    • De la même manière que cuisiner chez soi diffère du fait de cuisiner dans une cuisine commerciale, créer une app pour sa famille procure une autre forme de récompense
    • BoopSnoop ne change pas tant que la famille ne souhaite pas qu’elle change
    • Pas de redesign soudain, pas d’invasion publicitaire, pas de pivot pour courir après une base d’utilisateurs incompréhensible
    • Même si elle disparaît un jour, ce sera une décision de la famille

Une app toujours utilisée des années plus tard

  • Selon la mise à jour de février 2022, la famille utilisait toujours BoopSnoop tous les jours deux ans plus tard, et une fonctionnalité avait été ajoutée à la demande de la mère
  • En février 2023, elle était encore utilisée quotidiennement
  • En février 2024, elle était toujours en service, avec un build TestFlight 26
  • En février 2025, absolument rien n’avait été modifié dans l’app, et le build TestFlight était le 30

1 commentaires

 
GN⁺ 2024-01-06
Réactions sur Hacker News
  • C’est presque de la poésie. Je crée des projets perso depuis dix ans, et j’ai fini par remplacer toutes les applis que j’utilisais avant au quotidien, comme l’e-mail ou le calendrier
    Chaque fois que quelqu’un me voit les utiliser, il me demande « wow, c’est génial, on le télécharge où ? », mais la réponse est toujours la même : nulle part
    Il y a quelque chose de beau dans le fait de concevoir quelque chose uniquement pour soi, et je suis certain à 100 % que ce projet à lui seul a préservé mon bien-être mental
    C’est une source d’espoir et de bonheur face à l’avenir qu’aucune entreprise ni aucun salaire ne peut offrir, ainsi que ma carte joker personnelle face au monde

    • Moi aussi, dans le même esprit, je suis en train de créer une énième appli de notes uniquement pour mon usage
      On sous-estime à quel point le fait de fabriquer soi-même son outil signifie qu’on en devient, dès le premier jour, le meilleur expert mondial. Combien de logiciels pouvez-vous vraiment dire connaître à 100 %, dans toutes leurs fonctions, leurs raccourcis et leur fonctionnement interne ?
      Pour des outils de travail ou de productivité, cette « maîtrise totale » peut rendre incroyablement efficace, et à force de les utiliser chaque jour en y réinjectant de petites corrections et optimisations, l’outil grandit avec soi
      Mon appli de notes fait désormais office de base de connaissances personnelle, de gestion de projet, de liste de tâches, de planning quotidien et même de journal intime, tout en restant légère et rapide parce qu’elle ne contient que les fonctions dont j’ai besoin
      Au final, je pense qu’on devrait tous expérimenter davantage la création de ses propres outils
    • J’aimerais que davantage de gens publient ce genre de choses en open source, mais en désactivant les pull requests et les issues
      Cela permet de rendre explicite l’idée que les autres peuvent les utiliser, apprendre d’elles et s’en inspirer, mais que les retours et contributions ne sont pas souhaités
    • Je me demande si tu pourrais expliquer comment tout cela fonctionne, ou laisser une vidéo qui montre l’usage
      Cela dit, ça irait peut-être un peu à l’encontre de la dernière phrase sur la « carte joker personnelle »
      J’imagine que tu as intégré les applis entre elles, par exemple pour créer des événements à partir de SMS ou transférer des e-mails vers des contacts Signal
      Moi aussi, j’automatise rapidement des tâches répétitives avec des scripts, mais je ne les ai pas tous réunis dans un seul système. Les garder séparés réduit la charge de maintenance, donc je ne sais pas si j’irai jusque-là
    • J’écris surtout des programmes pour moi-même, mais en général je les publie aussi pour que d’autres puissent les utiliser, les modifier, en reprendre des morceaux de code, les critiquer ou simplement les sauvegarder
      Si quelqu’un écrit un billet agaçant à leur sujet, il suffit de l’ignorer, et ça ne change rien à ma manière de les utiliser moi-même
      Si on ne veut ni critiques, ni patches, ni rapports de bug, on peut aussi publier uniquement les fichiers sans espace de discussion, d’issues ou de pull requests sur GitHub ou ailleurs
    • Moi aussi, avec bien moins d’efforts, j’ai configuré neomutt pour obtenir l’UX de client mail la plus belle et la plus rapide, et je m’en sers aussi bien pour le travail que pour le perso
      Les gens étaient impressionnés en le voyant, et quelques-uns m’ont demandé ma configuration, mais je ne crois pas que quiconque s’y soit vraiment habitué
  • Très bon texte. Ça m’a rappelé une appli macOS que j’avais créée pour ma femme il y a quelques années
    Elle suivait les horaires d’ouverture des boutiques qu’elle aime, et quand on cliquait sur l’icône dans la barre de menus, elle affichait le temps restant avant la fermeture de chacune aujourd’hui
    Elle indiquait aussi si c’était un créneau chargé, ce qui correspondait bien à sa préférence pour y aller quand il y a moins de monde
    C’était une simple appli Qt qui stockait ses données dans des fichiers texte, et quand je lui ai demandé comment l’appeler, elle a répondu « Gladiolus, comme une fleur », donc c’est devenu son nom
    En tant que programmeur, je n’ai jamais eu de cliente plus reconnaissante que l’unique utilisatrice de Gladiolus

    • Et si les horaires d’ouverture changent, tu fais comment ?
  • Le passage sur le fait de lutter avec la signature de code et le provisioning d’identités de Xcode, puis d’allumer de l’encens et de jeter des pierres jusqu’à ce que les dieux de Xcode accordent leur bénédiction, m’a vraiment parlé
    C’est un énorme point de friction dans le développement logiciel moderne quand on veut simplement résoudre soi-même un problème qui nous gêne
    Ce n’est plus une démarche d’ingénierie consistant à comprendre les principes de l’informatique et à assembler rationnellement des composants pour créer quelque chose de neuf, mais plutôt à réciter sans fin des formules trouvées sur Google en se cognant la tête jusqu’à ce que, soudain, ça marche

    • Ce que j’attends avant tout d’une plateforme, c’est de ne pas avoir besoin de la permission d’autrui pour développer et installer le programme que je veux
      Avec ce critère, Apple et Microsoft sont en pratique exclus
    • On se retrouve à répéter des incantations trouvées sur Google en espérant ne pas tout casser encore plus
      Le fait qu’Apple ait ajouté dans Xcode une gestion des profils, des clés de signature, etc. via un bouton « oui, faites simple » est une amélioration, mais comme les réglages s’oublient ou se cassent aléatoirement, il faut ensuite repartir à la chasse au problème
    • L’expérience développeur d’Apple autour des signatures, certificats et profils est étonnamment atroce
    • Dans ce genre de situation, la combinaison serveur web sur Raspberry Pi + Cloudflare Tunnel brille vraiment
      On n’a besoin de la permission de personne pour faire tourner ce service. J’exécute une appli de tâches personnalisée sur un Pi sans exposer mon routeur, et la sensation de liberté est énorme
  • Quand ce texte a été publié pour la première fois sur HN, il m’a profondément marqué, et il m’a aidé à mettre des mots sur ce que je faisais déjà inconsciemment
    Comme beaucoup de monde, j’ai commencé un homelab il y a quelques années, et c’est peu à peu devenu un hobby consistant à créer et héberger moi-même des applis pour ma famille et un cercle proche de 5 à 15 amis
    J’ai beaucoup créé de petites applis pour organiser des soirées cinéma ou intégrer des chats de groupe, et grâce à ça tout le monde se parle et se voit bien plus souvent
    Des groupes d’amis éloignés qui ne se connaissaient même pas se rencontrent maintenant directement sans moi, pour aller à des baby showers ou à des mariages
    Si vous avez un groupe d’amis comme ça, ça vaut le coup d’essayer de fabriquer quelque chose pour eux

    • J’aime créer de petits outils, mais plutôt pour les autres que pour moi-même
      Ma copine et sa sœur tenaient en permanence un registre de comptes entre elles, et elles avaient toujours du mal à savoir qui devait quoi à qui et à quel moment
      J’ai donc créé une « appli » sous forme de feuille de calcul intelligente partagée dans Google Docs, où elles saisissaient les informations chaque mois et qui calculait automatiquement qui devait payer combien
      Plus d’un an plus tard, j’avais complètement oublié ce truc, puis je leur ai demandé si elles l’utilisaient encore, et elles m’ont répondu : « tout le temps, c’est vraiment une bouée de sauvetage »
      En pratique, ce n’était qu’un usage banal d’un tableur, mais cela montre que même des personnes compétentes et bien rémunérées peinaient avec un simple suivi de comptes
      Elles ont particulièrement aimé le fait que chaque nouvel onglet mensuel affiche une photo de leur chien, qu’elles élèvent ensemble. Cet outil banal, bricolé en 15 minutes, est aimé depuis des années
      Il faut créer de petits outils pour des groupes restreints de personnes
    • Ironiquement, cette manière de faire peut aussi être une excellente voie vers un vrai produit, à condition d’accepter qu’il grandisse
      Il y a trois ans, j’ai créé une appli simple pour que ma famille et mes amis partagent des recettes, puis à force d’ajouter les fonctions qu’on me demandait, le bouche-à-oreille a commencé à prendre environ deux ans plus tard
      En octobre, c’était devenu assez gros pour que je doive faire payer les nouveaux utilisateurs afin de couvrir les coûts serveur, et maintenant j’envisage un avenir où j’y travaillerais à plein temps
  • En même temps, j’ai l’impression que l’écart entre ce genre d’apps et les apps professionnelles se creuse.
    Il est devenu plus facile d’utiliser des apps, mais plus difficile de créer de “vraies” apps pour le grand public.
    Cela fait plus de trois ans que j’écris le livre https://opinionatedlaunch.com, et je dois sans cesse mettre à jour le chapitre sur le « mobile ». Pas à cause de nouveaux frameworks géniaux, mais parce qu’Apple et Google continuent d’ajouter des exigences.
    Des restrictions plus strictes sur l’accès au GPS peuvent être une bonne chose, mais si on ne suit pas, l’app finit un jour ou l’autre par être retirée de la plateforme. Dans ce sens, il n’y a jamais de “terminé”.
    Un petit programme écrit en Pascal en 1990 pourrait peut-être encore être distribué aujourd’hui, mais je ne vois pas l’équivalent dans le monde des apps mobiles. Je parle de distribution, pas d’exécution.

    • J’ai envisagé deux solutions : distribuer via TestFlight sans faire de vraie sortie, ou créer une app HTML qui fonctionne bien sur mobile et permet le cache hors ligne.
      Je penche de plus en plus pour HTML.
    • J’ai vécu ça moi aussi. Il y a longtemps, j’ai créé une app Android pour mes propres besoins, et elle était terminée au bout d’un mois ou deux.
      Il n’y avait rien à changer et elle faisait exactement ce que je voulais, mais à un moment Google a décidé qu’elle devait être retirée du store parce qu’elle ne respectait plus les standards récents.
      Je ne me plains pas, je peux toujours l’installer avec adb, mais les autres ne peuvent plus la télécharger. Je doute même de pouvoir encore en reconstruire le binaire aujourd’hui.
    • C’est ce genre de problème qui m’a amené à regarder du côté de Nim.
      Je n’ai pas encore réussi à le faire fonctionner, mais l’idée est que si on limite suffisamment la complexité de l’UI, on peut compiler le même code en Objective C pour les iTrucs, en C++ pour Android et le desktop, et en Javascript pour le web.
      Chaque app pourrait évaluer du nimscript arbitraire de manière indépendante de la plateforme.
      J’ai oublié depuis longtemps quelle app je voulais construire, mais si je m’en souviens un jour, j’espère que personne ne pourra m’empêcher de l’exécuter partout.
    • Je suis totalement d’accord sur le fait qu’Android et Apple sont des écosystèmes fermés régis par des règles qui changent en permanence.
      Cela dit, la plupart des logiciels aussi ont du mal à être vraiment “terminés”, non ?
      À moins d’appartenir à une catégorie complètement séparée de la culture populaire, il est difficile de parler de complétude fonctionnelle. GNU units ou grep sont peut-être “terminés”, mais la plupart des apps doivent évoluer avec le monde qui les entoure.
    • Ça dépend de qui sont les utilisateurs visés.
      Dans mon domaine, tous les outils de pointe s’utilisent via des scripts ou une ligne de commande interactive.
      Si on développe pour ce type d’interface, c’est bien plus rapide et plus simple, avec des bibliothèques modernes, que de créer une GUI, tout en gardant un public conséquent. Rien que les utilisateurs de conda sont environ 40 millions.
  • Cette publication m’a fait changer d’avis sur le sideloading sur iPhone.
    Avant, j’étais plutôt du côté du “il faut verrouiller pour éviter que mamie se fasse pirater”, mais maintenant j’y vois surtout un obstacle qui empêche les gens de créer ce genre d’apps faites maison.
    Cela propage aussi l’idée que les ordinateurs sont de la magie et que seuls des magiciens devraient programmer. Aucun développeur logiciel que j’ai rencontré ne le ressentait ainsi, et moi non plus.

    • Le mode mamie devrait rester le réglage par défaut, mais j’aimerais qu’on puisse activer le sideloading via un rituel d’initiation obscur qu’il ne faut faire qu’une seule fois.
      Le processus devrait être rempli d’avertissements du genre « attention, dragons à partir d’ici ». En gros, rendre l’appareil plus proche d’un Mac ou d’un Chromebook classique.
      Les téléphones Pixel permettent encore le root, non ?
    • La seule vraie raison du verrouillage, c’est la commission de 30 % de l’App Store.
      Mamie a bien plus de chances de perdre ses économies dans une arnaque traditionnelle d’ingénierie sociale au téléphone fixe qu’à cause de son smartphone.
      Si Apple se souciait vraiment de sécurité et de spam au-delà de l’argent gagné avec l’App Store ou les réparations, ils se seraient au moins attaqués au spam sur iMessage.
    • L’« external beta » de TestFlight me semble être une voie vraiment astucieuse.
      S’il avait existé il y a quelques années un moyen d’être traité comme une entreprise pour distribuer à mes amis et à ma famille, je l’aurais utilisé ; TestFlight est aujourd’hui si simple et permet une telle échelle qu’il n’y a pratiquement plus de barrière.
      Il reste la barrière du coût d’achat d’un Mac, mais si on tient déjà compte de cette taxe implicite qui oblige à avoir un Mac, ce n’est pas si élevé.
      Il est vrai que les ordinateurs peuvent sembler magiques, mais la distribution n’en est pas la cause. Je trouve plutôt dommage que les gens n’aient plus envie de faire davantage de choses avec leur ordinateur.
      À une époque, mes parents utilisaient sur leur 386 des choses comme des applis de base de données très rudimentaires ; puis, à un moment, les machines sont devenues plus grosses et plus effrayantes, et les gens moins curieux.
      C’est peut-être une question d’âge, mais c’est peut-être aussi parce qu’on a fabriqué des machines moins accueillantes pour l’acceptation de nouveau code.
    • Au contraire, je pense que pour éviter que mamie se fasse arnaquer, il faudrait autoriser le sideloading.
      Ce n’est qu’une question de savoir qui mène l’arnaque. Les criminels peuvent faire un gros coup d’un seul coup, mais les fabricants de téléphones opèrent sur un front bien plus large et à un coût bien plus élevé.
  • L’explication du billet, l’idée d’app et la manière de l’exécuter sont rafraîchissantes.
    L’idée de construire pour un marché adressable total (TAM) à un seul chiffre contraste agréablement avec la plupart des autres approches.
    Ces apps sont un cran au-dessus du simple projet d’apprentissage, et apportent une utilité énorme à une seule personne, ou à quelques-unes. En plus, comme ces quelques personnes sont souvent les plus importantes dans votre vie, c’est bien plus gratifiant.
    L’analogie avec le fait de cuisiner à la maison pour sa famille est parfaite.

    • Le développement centré sur le TAM va à l’encontre de l’esprit de l’ère des mini-ordinateurs.
      À l’époque, il allait de soi que les gens créent d’abord des applications pour eux-mêmes.
  • Excellente idée. Je pense beaucoup ces derniers temps au « petit web », parce que le web à l’échelle de la planète me fatigue de plus en plus.
    J’habite dans une petite ville au Canada, donc seule ma ville m’intéresse, et j’aimerais qu’il existe quelque chose à l’échelle de la ville, parfaitement adapté à notre ville.
    Comme l’échelle est réduite, ça peut tourner sur du matériel rangé dans un placard à la maison, et si ça tombe en panne, il n’y a pas lieu de s’énerver contre une multinationale en arrière-plan. C’est juste moi, et ici la plupart des gens se connaissent ou ont au moins entendu parler les uns des autres.
    Même si ça s’arrête temporairement à cause d’une panne de courant, ce sera malgré tout local. Surtout pendant les tempêtes de neige, où les coupures sont fréquentes, et où les utilisateurs risquent fort de subir les mêmes pannes.
    C’est sans doute idéaliste et il y a peu de chances que je le fasse vraiment, mais je me dis aussi qu’au final la plupart des gens continueront simplement à utiliser des choses comme les groupes Facebook.

    • Je comprends profondément cette fatigue du web à l’échelle mondiale, mais on dirait que tu es tombé dans le piège du « j’ai envie de construire quelque chose. Qu’est-ce que je pourrais construire ? »
      En gros, tu n’as pas de produit, seulement un marché, donc cela pourrait n’avoir aucun sens pour qui que ce soit d’autre que toi.
      Bien sûr, répondre à son propre besoin ou construire juste pour le plaisir de construire est parfaitement légitime, et c’est aussi une forme de logiciel fait maison.
    • J’essaie de faire passer autant de gens que possible sur Meshtastic.
      J’aime le fait que le matériel coûte 25 dollars, qu’il n’y ait pas de serveur central, qu’aucune licence radioamateur ne soit nécessaire, et que le contrôle se fasse depuis le téléphone.
      Un jour, j’aimerais faire un projet vraiment génial qui aille au-delà des fonctionnalités de base, mais je ne sais pas encore quoi.
  • La phrase « j’ai brûlé de l’encens et lancé des pierres, et les dieux de Xcode ont autorisé le passage » m’a fait rire à voix haute.
    Moi aussi, j’ai mené de nombreux combats contre ces dieux, et ce sont des monstres.

    • Robin Sloan, l’auteur de l’article, est un écrivain qui a publié plusieurs romans, beaucoup de textes courts, et une newsletter quasi mensuelle excellente.
      Si cette phrase t’a plu, je recommande vivement de lire son premier roman, Mr Penumbra's 24 Hour Bookstore.
    • C’est un bon texte, mais ce passage me rend triste et en colère.
      Comment en est-on arrivé à un point où une telle situation est acceptée ? MAGA (Microsoft Apple Google Amazon) est désormais en train d’étouffer le mode de vie du partage logiciel.
    • Lors de plusieurs entretiens, j’ai dit que j’en savais beaucoup sur la signature des produits Apple, mais c’est un savoir que j’ai entièrement acquis contre mon gré.
  • Nous avons une petite app pour un usage interne dans l’entreprise. C’est juste une app Rails autonome, sans contact avec les systèmes métier internes.
    Malgré tout, chaque fois qu’on a besoin d’un endroit où mettre un petit bout de code, on le met là. Il y a des outils d’intégration un peu aléatoires comme des graphiques de croissance, un petit moteur de recherche pour des données internes, des scripts de rappel pour des tâches répétitives, ou encore un script RSS→Email pour le blog.
    Tout le monde devrait avoir une app « fourre-tout » séparée des données clients.
    Quand la barrière pour créer quelque chose d’amusant est basse, l’esprit est plus libre, et tout le code n’a pas besoin d’être un travail métier à haut risque.

    • J’apprends RoR, donc je me demande comment tu as déployé ça. C’est une web app ?