> Usually homeworks get very easy which is a good sign
I agree, but having homeworks in itself is a big advantage! It means you're in a structured learning environment where someone has taken the care to create a learning path and added checkpoints with carefully designed problems designed to refresh + assess what you've absorbed until that point.
When you're learning outside the classroom (for yourself or on the job), there's this sudden loss of all bounds where you now also have to draw a line of what knowledge is reasonable to acquire and what is out of scope. For example, when working independently on personal projects, I sometimes get sucked into reading about the details of protocols, standards, RFCs etc. and have a difficult time deciding when to stop.
One answer is learn just enough to solve the problem at hand at move on, but if you're in a field like eg. security you feel an obligation to do your due diligence when designing something. And of course, with LLMs now it's possible to move past any problem without learning anything at all, so you have to be even more intentional in which things you do decide to learn.
This is why I always recommend an education over self learning programming. I can absolutely see the argument in places like the US where it costs an arm and a leg, but in Europe and other places with free education it's pretty much a no-brainer to me.
Not only does it help you learn in a structured way with predetermined goals etc, but you end up with fairly solid evidence of what you've learned.
I think the self learning path is much more difficult, both figuring out what to learn and then proving what you know to a potential employer. I tried that first and did learn some things, then I tried calling a potential employer who asked me a few questions, quickly assessed that I wasn't up to their standard and recommended a formal education. I took his advice and my career was pretty much on rails from then on.
A common argument is that they teach a lot of "useless" stuff and you can tailor your learning better on your own. I think it's really hard to figure out what to learn when you have no idea what the options are, and I think you won't know what's useful until you end up using it. Many people go through their whole careers doing things the wrong way because they don't know they need to learn something that would help them do better. There's also nothing stopping you from learning extra things beyond the curriculum, in fact I would recommend that.
Another common one is "I didn't learn anything in university" and all I can say about that is if you spent 3 years where your job was learning, and you didn't learn anything, then that's on you.
>Another common one is "I didn't learn anything in university" and all I can say about that is if you spent 3 years where your job was learning, and you didn't learn anything, then that's on you.
I don't think that's what people mean when they say that. They followed the curriculum and then when they started working they found they needed little of what they had studied and had a lot of gaps in their knowledge that needed to be filled.
That will always be the case though. No education is perfect, it will lag behind infustry standard because it takes time for the curriculum to catch up and industry standard still evolves rapidly.
I also think this view severely underestimates how much you actually end up using. For example you (are supposed to) learn at least one and more likely 2-3+ programming languages. We learned DSA which I very frequently see mentioned as "useless" which just tells me they never understood the topic to begin with. We learned about databases which I'd say most developers end up using. We learned about web development which sure if you go on to work on embedded systems or something you might not use it but it's a stretch to say it's useless.
I think the DSA example encapsulates a lot of this. Most people aren't top students who actually understand the topics, most people are mediocre and lazy. They learn barely enough to pass then they forget 90% of it and then they complain that it was a waste of time. Well duh. Of course it's a waste of time when you didn't actually learn it.
They go to uni just for the piece of paper and then complain that all they got was the piece of paper.
> Usually homeworks get very easy which is a good sign
I agree, but having homeworks in itself is a big advantage! It means you're in a structured learning environment where someone has taken the care to create a learning path and added checkpoints with carefully designed problems designed to refresh + assess what you've absorbed until that point.
When you're learning outside the classroom (for yourself or on the job), there's this sudden loss of all bounds where you now also have to draw a line of what knowledge is reasonable to acquire and what is out of scope. For example, when working independently on personal projects, I sometimes get sucked into reading about the details of protocols, standards, RFCs etc. and have a difficult time deciding when to stop.
One answer is learn just enough to solve the problem at hand at move on, but if you're in a field like eg. security you feel an obligation to do your due diligence when designing something. And of course, with LLMs now it's possible to move past any problem without learning anything at all, so you have to be even more intentional in which things you do decide to learn.