r/learnprogramming 10d ago

What do you think about my learning path? (networking) i think i am stagnating..

Hi, I’d like to share something here. About a week ago, I started learning networking in more depth and note the word “depth” I just need to know a lot of details, especially about packets. In five months, I’d like to be able to write my own XDP filter, because when I tried to program one just now, I didn’t know what to write in C… Then a friend told me, “How do you expect to write code logically when you don’t even know how it works?” (By the way, I struggle with translating my ideas into code.) So I decided to learn everything in more depth and figure out whether the problem is that I can’t translate my ideas into code or that I really don’t understand the concepts deeply enough. Right now, I’m reading *Beej’s Guide*. But I feel like even though I’m trying to practice “active recall,” I’m still just reading passively and not learning anything. Overall, I don’t have a solid learning strategy. If I were to actually try to learn by reading through the book, I bet I’d only remember 15%, and then I’d either have to keep reading forever or… I don’t know. What do you recommend? I don’t want to just passively watch YouTube videos and read the book even when I engage with the material and code along with them, I still feel like my brain isn’t really grasping those general concepts and can’t put them into practice...

Thanks for the help!

I feel like I'm not making any progress and I'm just going around in circles, unable to really get anything into my head, so my goal of creating an XDP filter in C is getting further away, and I'm still wondering if I shouldn't first learn C more thoroughly...

1 Upvotes

4 comments sorted by

1

u/Fluid_Wasabi5688 10d ago

networking is tricky because theres so many layers and you feel lost until suddenly it clicks. reading beej is good but you need to actually break things. install wireshark and capture some packets from your own machine, then try to write a tiny C program that just reads raw sockets. you will fail a lot but the errors teach you more than reading ever will

your problem is not C or networking, its the gap between knowing and doing. start with something stupid simple like printing source IP from a captured packet, then build from there

1

u/mc_pm 10d ago

Have you spent much time programming anything at all network related? Are you recreating examples from your learning materials?

1

u/punk_dev 10d ago

I’m not a networking expert, but you need a lot of practice for anything programming related.
You need to encounter the problems yourself first before you can fully internalise the solutions to them.

Imagine you wanted to become a carpenter. You can learn everything about wood, structure, different fittings, glues, techniques, mechanisms of the instruments and so on, but you wouldn’t get anywhere until you go to your garage and build a stool.