I felt the need to inform this forum of my computer science course. And ask if they are all this way at first. See, Today, in CSC 131 (the third comp sci course I've taken) we learned what the static keyword does...and then explained in GREAT detail it's uses for an hour.
Yesterday, we learned how to compile a java program into byte code using an academic IDE (developed by some university)
On Wednesday we learned something 'new'. The definition of Object oriented programing.
Now tell me...are all University students who take CS as their major subjected to this hell or am I the only one?
This is Programming 2 ( essentially) I've completed intro to comp sci, and a programming 1 course. Both of which where as bad if not worse and there's no exempting out of them.
Programming II should cover Object Oriented Programming and Advanced topics in whatever language that is being used. It's not supposed to be a slow course as it is assumed you are competent in the basics. If you don't feel you are learning anything I suggest you switch universities asap.
I used to pass time in classes like that by finding the person that needs help the most and teaching them. That's the only way I would learn anything from the class, because they didn't teach anything new. You might want to find a way to skip out of classes like that with... uh, whateverthatwordis... the person who helps with your assignment/requirements.
I went to a school that required beginning algebra/algebra/trig before ever taking calc, and after a lot of convincing, I was able to skip right to calc. I could have lived with trig again, but algebra or especially beginning algebra... no way was I going to sit through another one of those classes with my face on my desk. It's like taking a "this is a mouse" computer class...
@craniumonempty : I had to get a waiver to get into that class ( I don't have the prerequisite math classes, it's a long story) And there's no skipping these classes for my major.
Maybe it's just the first week syndrome. You know, just gauging the environment? or maybe I just got a crappy teacher. From what I hear the class just after this is supposed to have an 80% DFW rate (D, F, Withrawl) which should be daunting, but it's got me excited.
Well, good luck with it. If they aren't teaching anything new, then find some way to keep active. That's why I would help other people. I did that in assembly. The teacher was good at programming, but not the best at teaching, so everyone that didn't already know it was lost, and the rest of us... well, we already knew it. In the end, it ended up being a lot of discussion between the people who knew the material and those who were completely lost. It went from a boring class to pretty fun and social. It was a nice University though, even though they were just starting to get their CS off the ground.
I've had both University CS courses that were horribly boring and pointless and those that stretched me and left me learning more on my own.
Initial courses are typically the worst. Find some students in higher level courses and ask them about their courses and what they think. Beware that the results may be colored by ignorant filters.
I had a professor that taught a brilliant course using Scheme as the basic language. Most of her students were stupid. "Why aren't we using Java?" "What am I going to do with this stuff?" "It's too hard." Etc. Nonsense. Best courses ever. I learned tons, and my coding ability grew in orders of magnitude.
I also had a professor that was required to teach us Java. Good professor. Felt like a waste of time. I did learn Java though. (Too bad I can't unlearn it.)
Scheme and Java are different paradigms - Scheme is FP, Java is OOP, although the underlying runtime models have much in common. IMHO you should know both. However, many universities teach Java/C++ only, which is plain wrong, just because it is the most popular general purpose language, and students demand it basing on available jobs. However popular the language, in 20 years time, probably some other languages will be in use, or the existing ones will be modified (except probably pure C, which seems to be eternal). Therefore, universities should not teach _languages_. They should teach programming. To teach programming you should know paradigms, algorithms, structures etc., not the syntax or quirks of some specific language.
So, there is no point in teaching students Java. There is point in teaching them OOP. And Java is probably quite ok as a basic language for it, because it has the OOP part quite small and elegant. Well, not as small and elegant as it could have been, but nothing is perfect.
Most of her students were stupid. "Why aren't we using Java?" "What am I going to do with this stuff?"
There are no stupid questions. There are only stupid answers.
Therefore, universities should not teach _languages_. They should teach programming. To teach programming you should know paradigms, algorithms, structures etc., not the syntax or quirks of some specific language.
I agree with that, but the problem is that is going to need a huge assumption to do so. I mean not everyone knows a programming language before they enter college (just like me)
BTW, I just saw this on youtube; just wanna share
________________________________________________________
H = Having
A = Anger
T = Towards
E = Everyone
R = Reaching
S = Success
I agree with that, but the problem is that is going to need a huge assumption to do so. I mean not everyone knows a programming language before they enter college (just like me)
Do you learn the math notation first, and afterwards, after you learned it completely, do you learn the theorems? Or you learn the notation "by-the-way"? Look at the famous "Structure and Implementation of Computer Programs" MIT book. Is it a Scheme book? No. It is a general programming book. It concentrates on abstract concepts. Scheme is there just to express these concepts in the examples. If they really really tried hard, they could have used Java or C++... except for the parts where they couldn't (but this is a different story) :D
My first day of my first CS class here at the University I attend my professor (the old Department Head) stated that we are not here to learn programming languages. He continued to state that all a language is is a tool used to preform the tasks that Computer Scientists do. While I had learned that a year prior (before attending college) it was still a heart warming moment to find out that they would be doing things right...if how ever slow.
I'm very much inclined to believe that my current professor is just plain bad.
The only thing that higher education programming courses do for you is get you a certificate/diploma. They typically do not teach any 'real world' stuff. That stuff you get, well, in the real world. Don't get me wrong, the certification is well worth it, but don't expect to be in the same league as developers that have 10-20 years under their belt by just learning what your instructors teach.
My first day of my first CS class here at the University I attend my professor (the old Department Head) stated that we are not here to learn programming languages. He continued to state that all a language is is a tool used to preform the tasks that Computer Scientists do. While I had learned that a year prior (before attending college) it was still a heart warming moment to find out that they would be doing things right...if how ever slow.
He's correct. Programming Languages are easy to learn once you understand the foundations of computer science and computation.
It's funny you say that cause I've 10 almost 11 years under my belt as it is as a developer. I'm just here for a degree. And hopefully I'll learn some thing new while I'm at it. I actually expect I will, any new input can bring new insight.
The problem with first year computer science courses is that just because YOU have experience in the field, doesn't mean everyone else does. This isn't a course for just you, it's a course for the other 100+ people in your class too. Once you start in the upper level courses like Compiler Construction, Theory of Computing, and Artificial Intelligence, I'm sure you'll find it much more challenging. The profs just need to make sure that everyone is relatively on the same page at the beginning.
Also, don't let your experience get to your your head too much. There's a mature student in my class who brags about having 20+ years of industry experience in SQL Server Administration, .(dot) Net development, Direct X programming, assembly programming, etc... He's also the only person in my class that failed Operating Systems I, and has no idea how to use a Unix terminal. Quite frankly, everyone in my class hates him because, despite what claims, he's an incompetent idiot.
I'm not saying you're just like him Seraph, but just because you're having a breezy time now doesn't mean you'll sleep through you're entire degree.
Everyone takes bird-courses in University, you should count yourself lucky that these courses actually count toward your GPA and get off to a good start instead of bragging about how no one in the class is on the same level as you. Humble is the word. Besides, you might accidentally learn a thing or two.
Therefore, universities should not teach _languages_. They should teach programming. To teach programming you should know paradigms, algorithms, structures etc., not the syntax or quirks of some specific language.
don't really agree with that, it depends entirely on the course. I'm on a games programming course so obviously they teach us c++ in detail. What's wrong with teaching how to use one specific language well?