Hacker News

Deux ans d'Emacs Solo : 35 modules, aucun package externe et un refactor complet

Commentaires

11 lecture min.

Mewayz Team

Editorial Team

Hacker News

Deux ans d'Emacs Solo : 35 modules, aucun package externe et un refactor complet

Il y a deux ans, je me suis lancé dans une expérience radicale : réduire ma configuration Emacs à l'essentiel et la reconstruire, non pas avec les milliers de packages externes disponibles, mais avec mon propre code. L'objectif était de créer un environnement informatique véritablement personnel, exempt de gestion des dépendances, de mises à jour de rupture et de fonctionnalités que je n'ai jamais utilisées. Aujourd’hui, ce système comprend 35 modules distincts, fonctionne sur la base de zéro package externe et vient de subir une refactorisation interne complète. Ce voyage consistait moins à réinventer la roue qu’à créer un ensemble d’outils parfaitement adaptés.

La genèse d'un système autonome

La motivation initiale était la frustration. Ma configuration précédente était une tour fragile de packages communautaires, chacun nécessitant des mises à jour minutieuses et souvent en conflit les uns avec les autres. J'ai passé plus de temps à entretenir mon éditeur qu'à l'utiliser pour un travail en profondeur. J'ai réalisé qu'Emacs Lisp, le langage puissant au cœur d'Emacs, était plus que capable de répondre directement à mes besoins. Je n'avais pas besoin d'un package pour gérer ma liste de tâches ; Je pourrais écrire quelques fonctions. Je n'avais pas besoin d'un cadre complexe pour la navigation dans le projet ; Emacs a fourni les primitives pour construire exactement ce que je voulais. Ce changement de mentalité – du consommateur au constructeur – a été l’étape la plus critique. C'est une philosophie qui résonne profondément avec l'approche modulaire de systèmes comme Mewayz, où la plate-forme fournit les composants de base, vous permettant d'assembler votre système d'exploitation professionnel idéal sans être enfermé dans la vision d'un seul fournisseur.

Construire les 35 modules : une boîte à outils pour le flux

Le système qui a émergé est organisé en 35 fichiers modulaires, chacun responsable d'un domaine spécifique de fonctionnalités. Cette modularité est la clé de sa maintenabilité et de sa clarté. Au lieu d'un fichier de configuration unique et monolithique, j'ai une collection de composants ciblés et spécialement conçus.

Interface principale : modules pour la gestion des fenêtres, la gestion des thèmes et la configuration des modèles.

Améliorations de l'édition : fonctions personnalisées pour la manipulation du texte, le formatage des paragraphes et la navigation dans le code.

Gestion de projet : un cadre de projet léger qui s'intègre au contrôle de version et à la recherche de fichiers.

Gestion des connaissances : un système de notes, de journalisation et d'interconnexion d'idées, entièrement construit en mode Org.

Communication : intégrations pour les e-mails et les flux RSS, adaptées à mon flux de travail spécifique.

💡 LE SAVIEZ-VOUS ?

Mewayz remplace 8+ outils métier sur une seule plateforme

CRM · Facturation · RH · Projets · Réservations · eCommerce · PDV · Analytique. Forfait gratuit disponible à vie.

Commencez gratuitement →

Chaque module est conçu pour être le plus indépendant possible, communiquant via des interfaces bien définies. C'est l'essence d'un système modulaire : créer un tout cohérent à partir de pièces discrètes et échangeables. C’est une approche qui garantit la longévité, puisque n’importe quel module peut être réécrit ou remplacé sans déstabiliser l’ensemble de l’environnement.

L'écriture de vos propres outils est la dernière frontière de la personnalisation. Il transforme votre logiciel d'un appartement loué en une maison construite sur mesure, où chaque détail sert un but.

Le grand refactor : adopter de meilleurs modèles

Après deux ans d’utilisation active, la base de code avait accumulé une certaine dette technique. Les fonctions qui étaient « assez bonnes » au début semblaient désormais encombrantes. Le récent refactor ne visait pas à ajouter des fonctionnalités, mais à améliorer l'architecture sous-jacente. Je me suis concentré sur la standardisation des noms de fonctions, l'élimination des variables globales au profit de la liaison lexicale et la décomposition des grandes fonctions en unités plus petites et plus composables. Le résultat est une base de code non seulement plus efficace, mais également beaucoup plus lisible et plus facile à déboguer. Ce processus est une partie nécessaire de tout projet logiciel à long terme, qu'il s'agisse d'une configuration Emacs personnelle ou d'une plateforme commerciale à grande échelle. Il s’agit d’un engagement envers la qualité qui garantit que le système peut évoluer gracieusement au fil du temps.

