Seconding this; I switched to Obsidian from Notion and I've been liking it. I also use a plugin called Wielder for it that lets me write codeblocks in my notes and turns my note taking system into a literate programming environment. So I have for example a self-written plugin that applies transformations to existing pages to incorporate the sort of question templates suggested in books like How To Solve It or on websites like untools. I also have certain data structures built into the note environment - stuff like asynchronous task management. Since everything is markdown everything just defaults to working when these higher level tools aren't active because I'm in a no code environment.
What I'm not so certain on is if this is actually helping me think better enough to be worth the cost in time of getting fancy. This is an example of a blog post written basically by stringing together notes from walking a path through the graph of my notes:
These are two I wrote before adopting the methodology which I feel a bit happier with because I feel like I learned more in the process of researching them and writing them:
Off-topic maybe, but I'm the author of Obsidian Wielder (https://wielder.victor.earth), so it's great to hear that people in the wild are finding it useful! If you have any sort of feedback how it can help you more, please do let me know!
I'm sure a lot of other Obsidian users here on HN would find Wielder useful as well, but the Show HN I made a while ago didn't get much traction (https://news.ycombinator.com/item?id=31846474), maybe I'll retry once I've added some more features :)
Amazing work and thank you so much for making something so cool. With regard to feedback.
- Some features I'm interested in are being able to install libraries or a recommended path for getting access to libraries via RPC to a less limited runtime. For example, lets say I want to use the hugginfaces API to do text extraction within my note. Clojure has some great tools for running arbitrary Python code from within it, but how can I leverage that code from within Weilder.
- Is there planned support for importing from a namespace in another note? My current workflows are everything goes into one note and then I just hide the sections with the code so they don't distract but sometimes there are pages worth of code. I expect over time I'll find a lot of things that have common implementations.
> - Some features I'm interested in are being able to install libraries
Might be tricky to achieve, as I don't think we can load arbitrary files at runtime in Obsidian. What could possibly work, is loading libraries via HTTP and evaluate them in Wielder after that, but would be tricky is my guess. Worth looking into to though.
> or a recommended path for getting access to libraries via RPC to a less limited runtime. For example, lets say I want to use the hugginfaces API to do text extraction within my note. Clojure has some great tools for running arbitrary Python code from within it, but how can I leverage that code from within Weilder.
If you can run a HTTP server locally (via Python's http.server for example), with the right headers set regarding CORS, you should be able to just use JavaScript `fetch` to GET/POST/PUT stuff to locally running servers. In Wielder, you'd do something like `(js/fetch "http://localhost:8080/read-data")` and use it just like you'd use any JavaScript Promise.
> - Is there planned support for importing from a namespace in another note? My current workflows are everything goes into one note and then I just hide the sections with the code so they don't distract but sometimes there are pages worth of code. I expect over time I'll find a lot of things that have common implementations.
Yeah, I'm currently thinking and playing around with how to achieve this, hopefully via supporting Clojure's `ns` declarations directly, so you can do `(ns my-vault.a-page)` in one document and then simply `(ns another (:require [my-vault.a-page :refer [a-func]]))` in another.
Not the best UX directly, and looks bad, so hopefully the whole `ns` endeavor will work out instead, but will take some time before I can implement that correctly.
> Amazing work and thank you so much for making something so cool
Thank you! And thanks a lot for the feedback, it's very helpful.
> ...lets me write codeblocks in my notes and turns my note taking system into a literate programming environment. So I have for example a self-written plugin that applies transformations to existing pages to incorporate the sort of question templates suggested in books like How To Solve It or on websites like untools.
Do you have any posts or additional information on this in particular?
The key ideas behind How To Solve It are that for a lot of our challenges there are strategies we can use to tackle them effectively. How To Solve It expounds on how to go about understanding a problem, understanding the connection of the data you have with what you don't know, how to make problems more tractable, carrying out a plan, and evaluating the results.
- Untools
A site dedicated to listing various strategies for thinking, communicating and prioritization; they sell templates similar in nature to what I'm building, but I depart sharply from them in my desired document representation choice for templates - Zettlekastian graph continuations for me versus linear documents for them.
- My own tool
This is currently private and not yet ready for public consumption. I have a whole lot of philosophical backing for what I'm trying to build but it is still very far from generating utility at the level I want it too. Later today I'll see about moving some private notes into a blog post going into more depth about what I'm building and why.
Last time I checked, Joplin stores a bunch of metadata in databases and such, is that still true?
I'm still using Obsidian after some years, mainly because it's just a directory of Markdown files (and some JSON configuration in the .obsidian directory), but also for the plugin ecosystem. Would it be hard to use terminal git to sync my Joplin database manually?
Snap & Sketch is my core workflow (it's by far the fastest way to get information from meat space into notes), and the best app I've found so far to facilitate this is GoodNotes. It has three critical features:
1. Native snap & sketch support (no fussing with embedding every time you want to create/edit, which is all the time for me)
2. Stores notes as folders-of-PDF in dropbox, not proprietary format locked behind a subscription.
3. Fast OCR search (I'd happily swap this for good native text editing, but having some smooth search mechanism is very important and many graphical apps don't.)
GoodNotes has plenty of weaknesses -- the drawing tools are primitive, the desktop text editing story is almost nonexistent, it's tied to the mac ecosystem -- so I have been delighted to see the explosion of good Markdown tooling which is strong in these other areas, and I have been hoping that one of them would be good enough at snap & sketch that I could jump. Obsidian.md+excalidraw comes dangerously close to challenging GoodNotes, but my brief trial on an iPad involved too much fussing around to make the snap & sketch workflow happen, so I don't think I'll jump quite yet.
Just including my thoughts for anyone else out there approaching notes from the Snap & Sketch angle.
Here's an example to illustrate the strengths and weaknesses. The biggest weakness is that it doesn't support prose very well, so it doesn't double as a blog post or as a full lab notebook that can communicate the story of what is happening to someone who doesn't already know. The strength is in the sheer amount of stuff I am able to document with extremely little effort: physical layouts, circuit structure, instrument setups, probe configurations, and results across a bunch of devices ranging from the 68000 era through x86 and ARM. Consider the number of diagrams I didn't have to make, the number of screenshots I didn't have to schlep, the number of measurements I didn't have to export, import, format, and describe. I just point my iPad, tap, and scribble.
Making a proper lab notebook for this little repair exercise would have doubled the timeline. In academia, the need to communicate would have justified the time investment. For someone who just needed to generate a 2GHz pulse modulated clock and had a broken signal generator, quick & dirty won the day.
Needless to say, I'd like to have the best of both worlds, but at the moment I regularly put up with the weaknesses of snap & sketch because its strengths are so important to me.
>To publish my notes, I use PineDocs [3] which generates a very nice website
This is music to my ears(eyes?)! And, something I've been searching for my obsidian vault. I'm not a developer, could you expand just a bit about your PineDocs workflow for Obsidian? Especially: does it handle note-to-note links and transclusions?
I share a folder between my Obsidian vault and the folder PineDocs uses with Syncthing (because the machine that runs PineDocs is not my laptop), so as soon as I save my files the site is immediately updated, but PineDocs was not designed with Obsidian in mind, the links work but not the advanced features Obsidian offers.
On the other hand, Perlite [1] is (I never really tested it but it looks cool) designed with Obsidian in mind so maybe it supports more features.
If you want to publish a website directly from Obsidian + support the Obsidian developers monthly (), you can give Obsidian Publish (https://obsidian.md/publish) a try. I use it for my notes and as a demonstration website for one of my projects, works well enough for those use cases.
I can totally appreciate that. That pricing for Publish is way out of whack for my goals. My particular vault se case might only update once or twice a month (it's all already written), so nearly $200 a year for something so static just doesn't make sense.
To publish my notes, I use PineDocs [3] which generates a very nice website with the markdown files
I synchronize the machine that hosts PineDocs with my note-taking machine using Syncthing [4]
[1] https://obsidian.md/ [2] https://excalidraw.com/ [3] https://github.com/xy2z/PineDocs [4] https://syncthing.net/