I’m becoming a student again after 10+ years and am a very beginner Obsidian user that currently uses it more for notes than anything else.
I’m absolutely overwhelmed by the number of possible ways to setup a vault / system and rather than go through the rabbit hole for hours like I usually do, I’d love to just get some direct inspiration from others who are in my situation.
I’m about to start a CS degree coming from no programming experience. I’d love to hear from fellow CS students about their set-up and how they utilise it during classes etc?
Would also love to know the absolute must-have plug-ins as again, I go down the rabbit hole of plug-in searches and end up overwhelmed.
Would be great to see some screenshot examples of your setup!
Thanks a lot
Imo it’s better to practice writing code than put something in notes. If you want to put things in notes, put the philosophy. Philosophy is fluid, syntax is not
There are tools to support literate programming wherein the code and text are woven together.
It really depends on the class.
For intro classes, mainly focused on teaching you a language or basic structures, @slabz is right that actually writing code is the best way to learn it. So I do make notes in those classes, but mostly as a temporary reference until I’ve practised the language enough to know these things.
For more theory-heavy classes, like algorithms or ethics, my notes generally have long-term use, so those go into my vault. I have three types of notes I make:
raw notes: these I take during class, placed in their own folder and sorted simply by date. I use the calendar plugin to manage these. When I look over them later, the useful bits get extracted out to
concept notes: simple notes with the concept as title and a short description underneath. These are useful for quick recall, especially if the concept is later used as a building block for something else. Building on these are the
idea or comparison notes: these answer questions like, What’s the difference between imperative and declarative languages? How does the ecosystem of C# compare to that of Java? Which sorting algorithm is useful for which situation? What are the principles for writing clean code? These notes often link back to concept notes for definitions.
When I study for an exam, I quickly go through the raw notes to check if I’ve missed something, but often spending time extracting and writing the other notes means I already know most of what’s in there. I usually also have the local graph view open somewhere in my workspace. When I write a new note and link in its concepts, sometimes I see related notes which I’d forgotten about or not realized they were relevant, which also helps with recall.
Lately I’ve been using the Anki plugin to create flashcards for some topics I know I’m going to have trouble remembering, but it’s not been long enough to really see the effects of that.
Hopefully this’ll give you some idea of my setup; I wish you success with your studies
I don’t know how different is CS with other disciplines. I’m a phd student in CS, I use obsidian to my research. I use the zettelkasten method.
When I have a code idea, I develop it in a paper, when i have a good pseudocode, I create a new obsidian page and write the pseudocode and its explanation.
If I have a new idea for that code, i create a new note and backlink the previous note.
To read papers, books and internet blogs, I use zotero to store them, after I for each note I create a new obsidian page about what I understand about that idea.
That is all, I also use obsidian to write letters and organizate things, I have a folder called others when i store all those things.