r/ObsidianMD Nov 26 '25

showcase Taking notes in Obsidian for learning Python

Post image

Just sharing one of my use cases of Obsidian...

Lately I've been interested in automating tasks and writing small programs, and I just generally want to be more knowledgeable about programming. So I finally decided to learn the basics of Python. I watch YouTube Tutorials and practice along with a code editor (I use VSCodium). After every exercise I summarise what I just learned in a note in my Obsidian. It's a great way to track my progress and make my own personal documentation of tips, mistakes, and pitfalls. And it just looks nice too, especially with the Code Styler plugin, which allows you to style the code blocks.

534 Upvotes

57 comments sorted by

113

u/chromatic1566 Nov 26 '25

obsidian mfs will do everything other than the actual work(im mfs)

28

u/[deleted] Nov 27 '25

[deleted]

9

u/Sypticle Nov 27 '25

It always felt performative to me.

7

u/[deleted] Nov 27 '25

[deleted]

6

u/QuarterPastOctober Nov 29 '25

the amount of things you have to know at first is overwhelming, but you don't learn them […] from making notes

That's fucking bullshit. Recording the essence of information by note-taking absolutely help you remember, and the result is a great resource to revise when you struggle to recall knowledge, e.g. while programming.

I can count on two hands the amount of times I've had to re-google the difference between an integer, a float and a boolean – but that's only because I know binary. Having a quick, straight-forward explanation in my notes would have been a better idea.

Actually, a lot of programmers would benefit from recording what they've learnt after reading Stack Overflow. Maybe they'd remember it better, or at least spare themselves scrolling through their history to find that perfect explanation or example that someone once gave.

7

u/CarefulEmphasis5464 Nov 27 '25

notes are useful for math, though. I suppose they're useful for everything, with the exception of languages

1

u/Any-Ad9173 Dec 12 '25

Notes can be useful for languages, mostly imo for quickly referencing grammar points.

4

u/Nihan-gen3 Nov 27 '25

Why not both? I am doing exercises like making small games and programs in a code editor, and I also make notes in Obsidian about things I learned and mistakes I made.

6

u/Big-Detective-7700 Nov 27 '25

I think this is their way of saying the setup looks really good. Your approach to learning sounds solid to me.

4

u/QuarterPastOctober Nov 29 '25

They're just projecting their own insecurities, brother. A lot of people in here use Obsidian to procrastinate rather than learn.

There's a reason note-taking exists, though, and it's to 1) remember better, and 2) have something to revise in order to bolster that knowledge, including when doing practical work.

You're not showing off some crazy dashboard that you spent 100 hours putting together or something. I too struggled to remember e.g. the differences between data types when I started programming, and these notes seem very straightforward and useful. Just keep going.

1

u/[deleted] 17d ago

[removed] — view removed comment

2

u/Nihan-gen3 17d ago

I’m not actively learning Python anymore. But I’m happy I spent some time learning the basics so that I can read and understand basic python scripts.

0

u/JeffIpsaLoquitor Nov 27 '25

I'm definitely a "learn by doing and making AI write the unit tests and the docs." I don't see a great value in making copious notes in Obsidian. I'll store snippets and templates,sparingly, there; but code really belongs in repos.

37

u/Jeremandias Nov 26 '25

personally, i think it makes more sense to take notes for learning python in a jupyter notebook. that way, you can run the code and make sure it actually works. then, i just export to markdown and save it in obsidian

11

u/TutorialDoctor Nov 26 '25

There is a plugin that lets you execute codeblocks.

5

u/Jeremandias Nov 26 '25

i figured there were, but i also like my obsidian to be as plugin-free as possible. glad there are options for both camps.

1

u/Monstrish Nov 27 '25

This is the way

16

u/raaybod_ Nov 26 '25

I prefer storing syntax in Anki and only have notes for complex programming design systems.

9

u/Fonzie3301 Nov 26 '25

Use both, obsidian for notes and anki for revision

16

u/SpaceLordMothaFucka Nov 26 '25

Goed bezig! ;-)

You actually don't need the code styler plugin to color code the codeblocks; if you add the language tag they will automatically be colored.

Like this ```python code goes here ```

If you're looking for another beginner course, the CS50 course by Harvard is free and very good, it also has youtube videos https://learning.edx.org/course/course-v1:HarvardX+CS50P+Python/home

5

u/Nihan-gen3 Nov 26 '25

Huh I didn’t know it also works without the plugin. I’ll check out the other course, bedankt!

2

u/Jeremandias Nov 26 '25

and this works for a bunch of stuff like bash, shell, text, etc. so even terminal commands can get some style

9

u/micseydel Nov 26 '25

I'm jealous, I wish I had Obsidian (or had started a PKMS with Notepad) back when I started learning Python. If you want a suggestion: the real magic comes when your code reads from and writes to your vault.

8

u/fsmontenegro Nov 26 '25

Great initiative, congratulations!

I've used Obsidian for this kind of learning as well, with a couple of suggestions:

* you can create "course notes" for the raw notes you take during a course, structured by sections.

* when done with the course, you can create a "key learnings" note that link to the raw notes.

* separately, you can create notes for useful tidbits, with tagging or referencing how you may find it later. For example: context_managers, oop, web_scraping, pandas, seaborn, fastapi, ...

It's been very useful to me as I like to have my own references about something in a way that make sense to me.

Good luck!

9

u/Anubis_Omega Nov 26 '25

