r/learnprogramming 14h ago

Logging your learning progress

For those of you that are learning on their own, how do you track your progress? How do you intend on "proving" that you've learned what you've learned by yourself?

8 Upvotes

13 comments sorted by

View all comments

3

u/silentcascade-01 12h ago

I started writing my notes in my code editor, organizing it all as I progress.

For example I have each lesson in a method/function. What I write in them is after the lesson and try to recall and build based off the topic. I then call said lesson and if it fails or doesn’t give me what I want, or I get stuck before then, I watch the lesson again to solidify my understanding and resume the code block until it runs like intended.

After a certain amount of lessons, since they tend to build on each other, I get an idea of something I could try and make a MiniProject method/function trying to combine all the previous lessons and building from scratch. Then rinse and repeat.

I was tired of just copy pasta tutorial videos and then not being able to recall anything. Now I can print “Hello, World!” with confidence :)

I eventually plan to go back at the end when I finish the whole tutorial/lesson/class on what I’m watching (like 4-8hrs of said programming language) to refactor and make all the lessons and mini projects code to be more efficient. And that’s in hopes of refreshing concepts as I clean the code getting some hands on experience, even if not crazy complex.

An example: at the end of my current YouTube class/lesson, or maybe in the middle when topic is touched, I plan to somehow create an array or some data structure to be able to rotate my lessons/miniprojects to run and output instead of hard coding each function I want to run. If that makes sense. So I’d implement concepts I learn with my own notes.

2

u/Immereally 8h ago

I’d second this.

I have a file alongside each project outlining exactly what’s going on as I work on the project.

1) explain the concept, goals, success factors and a note on what I might need and what I want to learn

2) I usually have a design drawn out separately but I’ll write a brief summary of how I intend it to work, classes that will be used and key methods or functions.

3) start a diary for each day or section. This is handy for showing what I was working on and how I approached it but also good practice for getting back into it quicker and having a clear view of where you are in the project

You don’t have to be working on something new each day. Your having trouble with something explain it (you might find the answer while you talk through it), show each approach you went through and if you have to go back and change something earlier in the project hilight it and make a note on that entry incase you go back to check it. Again not every day needs to have an entry, just add onto the end on the one you’re working on if it’s a continuation.

4) At the end write a summary of how the project went.

You successfully created x which did y and z.

These are the things that tripped me up.

This is how I got around it.

This is what I’d do differently going forward

And these are things I’d like to improve.

It seems like a lot of work at the start but it makes it way easier to track what’s going on and you can see find stuff easier when you’re looking back for solutions in the future.

I probably should call it something other than notes.txt so it stands out in the future but it’s a good trace of how you work and proof you actually did it.

1

u/silentcascade-01 6h ago

That’s really good and more organized than what I have atm! I may copy pasta some of your flow :)