Follow Slashdot blog updates by subscribing to our blog RSS feed

 



Forgot your password?
typodupeerror
×
Education Upgrades

Convincing Colleges to Upgrade Their Classes? 115

Pray_4_Mojo asks: "I'm an engineering student at the University of Pittsburgh, and I'm currently taking a required class known as 'Computer Interfacing'. While I enjoy the instructor, I find most of the material to be severely dated. We will spend the majority of the class covering RS232/XMODEM/Token Ring means of computer-to-computer communication. Almost no mention of USB, Firewire, or IRDa is made within the class. I am trying to convince my professor that this material is relevant, as these types of interfaces will be dominate in the world we future grads will be working in. As an example, I demonstrated that the keycard access system to gain access to the Interfacing Lab has a USB port for data download/firmware programming. The professor seems interested, but it seems that I need to convince the department to revise the course requirements. Has anyone attempted to modernize their CS/Engineering program and met with success?"
This discussion has been archived. No new comments can be posted.

Convincing Colleges to Upgrade Their Classes?

Comments Filter:
  • by LordNimon ( 85072 ) on Friday March 14, 2003 @05:12PM (#5514748)
    The newer technologies are much harder to learn from than the older ones. The speeds are much higher, the protocols are more complicated, and the tools are more expensive. For a beginner learning this stuff, you never want to work with the latest technologies.

    If you really want to learn about Firewire, do something with it for your Senior project.

  • by nellardo ( 68657 ) on Friday March 14, 2003 @05:19PM (#5514827) Homepage Journal
    Back in the day, in the early 90's, I was largely responsible/to blame for switching Brown University's [brown.edu] undergraduate first semester programming course [brown.edu] to object-oriented programming. It had been teaching structured programming, but industry at that time was following object-oriented design precepts (even if using languages like C). The faculty all firmly believed in OOP, and taught it in all upper-level courses. But it was seen as "too advanced" for beginning students.

    As it turned out, the real problem was not teaching OOP to the students. OOP is easier to explain to new programmers than structured programming (people use real-world objects all the time - not so much real-world procedures). Half-way through the first semester, the students could implement Tetris.

    The real problem was retraining the faculty. Even though they knew OOP was a good thing, it took them a while before they had internalized OOP enough to present, e.g., algorithms and data structures in an object-oriented style. No one believed that you could teach inheritance and polymorphism before you taught loops, conditionals, and arithmetic.

    Faculty teaching the intro courses may be in touch with industry and research. That's not enough. The faculty need to rethink an entire course to present the right academic material in a modern, industry-relevant way. If the faculty can do that (and, make no mistake, it isn't easy), they you'll get a course the students love, that will get them a job, and that will prepare them for a strong academic program as well.

    For the truly curious, the textbook [amazon.com] for that course is actually still in print, even though it depended on Borland Pascal, which is long-since defunct.

  • Welcome to reality. (Score:2, Interesting)

    by FreeLinux ( 555387 ) on Friday March 14, 2003 @06:18PM (#5515356)
    The fact is that everything you will learn at any university is going to be dated. As has been said before, it takes a great deal of time to properly develop a new or up-to-date course. The profs have to be trained first.

    But, no matter how progressive the school is, they will still be behind the industry curve, unless they themselves are developing the technology. When you get out of school you will not have been fully educated on the latest and greatest technology. That's why you do internships and graduate work and entry level positions.

    Only after you have finished learning the "legacy" stuff and then spent time in a job getting up to speed on the present day technologies, as well as getting some hands on professional experience under your belt, can you hope to be up-to-date. Then you will find that you have to spend the rest of your career "running" as hard as you can, in order to keep up-to-date.

    But, here comes the biggest kick in the huevos. Every single generation of students wants/tries to change things. Evry single one. Each one seems to feel that they know better, what should be done. But, the sad fact is that, you don't have the necessary life, business, political, technical experience to be qualified to make that decision.

    I'm sure that all the present students will proceed to flame me for this last statement. But, they, and you, will see in the next 10 years or so that, you really aren't qualified. Only after several years will you develop the necessary life/political/business/technical experience to be truely qualified to make decisions on changes for the future. So, for now, sit back and learn. That's what you are there for, not to run the show.

    You never said but, I'll bet that at least some of the old RS232 stuff that you are learning is indeed new to you. Also, RS232 is STILL heavily used in a very wide range of technical industries and it will continue to be for some time to come.
  • There are two types of jobs out there: 1) ones that require experience and 2) ones that don't want experience because they want groom you.

    For the first group, there is no way that you could possibly gain enough experience in 6-9 hours a week for four years. That's only about 4-6 months of professional experience (about two full-time internships if you're so lucky).

    For the second group, employers are more interested in finding someone who is a good problem solver and has the ability to pick up newer technologies quickly. In a lot of ways, as an employer I'd rather have someone who learned COBOL at school for fear that they'd carry bad habits if they knew C++ or a newer language that I'd expect them to use on the job.

    <Open Source Evangelizing>
    Of course, working on Open Source software can give you the desired experience and prove you have the ability to learn quickly on your own :)
    </Open Source Evangelizing>
  • Fake Assembly (Score:2, Interesting)

    by jasonrocks ( 634868 ) on Friday March 14, 2003 @10:40PM (#5516972)

    I started school at BYU this semester. I'm going into CS. The first required class had a horrifying syllabus. We were to learn about C, basic electronics, and assembly language built for a theoretical computer. I was disgusted that we would learn just about NOTHING which would be practical. I transferred out of there so fast. Now, I just hope I can get exempted from that class or take a C++, Java, or X86 assmebly course instead.


    void
  • by James Youngman ( 3732 ) <jay.gnu@org> on Sunday March 16, 2003 @04:44AM (#5522914) Homepage
    I think you don't stand a chance. To get the course material updated, you will have to do one of two things:-
    1. Get the lecturer replaced with someone else - this means someone else has to be willling to teach the course
    2. Find the lecturer a whole lot of free time to revise the course material (which I assume has been generated over a period of years) all at once. This probably means them taking time away from research, which is what you professor probably feels he's there for anyway.
    Even if you succeed, the material won't be updated while you're on the course. At best, the next course would start with the new material.

    (This reflects the situation in the UK, where academic teaching staff in Universities almost always have research commitments (and publications are used as a performance metric).

    Some of the material you are working with is not so bad, either. Learning about RS232 might teach you several things that are generically useful in designing system interfaces :-

    1. It's Not The Hardware, It's The Protocol Design, Stupid
    2. Race conditions between the two ends
    3. Reliability measures (Checksums, CRCs, ACK/NAK, windows)
    4. Resilience versus Bandwidth (e.g. max reliable baud rate ~ 10000/(RS232 cable run in feet))

    It's been a while since I've worked heavily in industrial interfacing, but I'd be surprised if USB is even relevant to that at all. Think more along the lines of RS422, 10baseT, and optical fibre (often carrying converted RS232, in fact).

    I'm not particularly familiar with XMODEM, but I think it's likely to help you undersand valuable facets from the above (bandwidth/reliability tradeoffs, protocol features for catching errors, latency versus throughput, bandwidth-delay products). Token Ring seems an odd choice to me, though. After all the hardware must be tricky to get these days (or perhaps your course has no hands-on component, which would make hardware availability irrelevant).

    One of the most interesting hardware interfacing things I've done was implement both ends of a mostly-symmetrical serial protocol. One end was implemented as a set of four cooperating threads, and the other as a state machine. One way of doing it was (in that case) much much easier than the other (less code and more reliable).

  • by Anonymous Coward on Thursday March 20, 2003 @02:46AM (#5552473)
    > You say "syntax is vital to
    > becoming proficient -- and employable".
    > That's only true if you want to be a
    > keyboard monkey, and even then, how
    > fast you can type is just as important
    > as the syntax. ....

    > What good is your education if it
    > teaches you short lived information?
    > Pay to learn the concepts. If you want
    > to learn syntax, go buy a book. ....

    > If you know the concepts,
    > you can pick up the syntax of any modern
    > programming language in a few days.

    i *did* pay to learn the concepts, and I was almost at the top of my CS classes at the university of illinois -- not exactly a shabby institution of learning.

    but guess what? i did indeed buy a book, and i realized that understanding the principles of OO and the basics of data structures and algorithms is a nice thing, but is a very far cry from being expert or even acceptable as a programmer.

    there was one book in particular that had twenty-four chapters. only two dealt with syntax, which i had no problem with. it was the rest of the book that was daunting: so the other twenty-two chapters can be learned in a few days?

    i'm not talking about typing speed, per se. i'm talking about comfort with the idioms and idiosyncrasies of a particular language. that was what the other twenty-two chapters dealt with. if you're comfortable with regexps in perl, that's a far cry from being comfortable with regexps in VB, or even javascript for that matter. even if you're comfortable with the /concept/ of regexps, having to continually refer back to a book for syntactical differences makes you a less prodigious and a less proficient programmer.

    it's not a matter of being a "keyboard monkey." it's about not letting syntax get in the way of thiking.

    this is the point i'm trying to make: for a reasonably smart english-speaking person, learning the pronounciation and tenses of say, spanish, is not that hard. but being FLUENT means that you have to learn the idioms of the language, and indeed attention to the details of the language become all-important.

    - a.c.

"If it ain't broke, don't fix it." - Bert Lantz

Working...