Ask Slashdot: How To Fix an Outdated College Tech Curriculum?
An anonymous reader writes: As a student, what's the best way to bring change to an outdated college tech curriculum?
The background on this is that I have 15 years of experience in the field and a very healthy amount of industry-recognized training and certifications. I'm merely finishing up my degree to flesh out my resume -- I haven't learned much from the program that I don't already know. However, the program would have benefited me greatly 15 years ago. It's a great program, except for a biometrics class that is absolutely behind the curve. The newest publication on the syllabus is from 2009. This is simply teaching the students outdated and often wrong information.
Additionally, a lot of the material seems like it was stretched to make a full semester class in biometrics in the first place -- most of the material, honestly, could be compressed to about two hours of lecture and still be delivered at a reasonable rate.
What's the best way for a student in my situation to get this fixed so the school stops wasting student's time with outdated and wrong information?
The background on this is that I have 15 years of experience in the field and a very healthy amount of industry-recognized training and certifications. I'm merely finishing up my degree to flesh out my resume -- I haven't learned much from the program that I don't already know. However, the program would have benefited me greatly 15 years ago. It's a great program, except for a biometrics class that is absolutely behind the curve. The newest publication on the syllabus is from 2009. This is simply teaching the students outdated and often wrong information.
Additionally, a lot of the material seems like it was stretched to make a full semester class in biometrics in the first place -- most of the material, honestly, could be compressed to about two hours of lecture and still be delivered at a reasonable rate.
What's the best way for a student in my situation to get this fixed so the school stops wasting student's time with outdated and wrong information?
When I went to college 30 years ago it was clear undergrad studies were a good 10-20 years behind the times. The only up to date things were the textbooks, which got revised every 2-3 years so you couldn't buy used versions of them.
Creating curriculum isn't something than can be (should be) done by just anybody. It is done by an educated educator, who knows how to create curricula. If you really want to change it, you should go to school to get a degree in education, then get a job at this institution, in this particular department, and then write a curriculum for the classes that you're assigned to.
I don't respond to AC's.
Its not to educate you on the newest and latest trends, but to give old, washed out liberals a place to live.
Since you did not name the school, it could just be a crappy school. Unless you are also a liberal social zealot, don't expect much help in your reform efforts.
TL;DR; school is about MONEY.
Just get youor degree. The degree is the "goal". Worrying about it's relevance to today will not get you anywhere.
The shepherds did so well protecting the flock that the sheep no longer believed that wolves existed.
Vote them out!
What's the best way for a student in my situation to get this fixed so the school stops wasting student's time with outdated and wrong information?
Choose a different school that doesn't waste your time with outdated and wrong information.
I had to take the intro programming course at UT (University of Texas at Austin) and we had to write all our code in Notepad and run it through the command prompt window. I work as a programmer, I was going to UT to get my math degree and that class was a joke. I just downloaded and IDE for Python and used that because that class did an outstanding job of showing people how to write code in the most ineffective and useless ways possible.
By elementary-school (age 7) I was teaching the teacher how technology worked. By college I considered everyone a moron and just jumped through the hoops to get the degree because nobody was teaching me anything new.
No company that knows what they are doing cares about what you "learned" in school. School in the US is a joke. They only care about what you can actually do. Fuck school. Instead contribute to open-source projects and get your name known.
Yep, learn a language that has been around for more than a couple of months. C/C++ is a great one because of how many other languages use it as a base for their language.
In the end programming isn't about knowing just a language but knowing logic and how to solve a specific problem. Once you know what the problem is and what the solution is then knowing the specifics of a programming language will be needed. And now you can look online to get help with that far more than you use to be able to.
You mean like how my college still collects money for ActiveScript classes?
Some fields are better/worse than others. IT in the late 90's was a joke in universities who were teaching outdated tech. After much deliberation I left to attend technical school and it was a great career move. However, I wish the universities were more relevant.
They also need to lower tuition to sane levels and drop the political nonsense.
Once you pay tuition for whatever that college is offering, they have no incentive to change it.
vote for someone to fix the loans & then the banks will force the colleges to due better as the banks will be the ones left holding the bag when someone with 60K of student loans goes chapter 11 or 7
Asimov's "Profession" is one of my favorites. I teach Computer Science at a 4 year university, and my goal is to teach skills that transcend a particular technology/language/API, while at the same time being relevant to current developments. As a student, you are pretty much out of luck, but as an instructor it takes a lot of effort to resolve the tension between timely and timeless content.
The dean is the best position to receive your feedback and make improvements to the curriculum.
Maybe one idea would be to focus on the math (algorithms, combinatorics, etc.) rather than on specific technologies, and perhaps engage the students to improve their quality by either encouraging participation in competitions (like the ACM's) or creating a little in-house business incubator.
Professors don't necessarily know how to create a curriculum, which is another problem. My friend's wife is a course designer who does this for a university. The problem is that many professors seem to think a degree in art/science/anthropology means they are experts at putting together a coherent and relevant course, and don't bother using the staff whom are experts in this field.
Strangely enough, universities are slow to change. This is because every class must fit into a degree. They go through a proposal and review cycle, then have to be approved by advisory boards, administration, and finally the board of regents. They might even be included in a college accreditation process. Once they are in the course catalog, the course must be offered or a student might not get their degree. That means that old classes are like zombies hanging around.
Community colleges change faster. There are similar processes, but fewer people involved.
Vocational high schools or trade schools can offer the content to their students as technology changes. This hinges upon the ability of the instructor to adapt to new technologies over the course of their career. Students in these programs often learn concepts as they become relevant and outperform their college peers. For example, a group of high school juniors from my class competed in the 2018 National Cyber League Spring competition, beating 84.5% of 2 and 4 year college teams.
Having taught at all three levels, I know this from first-hand experience.
You went to college to finish your degree after obtaining 15 years of experience?
To be frank, what did you expect? College is not for you. College is for high school graduates who know literally nothing and need to learn the basics. Of course you didn't learn anything you did not already know.
I think you would probably do well to examine your own goals and expectations. First, to think that you need to finish a college degree when you have 15 years of experience is foolish. Your experience should speak for itself (unless of course you are incompetent). Second, to think that a college geared towards 18-22 year old children is there to cater to your every whim is arrogant and self-centered. Finally, the fact that you did not how to properly assess the correct course of action for your career casts grave aspersions on your judgment.
You need to sit down, right now, turn off the computer, and think about a great many things.
Talk to the teacher. Then talk to the department head. Offer concrete suggestions in a reasoned manner. Don't bitch. Don't call them incompetent. Don't call them behind the times. Discuss it in the context of the total program they are offering. Talk about opportunity for future students. Try to make the course refresh seem like their idea. Offer to help. Maybe they'll make you an instructor.
The knowledge you get at the university can rarely be precisely considered the current state of the art. This applies to pretty much any (technical) degree. CS or similar might be a bit exceptional, but I don't think that expecting perfectly updated knowledge is too logical or even required. The whole point of the university is providing a solid background, learning the specifics, really enjoying and getting really good at something is mostly done at work. I don't think that a too deep, detailed theoretical background will be especially helpful for technical fields. It might even be a disadvantage by implicitly providing the wrong impression of completeness, not requiring the essential practice for years.
The knowledge I got at the university was quite outdated, but this was mainly because of my degree (industrial/mechanical engineering). Currently, I am studying computer/telecommunication engineering at university level as part of the requirements for certain position and, although everything is reasonably up-to-date (at least, regarding software versions, names and lists of features), there are still quite a few lacks and the main focus is put on somehow old systems and approaches. What I think that is fine. I am not a big fan of the big deal of theoretics/abstractions and little proportion of practical knowledge though.
Custom Solvers 2.0 = Alvaro Carballo Garcia = varocarbas.
Except the banks already made it so you can't discharge student loans in bankruptcy.
As a student you're not going to accomplish anything. Imagine if every semester just one student went to the department head and said, "This is outdated, this is ridiculous, this is asinine, change it all. For I have been *in industry* and I know better than you." The department can't give in to you. If they did, then every semester they would be affecting short term changes based on the whim of the other students like you. There would be no stability. There would be no basis for education or fair evaluation of students. You can make suggestions, but do not expect anything to happen.
Graduate. Then offer to come back and guest lecture on occasion. Mentor capstone projects, return for the capstone presentations and provide critique. Maintain relationships with the professors. Then, maybe, in a few years you may get invited to join the industry advisory board for the department. Now you've made real progress! On the IAB you can advocate for changes as someone *in industry* you can explain why class A is not providing benefit relative to the current industry hiring practices and should be changed to accommodate that. If you keep those contributions up for a few years you may finally get the department to agree to a curriculum change. Now in at least six years time (for a state school) you may actually affect a small change. Private schools may make changes faster, or not.
Yes, six years. On average a curriculum change to a state school takes that long. This is because every person in the state legislature wants to have their input on the change, so the bureaucratic nightmare lasts 72 months. That's positively expedient considering starting an entirely new curriculum at a state school can take up to a decade.
I am speaking from experience here. I graduated in 1995. I've been returning to my alma mater on average 2-3 times a year to guest lecture, do the capstone mentoring, etc.. I've been on the department's IAB for close to a decade now. I've affected about three reasonable changes in that time. If you're ability to stick to your conviction of bettering the department doesn't include a long-term commitment on your part, give up now. If your desire to affect one specific change is not fluid enough for compromise or patience (lots and lots of patience), give up now.
What's the best way for a student in my situation to get this fixed so the school stops wasting student's time with outdated and wrong information?
I am not a student, but an adjunct faculty member. That said, as an adjunct I have very little official authority when it comes to curriculum matters, but I have managed to find success in updating woefully outdated curriculum. I will share some things based on my experience.
First, I recommend you start by talking with the instructor(s) of the class(es) in question. Request a copy of the master syllabus. This is not the master copy of the syllabus handed out each term, but is actually a specially formatted and fairly detailed documented that describes precisely how the course will meet all of the educational objectives required by the school (and/or any accrediting body). Also get a copy of the course catalog description (you can probably get this yourself from your school catalog online). Also ask the instructor if they are willing to support your effort and advocate for the change before any school personnel or committees involved in the process (as a student you may not be permitted to appear before those personnel or committees to request a curriculum change). Find out if there are minor changes that you can make that satisfy your objective for updating the course without triggering a full academic revision of the course. There may processes in place for smaller changes that require lesser review and approval.
Then, get to work. Update the master syllabus to reflect what you think would be a better course composition, sequence of topics, etc. Ensure that all required school objectives are still being met or exceeded. Provide supporting documentation. That might include attachments that describe academic developments in the field, analyses about emerging new topics that are shaping the field, etc. Throughout the process work closely with the instructor involved. If you are fortunate enough to be able to interact directly with the course director, then you will have fewer layers to go through. If not, the instructor you are working with will need to make a proposal to the course director, probably the department, and either an undergraduate or graduate committee that reviews and approves curriculum changes.
You will need to ensure to get buy in from the instructor involved and/or the course director as appropriate before the matter will come before the right committee. Offer to be a TA for the updated course to help get things off to a good start. Offer to write up lecture notes and slides for the new material, offer to write sample homeworks, projects, quizzes, exams, etc., as appropriate for the subject matter.
You will also need to patient. Keep in mind that for traditional semester schools, Spring registration is already underway (meaning your change would almost certainly not be considered for Spring) and Fall registration will probably open sometime in February or March. That means that if you want to get a course updated for the Fall of next year (which would be the earliest possible update if you started working on it today), you probably only have something like a month to get it all in order. Between Thanksgiving, Christmas/New Year's break, and Spring semester start up, you really don't have a big time window to get the job done, so you would have to hustle to have a chance.
That said, be prepared to wait as well. The committees probably only meet every few months, so you may have to request a special review for something to make it in time for next Fall. That may or may not be feasible depending on your institution and its policies.
I hear plenty of students complain about stuff like this, but I have not yet seen one actually try to tackle the problem rather than just complain about it. Best of luck.
First of all, don't expect that you can change the curriculum. Some of it may be dictated by their accreditation org, some by a state requirement. Usually there's some chance to meet with your adviser and you could point out specific problems then.
Your example points out the difficultly of an accredited school trying to keep up with fast moving technologies. Some schools use a seminar or research class requirement rather than hard wiring a specific class into the curriculum. The main thing is to make sure you have the basics down solid and can learn quickly.
Good luck,
The point of college is to learn how to learn.
If you want to learn the latest buzzwords, go to a trade school.
If you want to learn how things used to be done so you can some idea of where to begin learning how modern things build on the "old" stuff, then you go to college. There is very little "old" technology that doesn't continue to drive new technology. Syntax might change but concepts don't. You'd be surprised how old the math is for doing 3D graphics. The issue was that technology wasn't fast enough, not that the concepts weren't fully understood and implemented to some degree.
If you don't see the relevance of "old" concepts in new technology then you're not college material. You're the type of person who just wants to be told what to do and follow directions.
If you're "overqualified" for a degree in Computer Science, then you best option is to choose a different degree program like Math which is generic enough to get past most HR filters in tech companies.
Work Safe Porn
Withdraw, and stop paying them for shitty courses.
And make sure you write op-eds for local papers and the area they're bottom-feeding from describing the state of their courses.
If they're anything like the place I got my degree from, the only way they'll change is if it hurts their bottom line.
Have a conversation with the different Professors on the curriculum committee. Make sure you have a good replacement suggestion for the bad course.
That is all.
Nobody needs the fucking Ivory Tower. Go fuck yourself in the ass.
The simple answer - go to a different school (spend your time, energy and money elsewhere).
The tough answer.
Theory is what should be taught, not specific practice.
The only goal of specific practice courses should be to reinforce (and practice) the theory.
Remember the ultimate goal of a college education is nothing more than obtaining a piece of paper that tells others "I(you) can learn".
FWIW...
Tech is one of those fields that once you are a professional working member of that going back to college for more school is, well, a waste of time, energy and money.
That's really the only thing you need to know. All the rest is technofappery and ultimately detrimental to the people forced into the system.
Don't take a degree in your field of work. You'll always be disappointed. I tried the same thing a few years ago after working in graphic arts for several years. The beginning Illustrator course was so mind-numbingly basic, they had a whole unit on turning on the computer. When I finally went back for my bachelors, I moved from marketing & graphic design to finance so I wouldn't waste years sitting in classes "learning" things I already knew.
A undergrad program should not be a tech school. This is problem with CS education in general. Very few schools are teaching CS - they are teaching programing. Programing is a moving target that changes all the time. It should be the focus. Ditto for lots of security topics; the focus should be on the principles and the why, less on the how.
Since the OP talked about biometrics what should someone with an undergrad degree know about them -
When to use biometrics?
When not to use biometrics?
speak to ethical considerations around them -
understand type 1 vs type 2 errors -
have a good mental list of the type of bio-markers that can be used for identifiers -
None of the changes in the last 50 years. The designs of various sensors has, the reliability of devices has, etc, but all that is stuff I'd expect anyone implementing any solution would research before making decisions. The whole point of an undergrad degree in any given field is that is should show 1) you have the ability to execute complex requests, meet deadlines. solve problems, and cope with other arbitrary requirements and 2) that you possess a general understanding of the subject matter such that you have framework for quickly placing new information in context and you know what questions to ask and how to ask them when researching any specifics for whatever application you are working on.
University education should not be about leaving, with specific knowledge of C# or whatever the language du jour is. Let alone some biometrics package.
Repeal the 17th Amendment TODAY! Also Please Read http://www.gnu.org/philosophy/right-to-read.html
Fight as hard as you possibly can to fix this travesty. There is no reason you need to stand for this. Fight so hard that you don't have any time to study, do well, or participate in class in any kind of meaningful way. After you are removed from your degree program, then explain to all future employers the true reason you don't have a degree.
This will, in fact, help those employers hire exactly the type of employee they want.
A huge majority of ANY job (including the job I created for myself, with owning my own company) is putting up with a bunch of crap you cannot control, and dealing with it tactfully. Then, you have to decide when, and how, to walk away when things get bad enough. A technical degree makes sure that the holder has a certain amount of technical skills. It also makes sure that the degree holder is able to jump through a certain number of administrative hoops, and communicate about technical things. I don't think that a biometrics class being eight years out of date is something worth battling over.
There are many, many, technically skilled people that have LOTS of problems accepting things which they cannot control, communicating effectively, and being part of an organization. You are not in control of this course content, and the university curriculum. Once you accept this, and can move forward tactfully, you may learn a deeper lesson than the material being taught in the classroom.
Stop taking fluff classes in (trendy application area du jour) and take advanced courses in foundational topics like mathematics, computer science, computer architecture, software engineering, etc. If you want to learn about (trendy application area du jour), go do a project on your own time; most of that crap can be learned over a weekend using the Internet. The same is not as easily said for, e.g., computability and complexity, stochastic processes, cost estimation and interconnect topologies, for instance.
The one I work for has a Curriculum Committee for each course, and any instructor can suggest improvements (often relayed from the students). Most higher education institutions have a Program Chair or Division Chair that is responsible for the quality of the education in the area they are responsible for; find out who they are and email them or speak to them in person.
Different schools also have different refresh rates, and different procedures when they do. For my school a Subject Matter Expert (SME) will review the course, suggest updates, and either improve the course themselves or work with a Learning Design Specialist (LDS) to update the curriculum of the course. That improved course is signed off on by the Curriculum Committee, the responsible Chair, and perhaps more.
Higher Education is full of red tape, and they love procedures.
Getting content changed between reviews is hard; getting it changed when a review is due is easy. How the review process works, how often, and how complex it is all depends on the school. You could have an idiot SME, which results in a garbage course. A good school will take that negative feedback and schedule an early course review; a shitty school might just stay the course and use the bad course until the next five year review. It all depends.
"I will trust Google to 'do no evil' until the founders no longer run it." Hello Alphabet.
In the same boat as the OP, but worse. Worse because I teach as an adjunct (Linux admin stuff, SQL intro, etc) for the AS program that feeds our BAS due to my decades of technical background.
Nothing on version control or unit testing. Nothing on Agile/Scrum/Kanban or other software dev management styles. One of my recent assignments was over how to to go a website and use the web app provided to build a "3d" lego avatar. One of my upcoming assignments is to document how I interact with the Internet for a 24 hour period.
Knowing what I know about the program, no way I would hire a graduate of our program unless they were like "us" and jumping through the hoops to get a piece of paper.
Don't blame me, I voted for Kodos
Any formalised education is going to be outdated when it comes to a fast moving field like technology.
By the time the curriculum has been devised, the course material/books printed and distributed etc, the information is going to be out of date. Even if something is up to date when taught, by the time the students finish their classes and enter the field the information will be dated.
So a well written curriculum is going to teach more general concepts and how they could apply more generally.
http://spamdecoy.net - free throwaway anonymous email - avoid spam!
Before you proceed, first ask yourself if the class fulfills its purpose. You have 15 years in the field - but most students have zero. Is the course out of date, or is it just covering the basics?
If it really is 10 years out of date, then you have two avenues to try. First, if you have an otherwise ok impression of the instructor, that's the place to start. Let him/her know of your experience, and offer to write down a list of topics and material that you see as relevant.
But honestly: I don't see this first alternative helping. I teach fundamental courses, and I still update them every single year. I expect you have an instructor who's burned out, or close to retirement, or suffering some other personal problem.
In which case, your second alternative is to go to the head of the program. Do this *after* you've finished the course, because you *will* piss off the instructor. Again, lay out your experience, and compare the current material with what is being taught in the course.
If the head of the program doesn't care, then you're in the wrong program. Finish your degree, get the piece of paper, and go on with life...
Enjoy life! This is not a dress rehearsal.
I had a professor (in this case, business calculus, but his general advice was sound.) College isn't about education. It is about Academics. Teaching you how to learn.
because some of today's technology won't last to see tomorrow. I suggest the following technology should be taught:
Web (HTML 5, CSS 3, JavaScript)
Programing(C++, Java, Python)
AI(Classifiers)
Sometimes I think its strange that college professors are there to do seemingly unrelated things: Research and Teach. Your question is the reason that you should have active researchers teaching courses. I have a close friend that co-teaches a large undergrad course with a full time lecturer, and she fights with him constantly over his teaching of things that range from outdated, to clearly false. Someone who is a *current* expert in their field is going to keep the class up to date because they won't be able to stand teaching something wrong. Meanwhile someone who looks the part and has been teaching the course for 20 years will happily tell you the same things he has been telling students for 20 years. College prices may be too high, but teaching courses with adjunct professors and full time lecturers is often the wrong way to reduce costs.
Go back to school. "Due better"? Did you mean "do better"?
I love you.
If you need some kind of certification or piece of paper that says you know something, there are plenty of institutions that will let you take an exam, do those. In the end nobody cares where you got the rag, just that you have one if you're just starting out (and often we don't even care about that).
If you have 15 years of experience, why still pound on about your education, just demonstrate that you have kept up with certifications and/or on-the-job education.
Unless you want to break into upper management and need an MBA, there is not much reason to go into full-time school with 15y of experience, in some cases it may even demonstrate the reverse - that you needed an entry level class to get up to speed with current events, that's not a good signal.
Custom electronics and digital signage for your business: www.evcircuits.com
Is the information in the textbooks being used outdated because it's incorrect? Or it is just too old for your tastes? "OMG! This calculus textbook is 9 years old! Why am I learning something that's clearly outdated?" Or is it outdated because it doesn't emphasize the latest technology du jour?
I seem to recall that the information in most textbooks--at least the printed ones--was something like 4-5 years old when it got into the classrooms due to the writing/editing/printing/distribution process. In some fast-developing fields this is an eternity. I'm one of those who believes that a college curriculum should be teaching concepts and not products (I.e., college != vocational school). Particularly at the undergraduate level. Concepts don't go out of style nearly as quickly as products. The graduate students got more involved in the cutting edge topics and those classes depended somewhat less on textbooks and more on current journal articles. (That will likely depend on the school so YMMV.)
CUR ALLOC 20195.....5804M
Just because information is outdated doesn't mean it is bad. You want to teach tech concepts? It's not wrong to teach from the beginning of whatever field because the beginning will probably be easier for providing a foundation. Are you expected to learn cobol for a course? What is the course intended to teach? Cobol, or programming concepts which are easy to learn in cobol? If it's the latter, the professor might be doing things properly. If the former, then why complain if you signed up for a cobol course? If nether, then the professor is doing it wrong.
My friends and I who work in tech (and have grad degrees in engineering), picked a small catholic college, made a proposal, then volunteered to teach it. We were allowed to re-write the CS curriculum to inject our experience, and focused it on what we want those we hire to know. After 2 years of this our students are getting hired by major tech companies and doing very well.
In short, don't whine, fix it!
I'm still programming and I think the education that I experienced would be great for anyone just starting out. It was extremely rigorous and challenging. We learned theory, practice and, most of all, how to solve problems. Maybe things have changed?
First, finish your degree. Then see if the department has an "Industrial Advisory Board" (or some such name).
This board is generally made up of alumnae in industry that offer insight as whether the students graduating are adequately prepared for industry. The board generally can't force a department to move quickly in a direction, but they can offer insight and advice to the department on what will help the students the most.
If the board doesn't exist, recommend to the department that they consider creating one.
Because I use chris to identify bad habits and make plans to fix them I've come up with a great way to learn almost passively.
I have an EPG set up on my myth/kodi setup. So all my training videos show up on "Discovery" right along all my documentaries and stuff. I have 100s of shorter videos about 4 to 10 minutes each and they randomly get used to fill commercial breaks. It only shows me the next video I haven't watched in a listing so I never have to worry about missing lessons.
I originally set it up so my developer wife could learn systems and networks but have since started using it on my own and have thrown in more topics, spainish, world history, and current events. (I had 10 minutes of devops 30 minutes of ancient mesopotamia for my workout this morning)
I keep one hot ebook book on my phone which is a phablet for mostly this reason and I have a variety of educational audiobooks. Phablets are great after all I'd hate to carry around ipads and ebook readers on the city bus.
I'm learning new things all the time and have creimer's bad examples to thank for it. Speaking of which.. this afternoon I'm going to the dentist to have a chipped tooth filled before a public appearance, don't want to look like a goober on camera do I?
This is an old trope and it amounts to little more than an excuse for university/college bureaucracy.
Why? In the end, universities exist mainly to serve themselves. They value their traditions, their sacred cows, and their tenure. The students are an afterthought. Most universities value research and publishing far more than they value the students.
But how can we know this? Just ask yourself the following. How would staying current in the curriculum, undermine the goal of, "learning to learn"? Couldn't you do both? In fact, why should we accept less than that? Tuition is expensive, universities have a hallowed place in our society, why aren't they doing better?
But it's easier for the cognoscenti to look down their noses at anyone who asks uncomfortable questions. "Trade schools" they sniff, as this addresses anything. The university culture is one of bloated entitlement. The odd bright light in and among the deadwood does not change this reality.
Every degree sets out to cover a syllabus which was set before year 1 begins. It's Rarely updated Mid-year, and never in meaningful ways end of year.
My degree was in Electronics. The course and lecturers have their heads in the last millennium. They didn't teach me thermionic valves, but did teach much redundant crap. They all ran scared when I ran my project at 250Mhz, and had no facilities for building my board.
Lecturers get lazy, and are reluctant to go learning new tech. Most of them wouldn't get a real-world job, because they are out of date in Electronics anyhow.
C is useless for teaching you how to think about programming. C developers are brain-damaged, only able to see things in terms of bytes and structs. Teach lambda calculus, then Lisp, then something more practical -- C/C++ if you must. The fundamental task of the programmer is not to manage bytes, but abstractions. Teach the abstractions first! Going top-down does have a tendency to produce programmers who are wildly ignorant of basic machine functions. This is still better than people who don't think that there's any need for map, reduce, or classes.
if you dont care about how efficient your program is you are correct. If however you DO care about efficiency and optimization, you better understand how to shuffle them bits, at least on a basic level.
Often Clcode that runs != code that runs well.
It takes genuine understanding of how the hardware is doing what you want it to, in order to create the later.
Thought I was one of the few that was going back to college. As a consultant, not all my clients had awesome development opportunities and I missed out on great technologies. I'm going back to know how to implement the fancier stuff of nowadays.
As many posters have said, it doesn't matter that the curriculum is outdated. If you can get good grades it means you CAN study. Do you think study is now over? If you do then you are going nowhere. To keep relevant in a technical field you must study throughout your life. What (I hope) you've got now is a good foundation.
... and don't forget to let the old administration know why.
We suffer more in our imagination than in reality. - Seneca
Contact your ombudsman and file a complaint. Get your fellow students to do the same.
Nonsense. For the vast majority of cases, performance can be ignored. Also, C does not have an exclusive lock on the performance crown, and rewriting slow methods to be faster is broadly similar across the Algol derivatives. Programming in C is a cult, you all just tell yourselves that you write fast code ("and that's what matters!") because you suck at abstractions. The choice of algorithm is going to be a far bigger determinant of performance than whatever language it is written in: if your algorithm is O(n^n) then whatever is happening on the byte level is irrelevant.
You can be a machinist, or a wizard. If you want to view the computer as a set of registers and addresses, you're going to wall yourself off from more abstract forms of expression. That's kinda missing the forest for the trees.
Perhaps the real problem is you. Come to school with an empty cup. Really learn what you are taught. You will never learn anything if you have a huge chip on your shoulder
I designed an entire curriculum for a university in South America and worked there for 15 years and here are some insights that came from that experience:
1. A good curriculum is aspirational. It aspires to leave the structure so that good professors can come along and do a good job without the bureaucracy getting in the way. (Which is a .big problem in some Universities)
2. Universities have a tendency to prefer PhDs and research over instruction. I believe this is a great mistake. While having some top notch researchers is certainly grate for the PhD program, many undergrad and even master's programs are better served by having solid practitioners on the team. Having good practitioners is great because they introduce the latest and greatest business practices into the educational system thus enriching the program.
3. Many University programs are too focused on producing researchers. They imagine the PhD to be the pinnacle of the career, when in practice most people want to work in industry. In fact, many US universities short change their students by spending on just about everything but instruction (ever wondered why in spite of you paying $50k a year there are so few course choices ?)
4. Many professors have little to no real world experience. They've just made a career at sitting in the University. That doesn't benefit students.
5. A lot of the material often omits how to put knowledge into practice. For example, you study tons about graphs and finite automata, but are hard pressed when its time to put all this into practice somewhere.
So the best one can do is create a good framework, and hire the right professors so that over time they enrich the program. I'm happy to say our program became quite successful and while we're a bit weak in theoretical concepts (like "formal models of computation", or "complexity theory", etc..) we're quite strong in producing competent software engineers that have also been very successful when they want to pursue higher degrees.
Most major universities have accreditation through ABET for their programs. Example from my alma mater:
http://main.abet.org/aps/AccreditedProgramsDetails.aspx?OrganizationID=135&ProgramIDs=
While I was a student they were getting their accreditation renewed. Had several computer science professors from outside our university visit classrooms and get students feedback. A lot of the feedback wasn't helpful - however - there were a few keys points the department got nailed on and ended up fixing in their curriculum. They also had a focal in the department to liaison with industry - and that relationship ended up creating a new undergraduate course for a fundamental skill most students weren't graduating with.
Other than that - find a way to get to know the department head if you want your voice to be heard directly. I was a student leader and interacted with mine on a semi-regular basis. You won't be able to change curriculum overnight - but - you will have influence in certain matters.
True story: ... and the campus is brand new with no other buildings around. Where are students supposed to go between classes?"
"Department Head: Hi, we are constructing two new multi million dollar buildings on a new campus that will open up next year. We've got the classrooms, labs and offices all planned out."
"Student Leaders: Sounds great!"
"Department Head: Can you look over this blueprint and let us know if we missed anything?"
"Me: Looks great overall. One question - there's no student lounge
"Department Head: *deer in headlights look*"
That got fixed pretty quickly. Case in point about having a relationship with the person in charge. (And for those wondering - buildings of reference were EBI and EBII on Centennial Campus).