I don't know why this is downvoted. I think that Bryan Caplan's book The Case against Education - Why the Education System Is a Waste of Time and Money ( https://press.princeton.edu/titles/11225.html ) makes a pretty strong argument to support the related points.
Most people on hacker news have (as far as I've noticed) very much enjoyed their university programs and will defend them quite vehemently. Often these programs were quite high quality, with lots of close contacts with TA's and professors. Further, for people who did theoretical CS or math programs, it can feel quite frustrated working in a field with so many "self-learned" people and find that these are often ignora…
Yeah, I'd agree with this. You see it play out in interviewing when the "academics" ask questions that are quite useless in determining whether or not someone is qualified to build a web app.
It's as if interviewers are just stroking their own ego trying to recreate the relationships they encountered in academia only with the roles reversed.
In Denmark we have a two universities that almost exclusively do project based learning. Basically students are put in groups and attached a mentor who is responsible for teaching them CS. To this is coupled traditional courses in basic math/algorithms/scientific theory. These lines produce candidates that are wasted supperior to our traditional universities. Well, if you need them to actually work with CS in the rea…
That sounds great. If you're not practicing the theory you're learning, then it's just slipping away into oblivion.
I've always said that traditional computer science programs should really be split up into the "theory" part of computer science, and software engineering curriculum (the practice).
I attended a university with a strong co-op program, and I personally believe it is the best possible solution. Classes were focused on theory and my three 6-month co-ops were spent working on meaningful software projects at real companies. As a result, I was able to build up a solid background in Computer Science theory, didn't have to deal with the shortcomings of group class projects, and learned how to ship produ…
I don't know. I attended a regular computer science program and I am glad I did. The goal of university is not to prepare you as best as possible for working life, but to teach academic thinking. Class projects usually have a specific purpose, like teaching computer vision, operating systems or building compilers. You'll spend the rest of your life working. There is no need to rush into it, in my opinion. Then again,…
I had actual part time coding jobs for the majority of the time I was in undergrad. My family didn’t have much so I had to work.
Even though I was forced to work out of necessity, it turned out to be the best move. Learning how to balance theory with “we need this done in a couple hours to try and land the next client”, has been so valuable to my career (even through grad school). Engineering at every level is about trade offs, and nothing makes that more apparent then working a job.
I attended a university with a strong co-op program, and I personally believe it is the best possible solution. Classes were focused on theory and my three 6-month co-ops were spent working on meaningful software projects at real companies. As a result, I was able to build up a solid background in Computer Science theory, didn't have to deal with the shortcomings of group class projects, and learned how to ship produ…
I don't know. I attended a regular computer science program and I am glad I did. The goal of university is not to prepare you as best as possible for working life, but to teach academic thinking. Class projects usually have a specific purpose, like teaching computer vision, operating systems or building compilers. You'll spend the rest of your life working. There is no need to rush into it, in my opinion. Then again,…
I'm pretty sure you don't understand how co-op programs work at universities. You actually take the exact same courses as the "academic thinking" students, you just also alternate with work in a relevant industry.
Can you explain why you think taking courses and working flipping burgers or some other summer job is better than taking those same courses and being mentored by practicing engineers, programmers, scientists, poly-sci, ?
CS grads are so insecure when it comes to this subject. Truth is most schools burry you in theory and barely teach you anything that is used in the field. A motivated self starter can easily surpass someone that went the traditional route. I only recommend school if it’s free. If you have to take loans or go in debt, don’t do it. That money would be far better used to start your own venture and learn on the job.
What a bizarre article. While the whole "Learning Styles" stuff is largely debunked by scientific research, we do know that different things motivate different people. I would argue that motivation is the single most important aspect of learning - if you're not motivated to learn something, you're not going to do it. I tried to learn programming skills on and off all through my teenage years and early 20s, but it alw…
Can you please explain what you mean by "Learning Styles is debunked by scientific research" ?
School gives some a useful fiction, which is primary motivational. E.g. campus, classrooms, professors make you feel better about spending your time on some esoterica. The other benefit is subject gate keeping. Departments at least in STEM, don't offer pointless classes. An autodidact might not know what's valuable and might not always muster the energy to get through. They also might not have the integrity to give t…
School is useful insofar as its guiding and motivating, yes. This is tutoring. Everything else it does is a waste of time. That's where you'll find most of the actual time spent though, and it is certainly not an educational aim. The aim is to grade on recall. It is not to motivate, or guide.
>The aim is to grade on recall.
No. At best this means you had a terrible experience, and are generalizing in ignorance. At worst you are dug into a position and are willing to defend it without integrity (a sadly popular and often successful approach).
Many (most?) of my tests were open book and they were hard because they were puzzles requiring you to have absorbed the book to the extent that you could reason beyond it. The tests would probe our understanding of an idea by asserting a small change in the initial assumptions, and have us complete the derivation with that new assumption. Test questions were novel complications of the problems in the book.
That was my experience, and it was a good one. I'm sorry you didn't get that.
Some great point in OP's critique. But CS isn't music theory. Music theory is not really known well by most musicians who are excellent players. Theory is for theorists. I'm not saying that most musicians know zero theory-- they know what key they are in--but seriously, that only happens after they can play lots of concertos. Pianists tend to know more, but that's because it's staring them in the face every time they play. (speaking as a career musician: performer, composer, teacher of performance and theory) Yes, musicians drill lots of different things, but honestly, it depends what it's for. If practicing improv withchord changes, one needs to know those changes inside and out, but that is truly just one way-- if one is improvising freely, one needs to practice by doing. It really is the only way. Improv is the creative aspect-- classical is the perfect reproduction aspect. I'm thinking software development is a kind of hybrid. Also-- there isn't a pro music job on earth that anyone could learn well enough in a bootcamp for even six months with no prior experience, so the good news is-- no software engineer is regularaly competing with Horowitz yet. Sure, there are virtuosos in programming, but as a musician, you are surrounded by them and are already one yourself as an undergrad-- at least! This is good news for creativity in teaching programming. In terms of motivation of students: from what I have experienced as a programming student in several programs and as an observer-- the material studied is not inspiring. In music, we study Mozart and Thelonious Monk. Puccini and Stravinsky. Reich and Cage. In programming, we studied models and diagrams. We never looked at "great code". When I asked if there was indpiring code to see, my teacher guided me to online lessons made by the school. I asked if there was. jupiter Symphony of code somewhere, desperately looking for a way to be indpired as I am with great writers and composers. My teacher treated me like I was "being difficult". I dropped out of this program and learned on my own. This was one of the tippy top bootcamps in NYC. I was hoping it would be there for me in these ways-- it wasn't. I'm left with this: I can't imagine any musician getting hired to teach with such low level understanding of ... the world of interesting examples- even a beginning music professor can direct students to inspiring examples of greatness in the field. Teachers need to be paid well for the time it takes to develop interesting methods of teaching. Teaching is a complex hybrid science and art. Like all of these, it requires time and mastery, but most important: innovation!
tl;dr: If you only do one type of X-based learning, it will fail to teach you everything you need to know. This is literally covered last in the disclaimer.
The author never talked about whether this was actually a problem.
And frankly, it's a shameless plug for a course that literally uses project-based learning in it.
This reads like a very thinly veiled ad for the author's $500 Software Design web class. Project based learning won't work, traditional learning won't work, only my class will work. In fact the source he quotes (himself) claims he can give you a year's worth of experience in an hour. But why doesn't project based learning fail? Well, in his example Bob, who wants to learn network programming, pairs with Alice, who so…
I was imagining some sort of CS shark in its prime with tons of experience while reading the article. PhD candidate? Hm...