Un mois de développement sur KuroNote : Les grands défis
product Life Software

Un mois de développement sur KuroNote : Les grands défis

Retour sur le premier mois de développement de KuroNote et KuroNotes. Présentation des difficultés rencontrées et des défis techniques pour implémenter ses fonctionnalités clés.


Il y a tout juste un mois, j'ai décidé de développer une application de prise de notes simple et rapide, et j'ai expliqué les spécifications de base dans mon article précédent. Bien que la fonction de note rapide elle-même n'ait pas été très difficile, l'implémentation d'un modèle de confidentialité zéro confiance—où personne d'autre que le propriétaire, y compris le créateur de l'application, les pirates, ou même le serveur de stockage, ne peut lire les notes—s'est avérée bien plus ardue que prévu.

Gérer les erreurs des utilisateurs : Mon plus grand casse-tête#

Le plus difficile n'a pas été la fonction elle-même, mais la gestion des erreurs humaines et des problèmes opérationnels causés par ses caractéristiques uniques. Par exemple, une erreur comme "l'utilisateur désinstalle accidentellement l'application et les données sont perdues". Dans les applications normales, vous pouvez résoudre ce problème en stockant les données sur un serveur, mais pour rendre cette version autonome KuroNote gratuite et permanente, nous devons tout faire sur le smartphone sans stocker de données sur un serveur.

Cependant, même dans l'appareil, les données sont cryptées, et si vous désinstallez l'application, elles sont supprimées sans discussion. Bien qu'il s'agisse d'un comportement normal pour un smartphone, c'est un problème majeur pour une application qui gère des données importantes comme KuroNote. J'ai vraiment lutté pour savoir comment maintenir les données, mais comme il n'est pas possible d'afficher un écran de confirmation spécial lors de la désinstallation, il n'y avait presque aucun moyen de l'empêcher.

Solution : Enregistrer les données sur un stockage cloud personnel.

Oui, quoi qu'il arrive, si l'application est désinstallée, les données disparaissent, il n'y a donc pas d'autre choix que de les enregistrer ailleurs. Pour les utilisateurs qui ont du mal à s'abonner à KuroNotes, l'approche a été d'utiliser le stockage cloud qu'ils possèdent déjà. Cependant, si la clé de chiffrement est supprimée avec l'application, ils ne peuvent plus lire les notes enregistrées dans le cloud. Mais si le smartphone enregistre la clé de chiffrement avec le passkey, la récupération peut être possible en enregistrant un e-mail. De plus, si vous choisissez d'enregistrer les données sur le cloud sans chiffrement, elles peuvent être récupérées lors de la réinstallation, mais cela ne répond pas à l'objectif de KuroNote/KuroNotes où même le serveur ne peut voir le contenu. Il reste également le risque que les données du cloud soient lues en clair en cas de fuite. J'ai décidé de laisser ce choix à l'utilisateur.

Honnêtement, je ne voulais pas proposer cette option "sans chiffrement". Bien que nous vendions une protection des données sûre, le fournisseur de cloud peut tout voir, et je pense que peu de gens peuvent utiliser correctement les systèmes complexes de Google. Les utilisateurs rendant par erreur leurs paramètres Google publics semblent très probables... Cependant, je veux aussi réduire la perte de données. Quand vous achetez un carnet dans une papeterie et le perdez, vous ne vous plaignez pas à la papeterie, mais avec les applications, les gens se plaignent que les données ont disparu alors qu'ils ont désinstallé l'application eux-mêmes. Nous n'avons donc d'autre choix que de réduire la probabilité de perte autant que possible.

En cas de perte ou de panne du smartphone#

Le problème suivant est la perte du smartphone ou sa panne nécessitant un remplacement. Évidemment, restaurer des informations qui n'existent que sur un smartphone sans cet appareil est impossible. C'est le même problème que pour la désinstallation. C'est là que le stockage cloud mentionné ci-dessus peut être utilisé. Bien sûr, s'abonner à KuroNotes, qui enregistre les données sur un serveur, est plus simple et constitue la structure la plus sécurisée. La résilience de la récupération augmente considérablement. Cependant, beaucoup de gens ne veulent pas payer même 100 yens pour leur propre carnet, ils n'ont donc d'autre choix que d'enregistrer les données sur leur propre stockage cloud. Pour la perte et les changements de modèle, les données étant dans le smartphone, vous ne pouvez pas les transférer sans connexion à un cloud externe ou abonnement à KuroNotes. La version gratuite KuroNote sur smartphone a inévitablement ses limites.

