During my undergrad years, there were people who made it out without programming in any language besides Java, and barely did any tech hobbies or independent programming outside of class. There were others who were constantly learning other languages, playing with random tech, and building small opens source tools and webapps.
I've met people who went through community collect programs who didn't understand basic BigO notation or algorithm optimization (no fault to them; it's just not taught in a lot of two year courses) and I've know people with only high school degrees who've picked up advanced CS books and would learn about compile theory and different types of parsing on their own for fun.
Absolutely you get out what you put in. My company has thousands of programmers. I was in charge of helping a group of programmers self learn a new framework/language. It started off with 30. It ended up with me alone in a room. This was easily 3k worth of free classes. It was not even that hard you just had to watch some videos and maybe do some simple coding, maybe 1-2 hours a week, 9 sessions over 3 months. Most just did not do it, which means they would not show up to the sessions. By the last 2 sessions I just did not bother to try to get them to come. There were 3 I could kind of coach along and get them to sometimes engage. But mostly they just were not interested in helping themselves. They wanted me to sit in front of the 'class' and teach it. Now that I think about it this could be a good way to filter for people who are motivated to do work. But it would bias against people who have a full schedule.
Nah, your instructor's/TA's time is limited. I can't schedule 6 hours with them. I can't request as much time as I want. Colleges have other prerequisites which must be filled. The American systems don't let you go to college and do nothing but computers, and you must take time away from programming courses eventually. I can't maximize the time for programming, so, I'm limited to what I can put in. And if it's a tough college, it takes real effort to pass those other courses and you likely can't just coast. It's a forcing function with guidance.
If I put in a ton of time on my own to study stuff from the internet, that's the internet returning my investment of time and focus. It's got nothing to do with the college at that point.
I found that if you want to talk about the professor's research area, they will often have time to talk, at least at the beginning / end of classes or over emails.
I'm not as sure with TA's, partly because I often skipped the TA-sessions for various reasons.
During my undergrad years, there were people who made it out without programming in any language besides Java, and barely did any tech hobbies or independent programming outside of class. There were others who were constantly learning other languages, playing with random tech, and building small opens source tools and webapps.
I've met people who went through community collect programs who didn't understand basic BigO notation or algorithm optimization (no fault to them; it's just not taught in a lot of two year courses) and I've know people with only high school degrees who've picked up advanced CS books and would learn about compile theory and different types of parsing on their own for fun.