[{"data":1,"prerenderedAt":1117},["ShallowReactive",2],{"navigation":3,"\u002Fblog\u002Fmarkdown-plus-ai-the-communication-protocol-that-changes-everything":204,"\u002Fblog\u002Fmarkdown-plus-ai-the-communication-protocol-that-changes-everything-surround":1112},[4,8,12,16,20,24,28,32,36,40,44,48,52,56,60,64,68,72,76,80,84,88,92,96,100,104,108,112,116,120,124,128,132,136,140,144,148,152,156,160,164,168,172,176,180,184,188,192,196,200],{"title":5,"path":6,"stem":7},"You do not have time to not have tests","\u002Fblog\u002Fyou-do-not-have-time-to-not-have-tests","2.blog\u002F20211217.you-do-not-have-time-to-not-have-tests",{"title":9,"path":10,"stem":11},"Migrate Vue 2 with Vuetify and Jest to Vite and Vitest","\u002Fblog\u002Fmigrate-vue-2-with-vuetify-and-jest-to-vite-and-vitest","2.blog\u002F20220109.migrate-vue-2-with-vuetify-and-jest-to-vite-and-vitest",{"title":13,"path":14,"stem":15},"I am a Dark Matter Developer","\u002Fblog\u002Fi-am-a-dark-matter-developer","2.blog\u002F20220626.i-am-a-dark-matter-developer",{"title":17,"path":18,"stem":19},"Why using Conventional commits is useful","\u002Fblog\u002Fusing-conventional-commits","2.blog\u002F20240623.using-conventional-commits",{"title":21,"path":22,"stem":23},"Why you should make a toolbox repository","\u002Fblog\u002Fwhy-you-should-make-a-toolbox-repository","2.blog\u002F20240630.Why-you-should-make-a-toolbox-repository",{"title":25,"path":26,"stem":27},"Apache Airflow Part 1 - Why and Goals for a near Serverless ELT","\u002Fblog\u002Fapache-airflow-part-1-why-and-goals","2.blog\u002F20240710.apache-airflow-part-1-why-and-goals",{"title":29,"path":30,"stem":31},"Oh My Zsh on your server","\u002Fblog\u002Foh-my-zsh-on-your-server","2.blog\u002F20240711.oh-my-zsh-on-your-server",{"title":33,"path":34,"stem":35},"Fire tablet and YouTube Kids","\u002Fblog\u002Ffire-tablet-and-youtube-kids","2.blog\u002F20240714.fire-tablet-and-youtube-kids",{"title":37,"path":38,"stem":39},"Using Ollama and Continue as a GitHub Copilot Alternative","\u002Fblog\u002Fusing-ollama-and-continue-as-github-copilot-alternative","2.blog\u002F20240723.using-ollama-and-continue-as-github-copilot-alternative",{"title":41,"path":42,"stem":43},"Debugging Local Packages Made Easy with pnpm","\u002Fblog\u002Fdebugging-local-packages-with-pnpm-link","2.blog\u002F20250422.debugging local-packages-with-pnpm-link",{"title":45,"path":46,"stem":47},"Two Weeks with Cloudflare AI and Tools","\u002Fblog\u002Ftwo-weeks-with-cloudflare-ai-and-tools","2.blog\u002F20250509.two-weeks-with-cloudflare-aI-and-tools",{"title":49,"path":50,"stem":51},"Adding Prompts to VS Code - How I Learned to Stop Worrying and Love AI Context","\u002Fblog\u002Fadding-prompts-to-vscode","2.blog\u002F20250528.adding-prompts-to-vscode",{"title":53,"path":54,"stem":55},"My Best Practices","\u002Fblog\u002Fmy-best-practicies","2.blog\u002F20250607.my-best-practicies",{"title":57,"path":58,"stem":59},"Creating my own CLI Tool - Towles Tool","\u002Fblog\u002Ftowles-tool","2.blog\u002F20250607.towles-tool",{"title":61,"path":62,"stem":63},"Software Development Best Practices & ITIL","\u002Fblog\u002Fsoftware-engineering-and-itil-best-practices","2.blog\u002F20250612.software-engineering-and-itil-best-practices",{"title":65,"path":66,"stem":67},"Voice to Text","\u002Fblog\u002Fvoice-to-text","2.blog\u002F20250622.voice-to-text",{"title":69,"path":70,"stem":71},"Setting Up ComfyUI - A Better Alternative to Fooocus","\u002Fblog\u002Fcomfy-ui-setup","2.blog\u002F20250628.comfy-ui-setup",{"title":73,"path":74,"stem":75},"Voice to System","\u002Fblog\u002Fvoice-to-system","2.blog\u002F20250705.voice-to-system",{"title":77,"path":78,"stem":79},"Tips for Claude Code","\u002Fblog\u002Ftips-for-claude-code","2.blog\u002F20250713.tips-for-claude-code",{"title":81,"path":82,"stem":83},"Review That AI Code: Why I Read Every Line Generated Code","\u002Fblog\u002Freview-that-ai-code","2.blog\u002F20250720.review-that-ai-code",{"title":85,"path":86,"stem":87},"My Context Engineering Journey: From Dev Scripts to AI Collaboration","\u002Fblog\u002F20250803-1.my-context-engineering-journey","2.blog\u002F20250803-1.my-context-engineering-journey",{"title":89,"path":90,"stem":91},"Context Engineering at Scale: Enterprise Lessons and the Future of Development","\u002Fblog\u002F20250803-2.context-engineering-at-scale","2.blog\u002F20250803-2.context-engineering-at-scale",{"title":93,"path":94,"stem":95},"Check That Your Tools and Linters Do Not Burn Tokens","\u002Fblog\u002Fcheck-that-your-tools-and-linters-do-not-burn-tokens","2.blog\u002F20250806.check-that-your-tools-and-linters-do-not-burn-tokens",{"title":97,"path":98,"stem":99},"Markdown + AI: The Communication Protocol That Changes Everything","\u002Fblog\u002Fmarkdown-plus-ai-the-communication-protocol-that-changes-everything","2.blog\u002F20250814.markdown-plus-ai-the-communication-protocol-that-changes-everything",{"title":101,"path":102,"stem":103},"Finally: Type-Safe AI in Production (And Why I'm Here For It)","\u002Fblog\u002Ffinally-type-safe-ai-in-production-and-why-im-here-for-it","2.blog\u002F20250819.finally-type-safe-ai-in-production-and-why-im-here-for-it",{"title":105,"path":106,"stem":107},"Dotfiles: Masterpiece or Late Stage Picasso?","\u002Fblog\u002Fdotfiles-masterpiece-or-late-stage-picasso","2.blog\u002F20250822.dotfiles-masterpiece-or-late-stage-picasso",{"title":109,"path":110,"stem":111},"Beyond API Wrappers: Building State-Driven MCP Servers for Long-Horizon Agent Orchestration","\u002Fblog\u002Fbeyond-api-wrappers-mcp-servers","2.blog\u002F20250907.beyond-api-wrappers-mcp-servers",{"title":113,"path":114,"stem":115},"Why Vertical Integration Wins: A Software Engineer's Case for Owning Your Stack","\u002Fblog\u002Fwhy-i-bought-tesla-model-3-vertical-integration","2.blog\u002F20250928.why-i-bought-tesla-model-3-vertical-integration",{"title":117,"path":118,"stem":119},"The Min-Maxer's Trifecta: Building Tools for the Game You Actually Play","\u002Fblog\u002Fmin-maxer-trifecta","2.blog\u002F20251004.min-maxer-trifecta",{"title":121,"path":122,"stem":123},"Read The Source: Learning by Cutting Out The Middleman and RTFM","\u002Fblog\u002Fread-the-source","2.blog\u002F20251010.read-the-source",{"title":125,"path":126,"stem":127},"The Exponential Shift: Why AI Progress Feels Different Now","\u002Fblog\u002Fthe-exponential-shift","2.blog\u002F20251015.the-exponential-shift",{"title":129,"path":130,"stem":131},"Plan Mode for Your Problems, Edit Mode for Claude's","\u002Fblog\u002Fplan-mode-problems-edit-mode-solutions","2.blog\u002F20251019.plan-mode-problems-edit-mode-solutions",{"title":133,"path":134,"stem":135},"AWS Aurora DSQL Looked Perfect Until I Needed the Connection String","\u002Fblog\u002Faws-aurora-dsql-postgres-serverless-authentication","2.blog\u002F20251028.aws-aurora-dsql-postgres-serverless-authentication",{"title":137,"path":138,"stem":139},"Switchback: Browser History for Your Thoughts","\u002Fblog\u002Fswitchback-second-order-reasoning","2.blog\u002F20251205.switchback-second-order-reasoning",{"title":141,"path":142,"stem":143},"AI Pairing: Notes to Self","\u002Fblog\u002Fai-pairing-notes-to-self","2.blog\u002F20251216.ai-pairing-notes-to-self",{"title":145,"path":146,"stem":147},"I've Been Sleeping on Zellij","\u002Fblog\u002Fsleeping-on-zellij","2.blog\u002F20251229.sleeping-on-zellij",{"title":149,"path":150,"stem":151},"Implementing a Ralph Wiggum Loop: The Secret is Session Markers","\u002Fblog\u002Fimplementing-ralph-wiggum-loop-for-autonomous-ai-coding","2.blog\u002F20260114.implementing-ralph-wiggum-loop-for-autonomous-ai-coding",{"title":153,"path":154,"stem":155},"Goodhart's Law Ate My Context Window","\u002Fblog\u002Fgoodharts-law-ate-my-context-window","2.blog\u002F20260119.goodharts-law-ate-my-context-window",{"title":157,"path":158,"stem":159},"Claude Code's Hidden Multi-Agent System Is Real","\u002Fblog\u002Fclaude-code-hidden-multi-agent-system","2.blog\u002F20260124.claude-code-hidden-multi-agent-system",{"title":161,"path":162,"stem":163},"Free Printable Math Sheets for Kids — Number Chart, Skip Counting, Multiplication, and More","\u002Fblog\u002Ffree-printable-number-chart-and-coin-sheets","2.blog\u002F20260214.free-printable-number-chart-and-coin-sheets",{"title":165,"path":166,"stem":167},"We Are Near the End of the Exponential","\u002Fblog\u002Fnear-the-end-of-the-exponential","2.blog\u002F20260214.near-the-end-of-the-exponential",{"title":169,"path":170,"stem":171},"Free Printable Language Arts Sheets for Kids — Sight Words, Parts of Speech, Homophones, and More","\u002Fblog\u002Ffree-printable-sight-words-and-grammar-sheets","2.blog\u002F20260215.free-printable-sight-words-and-grammar-sheets",{"title":173,"path":174,"stem":175},"Interactive Code Execution with Artifacts","\u002Fblog\u002Finteractive-code-execution-with-artifacts","2.blog\u002F20260215.interactive-code-execution-with-artifacts",{"title":177,"path":178,"stem":179},"Free Printable Telling Time Worksheet for Kids — Clock Reference & Practice Sheet","\u002Fblog\u002Ffree-printable-telling-time-worksheet","2.blog\u002F20260216.free-printable-telling-time-worksheet",{"title":181,"path":182,"stem":183},"Claude Code Skills: Teaching AI Your Playbook","\u002Fblog\u002Fclaude-code-skills-guide","2.blog\u002F20260221.claude-code-skills-guide",{"title":185,"path":186,"stem":187},"Building a Multi-Agent Loan Approval System with Human-in-the-Loop","\u002Fblog\u002Fmulti-agent-loan-approval-human-in-the-loop","2.blog\u002F20260225.multi-agent-loan-approval-human-in-the-loop",{"title":189,"path":190,"stem":191},"The Inception of AI Infrastructure: Bottlenecks All the Way Down","\u002Fblog\u002Fbiggest-bottleneck-scaling-ai-compute","2.blog\u002F20260313.biggest-bottleneck-scaling-ai-compute",{"title":193,"path":194,"stem":195},"What I Tell Teams About Claude Code","\u002Fblog\u002Fwhat-i-tell-teams-about-claude-code","2.blog\u002F20260314.what-i-tell-teams-about-claude-code",{"title":197,"path":198,"stem":199},"The Hardest Part of AI Isn't the AI","\u002Fblog\u002Fthe-hardest-part-of-ai-isnt-the-ai","2.blog\u002F20260327.the-hardest-part-of-ai-isnt-the-ai",{"title":201,"path":202,"stem":203},"Claude Code Hooks: The Capability I Left on the Table","\u002Fblog\u002Fclaude-code-hooks-capability-left-on-the-table","2.blog\u002F20260401.claude-code-hooks-capability-left-on-the-table",{"id":205,"title":97,"authors":206,"badge":212,"body":214,"date":1102,"description":1103,"extension":1104,"image":1105,"meta":1108,"navigation":666,"path":98,"seo":1109,"status":1110,"stem":99,"__hash__":1111},"posts\u002F2.blog\u002F20250814.markdown-plus-ai-the-communication-protocol-that-changes-everything.md",[207],{"name":208,"to":209,"avatar":210},"Chris Towles","https:\u002F\u002Ftwitter.com\u002FChris_Towles",{"src":211},"\u002Fimages\u002Fctowles-profile-512x512.png",{"label":213},"AI Tools",{"type":215,"value":216,"toc":1061},"minimark",[217,232,239,242,247,261,264,268,271,276,296,299,303,314,317,321,332,336,343,346,364,368,371,384,388,398,401,405,416,423,430,437,440,444,459,462,466,476,479,483,494,501,505,545,549,552,559,565,571,575,582,616,619,625,629,632,636,639,763,767,770,773,777,783,786,790,793,796,800,807,810,814,817,820,824,828,831,834,838,844,847,851,854,858,863,875,880,891,895,900,982,986,990,993,999,1003,1006,1010,1013,1020,1024,1027,1030,1033,1037,1043,1046,1049,1052,1057],[218,219,220],"blockquote",{},[221,222,223,224,231],"p",{},"Today at work ",[225,226,230],"a",{"href":227,"rel":228},"https:\u002F\u002Fwww.linkedin.com\u002Fin\u002Fary-sharma\u002F",[229],"nofollow","Ary Sharma"," and I had a discussion about why I'm pushing our team to use Markdown. This summer at GE Aerospace Ary's was part of a mission based team working to leverage AI to better use the data soloed into different systems like Confluence. Anyway, I mentioned all the tools I've used in the past but didn't have a concise explanation. We had a discussion on why I believe Markdown is a better format for Human and AI collaboration, but that even before AI it was already a better long-term knowledge management. This post is an attempt to better frame that conversation. Thanks, Ary!",[221,233,234,235],{},"I've spent over two decades taking notes, and I can tell you this with absolute certainty: ",[236,237,238],"strong",{},"2025 is the year human-AI collaboration becomes the defining factor for progress—and Markdown is the universal language that makes it work.",[221,240,241],{},"But this realization didn't come overnight. It's the culmination of years of struggling with note-taking systems, knowledge management tools, and finally discovering that the simplest format might just be the most powerful.",[243,244,246],"h2",{"id":245},"tldr","TLDR",[221,248,249,250,254,255,260],{},"If you just want to learn markdown go to ",[225,251,252],{"href":252,"rel":253},"https:\u002F\u002Fcommonmark.org\u002Fhelp\u002F",[229],". It has a great cheat sheet and amazing ",[225,256,259],{"href":257,"rel":258},"https:\u002F\u002Fcommonmark.org\u002Fhelp\u002Ftutorial\u002F",[229],"10 minute tutorial"," to walk you through the basics.",[221,262,263],{},"Continue reading if you want to learn how I got here.",[243,265,267],{"id":266},"my-note-taking-evolution-two-decades-of-trial-and-error","My Note-Taking Evolution: Two Decades of Trial and Error",[221,269,270],{},"Over the past 20+ years, I've experimented with every note-taking and knowledge management system imaginable. Here's my complete journey through the evolution of productivity tools:",[272,273,275],"h3",{"id":274},"_1-early-2000s-txt-files-everywhere","1. Early 2000s: TXT Files Everywhere",[221,277,278,279,283,284,287,288,291,292,295],{},"Back in the early days, I was that developer with ",[280,281,282],"code",{},".txt"," files scattered across every folder. Random thoughts, code snippets, commands I'd inevitably forget—all stored in simple text files with names like ",[280,285,286],{},"notes.txt",", ",[280,289,290],{},"stuff.txt",", and the ever-popular ",[280,293,294],{},"todo.txt",".",[221,297,298],{},"The beauty was in the simplicity. No formatting to worry about, no proprietary formats, no subscription fees. Just me, a text editor, and whatever thoughts needed capturing.",[272,300,302],{"id":301},"_2-mid-2000s-the-sharepoint-enterprise-experiment","2. Mid-2000s: The SharePoint Enterprise Experiment",[221,304,305,306,313],{},"At work, we tried ",[236,307,308],{},[225,309,312],{"href":310,"rel":311},"https:\u002F\u002Fwww.microsoft.com\u002Fen-us\u002Fmicrosoft-365\u002Fsharepoint\u002Fcollaboration",[229],"SharePoint"," for team documentation and knowledge sharing. This was my first encounter with \"enterprise-grade\" knowledge management. While it had powerful features for collaboration, document management, and workflows, it felt heavyweight and cumbersome for actual daily use.",[221,315,316],{},"The interface was clunky, search was unreliable, and it required too much upfront structure and planning. You had to think about information architecture, permissions, and content types before you could just... write something down. Classic enterprise software: powerful but painful.",[272,318,320],{"id":319},"_3-2008-the-dropbox-revolution","3. 2008: The Dropbox Revolution",[221,322,323,324,331],{},"When ",[236,325,326],{},[225,327,330],{"href":328,"rel":329},"https:\u002F\u002Fwww.dropbox.com",[229],"Dropbox"," launched in 2008, it felt revolutionary. Finally, my scattered text files could sync across machines automatically. No more USB drives, no more emailing files to myself. I organized everything in a clean Dropbox folder structure, thinking I'd solved the sync problem forever.",[272,333,335],{"id":334},"_4-2009-2010-the-google-wave-dream-and-nightmare","4. 2009-2010: The Google Wave Dream (and Nightmare)",[221,337,338,339,342],{},"Then came ",[236,340,341],{},"Google Wave"," in 2009—hands down the best collaborative tool Google ever built. Real-time collaboration, threaded conversations, the ability to embed rich content. For that brief, shining moment, I thought I'd found the perfect system.",[221,344,345],{},"And then Google killed it in 2010, after just months of public availability. Everything had to be backed up and migrated. Again.",[221,347,348],{},[349,350,351,352,357,358,363],"em",{},"Note: Google Wave was discontinued, but you can learn about its legacy through ",[225,353,356],{"href":354,"rel":355},"https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FGoogle_Wave",[229],"Wikipedia"," or try ",[225,359,362],{"href":360,"rel":361},"https:\u002F\u002Fincubator.apache.org\u002Fprojects\u002Fwave.html",[229],"Apache Wave",", the open-source successor.",[272,365,367],{"id":366},"_5-2010s-the-screenshot-experiment-when-later-never-comes","5. 2010s: The Screenshot Experiment: When \"Later\" Never Comes",[221,369,370],{},"Somewhere in this timeline, I even tried a tool that took screenshots of my desktop every 10 seconds. The idea was brilliant: capture everything I was doing, so I could write guides later based on my actual workflow and include screenshots from the process.",[221,372,373,374,377,378,383],{},"The problem? ",[236,375,376],{},"Later often never came."," I'd have thousands of screenshots and no time to process them into useful documentation. The friction was too high, and the signal-to-noise ratio was terrible. I remember I stopped doing this sometime before 2010 before I started ",[225,379,382],{"href":380,"rel":381},"https:\u002F\u002Fchristowles.blogspot.com\u002F2010\u002F11\u002Fenable-ldap-over-ssl-ldaps-on-windows.html",[229],"blogging"," but not sure when.",[272,385,387],{"id":386},"_6-2012-the-google-drive-migration","6. 2012: The Google Drive Migration",[221,389,323,390,397],{},[236,391,392],{},[225,393,396],{"href":394,"rel":395},"https:\u002F\u002Fdrive.google.com",[229],"Google Drive"," launched in 2012, it seemed like the logical next step. Better integration with Google's ecosystem, more collaboration features than Dropbox. I migrated everything from my Wave backups and Dropbox files.",[221,399,400],{},"Great for collaboration, but terrible for code snippets and technical notes. The rich text editor kept mangling my carefully formatted code examples.",[272,402,404],{"id":403},"_7-2015-the-first-markdown-breakthrough","7. 2015: The First Markdown Breakthrough",[221,406,407,408,415],{},"Tired of fighting with Google Drive's rich text editor mangling my code snippets, I created a repository on ",[236,409,410],{},[225,411,414],{"href":412,"rel":413},"https:\u002F\u002Fgithub.com",[229],"GitHub"," called \"toolbox.\" I was hitting storage limits on Dropbox anyway, so this felt like killing two birds with one stone.",[221,417,418,419,422],{},"This was my first real experiment with ",[236,420,421],{},"Markdown as a documentation format",". No more wrestling with formatting—just write in plain text with simple syntax for headers, lists, and code blocks. The files were readable both in raw form and when rendered by GitHub.",[221,424,425],{},[426,427],"img",{"alt":428,"src":429},"Initial commits to my toolbox repository","images\u002Fblog\u002Ftoolbox-initial-commits.png",[221,431,432,433,436],{},"I could ",[280,434,435],{},"git clone"," my entire knowledge base anywhere—home machine, work machine—and I ended up with a toolbox I could always take with me.",[221,438,439],{},"But I wasn't quite there yet. I was still experimenting with other tools...",[272,441,443],{"id":442},"_8-2016-2018-the-notion-experiments","8. 2016-2018: The Notion Experiments",[221,445,446,447,454,455,458],{},"I tried ",[236,448,449],{},[225,450,453],{"href":451,"rel":452},"https:\u002F\u002Fwww.notion.so",[229],"Notion"," v1.0 when it launched in 2016, then gave ",[236,456,457],{},"Notion v2.0"," a serious shot in 2018. Beautiful interface, powerful databases, infinite customization possibilities.",[221,460,461],{},"But it was slow, over-engineered for my needs, and I spent more time configuring the perfect setup than actually taking notes. Classic productivity tool trap.",[272,463,465],{"id":464},"_9-2020-the-obsidian-exploration","9. 2020: The Obsidian Exploration",[221,467,323,468,475],{},[236,469,470],{},[225,471,474],{"href":472,"rel":473},"https:\u002F\u002Fobsidian.md",[229],"Obsidian"," launched in 2020, the linking and graph features seemed promising. The idea of a \"second brain\" with interconnected notes was compelling.",[221,477,478],{},"I never used the graph, I found searching better than trying to navigate the visual representation. It demos amazing, but that's not how I think. I spent more time adding links and tags than actually writing. Then never quite using those tags and notes.",[272,480,482],{"id":481},"_10-2020-to-present-the-confluence-black-hole","10. 2020 to Present: The Confluence Black Hole",[221,484,485,486,493],{},"We use ",[236,487,488],{},[225,489,492],{"href":490,"rel":491},"https:\u002F\u002Fwww.atlassian.com\u002Fsoftware\u002Fconfluence",[229],"Confluence",", and it perfectly illustrates why traditional knowledge management systems can be challenging. The sheer amount of data siloed in our Confluence instance, combined with non-existent fine-grained search, means data can go in but not come out—leading to frustration where you know the data exists but can't find it.",[221,495,496,497,500],{},"But here's where the story gets interesting: Getting that data out of Confluence and into a RAG (Retrieval-Augmented Generation) system to use AI was actually ",[225,498,230],{"href":227,"rel":499},[229],"'s mission-based project this summer at GE Aerospace. His team of 3 joined my team for the summer and worked to break down these data silos and make our institutional knowledge actually accessible through AI.",[272,502,504],{"id":503},"_11-the-others","11. The Others",[221,506,507,508,287,515,287,522,287,529,536,537,544],{},"I'm not even going to go into detail about all the other tools I only picked up for a couple of days, but they include the likes of ",[236,509,510],{},[225,511,514],{"href":512,"rel":513},"https:\u002F\u002Fwww.microsoft.com\u002Fen-us\u002Fmicrosoft-365\u002Fonenote\u002Fdigital-note-taking-app",[229],"OneNote",[236,516,517],{},[225,518,521],{"href":519,"rel":520},"https:\u002F\u002Ffoambubble.github.io\u002Ffoam\u002F",[229],"Foam",[236,523,524],{},[225,525,528],{"href":526,"rel":527},"https:\u002F\u002Fevernote.com",[229],"Evernote",[236,530,531],{},[225,532,535],{"href":533,"rel":534},"https:\u002F\u002Fwww.box.com",[229],"Box",", and multiple ",[236,538,539],{},[225,540,543],{"href":541,"rel":542},"https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FWiki",[229],"Wiki"," platforms.",[272,546,548],{"id":547},"_12-2020-the-return-to-simplicity-markdown-in-a-private-repo","12. 2020+: The Return to Simplicity - Markdown in a Private Repo",[221,550,551],{},"Eventually, I kept coming back to that same 2015 toolbox repository. It just worked, it was never down, out of space or hard to find stuff. I approached it with more wisdom. I refined my approach: a private repository with markdown files organized by date and topic, using the same principles but with better consistency.",[221,553,554,555,558],{},"I use ",[280,556,557],{},"grep"," and standard search tools to find anything. I didn't need fancy indexing or web hosted solution search. Basic text search across a folder of markdown files was faster and more reliable than any sophisticated system I'd tried.",[221,560,561,564],{},[236,562,563],{},"The key insight",": I needed a digital trail I could follow months later when I was trying to remember how something worked or when I did something. Markdown files provided exactly that—simple, searchable, version-controlled breadcrumbs.",[221,566,567,570],{},[236,568,569],{},"The pattern was always the same",": find a tool, build a system, watch it become inadequate or disappear, then migrate everything again. After two decades, I realized the problem wasn't the tools—it was my expectation that a tool could solve what was fundamentally a workflow problem.",[243,572,574],{"id":573},"the-agentic-workflow-revolution","The Agentic Workflow Revolution",[221,576,577,578,581],{},"Fast forward to 2025, and something fundamental has shifted. We're not just using AI for one-shot questions anymore. The real power lies in the ",[236,579,580],{},"agentic workflow loop",":",[583,584,585,592,598,604,610],"ol",{},[586,587,588,591],"li",{},[236,589,590],{},"Human intent"," → Clear problem definition or goal",[586,593,594,597],{},[236,595,596],{},"AI processing"," → Analysis, suggestions, initial solutions",[586,599,600,603],{},[236,601,602],{},"Collaborative refinement"," → Human feedback, iteration, improvement",[586,605,606,609],{},[236,607,608],{},"Shared context"," → Both parties build on accumulated knowledge",[586,611,612,615],{},[236,613,614],{},"Next iteration"," → More sophisticated problems and solutions",[221,617,618],{},"This isn't about getting better answers from AI—it's about creating a collaborative thinking process where both human and AI contribute their strengths over time.",[221,620,621,622,295],{},"The magic happens in that shared context layer. Unlike chat interfaces where conversations disappear into the void, markdown creates ",[236,623,624],{},"persistent, versioned, searchable collaboration artifacts",[243,626,628],{"id":627},"markdown-as-the-universal-protocol","Markdown as the Universal Protocol",[221,630,631],{},"Here's why Markdown has emerged as the perfect format for human-AI collaboration:",[272,633,635],{"id":634},"machine-readable-human-readable","Machine Readable + Human Readable",[221,637,638],{},"Both humans and AI can process Markdown natively. You don't need special parsers or complex formatting rules. It's structured enough for machines to understand and simple enough for humans to write quickly.",[640,641,646],"pre",{"className":642,"code":643,"language":644,"meta":645,"style":645},"language-markdown shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","## Problem Statement\n\nNeed to optimize database queries for user dashboard\n\n## Current Issue\n\n- Loading time: 3.2 seconds\n- Query count: 47 per page load\n- Memory usage: 240MB peak\n\n## Proposed Solutions\n\n1. Implement query caching\n2. Add database indexes\n3. Reduce N+1 queries\n","markdown","",[280,647,648,661,668,675,680,688,693,702,710,718,723,731,736,745,754],{"__ignoreMap":645},[649,650,653,657],"span",{"class":651,"line":652},"line",1,[649,654,656],{"class":655},"sMK4o","## ",[649,658,660],{"class":659},"sBMFI","Problem Statement\n",[649,662,664],{"class":651,"line":663},2,[649,665,667],{"emptyLinePlaceholder":666},true,"\n",[649,669,671],{"class":651,"line":670},3,[649,672,674],{"class":673},"sTEyZ","Need to optimize database queries for user dashboard\n",[649,676,678],{"class":651,"line":677},4,[649,679,667],{"emptyLinePlaceholder":666},[649,681,683,685],{"class":651,"line":682},5,[649,684,656],{"class":655},[649,686,687],{"class":659},"Current Issue\n",[649,689,691],{"class":651,"line":690},6,[649,692,667],{"emptyLinePlaceholder":666},[649,694,696,699],{"class":651,"line":695},7,[649,697,698],{"class":655},"-",[649,700,701],{"class":673}," Loading time: 3.2 seconds\n",[649,703,705,707],{"class":651,"line":704},8,[649,706,698],{"class":655},[649,708,709],{"class":673}," Query count: 47 per page load\n",[649,711,713,715],{"class":651,"line":712},9,[649,714,698],{"class":655},[649,716,717],{"class":673}," Memory usage: 240MB peak\n",[649,719,721],{"class":651,"line":720},10,[649,722,667],{"emptyLinePlaceholder":666},[649,724,726,728],{"class":651,"line":725},11,[649,727,656],{"class":655},[649,729,730],{"class":659},"Proposed Solutions\n",[649,732,734],{"class":651,"line":733},12,[649,735,667],{"emptyLinePlaceholder":666},[649,737,739,742],{"class":651,"line":738},13,[649,740,741],{"class":655},"1.",[649,743,744],{"class":673}," Implement query caching\n",[649,746,748,751],{"class":651,"line":747},14,[649,749,750],{"class":655},"2.",[649,752,753],{"class":673}," Add database indexes\n",[649,755,757,760],{"class":651,"line":756},15,[649,758,759],{"class":655},"3.",[649,761,762],{"class":673}," Reduce N+1 queries\n",[272,764,766],{"id":765},"persistent-context","Persistent Context",[221,768,769],{},"Unlike chat interfaces, markdown files create lasting collaborative artifacts. Your conversation with AI becomes a document that you can revisit, reference, and build upon weeks later.",[221,771,772],{},"I've had Claude Code sessions where we worked on complex refactoring over multiple days. Because everything was captured in markdown files, we could pick up exactly where we left off, with full context intact.",[272,774,776],{"id":775},"version-controlled-collaboration","Version Controlled Collaboration",[221,778,779,780,295],{},"When you store your human-AI collaboration in markdown files within a git repository, you get something revolutionary: ",[236,781,782],{},"the complete history of how problems were solved",[221,784,785],{},"You can see how your thinking evolved, which AI suggestions you accepted or rejected, and what the final solution looked like. This creates a searchable database of your own problem-solving patterns.",[272,787,789],{"id":788},"structured-thinking","Structured Thinking",[221,791,792],{},"Markdown forces clarity in both directions. When you need to explain a problem to AI, the act of writing it in structured markdown makes you think more clearly about what you're asking.",[221,794,795],{},"Similarly, AI responses in markdown are more organized and actionable than free-form chat responses.",[272,797,799],{"id":798},"the-meta-aspect-this-blog-post","The Meta Aspect: This Blog Post",[221,801,802,803,806],{},"The irony isn't lost on me that I'm writing a blog post about markdown-AI collaboration ",[236,804,805],{},"using exactly this process",". This post started as a markdown file where Claude Code and I iterated on structure, content, and examples.",[221,808,809],{},"The collaborative process created a better final product than either of us could have produced independently.",[272,811,813],{"id":812},"building-persistent-context","Building Persistent Context",[221,815,816],{},"Every session builds on previous work. When I return to a project weeks later, the markdown files contain our collaboration history as these artifacts it can read get better context. Claude Code can quickly get back up to speed by reading what we've previously produced.",[221,818,819],{},"This compound effect means our collaboration gets more sophisticated over time, rather than starting from scratch each session.",[243,821,823],{"id":822},"why-this-matters-for-2025-and-beyond","Why This Matters for 2025 and Beyond",[272,825,827],{"id":826},"individual-productivity-the-10x-multiplier","Individual Productivity: The 10x Multiplier",[221,829,830],{},"When you nail the human-AI collaboration loop with markdown, code or anything where you both contribute and refine, the productivity gains are genuinely transformative. You're not just getting faster answers—you're creating a thinking partnership that gets smarter over time.",[221,832,833],{},"I can tackle complex architectural problems, debug subtle issues, and explore new technologies faster than ever before. The key is that building that shared context that lets us build on previous work.",[272,835,837],{"id":836},"knowledge-management-searchable-ai-collaboration-history","Knowledge Management: Searchable AI Collaboration History",[221,839,840,841,843],{},"Your markdown files become a searchable database of every problem you've solved with AI assistance. Need to remember how you optimized that React component six months ago? ",[280,842,557],{}," through your collaboration history.",[221,845,846],{},"This is knowledge management that actually works because it's based on the same tools you already use for code.",[272,848,850],{"id":849},"future-proofing-portable-across-ai-systems","Future-Proofing: Portable Across AI Systems",[221,852,853],{},"Markdown files work with any AI system. Whether you're using Claude, GPT, Copilot, or whatever comes next, your collaboration format remains constant. You're not locked into any particular platform or interface.",[243,855,857],{"id":856},"build-the-habit","Build the Habit",[221,859,860],{},[236,861,862],{},"Start small:",[864,865,866,869,872],"ul",{},[586,867,868],{},"Pick one project for markdown-AI collaboration",[586,870,871],{},"Create a simple structure and stick to it",[586,873,874],{},"Focus on persistence over perfection",[221,876,877],{},[236,878,879],{},"Evolve gradually:",[864,881,882,885,888],{},[586,883,884],{},"Add more structure as you see what works",[586,886,887],{},"Develop your own collaboration patterns",[586,889,890],{},"Share successful formats with your team",[272,892,894],{"id":893},"leverage-standard-tools","Leverage Standard Tools",[221,896,897],{},[236,898,899],{},"Search and discovery:",[640,901,905],{"className":902,"code":903,"language":904,"meta":645,"style":645},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","# Find all discussions about database optimization\ngrep -r \"database\" projects\u002F\n\n# See what you worked on last month\nls -la daily-notes\u002F2025-07-*\n\n# Track decision evolution\ngit log --oneline -- projects\u002Fdatabase-optimization\u002F\n","bash",[280,906,907,913,933,937,942,956,960,965],{"__ignoreMap":645},[649,908,909],{"class":651,"line":652},[649,910,912],{"class":911},"sHwdD","# Find all discussions about database optimization\n",[649,914,915,917,921,924,927,930],{"class":651,"line":663},[649,916,557],{"class":659},[649,918,920],{"class":919},"sfazB"," -r",[649,922,923],{"class":655}," \"",[649,925,926],{"class":919},"database",[649,928,929],{"class":655},"\"",[649,931,932],{"class":919}," projects\u002F\n",[649,934,935],{"class":651,"line":670},[649,936,667],{"emptyLinePlaceholder":666},[649,938,939],{"class":651,"line":677},[649,940,941],{"class":911},"# See what you worked on last month\n",[649,943,944,947,950,953],{"class":651,"line":682},[649,945,946],{"class":659},"ls",[649,948,949],{"class":919}," -la",[649,951,952],{"class":919}," daily-notes\u002F2025-07-",[649,954,955],{"class":673},"*\n",[649,957,958],{"class":651,"line":690},[649,959,667],{"emptyLinePlaceholder":666},[649,961,962],{"class":651,"line":695},[649,963,964],{"class":911},"# Track decision evolution\n",[649,966,967,970,973,976,979],{"class":651,"line":704},[649,968,969],{"class":659},"git",[649,971,972],{"class":919}," log",[649,974,975],{"class":919}," --oneline",[649,977,978],{"class":919}," --",[649,980,981],{"class":919}," projects\u002Fdatabase-optimization\u002F\n",[243,983,985],{"id":984},"common-pitfalls-that-i-hit-so-you-dont-have-to","Common Pitfalls (That I Hit So You Don't Have To)",[272,987,989],{"id":988},"over-engineering-the-system","Over-Engineering the System",[221,991,992],{},"I spent weeks building elaborate folder structures and naming conventions. The truth is, simple organization plus good search beats complex taxonomy every time.",[221,994,995,998],{},[236,996,997],{},"Keep it simple",": Date-based organization and descriptive filenames will get you 90% of the way there.",[272,1000,1002],{"id":1001},"treating-ai-like-a-search-engine","Treating AI Like a Search Engine",[221,1004,1005],{},"The biggest mistake is using AI for one-shot questions instead of building collaborative context. If you're not creating persistent artifacts from your AI interactions, you're missing the real value.",[272,1007,1009],{"id":1008},"ignoring-version-control","Ignoring Version Control",[221,1011,1012],{},"Your collaboration history is valuable. Seeing how your thinking evolved over time, which approaches worked, and what dead ends you explored—that's all useful context for future problems.",[221,1014,1015,1016,1019],{},"Commit OFTEN, AI can add too much, delete something it shouldn't. By committing often or even just doing ",[280,1017,1018],{},"git add ."," acts like a video game save point you can always go back to.",[243,1021,1023],{"id":1022},"the-future-of-human-ai-collaboration","The Future of Human-AI Collaboration",[221,1025,1026],{},"We're still in the early days of figuring out how humans and AI work best together. But I'm convinced that the teams and individuals who master the agentic workflow loop will have a massive advantage.",[221,1028,1029],{},"Markdown isn't just a formatting language—it's becoming the universal protocol for human-AI collaboration. It's simple enough to write quickly, structured enough for AI to process effectively, and persistent enough to build lasting value.",[221,1031,1032],{},"The goal isn't to replace human thinking with AI thinking. It's to create a collaboration format where both human creativity and AI capability can compound over time.",[243,1034,1036],{"id":1035},"the-bottom-line","The Bottom Line",[221,1038,1039,1040,295],{},"After two decades of note-taking evolution and months of intensive AI collaboration, I've reached a simple conclusion: ",[236,1041,1042],{},"the format matters as much as the content",[221,1044,1045],{},"Markdown has emerged as the universal language for human-AI collaboration because it maximizes the value of the agentic workflow loop. It's readable by both humans and machines, persistent across sessions, version-controlled by default, and searchable with standard tools.",[221,1047,1048],{},"The teams and individuals who figure this out first will have a significant advantage in 2025 and beyond. Not because they're using AI better, but because they're collaborating with AI in a way that creates compound value over time.",[221,1050,1051],{},"Start simple: create a markdown file, ask AI to help with a problem and iterate on the solution together. Do this consistently, and you'll discover what I've learned: the future belongs to those who can think with machines, not just ask them questions.",[221,1053,1054],{},[349,1055,1056],{},"Now stop reading about it and start building your own human-AI collaboration protocol. Your future self will thank you.",[1058,1059,1060],"style",{},"html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sHwdD, html code.shiki .sHwdD{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}",{"title":645,"searchDepth":663,"depth":663,"links":1062},[1063,1064,1078,1079,1087,1092,1095,1100,1101],{"id":245,"depth":663,"text":246},{"id":266,"depth":663,"text":267,"children":1065},[1066,1067,1068,1069,1070,1071,1072,1073,1074,1075,1076,1077],{"id":274,"depth":670,"text":275},{"id":301,"depth":670,"text":302},{"id":319,"depth":670,"text":320},{"id":334,"depth":670,"text":335},{"id":366,"depth":670,"text":367},{"id":386,"depth":670,"text":387},{"id":403,"depth":670,"text":404},{"id":442,"depth":670,"text":443},{"id":464,"depth":670,"text":465},{"id":481,"depth":670,"text":482},{"id":503,"depth":670,"text":504},{"id":547,"depth":670,"text":548},{"id":573,"depth":663,"text":574},{"id":627,"depth":663,"text":628,"children":1080},[1081,1082,1083,1084,1085,1086],{"id":634,"depth":670,"text":635},{"id":765,"depth":670,"text":766},{"id":775,"depth":670,"text":776},{"id":788,"depth":670,"text":789},{"id":798,"depth":670,"text":799},{"id":812,"depth":670,"text":813},{"id":822,"depth":663,"text":823,"children":1088},[1089,1090,1091],{"id":826,"depth":670,"text":827},{"id":836,"depth":670,"text":837},{"id":849,"depth":670,"text":850},{"id":856,"depth":663,"text":857,"children":1093},[1094],{"id":893,"depth":670,"text":894},{"id":984,"depth":663,"text":985,"children":1096},[1097,1098,1099],{"id":988,"depth":670,"text":989},{"id":1001,"depth":670,"text":1002},{"id":1008,"depth":670,"text":1009},{"id":1022,"depth":663,"text":1023},{"id":1035,"depth":663,"text":1036},"2025-08-14","Why Markdown has become the universal language for human-AI collaboration and the foundation of the agentic workflow revolution","md",{"src":1106,"alt":1107},"\u002Fimages\u002Fblog\u002F20250814-1929-markdown-plus-ai-the-communication-protocol-that-changes-everything.png","A cinematic split-screen composition showing the evolution of human-AI collaboration: on the left, a frustrated developer surrounded by scattered sticky notes, multiple monitors with different apps (Notion, Obsidian, Google Drive), representing the chaos of tool-switching; on the right, a serene workspace with a single clean monitor displaying a markdown file with AI suggestions flowing seamlessly into the text, warm lighting suggesting harmony and productivity. The transition between the two sides should flow like a bridge made of markdown syntax elements (# headers, **bold text**, `code blocks`) floating in space, symbolizing markdown as the universal communication protocol between human and AI.",{},{"title":97,"description":1103},"published","ICMva9RcIvKq5YYxp6aL4jvxDobqRFeHIqd79H0024Q",[1113,1115],{"title":93,"path":94,"stem":95,"description":1114,"status":1110,"children":-1},"How a simple markdown linter consumed hundreds of tokens explaining obvious formatting issues, and what this teaches us about AI tool efficiency in development workflows.",{"title":101,"path":102,"stem":103,"description":1116,"status":1110,"children":-1},"After years of unpredictable LLM outputs and runtime crashes, TypeScript is bringing the engineering discipline we've needed all along. Here's why I'm excited about type checking in production AI.",1776221196452]