Do all the things like ++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatarSign Up
From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple APILearn More
Search - "wk299"
I think the main issue with Computer Science is that it's considered an Academic study, while 99% of work is very much dynamic, quickly evolving and hands-on.
I think all forms of (higher) education should be part time, starting at 4:1 college/work, gradually moving towards the opposite.
Currently, combining work and study is only done for "lower level" education, at least in my country: For example a car mechanic needs to work on actual cars, and barbers need to cut actual hair.
To me, it makes sense if engineers work on actual software, during their education.
It also feeds back into the education itself, when companies are paying for courses and the course doesn't teach practicalities, there's a lot more feedback to the colleges on how to adjust their material.9
Most kids just want to code. So they see "Computer Science" and think "How to be a hacker in 6 weeks". Then they face some super simple algebra and freak out, eventually flunking out with the excuse that "uni only presents overtly theoretical shit nobody ever uses in real life".
They could hardly be more wrong, of course. Ignore calculus and complexity theory and you will max out on efficiency soon enough. Skip operating systems, compilers and language theory and you can only ever aspire to be a script kiddie.
You can't become a "data scientist" without statistics. And you can never grow to be even a mediocre one without solid basic research and physics training.
Hack, I've optimized literal millions of dollars out of cloud expenses by choosing the best processors for my stack, and weeks later got myself schooled (on devRant, of all places!) over my ignorance of their inner workings. And I have a MSc degree. Learning never stops.
So, to improve CS experience in uni? Tear down students expectations, and boil out the "I just wanna code!" kiddies to boot camps. Some of them will be back to learn the science. The rest will peak at age 33.17
start teaching people how and why to delete code instead of teaching them only how to write code
compare functional and object oriented languages as well as high level and low level languages and explain what are advantages of using certain language without going into the syntax
let people do mistakes and don’t punish people for making them but let them explain what happened, if they know what was the cause of mistake it is worth ten times than doing things correctly
mix teams per period of time instead of per project
make showcases how to modify ugly code to pretty one and what are the steps and what patterns people should look after
teach by not showing old stuff but showing where old stuff exists in modern things and why it’s important there and what’s the purpose of doing things certain way instead of flat theory based on ancient examples1
Learn to read documentation and don't rely on 5 minute Youtube tutorials, stackoverflow or dev blogs for every little thing.6
I think what would help is to teach them these things:
- awareness for security in code
- how to use a fucking VCS like Git and how it works
If only I knew about the manga like that during my university times... Math could have been a piece of cake.
Manga guide series includes 40 books
Including manga guide to databases.
Closest more professional level same level friendly, would be head first series8
Bring the fun and curiosity back.
School education? Mostly rinse and repeat, learn from heart and do as you are told.
First job? Take these bread crumbs, shit out gold ingots, please.
There are few who had either very kind and gifted teachers / persons in their life or had a strong will / desire to learn by / for themselves - but it's hard to combine fun and curiosity with the - most of the time - very harsh reality and environment we live in.
I'd really wish that it would get back to fun and curiosity and not the endless myriad of bitching, hissing and fighting it usually is.
What I find most tiresome in education is the overflow of information with no value - most content is outdated, wrong, harmful, not precise and especially not helpful.
Thinking about good education I've got very fond memories of hanging out in IRC chats, talking with people who were "ancient" (la me 15-20, them 40 plus ;) ) and not being "shood" away, but rather getting fed by book recommendations, hints, appointments when they had more spare time to explain in private IRC sessions etc.
The atmosphere was always a "we might not have time for it, but we'll try and don't worry if you don't understand it".
When I'm trying to find information today... It's really 90 - 95 % filtering, 4 % try and error, 1 % finding what I need.3
Offensive and defensive at both code and infrastructure levels.
So many times I see devs not give a flying pancake about security. Whether it be rolling integers for sql injection or permission guarding to prevent someone executing something they shouldn't.
Why is security in this industry always the last thing to be concerned about when it's the first thing that's going to kill your business.
Actually let people in? IDK, as someone who's trying to finish her last academic step, I am mostly killing time instead of doing something useful.1
i think it's a waste of time and resources to memorize syntax and other stuff you can google. since we have a lot of material available, we should focus on logic, more abstract concepts, stuff you can't copy paste. well, I think that should be the way in every area, not only CS15
Is there a scientific term for *that* window of time where you feel totally unproductive before or after a call/standup? How long is it for you?5
Shut down the bootcamps. The market is over saturated. Most are just showing YouTube videos anyways as a big chunk of the curriculum. They make people think anyone can code, but you really need ambition and an ability to accept failure when your code doesn’t work (not just memorization skills or a can-do attitude). Even though some states do have regulations, they rely on the public to report any illegal activity. That’s why a lot of scams persist. They’re also making the debt crisis worse with ISAs.10
Stick to one project about which you want to learn but don't know how to do it,complete it...and now you have learnt something new
Separate theoretical computer science from practical computer science.
Honestly, create a new speciality, the computer mathematician. Fill it with theoretical computer science, algorithmic and applied mathematics. So, the core of a pure computer science curriculum.
People wouldn't be surprised about what they get.
And then you can have some more application creating speciality. I mean, we already have those. And they advertise themselves quite right. But pure computer science does not.3
Apprenticeship instead of higher education might be a better mode of 1) learning practical skills rather than academic theory, 2) keeping those learned skills modern rather than stale and outdated, 3) skipping all the hippy-dippy college requirements that don’t actually add value to your career.4
Theory should be minimal courses, just something to think about and not something that expands through the entire curriculum as if anyone was to use it. Theory and fundamentals are enough, after that have career paths over what students want to focus on depending on a class that takes them through each different field: web development, db development, micro controller programming, os programming networking programming etc etc etc.
Basically, not :hey! here are some shitty basic programming classes, ok now let us move into calculus 1, 2, 3 etc etc. Most people come out of schools with no knowledge of what happens in the real world.3