Frankly, I don’t know. Yes, the LW codebase is pretty complicated. It’s probably fairly typical of real-world programs of the same size and functionality.
As a beginner programmer, I got started not by working on simple, small or “toy” programs but by diving head-first into gnarly complicated codebases and doing very simple things to them.
This served me well as a learning path, but I’m wary of generalizing to anyone else’s experience.
On the other hand, “a bad idea” strikes me as strong language. If you’re brave enough to attempt to learn to code on your own, getting stuck while attempting to tame a complex codebase shouldn’t be a traumatizing experience. What’s the worst that can happen? That you quit and set your sights on something simpler.
Experience helps a lot in reading something like the LW codebase. If you have an idea of how Web frameworks tend to organize behavior, you won’t be too surprised by where things are and navigation will be relatively easy. If everything looks new to you, you’ll be getting lost quite a bit.
But in learning your way around Web programming there’s no substitute for getting lost. Any other Web framework is going to confuse you to some extent, and any app built on top if it.
My main idea with this recommendation was that at least you wouldn’t have to build up a mental model of what the application is for, whose needs it serves and how those people experience it, since we all already have this model in place from a user’s perspective.
Frankly, I don’t know. Yes, the LW codebase is pretty complicated. It’s probably fairly typical of real-world programs of the same size and functionality.
As a beginner programmer, I got started not by working on simple, small or “toy” programs but by diving head-first into gnarly complicated codebases and doing very simple things to them.
This served me well as a learning path, but I’m wary of generalizing to anyone else’s experience.
On the other hand, “a bad idea” strikes me as strong language. If you’re brave enough to attempt to learn to code on your own, getting stuck while attempting to tame a complex codebase shouldn’t be a traumatizing experience. What’s the worst that can happen? That you quit and set your sights on something simpler.
Experience helps a lot in reading something like the LW codebase. If you have an idea of how Web frameworks tend to organize behavior, you won’t be too surprised by where things are and navigation will be relatively easy. If everything looks new to you, you’ll be getting lost quite a bit.
But in learning your way around Web programming there’s no substitute for getting lost. Any other Web framework is going to confuse you to some extent, and any app built on top if it.
My main idea with this recommendation was that at least you wouldn’t have to build up a mental model of what the application is for, whose needs it serves and how those people experience it, since we all already have this model in place from a user’s perspective.