|
|
|
|
|
by lewisl9029
3655 days ago
|
|
I got my degree in Computer Engineering rather than CompSci or Software Engineering at Waterloo, which is sort of a hardware/software hybrid program. In hindsight that was probably the wrong choice for me. I quickly found out I really didn't enjoy working with hardware, and that the software side of the program was woefully inadequate compared to some of the better CS programs out there, precisely because we had zero exposure to paradigms that were not imperative/OO programming. My friends in CS at Waterloo got to work with Scheme in the first year for their introductory programming course, when we were using C# and Java and the like. I was young, stupid and arrogant at the time, and made fun of them because I dismissed Scheme as some weird language nobody would ever use, but now I really envy the CS grads for their clearly much more well-rounded and better thought-out software curriculum. The saving grace of the Computer Engineering degree at Waterloo is of course the 6 4-month co-op terms (internships) sprinkled throughout the 5 years program, where I gained valuable real-world work experience and finally acquired an appreciation for functional programming, but there's a large degree of variance in students' experience in the co-op program depending on the jobs they can find, so not everyone can be so lucky. |
|