Leçons pour tout constructeur de système

Ce voyage de deux ans a renforcé plusieurs principes clés. D'abord

Frequently Asked Questions

Two Years of Emacs Solo: 35 Modules, Zero External Packages, and a Full Refactor

Two years ago, I embarked on a radical experiment: strip my Emacs configuration back to its bare bones and rebuild it, not with the thousands of external packages available, but with my own code. The goal was to create a truly personal computing environment, free from dependency management, breaking updates, and the bloat of features I never used. Today, that system comprises 35 distinct modules, runs on a foundation of zero external packages, and has just undergone a complete internal refactor. This journey has been less about reinventing the wheel and more about crafting a set of perfectly fitted tools.

The Genesis of a Self-Reliant System

The initial motivation was frustration. My previous configuration was a fragile tower of community packages, each requiring careful updates and often conflicting with one another. I spent more time maintaining my editor than using it for deep work. I realized that Emacs Lisp, the powerful language at the heart of Emacs, was more than capable of handling my needs directly. I didn't need a package to manage my todo list; I could write a few functions. I didn't need a complex framework for project navigation; Emacs provided the primitives to build exactly what I wanted. This shift in mindset—from consumer to builder—was the most critical step. It's a philosophy that resonates deeply with the modular, build-what-you-need approach of systems like Mewayz, where the platform provides the core components, empowering you to assemble your ideal business OS without being locked into a single vendor's vision.

Building the 35 Modules: A Toolkit for Flow

The system that emerged is organized into 35 modular files, each responsible for a specific domain of functionality. This modularity is key to its maintainability and clarity. Instead of a single, monolithic configuration file, I have a collection of focused, purpose-built components.

The Great Refactor: Embracing Better Patterns

After two years of active use, the codebase had accumulated some technical debt. Functions that were "good enough" at the start now felt clunky. The recent refactor wasn't about adding features, but about improving the underlying architecture. I focused on standardizing function names, eliminating global variables in favor of lexical binding, and breaking down large functions into smaller, more composable units. The result is a codebase that is not only more efficient but also far more readable and easier to debug. This process is a necessary part of any long-term software project, whether it's a personal Emacs configuration or a large-scale business platform. It’s a commitment to quality that ensures the system can evolve gracefully over time.

Lessons for Any System Builder

This two-year journey has reinforced several key principles. First, understanding your tools at a fundamental level is immensely empowering. Second, modularity is not just a technical pattern but a philosophical one—it forces clarity of thought and purpose. And finally, the initial investment in building your own system pays compounding dividends in productivity and satisfaction. You are no longer adapting your workflow to a tool; the tool is an extension of your mind. This is the ultimate goal of any customizable system, from a text editor to a comprehensive business operating system like Mewayz. By providing a modular core, it allows businesses to achieve a similar level of fit and ownership, building an operational environment that truly works for them, not the other way around.

Streamline Your Business with Mewayz

Mewayz brings 208 business modules into one platform — CRM, invoicing, project management, and more. Join 138,000+ users who simplified their workflow.

Start Free Today →

Essayer Mewayz gratuitement

Plateforme tout-en-un pour le CRM, la facturation, les projets, les RH & plus encore. Aucune carte de crédit requise.

Commencez à gérer votre entreprise plus intelligemment dès aujourd'hui.

Rejoignez 30,000+ entreprises. Plan gratuit à vie · Aucune carte bancaire requise.

Vous avez trouvé cela utile ? Partagez-le.

Prêt à passer à la pratique ?

Rejoignez 30,000+ entreprises qui utilisent Mewayz. Plan gratuit à vie — aucune carte de crédit requise.

Commencer l'essai gratuit →

Prêt à passer à l'action ?

Commencez votre essai gratuit Mewayz aujourd'hui

Plateforme commerciale tout-en-un. Aucune carte nécessaire.

Commencez gratuitement →

Essai gratuit de 14 jours · Pas de carte de crédit · Annulation à tout moment