Qu'arrive-t-il aux personnes sans abonnement cloud ?#

Dans ce cas, nous ne pouvons rien faire. C'est la même chose que de perdre un carnet physique contenant des notes importantes ; parce que c'est important, en prendre soin est la meilleure mesure de sécurité. Cependant, je pense que de nombreux utilisateurs de smartphones possèdent déjà des abonnements cloud pour les raisons ci-dessous. Pour l'instant, n'ayant d'autre choix que de proposer diverses connexions cloud, nous avons implémenté le support de nombreuses méthodes de connexion.

Stockage Cloud

Support KuroNote

Raison / Statut

Google Drive

Supporté

Pour tous ceux qui utilisent Gmail, il est automatiquement disponible. L'espace gratuit est large, et beaucoup d'utilisateurs ont des abonnements payants à bas prix.

Microsoft OneDrive

Supporté

S'ils utilisent fréquemment Excel ou Word, de nombreux utilisateurs ont des abonnements Office 365, et la capacité de stockage de base est relativement grande.

Dropbox

Supporté

Un pionnier du stockage cloud. Connu pour sa vitesse et sa capacité, beaucoup de personnes l'utilisent pour gérer les données en toute sécurité.

BOX Supporté A eu du succès à un moment mais a ralenti récemment. Le rapport coût/capacité est peu avantageux.
WebDAV Supporté Un standard ancien, mais c'est l'un des stockages web utilisés par de nombreux services. Certains l'utilisent sur leur propre serveur.
SMB (Samba) Supporté Pour environnement local uniquement. Connu sous le nom de partage Windows. Utilisable uniquement chez soi ou au bureau, mais c'est mieux que rien. Nombreuses vulnérabilités.
S3 Supporté Service de stockage fourni par Amazon AWS. AWS ayant été le standard de fait, il existe de nombreux services compatibles S3.
MEGA Supporté Toutes les données sont automatiquement chiffrées. D'une certaine façon, il utilise la même philosophie zéro lecture que KuroNote/s. Excellent rapport coût/performance.

Apple iCloud

Non Supporté

En raison de la compatibilité exclusive avec Apple, aucun outil de développement n'existe pour Windows ou Android. L'implémentation est impossible. Les utilisateurs de Mac utilisent souvent Gmail, ce n'est donc pas un souci.

J'utilise moi-même beaucoup de produits Apple (environ 10 appareils), j'aurais donc aimé supporter iCloud. Cependant, les prix des iPhone augmentent chaque année, et les gens pourraient se tourner vers Android. De plus, iCloud ne peut pas être utilisé sur Android ou Windows à l'heure actuelle. Par ailleurs, les smartphones et PC étant appelés à devenir des machines IA, le matériel lui-même se banalisera encore.

Concernant le stockage cloud, s'il n'est pas chiffré, le fournisseur de cloud (Google, Microsoft, Apple, etc.) peut librement consulter et copier le contenu. Naturellement, il existe un risque de piratage. Ou encore **les employés indélicats**—les fuites de données par des employés ont été fréquentes ces derniers temps, et on ne peut plus se sentir en sécurité sous prétexte qu'il s'agit d'une grande entreprise.

Politique de KuroNotes (Version payante avec serveur)#

Pour les utilisateurs qui n'ont pas leur propre stockage cloud, ou qui veulent séparer leurs notes de leur stockage cloud régulier, tout en profitant d'une sécurité totale sans perdre en confort, nous proposons un service cloud dédié pour environ 100 yens par mois. Il peut être configuré depuis l'application. Bien sûr, si les données sont chiffrées, nous ne pouvons pas voir le contenu, mais le grand intérêt de KuroNotes est de pouvoir l'utiliser depuis un navigateur PC. Taper de longs textes sur smartphone est impossible pour un **presque soixantenaire** comme moi. Même en m'entraînant, je sens **que je ne m'améliorerai pas**. Pour ceux qui veulent utiliser un PC, ils peuvent taper sur un grand écran ou un clavier confortable au bureau ou à la maison, et consulter sur smartphone en déplacement. Mais en raison des coûts de serveur et de bande passante, nous ne pouvons pas le proposer gratuitement. Nous avons donc minimisé les coûts à 100 yens au Japon (1,00 $ aux USA, 1,00 € en Europe). Je prévois de garder ce prix fixe à vie, car nous proposons une **fonctionnalité de planification de fin de vie**.

