This is great collection of "Digital Gardens", a n...
# linking-together
r
This is great collection of "Digital Gardens", a new (to me) phenomena I've noticed of people publishing interconnected notes online. https://twitter.com/Mappletons/status/1250532315459194880
❤️ 6
n
I just hopped on this bandwagon as well — rethinking what you can do with hypertext is really fun! I'm trying out typed links https://twitter.com/noahtren/status/1253545273852297216?s=20
😎 1
i
(Tangent Level Rising!) Typed links is a wild idea! I've been enjoying Wikipedia's preview-on-hover feature far more than I expected I would, and I love the force-touch "peek" preview on iOS. Neat to think of other ideas for making links partially bidirectional.
n
I heard someone describe the perfect hyperlink as a visual "portal" that you can glimpse into to see where it's leading. Instead we just get underlined text with a URL 🙃 I'm playing around with showing a Wikipedia-style abstract for posts as well as articles on hover.
s
I recently made mine public too - https://szymonkaliski.com/notes
😎 1
r
One of the related ideas here that I think it really exciting is embedding media into a document via a URL, that represents not an exported image, but an actual reference to the live, editable version of that image. E.g., here's an example of embedding a Whimsical mind map in Notion via a URL https://mobile.twitter.com/NotionHQ/status/1229907609970331648 A problem I've been trying to figure out a solution to for a long time is how do you create a multimedia document that's composed of assets created in various specialized apps (e.g., an image editor, a graph created in a spreadsheet, a video editor), where you can view/edit the document, and view/edit any of the assets.
❤️ 2
@szymon_k I really enjoyed looking through your notes, yours is one of my favorite Digital Gardens. One minor question I was curious about, you leave some of your outbound links raw, e.g., the Chris Granger post on this page https://szymonkaliski.com/notes/spreadsheet-for-end-user-programming-might-be-a-wrong-model Why not wrap that like
[ibdknox](<https://twitter.com/ibdknox/status/1206244836795281410>)
? (For context, I'm vaguely thinking of taking on a project that's something like "A Style Guide of Personal Wikis", so I'm becoming curious about these seemingly minor style choices.)
s
@robenkleene thanks so much! I leave the links like that out of laziness really, no real reason behind that; I would probably pay more attention if vim concealing was better, but it leaves strange artifacts and if I have to look at the whole link anyways, I find just having it "plain"to be more readable than markdown's link - if that makes any sense
r
Yeah, that was my guess, and really there's something to that. Some of style choices (or non-choices) give a feel of, "this is a thought in progress" rather than "this is a final work ready for publishing". I think there's something interesting about that, and it seems like I'm seeing more and more things on the web recently that give off that vibe. Everything I see of Roam Research also has that feel.
s
yeah exactly, those notes are a process, and evolve quickly as my understanding/thoughts change, so there's no real point in polishing them I think
s
What’s fascinating to me is that suddenly there is more discussion about personal knowledge management — everybody seems to be interested in it lately. But that could just be the bubble I’m in, as I have been investigating this for a while now. I’m sure most of you have heard about Roam Research at this point (it’s in the list). It seems they managed to at least partially cause the spike in public interest, but it’s hard to tell if that’s just my imagination caused by the specific selection of people I follow on social media. What makes all of you interested in this? Where do you see the connection to the future of programming?
💯 1
👍 1
s
@Stefan if you're interested I have a longer article on my approach to this, and the path I took that led me there: https://szymonkaliski.com/writing/2020-04-19-memex-dreams/ — in terms of how that connects to "future of programming" - I'm not sure, but I have some intuitions: https://szymonkaliski.com/notes/end-user-programming-vs-programming/, https://szymonkaliski.com/notes/spreadsheet-for-end-user-programming-might-be-a-wrong-model/, https://szymonkaliski.com/notes/solving-things-visually/, etc.
r
I have 100% noticed the sudden interest in knowledge management too, there's definitely something going on and it's frankly upending my world view. Consider a tool like Roam vs. Evernote, Evernote is the sort of product I'd expect to fill this space, while Roam is just so fiddly, as a general rule, software progress over the last decade has been replacing fiddly tools with streamlined tools, so to see a trend starting in opposite direction is startling. And to connect products to process, the new approach to knowledge management is much more work than just putting things in Evernote/Pocket. I don't fully understand the connection to Future of Coding, but I feel like there's something there. There's something fundamental about what we're all doing that's taking a bunch of different research projects and trying to find connections. We're all trying to make sense of 100s or 1000s of different approaches to programming out there, and why some became popular and others didn't. Making sense of all that information means a ton of knowledge management, and making connections in particular.
s
what's been lately on my mind is this: https://szymonkaliski.com/notes/programming-tools-and-people-needs/ - people in general probably don't really want "tools for programming" but better "tools for thinking" - especially when combined with https://szymonkaliski.com/notes/notation (which I have to refactor into multiple notes, but at the bottom there's this notion of programming being a specific case of a broader problem)
💯 1
k
@Stefan I think it's a tar pit. "I saw the best minds of my generation destroyed by madness.." We have trouble enough keeping hyperlinks working. We should stabilize them and make them more reliable before we add features.
k
Thanks everyone for these interesting links! For me, these projects are not just interesting because I care about note taking, but also for my own FoC project, in which the integration of code with notes/stories is an important element. My dream is a Wiki-style networked of interlinked text-code combos. Literate programming combined with hyperlinked Wikis.
❤️ 3
😮 1
r
@Konrad Hinsen Sounds interesting! There's some overlap with what I'm working on. What's different about what you're doing versus something like Observable (https://observablehq.com/) or Jupyter Notebooks? (This is one of the questions I ask myself).
k
@robenkleene There are two important differences that I see. First, notebooks are only high-level scripts with results, they call library functions that are hidden from view and are not even accessible from the notebook. In my dream system, the Wiki is the codebase (up to some primitives perhaps). There's a story on every algorithm/implementation, not just an end-user story. Second, I am not just embedding code snippets into text, but I am designing a formal language to be integrated into the text, much like mathematical notation. This is best illustrated by an example (https://khinsen.net/leibniz-examples/examples/leibniz-by-example.html). The key design feature to make this possible is a language based on term algebras and rewriting rules. In such a language, declarations are short and their order (almost) doesn't matter, so they can find a place in the main text more easily.
❤️ 3
k
@Konrad Hinsen it sounds like the mandate of the original literate programming system as described by Knuth, except that the mathematical pieces are also amenable to be operated on by solvers. CWeb had tangle and weave, you have 2 tangles and weave. Is that a fair characterization?
k
@Kartik Agaram Knuth’s literate programming is indeed closer to what I have in mind than notebooks, but I do want to be able to manage results of computations. Two tangles/weaves would be an option to implement my system, conceptually, but that’s not how I plan to do it. For now, I have DSLs embedded in Racket and Pharo (different prototypes but roughly the same idea)
👍 1
j
One of the related ideas here that I think it really exciting is embedding media into a document via a URL, that represents not an exported image, but an actual reference to the live, editable version of that image.
@robenkleene Do you mean something like Microsoft Fluid? I think of Fluid and what you’re talking about as transclusions+, i.e. not just live reads but live bi-directional write-access

https://youtu.be/RMzXmkrlFNg?t=140

r
Yeah, I hadn't seen Fluid, that seems very similar, thanks for sharing! It seems transclusion is getting to be a hot topic now, it's also one of the core features of Roam Research (https://roamresearch.com/). For the record, the reason I started running into this problem is working on a development team, we'd sometimes make diagrams to share as part of project plans stored as Markdown in
git
. If you then wanted to make those diagram easy to embed in a document, you'd export it, and embed it as an image. But then if someone wants to edit the original file, you need to add that to the repo too. That whole setup was very clunky.
j
Yeah I’ve experienced that problem too. Hopefully soon this sort of process becomes non-existent, like going from exporting Sketch assets to Figma. Also, I’m familiar with Roam, and it’s exactly where I learned about transclusions. I just introduced myself in #CC2JRGVLK 🙂