Pourquoi mes outils sont conçus pour fonctionner hors ligne
Au fil des années à fabriquer de petits outils, j’ai adopté une règle simple : la tâche principale doit fonctionner sans connexion internet.
Une connexion internet n’est pas intrinsèquement un problème. Mais une fois qu’elle fait partie du flux de travail principal, elle introduit discrètement les comptes, serveurs, conflits de synchronisation, politiques de confidentialité, et la possibilité qu’un outil ne s’ouvre pas un matin.
Le hors ligne est une contrainte, pas une fonctionnalité
Des fonctionnalités peuvent être ajoutées. Une contrainte, c’est quelque chose que nous gardons.
Si le support hors ligne n’est qu’un élément de plus dans une liste de fonctionnalités, il peut finalement être échangé contre la synchronisation cloud, un dictionnaire en ligne ou un système de compte. Chaque décision peut sembler raisonnable, jusqu’à ce que tout le flux de travail dépende du serveur de quelqu’un d’autre.
La traiter comme une contrainte change la décision : de nouvelles fonctionnalités doivent s’y intégrer, sinon nous ne les construisons pas.
Cela simplifie certaines parties du design :
- Sans comptes, il n’y a pas de connexion ratée à gérer.
- Sans backend, il n’y a aucune annonce concernant la panne de notre base de données.
- Avec les données locales, l’exportation peut signifier copier des fichiers au lieu de demander une exportation.
Garder les fichiers locaux est un choix délibéré
Une promesse de ne pas examiner vos fichiers est difficile à vérifier. Une approche plus forte consiste à faire du traitement local un fait architectural : le flux de travail principal de l’outil n’inclut pas leur téléchargement.
Cela réduit également les services que nous devons maintenir et les données que nous devons protéger.
Un achat ponctuel rend la relation claire
Les abonnements peuvent avoir du sens pour des choses livrées en continu : une bibliothèque de contenu, un stockage cloud ou une collaboration en direct. Un utilitaire local de duplication de fichiers remplit une tâche différente.
Il fonctionne sur votre machine. Il ne consomme pas notre capacité serveur, et il ne devrait pas cesser de fonctionner simplement parce que le développement s’arrête. Une licence unique précise ce que vous achetez : une version d’un outil que vous pouvez continuer à utiliser.
Ce que ces outils visent à être
Les outils ciblés n’ont pas besoin de tableau de bord, de points ou de compteurs d’épargne impressionnants. Ils devraient aider pour une tâche, puis s’écarter de votre chemin.
Si c’est ce que vous cherchez, parcourez la bibliothèque d’outils.