Hacker News new | ask | show | jobs
by uoou 3908 days ago
I think the point is not to get paralysed by the desire to know everything at once.

Each question tends to just give rise to ten more. Which is fine for someone who has a conceptual understanding of programming-in-general (whether from studying it academically or just being more experienced/talented), enabling them to contextualise all that information. But for the beginner who is trying to self-tech (self-learn?), even if they understand the words, they don't really mean anything.

>Django is a application framework, written in Python, which follows the model–view–controller (MVC) architectural pattern

I may know what all those words mean and thus understand that sentence. I may know what MVC is (in that, again, I understand the words used to describe it). But until I've done a bit of Python and implemented something following the MVC pattern (and compared it to the alternatives) I don't really get it. The knowledge has to become practical to be useful.

It's better to only ask questions that go one level deep at a time, practise what you learned until you actually understand it, then ask the next level of questions.

For self-taught coders who are never going to be amazing at it but just want to make stuff (like me), I think this is very good advice.

1 comments

To elaborate, the goal should be to move forward by cycling between asking questions and doing something:

Ask question <-------> Do something (ie bang out code)

The "do something" will never be perfect, so don't waste hours trying to understand the theory perfectly. Use the coding time as a way to both test your knowledge and drive further questions.

This is why it's helpful to pick a motivating project while learning to code. It keeps you moving ahead and makes sure the "question time" is truly filling in the knowledge gaps you need to fill in.

>This is why it's helpful to pick a motivating project while learning to code.

Very much the case for me, yeah. I've tried learning from tutorials and books and I just get bored. But if I come up with an idea and try to make it, I love it, learning the bits I need as I need them.

Should note that I think that if one is capable of learning the academic way, that's probably a better approach. Understanding programming in the general and thus being able to apply it to the specific. You'll certainly make better code that way.

But for me, for whom learning that way is never going to work, the ad-hoc way is fine. It doesn't really matter if my code is scrappy so long as it works and doesn't do harm.