3 ms·
I have a CS degree (in fact, I have both a BS and a Master's degree in CS) - I'm still "self taught" in the sense that I learned to program the same way you did
by commandlinefan 7y ago
I have a CS degree (in fact, I have both a BS and a Master's degree in CS) - I'm still "self taught" in the sense that I learned to program the same way you did, by reading Stevens, K&R, Knuth, etc. outside of my coursework. Don't get me wrong - I learned a lot of interesting stuff: I never would have learned calculus if it hadn't been a degree requirement, and it helps to understand a lot of AI, but learning to program is sort of a "side effect" of academic computer science.
- arethuza 7y agoThat was similar to my experience on a CS course - you were expected to do a lot of development, but nobody really specifically taught you about it and you were expected to pick that up by yourself as you went along.
- scj 7y agoIn this field, you're always going to have to learn things on your own... The trivial example is new technologies that weren't available when you were in university.
- mtberatwork 7y agoThat's how my CS program was (late 90s) as well. You were expected to be somewhat proficient already in C/C++ programming going into the major. Much of the program was mathematics courses. It was brutal. They eventually saw the high drop out rate and re-configured the major. I envy the kids who get to go through the major now. The courses look much more interesting and it's comprised of more actual software engineering coursework.
- jgalentine007 7y agoI finished my CS degree in 06' and it still was more about math than programming (C++, no Java). To graduate I had to take single/multi variable calculus, linear algebra, vector geometry, discrete mathematics, differential equations, combinatorics and numerical methods. When I started there were 600 in my class, when I graduated I think there were only 60!
- javier2 7y agoSame, I graduated in 2013. nearly the entire class feel through in the process. The only thing I've never had any use for is differential equations. I have for instance never worked with signal processing.
- jgalentine007 7y agoLikewise. I did well in diffeq thanks to a really good professor. Sadly I remember the least about it because I haven't had to use it since the class.
- javier2 7y agoI graduated with a masters in 2013 and my courses involved a lot of calculus, and some courses on theoretical foundations of computing ++ Still learned most of how to be a developer on my own, but I find immense value in the education. I learned to see how nothing in computing is magic, just hard work. In 2014 they changed the algorithm introduction course from C++/java to python, which I reckon is a good thing.
- jerf 7y agoI also have both a BS and a Masters in CS. I took a required software engineering course in either 1999 or 2000. I think that there may not be a single thing taught in that course I would agree with now. I learned a lot of useful things, like how to write a compiler. But I would say that in the sense of what I really do day-to-day to "program", I'm effectively self-taught too. (I walk the walk, too; I can and have hired people without degrees, and it's been fine.)
- another-dave 7y agoI think that's one thing that's making me think twice about doing a CS degree now e.g. by night — a lot of what you learn at university isn't in lectures, it's in the ample free time that you have between lectures. With limited free time, it's hard to know whether it's better to self study or do a degree (or even just follow along a curriculum online) I go between trying to work through things systematically to get a good grounding where I have knowledge gaps, and jumping to what I think will help me best on my job at this point in time. It would probably be better to stick to one approach or the other to make more focused use of time, but I'm not sure which way is best! :)