Honnêtement, les autres stockages cloud coûtent au moins 400 yens de nos jours, donc 100 yens is un prix très bas pour un service serveur. Nous voulons que les gens l'utilisent longtemps et profitent de la planification de fin de vie. Laissez-moi vous expliquer ce que c'est. C'est une fonctionnalité pour les proches. En cas de décès de l'utilisateur et d'annulation de l'abonnement téléphonique, après un certain temps, un e-mail final est envoyé aux personnes désignées, et la famille peut récupérer les notes marquées avec un code d'héritage familial. C'est un système pour transmettre les notes importantes à la famille.

Fonctionnalités de fin de vie

Aperçu

E-mail final

Lorsque le contrat prend fin et qu'une période s'est écoulée, l'application envoie un e-mail au destinataire pré-enregistré. Exemple : "Le code d'héritage familial est dans mon tiroir de bureau. Accédez à cet URL pour voir les données. Les codes de coffre et comptes y figurent."

Bien sûr, si vous désactivez l'option avant d'annuler le contrat, rien ne sera envoyé.

Code d'héritage familial

Les utilisateurs peuvent marquer les notes à laisser à leur famille. La famille peut récupérer ces notes avec l'e-mail final et le code d'héritage. Contrairement au code de récupération personnel, la famille ne peut sauvegarder les notes marquées que sous forme de fichiers texte en clair.

Pour plus de détails, veuillez consulter la page de présentation (LP) de KuroNote/KuroNotes.

Pourquoi voulais-je créer une telle application ?#

Surtout en raison de mes craintes concernant la perte de mémoire. Enregistrer des mots de passe, etc. De plus, Google a commencé à envoyer des messages indiquant que mes mots de passe avaient fuité. Quand vous créez des mots de passe complexes, vous ne pouvez pas les retenir, et on vous dit de ne pas les réutiliser, ce qui est trop difficile. Bien que les gestionnaires intégrés résolvent beaucoup de soucis, tout le monde a des **secrets personnels et des notes en dehors des mots de passe**, et j'ai commencé le développement en pensant qu'il serait formidable de proposer un système qui **disparaitrait définitivement à ma mort**. Quand on approche de la soixantaine, il faut se préparer pour la fin. Même moi, j'ai parfois des souvenirs flous de mes propres biens. C'est bien de trouver un livret d'épargne en rangeant, mais si vous oubliez de transférer des titres de propriété ou de gérer les impôts fonciers, vous finirez par oublier.

Les images peuvent être **automatiquement réduites** et attachées, donc lorsque taper est fastidieux, vous pouvez simplement coller une photo. La saisie vocale peut également être ajoutée. **Si vous avez un contrat KuroNotes, votre smartphone et PC se synchronisent** pour partager les notes, vous pouvez donc vérifier les informations sur votre smartphone ou réécrire sur votre PC les notes **temporairement saisies sous forme de photos** pendant que vous vous en souvenez. En bref, je voulais une application rapide pour m'aider au quotidien.

Et ce que j'ai pensé en développant cette application

Naturellement, commodité et sécurité sont dans une relation de compromis. Plus vous essayez d'augmenter la sécurité, plus l'utilisation devient compliquée. Cependant, dans KuroNote/KuroNotes, je pense que nous avons trouvé le meilleur point d'équilibre.

L'inquiétude est que s'il y a un bug dans un tel outil, le corriger plus tard pourrait nécessiter un travail énorme, et **alors que je voulais juste faire un carnet un peu pratique, c'est devenu une application nécessitant d'énormes efforts**. Auparavant, en travaillant dans le divertissement, j'ai connu des **plaintes d'utilisateurs déraisonnables** et des **clients qui se plaignaient pendant des heures**. Pour éviter cela, je suis convaincu qu'obliger les utilisateurs à confirmer soigneusement dans l'application, et pas seulement dans les conditions d'utilisation, est la bonne solution.

Pourtant, je serais heureux si cet outil rend la vie de chacun plus pratique. La sortie approche !



【Liens connexes】#

  1. Page de présentation du produit