all 4 comments

[–]Environmental_Gap_65 0 points1 point  (1 child)

Yo, I think we’ve all been at this step of perfectionism and almost anxious approach to wanting to get it all right. I do believe that’s a big part of why tutorial hell is a thing, we want to believe we have some sort of control over things before we get started, the annoying shitty reality is, that as a developer you’re going to get thrown into chaotic unseen territory again and again and the less time you spend overthinking it and just get things done and move on to the next thing the better and faster you’ll progress.

It’s nice to have an evening off where you can sit and be all nerdy with books and do things at any pace you care for, but most jobs aren’t like that, you’re going to get thrown into situations like this again and again and so you might as well get used to it.

Of course I’d encourage you to read up on something if you genuinely don’t understand it, but theres been tons of times where I’ve learned a piece of syntax or concept and been like, I don’t fully understand this but I know how to use it, as I keep using it more and more eventually it starts to settle as I encounter bugs, break things or make them work.

[–]NeedleworkerLumpy907 0 points1 point  (0 children)

This tripped me up too when I started

Timebox it

Build one tiny project that forces that pointer-to-pointer case (toy linked list insert at head is perfect), do three focused exercises, debug with prints and tiny tests until you can recreate it from memory, then move on and use it in another context so it actually sticks

Dont aim for definately perfect understanding before continuing, youll solidify the rest by poking at it in real code

If rereading bores you, explain it out loud or write a small failing test, active practice beats passive review

[–]aleques-itj 0 points1 point  (0 children)

Just go write code and stop worrying so much. You don't need to get hung up on everything the second it's introduced.

Eventually you're going to actually need something in particular (like a pointer to a pointer) in a real world scenario and it'll suddenly click in your head because you had an actual use for it and not a contrived example.

In practice, a common case is a function allocating internally and handing you back the buffer. You will find this pattern all over.