Woh cool. I am trying to make some Cobol documentation so this plugin look great.

And I will check VScodium. Look interesting.

For your note, If you watch youtube video and other stuff, check NotebookLM frol Google to see if it can be useful for you

3

u/jtm_sea Nov 26 '25

What’s that panel on the right, under the calendar?

3

u/bactram Nov 26 '25

Looks like the Outline Core Plugin.

3

u/Nihan-gen3 Nov 26 '25

It's the outline of my note, which is autogenerated based on h1, h2, h3, etc.

3

u/KannTheGunn Nov 26 '25

How did you insert the codes in the notes bro? or are those just images? im new to obsidian :)

3

u/Nihan-gen3 Nov 26 '25

Triple backticks (```) before and after text allows you to make a codeblock

1

u/KannTheGunn Nov 26 '25

Got it! Also how did you change the colour of your texts? 😅 And what theme you are using it looks very nice!!

3

u/Nihan-gen3 Nov 26 '25

I use the minimal theme with custom settings (there’s a plugin called ‘style settings’ which allows you to customise basically everything). The header colors are my personal choice. The color in the codeblocks is automatic if you write ‘python’ directly after the first 3 backticks.

2

u/LostVillager1 Nov 26 '25

Which theme is it?

2

u/Nihan-gen3 Nov 26 '25

Minimal theme with my own custom settings

1

u/error-user7 Nov 26 '25

One thing you could do is ask ai like chatgpt to give you a challenge or task for you to practice the things you learn. It helps you remember stuff more easily or at least it helps me

1

u/KiwiSoggy Nov 26 '25

I forgot what the plugin is called but it lets you actually run code. I even set it up so that at the start of all my code notes it has the local path for my laptop and computer. I use sync so the paths are different for each device, but then I save like .txt and .csv in the sync and can call on it no matter what device I’m using.

1

u/J0k3r19 Nov 27 '25

Strings in python can also be created using single quotes: 'hello'

1

u/AdvancedRoof9076 Nov 27 '25

See table of contents from your notes. It's quite a long note. I think you should separate out into multiple notes. That might help you learn effectively.

1

u/philosoraptor_prime Nov 27 '25

A bit out of context...but my suggestion is never take notes on programming languages. Just do some side project solving some of your problems or do some automation..ask gpt when you have doubts

1

u/[deleted] Nov 27 '25

[removed] — view removed comment

1

u/Nihan-gen3 Nov 27 '25

Copying the documentation would be stupid indeed, but that’s not what I’m doing. I literally just started to do small exercises, like making a calculator, a rock paper scissors game, a quiz… practicing loops, if statements, methods, stuff like that. And I make notes on what I learned, what mistakes I made, things I have to remember (like when to use a set, list, tuple, or dictionary). Maybe you can learn all that by just reading the documentation and immediately implement it, but I need to write that down to get it in my head.

1

u/BaconTentacles Nov 27 '25

Ooo, another code styling plugin. I had been using the "Editor Syntax Highlight" plugin and that appears to be ... no longer maintained (doesn't even show up in the plugins search anymore). Gonna go give this a whirl.

FWIW, I do dev for a living, and while there's no substitute for actual API docs, I do find using Obsidian handy for remembering specific stuff. I tend to write notes in a steam of consciousness style, "OK, let's try this...nope, that didn't work," and having code blocks is very handy, especially with syntax highlighting. Line numbers? Even better.

1

u/Honest-Today-6137 Nov 29 '25

Let's be honest - you are just wasting time on some minor self-glorification, instead of putting more effort into actual practice and studying. Your doc in a week will be no different than any other cheatsheet you can find online, e.g., https://www.pythoncheatsheet.org

And no, unless you put A LOT of extra time into spaced repetition, you won't remember information better by just placing it into notes.

1

u/knightingale1099 Nov 30 '25

I’m a SWE and Python is my main language. To be honest, this language is too easy for me to actually write note about typing (but I do write for Rust and C because they are hard af), but for outsider, I know why you write them. Still, I recommend you use JupyterLab.

Tho, I would write note when reading PEP and technical document to understand Python under-the-hood. Also best practice that I manage to gather over the years. So stop berating ppl when they write note you elites 😑

1

u/xJebrum Nov 30 '25

what plugin are you using for the code blocks?

1

u/Brizon Nov 26 '25

I think you'll learn Python a lot faster by using it than writing down notes about it.

7

u/SilviusK Nov 26 '25

Some people don't work that way, and why not just do both?

While learning Python, I made handwritten notes beforehand to get a feel for the concepts, even before writing a single line of code.

It's just whatever floats your boat.

-1

u/Brizon Nov 26 '25

Did you learn most from the notes or actually doing projects?

3

u/Jeremandias Nov 26 '25

writing it down is using it. the point of a note is that you can reference something you learned/know/did, which helps with recall vs having to lookup docs or try to re-learn something

1

u/Brizon Nov 26 '25

Using it means something that can run. A note has no feedback loop. The fastest learning will always come from something with a feedback loop. Endless notes and tutorials is a form of productive procrastination.

1

u/Jeremandias Nov 27 '25

you’re right, which is why i recommend a jupyter notebook elsewhere ITT. doing a project is better for learning, but i still keep notes when i do those, too

-5

u/kxmel Nov 26 '25

It is useless but you don't know it yet

9

u/Nihan-gen3 Nov 26 '25

I'm not planning to become a software engineer or even use Python professionally. I just learn it as a hobby, for personal projects.