toad.social is one of the many independent Mastodon servers you can use to participate in the fediverse.
Mastodon server operated by David Troy, a tech pioneer and investigative journalist addressing threats to democracy. Thoughtful participation and discussion welcome.

Administered by:

Server stats:

214
active users

#literateprogramming

0 posts0 participants0 posts today
screwlisp<p><a href="https://gamerplus.org/tags/programming" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>programming</span></a> <a href="https://gamerplus.org/tags/systemsProgramming" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>systemsProgramming</span></a> <a href="https://gamerplus.org/tags/software" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>software</span></a> <a href="https://gamerplus.org/tags/commonLisp" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>commonLisp</span></a> <a href="https://gamerplus.org/tags/sitcalc" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>sitcalc</span></a> <a href="https://gamerplus.org/tags/emacs" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>emacs</span></a> <a href="https://gamerplus.org/tags/eepitch" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>eepitch</span></a></p><p><a href="https://screwlisp.small-web.org/complex/my-eepitch-send-actions-and-the-situation-calculus/" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">screwlisp.small-web.org/comple</span><span class="invisible">x/my-eepitch-send-actions-and-the-situation-calculus/</span></a></p><p>I relate <a href="https://gamerplus.org/tags/Sandewall" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Sandewall</span></a>'s call for situation calculus actions and the shared environment / database to be moved into the kernel viz my <a href="https://gamerplus.org/tags/literateProgramming" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>literateProgramming</span></a> emacs useage.</p><p>People always said emacs /was/ the operatingsystem, didn't they.</p><p>Particularly, computer programs various send requests for actions to the emacs server where they are also seen playing out at they actually happen in real time.</p>
Vassil Nikolov<p>&gt; ... conversations with Knuth viz <a href="https://ieji.de/tags/literateProgramming" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>literateProgramming</span></a> or otherwise? Were you saying that it was specifically in the context of his book that web was important?</p><p>Which book?</p><p><span class="h-card" translate="no"><a href="https://gamerplus.org/@screwlisp" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>screwlisp</span></a></span> <span class="h-card" translate="no"><a href="https://appdot.net/@mdhughes" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>mdhughes</span></a></span></p>
screwlisp<p><span class="h-card" translate="no"><a href="https://appdot.net/@mdhughes" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>mdhughes</span></a></span> <br>What were you sharing about your conversations with Knuth viz <a href="https://gamerplus.org/tags/literateProgramming" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>literateProgramming</span></a> or otherwise? Were you saying that it was specifically in the context of his book that web was important?</p><p>The way eev resolves repl vs literate is that you only write in your literate document, and the repl updates on the other half of the screen without your cursor entering it.</p>
screwlisp<p><a href="https://gamerplus.org/tags/lispyGopherClimate" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>lispyGopherClimate</span></a> <a href="https://gamerplus.org/tags/comingUp" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>comingUp</span></a> on <a href="https://anonradio.net" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="">anonradio.net</span><span class="invisible"></span></a> 45 minutes from tooting.</p><p>I'm just going to rhapsodise about my recent <a href="https://gamerplus.org/tags/literateProgramming" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>literateProgramming</span></a> <a href="https://gamerplus.org/tags/tangle" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>tangle</span></a> <a href="https://screwlisp.small-web.org/programming/tangle" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">screwlisp.small-web.org/progra</span><span class="invisible">mming/tangle</span></a> <a href="https://gamerplus.org/tags/lisp" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>lisp</span></a> program<br>and my piece of like-a-human <a href="https://gamerplus.org/tags/eev" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>eev</span></a> <a href="https://gamerplus.org/tags/emacs" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>emacs</span></a> <a href="https://gamerplus.org/tags/commonlisp" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>commonlisp</span></a> <a href="https://gamerplus.org/tags/swank" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>swank</span></a> tooling <a href="https://screwlisp.small-web.org/screwniverse/cl-eepitch/" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">screwlisp.small-web.org/screwn</span><span class="invisible">iverse/cl-eepitch/</span></a></p><p>And its relation to <a href="https://gamerplus.org/tags/softwareIndividuals" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>softwareIndividuals</span></a>, control problems with <a href="https://gamerplus.org/tags/AI" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>AI</span></a> as such.</p>
screwlisp<p><a href="https://gamerplus.org/tags/programming" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>programming</span></a> <a href="https://gamerplus.org/tags/softwareEngineering" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>softwareEngineering</span></a> article <a href="https://screwlisp.small-web.org/programming/tangle/" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">screwlisp.small-web.org/progra</span><span class="invisible">mming/tangle/</span></a> <a href="https://gamerplus.org/tags/commonLisp" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>commonLisp</span></a> <a href="https://gamerplus.org/tags/asdf" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>asdf</span></a> <a href="https://gamerplus.org/tags/systemsProgramming" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>systemsProgramming</span></a> <a href="https://gamerplus.org/tags/series" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>series</span></a> <a href="https://gamerplus.org/tags/pathnames" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>pathnames</span></a> <a href="https://gamerplus.org/tags/packaging" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>packaging</span></a> </p><p>Really simple... Sort of... But so intricate to write. I deal with (writing a smidge of <a href="https://gamerplus.org/tags/interactive" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>interactive</span></a> <a href="https://gamerplus.org/tags/lazyEvaluation" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>lazyEvaluation</span></a> <a href="https://gamerplus.org/tags/functionalProgramming" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>functionalProgramming</span></a> ) :</p><p>- Tangling markdown into an asdf :class :package-inferred-system lisp system<br>- Doing so with scan-file and collect-file from series<br>- Working with lisp’s make-pathname directories.</p><p><a href="https://gamerplus.org/tags/literateProgramming" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>literateProgramming</span></a></p>
Pat<p>I wrote a Literate Programming tool in AWK</p><p><a href="http://patpatpat.xyz/data/lit/lit.awk" rel="nofollow noopener" target="_blank"><span class="invisible">http://</span><span class="">patpatpat.xyz/data/lit/lit.awk</span><span class="invisible"></span></a></p><p><a href="http://patpatpat.xyz/data/lit/example.html" rel="nofollow noopener" target="_blank"><span class="invisible">http://</span><span class="ellipsis">patpatpat.xyz/data/lit/example</span><span class="invisible">.html</span></a></p><p><a href="http://patpatpat.xyz/data/lit/example.lit" rel="nofollow noopener" target="_blank"><span class="invisible">http://</span><span class="ellipsis">patpatpat.xyz/data/lit/example</span><span class="invisible">.lit</span></a></p><p>I dogfooded the script: the page and the script itself are generated from a single literate file. The page hopefully explains my thought process. Its a tiny script but feels quite dense!</p><p>(Feedback welcome)</p><p>I like using AWK, there is something quite charming and fun about programming within the limitations of PATTERN + ACTION</p><p><a href="https://mastodon.sdf.org/tags/literateprogramming" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>literateprogramming</span></a> <a href="https://mastodon.sdf.org/tags/awk" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>awk</span></a></p>
adamcrussell<p>To followup to my previous post this is the nuweb source for my <a href="https://mastodon.sdf.org/tags/Prolog" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Prolog</span></a> solutions to TWC 320.</p><p><a href="https://adamcrussell.livejournal.com/57668.html" rel="nofollow noopener" target="_blank"><span class="invisible">https://</span><span class="ellipsis">adamcrussell.livejournal.com/5</span><span class="invisible">7668.html</span></a></p><p><a href="https://mastodon.sdf.org/tags/LiterateProgramming" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>LiterateProgramming</span></a></p>
Carlos Noceda Riva<p>New post about <a href="https://mastodon.social/tags/orgmode" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>orgmode</span></a> <a href="https://mastodon.social/tags/orgbabel" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>orgbabel</span></a> <a href="https://mastodon.social/tags/emacs" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>emacs</span></a> and <a href="https://mastodon.social/tags/literateprogramming" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>literateprogramming</span></a> </p><p><a href="https://www.cnoceda.com/tecnologia/posts/20250412T072657--a-little-trick-in-my-literary-programming__babel_blog_emacs_tecnologia.html" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://www.</span><span class="ellipsis">cnoceda.com/tecnologia/posts/2</span><span class="invisible">0250412T072657--a-little-trick-in-my-literary-programming__babel_blog_emacs_tecnologia.html</span></a></p><p>Is there another way to do this? <br>Thanks in advance 🙂</p>
aphex twink<p>I've been using the new <code>complete-preview-mode</code> instead of my usual <code>corfu</code> for completions for a few days now and i think i actually quite like it. i haven't even added any additional configuration for it yet, it works pretty fucking great out of the box! </p><p>but, i realise it's time i sat and worked out some basic config for it and found a way to make it work such that matching curly braces in Hugo templates (in <code>HTML+</code> mode) work properly, atleast so that it doesn't add unnecessarily redundant closing braces. i still need to figure out how to make paired braces (and all the other paired symbols) work too. not sure these are mutually exclusive. </p><p>I've not really found time off-late to work out these things so i guess what I'm asking for is help, lol. my literate config is available on my <a href="https://emacs.peregrinator.site/literate-emacs-configuration/" rel="nofollow noopener" target="_blank">website</a> and my <a href="https://git%20sr.ht/%7Eperegrinator/.emacs.d/" rel="nofollow noopener" target="_blank">Sourcehut</a> and any suggestions or fixes for these, you can either send an email to my <a href="https://lists.sr.ht/%7Eperegrinator/emacs" rel="nofollow noopener" target="_blank">mailing list</a> at ~peregrinator/emacs@lists.sr.ht or mention me here</p><p><a href="https://toot.cat/tags/Emacs" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Emacs</span></a> <a href="https://toot.cat/tags/LiterateProgramming" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>LiterateProgramming</span></a> <a href="https://toot.cat/tags/EmacsLiterateConfiguration" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>EmacsLiterateConfiguration</span></a></p>
Nyan Max<p>Como sé que muchos lo estabais esperando (la verdad es que sé que nadie lo esperaba 😂) os dejo por aquí la segunda parte sobre EMACS + PROGRAMACIÓN LITERARIA. English version soon. <a href="gemini://maxxcan.flounder.online/informatica/emacs/articulos/2025-01-19-programacion-literaria-2.gmi" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible"></span><span class="ellipsis">gemini://maxxcan.flounder.onli</span><span class="invisible">ne/informatica/emacs/articulos/2025-01-19-programacion-literaria-2.gmi</span></a> y versión web: <a href="https://maxxcan.flounder.online/informatica/emacs/articulos/2025-01-19-programacion-literaria-2.gmi" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">maxxcan.flounder.online/inform</span><span class="invisible">atica/emacs/articulos/2025-01-19-programacion-literaria-2.gmi</span></a> <a href="https://mastodon.social/tags/emacs" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>emacs</span></a> <a href="https://mastodon.social/tags/literateprogramming" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>literateprogramming</span></a> <a href="https://mastodon.social/tags/babel" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>babel</span></a> <a href="https://mastodon.social/tags/orgmode" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>orgmode</span></a> <span class="h-card" translate="no"><a href="https://social.sachachua.com/@sacha" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>sacha</span></a></span> <span class="h-card" translate="no"><a href="https://fosstodon.org/@hispaemacs" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>hispaemacs</span></a></span></p>
Karl Voit :emacs: :orgmode:<p><span class="h-card" translate="no"><a href="https://fediscience.org/@ericsfraga" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>ericsfraga</span></a></span> In 2012, Thomas S. Dye and I did a demo project that generated an <a href="https://graz.social/tags/ACM" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ACM</span></a> paper with all algorithms used in one single <a href="https://graz.social/tags/orgmode" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>orgmode</span></a> file:</p><p><a href="https://github.com/novoid/orgmode-iKNOW2012" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">github.com/novoid/orgmode-iKNO</span><span class="invisible">W2012</span></a></p><p>Would most probably need some updates I guess.</p><p><a href="https://graz.social/tags/reproducibility" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>reproducibility</span></a> <a href="https://graz.social/tags/ReproducibleResearch" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ReproducibleResearch</span></a> <a href="https://graz.social/tags/openscience" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>openscience</span></a> <a href="https://graz.social/tags/paper" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>paper</span></a> <a href="https://graz.social/tags/iKnow" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>iKnow</span></a> <a href="https://graz.social/tags/literateprogramming" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>literateprogramming</span></a> <a href="https://graz.social/tags/opendata" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>opendata</span></a> <a href="https://graz.social/tags/Emacs" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Emacs</span></a></p>
Paolo Amoroso<p>Wolfgang Faust on why the evolution of programming languages made specialized literate programming tools less necessary, and how modern languages support literate programming techniques.</p><p><a href="https://www.linestarve.com/blog/post/literate-programming-untangled/" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://www.</span><span class="ellipsis">linestarve.com/blog/post/liter</span><span class="invisible">ate-programming-untangled/</span></a></p><p><a href="https://fosstodon.org/tags/LiterateProgramming" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>LiterateProgramming</span></a> <a href="https://fosstodon.org/tags/documentation" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>documentation</span></a> <a href="https://fosstodon.org/tags/programming" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>programming</span></a></p>
(((@amarois)))<p>[ToRead] M. Le Béchec ; C. Gruson-Daniel ; C. Lascombes ; É. Schultz - Notebook and Open science: toward more FAIR play jdmdh:13428-Journal of Data Mining &amp; Digital Humanities, 16 déc. 2024, Atelier Digit\_Hum=&gt; <a href="https://doi.org/10.46298/jdmdh.13428" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="">doi.org/10.46298/jdmdh.13428</span><span class="invisible"></span></a><br><a href="https://mamot.fr/tags/FAIRprinciples" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>FAIRprinciples</span></a> <a href="https://mamot.fr/tags/openscience" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>openscience</span></a> <a href="https://mamot.fr/tags/notebooks" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>notebooks</span></a> <a href="https://mamot.fr/tags/literateprogramming" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>literateprogramming</span></a> <a href="https://mamot.fr/tags/DH" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>DH</span></a></p>
Csepp 🌢<p>Does <a href="https://merveilles.town/tags/Jupyter" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Jupyter</span></a> count as a <a href="https://merveilles.town/tags/literateProgramming" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>literateProgramming</span></a> environment? :flan_think:</p>
Ramesh #NotGoingBack<p>⬆️ <span class="h-card" translate="no"><a href="https://mastodon.social/@palmin" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>palmin</span></a></span> </p><p>Interesting juxtaposition of <a href="https://mastodon.social/tags/Sudoku" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Sudoku</span></a> and <a href="https://mastodon.social/tags/Knuth" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Knuth</span></a>. Remarkable how the order is completely reversed in the modern programmers' <a href="https://mastodon.social/tags/hierarchyOfNeeds" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>hierarchyOfNeeds</span></a> —</p><p>1. Get paid for computer programming</p><p>2. Even make your programs do useful work — May be sudoku grid from a dependency graph qualifies</p><p>3. Embrace <a href="https://mastodon.social/tags/LiterateProgramming" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>LiterateProgramming</span></a> —Make well-written programs FUN to read. </p><p>No <a href="https://mastodon.social/tags/TeXLaTeX" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>TeXLaTeX</span></a>, but my <a href="https://mastodon.social/tags/Swift" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Swift</span></a> toolchain does supports <a href="https://mastodon.social/tags/Markdown" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Markdown</span></a> in code comments to capture joy for posterity</p><p><a href="https://www-cs-faculty.stanford.edu/~knuth/lp.html" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">www-cs-faculty.stanford.edu/~k</span><span class="invisible">nuth/lp.html</span></a></p>
Giuseppe Bilotta<p>I've just tagged and released a new minor release (v2.3) of my <a href="https://fediscience.org/tags/Asciidoctor" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Asciidoctor</span></a> extension for <a href="https://fediscience.org/tags/LiterateProgramming" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>LiterateProgramming</span></a> <br> <br><a href="https://github.com/Oblomov/asciidoctor-litprog" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">github.com/Oblomov/asciidoctor</span><span class="invisible">-litprog</span></a></p><p>I was actually in doubt if it should be considered a minor or major release, since there are some rather extensive changes and some new features, such as the possibility to output a graph of the chunk inclusion/dependency tree in <a href="https://fediscience.org/tags/DOT" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>DOT</span></a> format.</p>
Karsten Schmidt<p>Some more info &amp; illustration of the lens axis used above (excerpt from the <a href="https://mastodon.thi.ng/tags/LiterateProgramming" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>LiterateProgramming</span></a> source code of the much older <a href="https://mastodon.thi.ng/tags/Clojure" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Clojure</span></a> version of <a href="https://thi.ng/viz" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="">thi.ng/viz</span><span class="invisible"></span></a>)</p><p>This axis type uses circular interpolation to create the non-linear mapping:<br><a href="https://docs.thi.ng/umbrella/math/functions/lens.html" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">docs.thi.ng/umbrella/math/func</span><span class="invisible">tions/lens.html</span></a></p><p>There will also be an alternative/similar version using the generalized Schlick formula:<br><a href="https://docs.thi.ng/umbrella/math/functions/schlick.html" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">docs.thi.ng/umbrella/math/func</span><span class="invisible">tions/schlick.html</span></a></p><p>Source code link of the animation below:<br><a href="https://github.com/thi-ng/geom/blob/feature/no-org/org/src/viz/core.org#lens-scale-dilating--bundling" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">github.com/thi-ng/geom/blob/fe</span><span class="invisible">ature/no-org/org/src/viz/core.org#lens-scale-dilating--bundling</span></a></p><p><a href="https://mastodon.thi.ng/tags/DataViz" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>DataViz</span></a> <a href="https://mastodon.thi.ng/tags/Visualization" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Visualization</span></a> <a href="https://mastodon.thi.ng/tags/NonLinear" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>NonLinear</span></a></p>
Karsten Schmidt<p>Rather than considering even just once the needs &amp; massive benefits for creators and maintainers, current open source software infrastructure, support tools, but also developer culture itself is completely biased and optimized purely for the benefit of consumers/users. Choosing a non-standard project structure (in my case a mature Google-style monorepo with almost 200 largely independent, but related projects/libraries/tools) is increasingly actively punishing my work and efforts in a variety of ways, e.g.</p><p>- non-supportive UIs for improved browsing/overviews of monorepos<br>- harmed discovery via search &amp; metadata limitations<br>- wrong, misleading and downgraded project ranking calculations (npm)<br>- misleading/broken automated project analysis (GitHub)<br>- lack of support by documentation tooling (TypeDoc)<br>- lack of support by package managers (Zig) and/or hosting platforms</p><p>All of these (and more) factors are actively hurting, disqualifying &amp; even completely nullifying much of my time &amp; energy spent on these projects, making my dream goal of working on open source fulltime increasingly intangible (because the above factors all have an actively downgrading effect which makes these project seem lower quality/relevance). To some extent this is purely because this work is stored in a project structure which is optimized for maintenance &amp; automation. Technically, we're speaking about _one_ additional level of nesting. An extra subdirectory! Otherwise, not any different than a "normal" repo. Still — BOOM — confusion, inflexibility &amp; punishment ensues! 😫😭</p><p>So many external aspects and people do not give a damn that a monorepo setup like this and the custom tooling created to automate the maintainance and cross-linking of all these ~360 packages (incl. example projects) are _the only sane way_ for me as a single person to efficiently manage &amp; release a codebase of this magnitude.</p><p>I was aware of some misunderstandings about monorepos on purely social/human level, but never saw it coming that the more I was expanding and deepening this work, the more this structure and scope would hurt the project &amp; my goals, because 3rd party infrastructure is just as weirded out by such a "blasphemy" as some people are...</p><p>I'd genuinely like to hear ideas what I could/should do to escape the vicious circle created by the above factors, which is a real motivation killer... I really do wonder how other maintainers (esp. would like to hear from indie devs)<br>handle projects &amp; codebases of this scale without running into these issues...</p><p>Thank you for any insights!</p><p>Ps. I really seem to have a feeble for "think different" and going against the grain with these things (or maybe being too early?). The first set of 20+ <a href="https://thi.ng" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="">thi.ng</span><span class="invisible"></span></a> libraries for Clojure/ClojureScript were mostly written in a <a href="https://mastodon.thi.ng/tags/LiterateProgramming" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>LiterateProgramming</span></a> format, often combining source code with diagrams &amp; tables — this too led to many complaints and was partially to blame for not gaining much traction, even though these projects were singular offerings to that language community at the time (and funnily only became more popular _after_ 6-7 years, once I'd already left Clojure behind... go figure!)</p><p><a href="https://mastodon.thi.ng/tags/OpenSource" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>OpenSource</span></a> <a href="https://mastodon.thi.ng/tags/MonoRepo" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>MonoRepo</span></a> <a href="https://mastodon.thi.ng/tags/Maintainance" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Maintainance</span></a> <a href="https://mastodon.thi.ng/tags/Infrastructure" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Infrastructure</span></a> <a href="https://mastodon.thi.ng/tags/Documentation" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Documentation</span></a> <a href="https://mastodon.thi.ng/tags/Tooling" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Tooling</span></a> <a href="https://mastodon.thi.ng/tags/SocialCoding" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>SocialCoding</span></a> <a href="https://mastodon.thi.ng/tags/Expectations" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Expectations</span></a> <a href="https://mastodon.thi.ng/tags/NonStandard" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>NonStandard</span></a></p>
Alex Nelson<p>I've written everything I've learned about "literate programming" (in Knuth's sense) over the past few years.</p><p>The short answer is: we don't know how to do it, there are few good examples, and all the advice/guidance given turns out to be mutually contradictory.</p><p>The method Knuth endorses is to do more top-down design, just as when drawing you do quick sketches, filling in more and more as you cycle through the program.</p><p>But the best literate program I've ever seen is "Crafting Interpreters" by Bob Nystrom, which takes the exact opposite approach: write the code and write an outline (namely, the chapters and topics discussed in each chapter), then rewrite the code, reorder the chapters and material, and only once that has been finished...write prose.</p><p>There is no royal road to literate programming, it seems. If you want to write well, it requires a lot of experimentation and failing (like graphic design).</p><p> <a href="https://mathstodon.xyz/tags/literateprogramming" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>literateprogramming</span></a> </p><p><a href="https://pqnelson.github.io/2024/05/29/literate-programming.html" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">pqnelson.github.io/2024/05/29/</span><span class="invisible">literate-programming.html</span></a></p>
Life is Tetris<p>I was wondering if comments alongside source code are not read for reasons other than them being likely to be out of date. Maybe its because ... syntax highlighting makes them less readable?</p><p><a href="https://qoto.org/tags/SoftwareDevelopment" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>SoftwareDevelopment</span></a> <a href="https://qoto.org/tags/Documentation" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Documentation</span></a> <a href="https://qoto.org/tags/LiterateProgramming" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>LiterateProgramming</span></a></p>