[{"data":1,"prerenderedAt":440},["ShallowReactive",2],{"navigation":3,"\u002Fblog\u002F503-living-inside-your-tools-what-emacs-teaches-us":42,"\u002Fblog\u002F503-living-inside-your-tools-what-emacs-teaches-us-surround":435},[4],{"title":5,"path":6,"stem":7,"children":8,"page":41},"Blog","\u002Fblog","blog",[9,13,17,21,25,29,33,37],{"title":10,"path":11,"stem":12},"Corporate Memories from the Early 2000s","\u002Fblog\u002F001-corporate-memories-from-2007","blog\u002F001-corporate-memories-from-2007",{"title":14,"path":15,"stem":16},"TextRoots: A New Root System for the Digital Individual","\u002Fblog\u002F501-a-new-root-system-for-the-digital-individual","blog\u002F501-a-new-root-system-for-the-digital-individual",{"title":18,"path":19,"stem":20},"TextRoots: Beyond the Editor: Anatomy of a Content OS","\u002Fblog\u002F502-beyond-the-editor","blog\u002F502-beyond-the-editor",{"title":22,"path":23,"stem":24},"TextRoots: Living Inside Your Tools: What Emacs Teaches Us About Software","\u002Fblog\u002F503-living-inside-your-tools-what-emacs-teaches-us","blog\u002F503-living-inside-your-tools-what-emacs-teaches-us",{"title":26,"path":27,"stem":28},"TextRoots: Management Committee Status Update for February 2026","\u002Fblog\u002F504-mc-status-update-feb-2026","blog\u002F504-mc-status-update-feb-2026",{"title":30,"path":31,"stem":32},"TextRoots: Management Committee Status Update for March 2026","\u002Fblog\u002F505-mc-status-update-mar-2026","blog\u002F505-mc-status-update-mar-2026",{"title":34,"path":35,"stem":36},"TextRoots: The Long Road to 'Just Text'","\u002Fblog\u002F506-the-long-road-to-just-text","blog\u002F506-the-long-road-to-just-text",{"title":38,"path":39,"stem":40},"TextRoots: What is TextRoots?","\u002Fblog\u002F507-the-elevator-pitch","blog\u002F507-the-elevator-pitch",false,{"id":43,"title":22,"author":44,"body":48,"category":426,"date":427,"description":428,"extension":429,"image":430,"meta":431,"minRead":414,"navigation":432,"path":23,"seo":433,"stem":24,"__hash__":434},"blog\u002Fblog\u002F503-living-inside-your-tools-what-emacs-teaches-us.md",{"name":45,"avatar":46},"Simon Challinor",{"src":47,"alt":45},"\u002Fprofile\u002Fsimon-hk01-1000x1000.jpg",{"type":49,"value":50,"toc":412},"minimark",[51,56,60,68,71,78,81,84,88,91,94,97,125,128,134,137,139,143,146,149,163,166,169,172,177,183,189,191,195,198,220,223,229,231,235,238,241,252,255,258,261,274,276,280,283,286,300,303,317,320,322,326,329,332,346,349,352,359,361,365,368,371,374,377,382,384,388,391,402,405],[52,53,55],"h3",{"id":54},"a-different-kind-of-software","A Different Kind of Software",[57,58,59],"p",{},"There are tools you use…",[57,61,62,63,67],{},"…and then there are tools you ",[64,65,66],"strong",{},"live inside",".",[57,69,70],{},"For decades, Emacs has been one of the clearest examples of the latter. Not just an editor, but an environment — one that users shape, extend, and inhabit over years.",[57,72,73,74,77],{},"It is not the most modern tool.",[75,76],"br",{},"\nIt is not the easiest to learn.",[57,79,80],{},"And yet, it endures.",[82,83],"hr",{},[52,85,87],{"id":86},"why-people-love-emacs","Why People Love Emacs",[57,89,90],{},"To understand Emacs, you have to look beyond features.",[57,92,93],{},"People don’t love Emacs because it edits text well. Many tools do that.",[57,95,96],{},"They love it because:",[98,99,100,107,112,118],"ul",{},[101,102,103,104],"li",{},"It is ",[64,105,106],{},"infinitely extensible",[101,108,103,109],{},[64,110,111],{},"transparent and hackable",[101,113,114,115],{},"It becomes ",[64,116,117],{},"personal over time",[101,119,120,121],{},"It allows users to build workflows that ",[122,123,124],"em",{},"don’t exist yet",[57,126,127],{},"At its core, Emacs is built around a simple but powerful idea:",[129,130,131],"blockquote",{},[57,132,133],{},"The user should be able to reshape the tool while using it.",[57,135,136],{},"Through Emacs Lisp, almost every part of the system can be inspected, modified, or replaced. The boundary between “user” and “developer” becomes blurred.",[82,138],{},[52,140,142],{"id":141},"org-mode-when-text-becomes-a-system","Org Mode: When Text Becomes a System",[57,144,145],{},"Org mode takes this even further.",[57,147,148],{},"A plain text file becomes:",[98,150,151,154,157,160],{},[101,152,153],{},"a task manager",[101,155,156],{},"a calendar",[101,158,159],{},"a knowledge base",[101,161,162],{},"a programming environment",[57,164,165],{},"All within the same document.",[57,167,168],{},"But the real breakthrough isn’t the features.",[57,170,171],{},"It’s this:",[129,173,174],{},[57,175,176],{},"The structure and behaviour of the system are embedded directly in the text.",[57,178,179,180,182],{},"A heading isn’t just a heading.",[75,181],{},"\nA checkbox isn’t just a checkbox.",[57,184,185,186,67],{},"They are ",[64,187,188],{},"interfaces into a larger system",[82,190],{},[52,192,194],{"id":193},"the-philosophy-behind-it","The Philosophy Behind It",[57,196,197],{},"Emacs follows a philosophy that feels increasingly rare in modern software:",[98,199,200,205,210,215],{},[101,201,202],{},[64,203,204],{},"Longevity over trendiness",[101,206,207],{},[64,208,209],{},"User control over convenience",[101,211,212],{},[64,213,214],{},"Transparency over abstraction",[101,216,217],{},[64,218,219],{},"Text as the universal interface",[57,221,222],{},"This is why Emacs users stay for years — even decades.",[57,224,225,226,67],{},"Not because it’s perfect, but because it becomes ",[122,227,228],{},"theirs",[82,230],{},[52,232,234],{"id":233},"the-trade-off","The Trade-Off",[57,236,237],{},"Of course, this power comes at a cost.",[57,239,240],{},"Emacs is known for:",[98,242,243,246,249],{},[101,244,245],{},"a steep learning curve",[101,247,248],{},"complex configuration",[101,250,251],{},"an interface that can feel dated",[57,253,254],{},"For many people, it is simply too much.",[57,256,257],{},"And that’s important.",[57,259,260],{},"Because it highlights a tension that still exists today:",[129,262,263],{},[57,264,265,266,269,270,273],{},"How do you build a system that is both ",[64,267,268],{},"powerful"," and ",[64,271,272],{},"approachable","?",[82,275],{},[52,277,279],{"id":278},"a-parallel-path","A Parallel Path",[57,281,282],{},"TextRoots did not start as an Emacs-inspired project.",[57,284,285],{},"But over time, similar ideas began to emerge:",[98,287,288,291,294,297],{},[101,289,290],{},"Content as structured, living objects",[101,292,293],{},"Multiple views over the same underlying data",[101,295,296],{},"A system that can be extended from within",[101,298,299],{},"Logic that can be attached directly to content",[57,301,302],{},"What Emacs achieves through Lisp, TextRoots approaches through:",[98,304,305,308,311,314],{},[101,306,307],{},"pipelines",[101,309,310],{},"registries",[101,312,313],{},"content objects",[101,315,316],{},"and a modular runtime",[57,318,319],{},"Different tools. Same direction.",[82,321],{},[52,323,325],{"id":324},"not-replacing-translating","Not Replacing — Translating",[57,327,328],{},"TextRoots is not trying to replace Emacs.",[57,330,331],{},"Instead, it is exploring a similar philosophy in a different context:",[98,333,334,337,340,343],{},[101,335,336],{},"Local-first, but web-native",[101,338,339],{},"Programmable, but structured",[101,341,342],{},"Extensible, but modular",[101,344,345],{},"Powerful, but incrementally discoverable",[57,347,348],{},"If Emacs is a “Lisp Machine for text”…",[57,350,351],{},"Then TextRoots is an attempt at a:",[129,353,354],{},[57,355,356],{},[64,357,358],{},"Content Operating System for the modern web",[82,360],{},[52,362,364],{"id":363},"looking-forward","Looking Forward",[57,366,367],{},"There is a reason Emacs has lasted.",[57,369,370],{},"It treats users not as consumers, but as participants.",[57,372,373],{},"It assumes that over time, people want more control, not less.",[57,375,376],{},"TextRoots is built on a similar belief:",[129,378,379],{},[57,380,381],{},"Your tools should adapt to you — not the other way around.",[82,383],{},[52,385,387],{"id":386},"what-comes-next","What Comes Next",[57,389,390],{},"So far, we’ve explored:",[98,392,393,396,399],{},[101,394,395],{},"Why data ownership matters",[101,397,398],{},"What a Content Operating System looks like",[101,400,401],{},"Where our inspiration comes from",[57,403,404],{},"Next, we turn to infrastructure.",[57,406,407,408,411],{},"We’ll explore how protocols like ",[64,409,410],{},"IPFS"," allow content to exist independently of any single machine, server, or provider — and why that changes everything.",{"title":413,"searchDepth":414,"depth":414,"links":415},"",2,[416,418,419,420,421,422,423,424,425],{"id":54,"depth":417,"text":55},3,{"id":86,"depth":417,"text":87},{"id":141,"depth":417,"text":142},{"id":193,"depth":417,"text":194},{"id":233,"depth":417,"text":234},{"id":278,"depth":417,"text":279},{"id":324,"depth":417,"text":325},{"id":363,"depth":417,"text":364},{"id":386,"depth":417,"text":387},"textroots","2026-04-20","Why Emacs has endured for decades, what makes its community unique, and how its philosophy is shaping the evolution of TextRoots.","md","\u002Fimages\u002Farticle-501-tr-pcos-01.png",{},true,{"title":22,"description":428},"fpTw0RgYv8pmGSzCzUP9rkYtuLdkb2ZeJ_ce5Zz6jhY",[436,438],{"title":18,"path":19,"stem":20,"description":437,"children":-1},"Why the Markdown editor is just the tip of the iceberg. A look inside the orchestration layer, the Buffer Stack, and the decoupling of interface from infrastructure.",{"title":26,"path":27,"stem":28,"description":439,"children":-1},"Project Vision: Transitioning from a Modular Editor to a Personal Content Operating System (pCOS)",1783786190548]