Slashdot Mirror


Microsoft Invests in the University of Waterloo

saforrest writes "Say goodbye to independent academia. In a presentation by Microsoft on Wednesday at the University of Waterloo, a new joint initiative was announced which involves the addition of a mandatory course on C# for all electrical and computer engineers. 'Completion of this course will be mandatory for students entering the E&CE program.'" Microsoft's press release is available.

228 of 681 comments (clear)

  1. Academic Integrity by Baloo+Ursidae · · Score: 2, Interesting

    I think the real travesty here is that any corporation could get the university to run a mandatory course about thier product. Where's the academic integrity?

    --
    Help us build a better map!
    1. Re:Academic Integrity by Skyshadow · · Score: 5, Insightful
      Admissions have always been dirty, but at least in the past you didn't have classes being bought and sold.

      Beyond the fact that C# isn't by any stretch the best language to teach concerning the basics of computer programming (and as such is a disservice to the students at large), this also sets a horrible prescident. Maybe Putnam can buy this U a new administrative building and get a new mandatory lit class added -- "Lit 203 -- The Works of Tom Clancy"

      --
      Every year during my review, I just pray the words "slashdot.org" aren't mentioned.
    2. Re:Academic Integrity by Succa · · Score: 2, Flamebait

      Waterloo has no academic integrity. As someone who just graduated from UW's Comp Sci program two weeks ago, I can tell you that UW's once-esteemed CS program is starting to resemble a diploma factory. The university admins have increased their quota for industry-pandering by 1000% since I first joined the school. All of a sudden, perfectly good courses started getting tainted by the touch of Java (the AI course comes to mind, switching to Java because it "looks better on a resume" than Scheme), phasing out theory courses, and generally eliminating academic mainstays like Lisp, ML, and the like. And now C#? I'd heard this rumour quite some time ago, and I feared it would come true. Luckily it's only the Comp/Elec Eng program (which tends to focus on industry more than theory) affected; were MS forcing C# on Comp Sci students, the program would be reduced to a joke. I just hope my newly acquired degree doesn't become completely worthless in the next few years.

    3. Re:Academic Integrity by nixta · · Score: 2, Interesting

      Billy boy went over to Cambridge a while back and gave them an enormous grant. Microsoft and the Computer Science department now work very much hand in hand (in a great new campus building), but the emphasis seems to be that Microsoft benefits from the research being done by the CS lab, and gives it a practical channel to reach mainstream audiences.

      Before that, Olivetti Research had a lot to do with the CS lab and a lot of that was very fruitful too (see WinVNC for an example).

      One of my old supervisors and a nut on language theory went to Microsoft when they came to Cambridge and has had much success turning his research into practice. The underlying language model of .NET has influences from the academic research done at the University (and of course from elsewhere).

      Point is, partnership between academia and business can work very well, and if taking a measly class in a language that actually implements excellent OO constructs and principles as part of a computer or engineering course causes people upset, I really think they need to reassess their thoughts on the purpose of those courses. Especially since such a partnership might subsidise the costs of going to college, which is borderline prohibitivein the US. I've seen so many people claiming to know OO that are clueless on the topic and whose code is so very confused that I suspect OO teachers don't understand the principles properly.

      I had to rely on Modula 3 and a couple of other languages, and abstract language theory. Hardly practical, but at the time there was no language that elegantly encompassed the teachings. I ended up working with Smallworld's Magik language which had no decent IDE, but which implements some excellent OO principles. C# is the first mainstream language to really cleanly implement these things. Java's not bad, but it's just not clean.

      I have my reservations about some of Microsoft's business practices, but people need to see that there is also a good side to Microsoft, and C# is just one excellent example of that.

    4. Re:Academic Integrity by darrylballantyne · · Score: 2, Informative

      Also concerned about this is the UW Federation Of Students. See their official release (warning, PDF) here.

      (.RTF version)

      --
      ----------
      Darryl Ballantyne
      http://www.darrylballantyne.com
    5. Re:Academic Integrity by CrazyDuke · · Score: 2

      Having experienced an American university, I can say, like many things these days, academic integrity goes about as far as a $. Then the $ wins. Some of the worst classes are those run by a professor that is just there for corporate funded research and has a single token class to teach.

      --
      Any sufficiently advanced influence is indistinguishable from control.
    6. Re:Academic Integrity by jedidiah · · Score: 2

      They have anti-trust and racketeering laws that cover this sort of situation if you wish to treat a University as a pure corporation. These sorts of shenanigans are no less anti-capitalist than they are anti-academic.

      --
      A Pirate and a Puritan look the same on a balance sheet.
    7. Re:Academic Integrity by paladin_tom · · Score: 2, Interesting

      C# isn't by any stretch the best language to teach concerning the basics of computer programming

      IMHO, neither is Java or C++.

      My school switched a few years back from teaching first-year comp sci in Pascal, to Java. Why? Because Pascal is not a high-demand computer language, and Java is. The downside is that a student is immidiately confronted with object-oriented programming, without first learning the basics of structured programming.

      According to UW's story, their introductory course was previously taught in C++ -- again, not the best language for beginners.

      I think there's a tradeoff happening here between instructiveness and real-world usefulness. Certainly, C++, Java, and even C# are useful languages to know. However, languages designed for teaching, like Pascal, are probably still best for learning the basics of programming.

      Also, I may point out that the article states that the new required course in C# is a "pre-university programming course". This sounds to me like something intended to give students a bit of an introduction to the technical aspects of programming, much like young students may learn some web page scripting before learning "real programming".

      --
      #define sig "Every social system runs on the people's belief in it."
    8. Re:Academic Integrity by alext · · Score: 2

      Only slightly worse in that it's more specific to a specific platform and vendor, but more importantly Java and C Sharp are a lot worse than something like Scheme for the real fundamentals.

      Switching from Lisp to Java for AI was pretty stupid too. Is it possible that AI is dumbing down?

    9. Re:Academic Integrity by alext · · Score: 2

      A fine post until it starts turning into C Sharp evangelism. There's absolutely no fundamental OO or other computing concept in C Sharp that represents an improvement over Java. The language itself is embarrassingly derivative of Java, only the VM diverges in moderately interesting ways, although whether these differences, such as the absence of run-time type information, are really improvements is rather in the eye of the beholder.

      As for OO itself, the post assumes a degree of acceptance and universality on the virtues of OO that is questionable. OO databases never took off, and OO itself is really rather a simplistic approach to structuring code.

      The last thing I'd want is for my kid to be taught that C Sharp represents some kind of revolution and should therefore be regarded as the ultimate in programming languages.

  2. Hrm... by Anonymous Coward · · Score: 2, Funny

    Now the phrase "school sucks" is no longer a subjective comment.

  3. Nooooooo! by __aaaaxm1522 · · Score: 5, Insightful

    *sigh* I had hoped that the mathematics & Comp Sci department at U of W knew better. But who am I kidding? When I went there, we used to joke about how U of W's secondary campus was located in Redmond - given the large # of UW CompSci co-ops and graduates that worked there.

    Ah well, at least my old Physics department is underfunded (wait... RIM is investing $150 million in a new Physics research institute @ the U of Waterloo? DOH!)

    Waterloo always had close ties with industry. Now they appear to have an umbilical cord.

    1. Re:Nooooooo! by rruvin · · Score: 5, Informative
      The Electrical and Computer Engineering program has nothing to do with the Faculty of Mathematics or the Computer Science program. It is a part of the Faculty of Engineering.

      No such requirements are present in the Computer Science program.

    2. Re:Nooooooo! by SerpentMage · · Score: 2, Insightful

      I know how you feel. I graduated from the Engineering faculty.

      What makes me sad is that they are forcing a mandatory course of C#. It is not that I do not like C# because I do. What makes me sad is that now students will HAVE to get specific tools and environments. Those that like other environments will be shafted. Ok there is C# on LINUX, but lets be real, will you be able to get graded on projects created on UNIX, that do not have an easy to open project folder? Not likely...

      When we learned programming we did it with languages that showed specific concepts and were neutral. I guess those days are gone!

      --

      "You can't make a race horse of a pig"
      "No," said Samuel, "but you can make very fast pig"
    3. Re:Nooooooo! by sylvester · · Score: 4, Informative

      I'm really surprised this isn't affecting the new Computer Science faculty that's opening at Waterloo next year. I imagine it's only a matter of time until they fall too though..

      Waterloo does not have, and is not getting a Comp Sci faculty. They have a mathematics faculty, one of a few in the world. That in turn had a Computer Science department, which has now become a School of Computer Science. They are also now starting to offer a Bachelors of Computer Science, although the old Bachelors of Math with a major in Computer Science will still be available. The new B.CS will be less math intensive, and more open to specialization in various areas.

      -Rob

    4. Re:Nooooooo! by susano_otter · · Score: 2
      My university had to use Java for all programming, what's the difference?

      I dunno... does Sun pay a portion of your University's operating costs? That might be a big difference right there.

      --

      Any sufficiently well-organized community is indistinguishable from Government.

    5. Re:Nooooooo! by MarvinMouse · · Score: 2

      Comp Sci at waterloo for the first couple of years uses Java as well for programming.

      Then it shifts to C++ And C.

      --
      ~ kjrose
    6. Re:Nooooooo! by Jason+Earl · · Score: 3, Insightful

      For one thing a Java compiler and JVM exists for every platform that you can name. And you don't have to have a special development environment to hack Java. All you need is a Java compiler, a JVM and a text editor. I am not interested in paying money for Microsoft's tools, nor am I interested in booting into Windows to use them.

    7. Re:Nooooooo! by VAXman · · Score: 2

      Microsoft is a convicted monopolist only in the desktop OS market. They're not a monopoly in academia or development tools, and, in fact, Sun has higher market shares in both of those markets.

    8. Re:Nooooooo! by Jason+Earl · · Score: 2

      Yes, I know about Mono, and I know about SharpDevelop. And if the University of Waterloo allowed you to hand in assignments that targetted Mono then I would not complain.

      What are the chances of that happening?

    9. Re:Nooooooo! by tshak · · Score: 2

      And you don't have to have a special development environment to hack Java. All you need is a Java compiler, a JVM and a text editor.

      C:\> csc test.cs

      Didn't need Visual Studio for that!

      --

      There is no longer anything that can be done with computers that is nontrivial and clearly legal. -- Paul Phillips
    10. Re:Nooooooo! by Jucius+Maximus · · Score: 2
      "If you look over the article, you will see that it specifically refers to E&CE which is in the Faculty of Engineering, unless things have changed drastically since I last set foot there. Computer Science still falls under the Faculty of Math, so the announcement doesn't seem to apply there."

      Yes, CS still falls under math at waterloo. I am not a student there but I could have been -- I did get Engineering acceptance back when I was applying to universities. Alas, it was too expensive.

    11. Re:Nooooooo! by jedidiah · · Score: 2

      Sure they do. Microsoft has been convicted of this very sort of behavior. Plus, the DOJ only bothered to prosecute them for this sort of thing after they violated a "sorry, won't do that again" type of agreement for previous infraction that the DOJ could have charged them for.

      You're the one that is attempting to use dubious argumentation.

      The fact that a company controls a huge portion of the industry does not necessarily imply that a particular product of theirs has any merit. The fact that a large bribe is involved also casts serious doubt into the decision process in question.

      Corporate bribery is also illegal.

      --
      A Pirate and a Puritan look the same on a balance sheet.
    12. Re:Nooooooo! by bugg · · Score: 2

      I'm sorry- what do you mean one of a few in the world? What tech/science/engineering oriented school with any reputation doesn't have a mathematical science department & faculty?

      --
      -bugg
    13. Re:Nooooooo! by sylvester · · Score: 2

      I'm sorry- what do you mean one of a few in the world? What tech/science/engineering oriented school with any reputation doesn't have a mathematical science department & faculty?

      That's the point. Waterloo has a Faculty of Mathematics, with many thousand students and about a dozen departments in it, not a department of mathematics with a couple dozen students.

      -Rob

    14. Re:Nooooooo! by Wraithlyn · · Score: 2

      "The new B.CS will be less math intensive"

      MAN I wish they had that when I went there. I'm pretty decent at math, but never understood why I had to take Advanced Calculus 3 For Masochists to be a software developer. I know many, many talented programmers who flunked out of CS because the math was too intense, even though they were acing all their CS courses.

      --
      "Mind, as manifested by the capacity to make choices, is to some extent present in every electron." -Freeman Dyson
    15. Re:Nooooooo! by Jason+Earl · · Score: 2

      Now that's funny. Either you choose to target Mono or .NET, or you choose to only use the subsets of each language that overlap and that are completely identical in their behavior. Just like there are subtle differences between JVMs and sometimes even between the same JVM on different platforms there are also likely to be large differences in the Mono and the .NET CLR. This is especially true since the Mono CLR is still in heavy development. Heck, it's barely self-hosting. Not to mention the fact that useful parts of .NET like WinForms and ADO.Net are not part of the ECMA standard.

      Now, don't take me for a Java bigot, I don't like Java either, but at least I can write, compile, and test Java programs on my Linux box. I can't do that currently with .NET, and I doubt that .NET and Mono will ever be 100% compatible.

      To be honest, I think that what Miguel is doing with Mono sounds very interesting, and what I have seen of C# has also been impressive. Miguel has a long track record of very successful projects, and so I won't be one bit surprised to see Miguel succeed here as well.

      In the meantime, I am not the least bit interested in programming in Java again (I currently work with Python with a bit C mixed in), but I would be interested in Mono once it's soup. Especially if they ever get around to creating a C# implementation of Python (like Jython). I think that such a beast would be a compelling development environment even if it wasn't completely compatible with .NET. I certainly don't consider myself a Mono basher.

      The problem is that the classes are almost certainly going to require VS.Net, and the beginning classes will probably end up consisting of little more than learning to use VS. Personally, I think that is a shame, but then it's not my school or my tuition.

    16. Re:Nooooooo! by Jason+Earl · · Score: 4, Insightful

      jearl@porter:~$ csc
      bash: csc: command not found

      jearl@porter:~$ apt-cache search csc
      cbrowser - a C/C++ source code indexing, querying and browsing tool
      cscope - Interactively examine a C program source
      libcteco50000 - Orga Eco 5000 smartcard reader PCSC and CT-API driver
      libgempc410 - PC/SC driver for the GemPC 410 smart card reader
      libgempc430 - PC/SC driver for the GemPC 430 smart card reader
      libpcsc-perl - Perl interface to the PC/SC smart card library
      libpcsclite-dev - PCSC Lite client development files
      libpcsclite0 - PCSC Lite client library
      libslbreflex2 - Reflex 62/64 smartcard reader PCSC and CT-API driver
      libstring-approx-perl - Perl extension for approximate matching (fuzzy matching)
      libtowitoko2 - Towitoko smartcard reader PCSC and CT-API driver
      pcsc-tools - Some tools to be used with smart cards and PC/SC
      pcscd - PCSC Lite resource manager daemon
      slib - Portable Scheme library.

      I apparently don't have a csc compiler available. Perhaps it's in non-free?

    17. Re:Nooooooo! by btempleton · · Score: 3, Insightful

      You didn't to be a software developer. You could learn to be a software developer over in E.E. or at many other schools, but because you went to the C.S. department in the Math faculty, they had the idea they should teach you some math before giving you a degree that says Bachelor of Mathematics.

      Now this view is obviously fading a bit with the School of Computer Science, but it was hardly a secret.

      --
      Has it been over a year since you last donated to the Electronic Frontier Foundation
    18. Re:Nooooooo! by Jason+Earl · · Score: 2

      The difference is that Linux doesn't have a C# compiler. Of course, if the C++ course targetted Windows it would essentially be the same thing. I still would have to use Microsoft's tools. Oh well, I suppose if the students don't mind, why should I?

    19. Re:Nooooooo! by Sir+Joltalot · · Score: 2

      Slight correction. It's a "school" of CS and it's still within the Faculty of Math.

      --
      "Caffeine is not an option. Caffeine is a way of life."
    20. Re:Nooooooo! by Bilestoad · · Score: 2

      The great thing is, you can get Microsoft Visual Studio .Net trial edition by clicking the advertisements shown right here on Slashdot. Isn't that convenient?

      Hypocrisy? Never!

    21. Re:Nooooooo! by sylvester · · Score: 2


      Really? All I can see are "Faculty of Mathematics and Natural Sciences" or other tag-ons. Waterloo's is exclusively mathematics. There are, of course, join degrees for applied mathematicians with physics, and that sort of thing.

      http://www.google.com/search?q=%22Faculty+of+Mat he matics%22+site:.no (admittedly, this is an english search, but I would assume that's sufficient.)

      While they may amount to the same thing, I believe I have heard that UW has one of five "Faculty of Mathematics"s in the world. I could definitely be wrong, or a victim of propaganda.

      -Rob

    22. Re:Nooooooo! by sylvester · · Score: 2


      Well, it's hardly worth arguing, and we're not going to agree. I think if the universities in question saw fit to merge what UW has in two faculties into a single faculty, there must be a reason. I would assume that the reason is that there wasn't enough math (or nat. sci.) to justify a whole faculty. At waterloo, that is not the case -- there is enough math to justify an entire faculty.

      This, in turn, implies to me that there are definitely things going on at Waterloo that are not going on elsewhere.

      Thus, while I may be wrong in fact, that is the reason for my guess. And my original statement stands technically, and I think, semantically.

      -Rob

    23. Re:Nooooooo! by tshak · · Score: 2

      How is this an insightful post? Because you can't figure out that MS has released a _FREE_ C# compiler for both Windows and FreeBSD? Sure, the FreeBSD one is just for non-commercial use, but then you have Mono.

      Since you seem to be having troubles:
      .NET Framework for Windows

      Rotor - C# for FreeBSD

      Fully working Linux C# compiler

      Just incase you want some education so you don't sound uninformed next time

      --

      There is no longer anything that can be done with computers that is nontrivial and clearly legal. -- Paul Phillips
    24. Re:Nooooooo! by bugg · · Score: 2
      Here at CMU, it's the "Mathematical Sciences" department. That's because the university classifies math as a science. Other schools do the same thing. I fail to see how that, from an academic perspective, is any different from only having math in your title.

      Maybe it's different from an administrative standpoint, but when you've got a faculty working on math and students taking math courses in the school... if it looks like a duck, if it quacks like a duck, and if it smells like a duck...

      --
      -bugg
    25. Re:Nooooooo! by sylvester · · Score: 2

      uhhh..size? :-)

      The .*Math.*[Faculty|Department] at most schools is 1/10th of the size of the Math Faculty of Waterloo.

      -Rob

    26. Re:Nooooooo! by bugg · · Score: 2

      Except when you're classifying computer science faculty and whatnot as math faculty, what are you really getting at? Comparing any such size measurements is foolish- you would have to apply the same definition of what qualifies as teaching math to every school

      --
      -bugg
  4. This isn't the first time this has happened. by Xzisted · · Score: 2, Interesting

    I went to school at JMU and the NSA actually has a small office there. I know more than a 'few' people who have been recruited directly out of there into the black world. They funded some of the CS and ISAT dept. there and had some core curriculum additions made. I certainly dont remember there being two Algorithim Development classes being required there before they showed up.

    This may be the first time that Microsoft has funded a school but it is definitely not the first time that a gov't entity or corporation has.

    --

    Honesty may be the best policy, but apparently by elimination, dishonesty is the second best policy.
  5. why this is a bad idea by selectspec · · Score: 3, Interesting

    When I connected to the site:

    Warning: Too many connections in /home/uws/websites/uwstudent.org/lib/dbconnect.php on line 2

    Warning: MySQL Connection Failed: Too many connections in /home/uws/websites/uwstudent.org/lib/dbconnect.php on line 2

    could not connect to database

    --

    Someone you trust is one of us.

    1. Re:why this is a bad idea by dillon_rinker · · Score: 5, Funny

      This sort of thing won't be happening much longer; they'll soon be running SQL Server 2000 and IIS 5.0 atop Windows 2000. The load likely will never be too high, but if there is are a lot of hits, performance will degrade much more grace*** STOP: 0x0000000C (0000000A, 0xFAADFF0D, 00000008, 00000000) UNEXPECTED_KERNEL_MODE_TRAP

    2. Re:why this is a bad idea by bogie · · Score: 2

      I'm thinking he just glanced and thought that was MS SQL server so he took a dig at it. Of course the mods made the same mistake and modded him up.

      --
      If you wanna get rich, you know that payback is a bitch
    3. Re:why this is a bad idea by paulschreiber · · Score: 5, Informative
      there's now a static version of the page that is being updated every 10-30 minutes. i've also tweaked the mysql connection pool size.

      hey, at UWS we use open source/free software. :-) it's a LAMP box.

      paul
      (uws sysadmin type)

  6. Finally targeting students who can fight back by gokubi · · Score: 2, Funny

    I think the move toward corporate education at the university level is a good one. Perhaps now that the people being fed the lies are at a cognitive level where they can see through it, they'll fight back. The little ones have been handed this kind of crap for years.

    --
    I'm much funnier now that I'm a subscriber.
    1. Re:Finally targeting students who can fight back by GoofyBoy · · Score: 2

      Goals of a typical student
      1. Pass classes with a decent mark.
      2. Beer.
      3. Pay back student loans.

      Don't see "fight evil giant corporation" in there. In fact, this move by MS might make goal 1 easier and help get a job to achieve goal 2.

      --
      The surprise isn't how often we make bad choices; the surprise is how seldom they defeat us.
    2. Re:Finally targeting students who can fight back by Suppafly · · Score: 2

      Goals of a typical student
      1. Pass classes with a decent mark.
      2. Beer.
      3. Pay back student loans.

      4. ???
      5. Profit!!

  7. University should reconsider.. by Greg@RageNet · · Score: 2

    Well microsoft will do what it can to have it's new programs and languages adopted. It's apon the univerisities to make the desiscions which keep them impartial institutions for learning. Perhaps the university should consider if the funding donation is enough to compromise their proported impartiality.

    -- Greg

    --
    Slashdot, would a spell-checker for posting be too much to ask? It's not rocket science!
  8. so what? by Roadmaster · · Score: 2, Troll

    How does it work in college? some subjects you enjoy, some others you don't like but you know they'll be useful, and some others you just loathe, but you have to complete them in order to graduate.

    So what if they have to learn another programming language. I once had a full course on Prolog, which I hated, but I went through it, passed, and then forgot completely about Prolog.

    This seems to me like just it. Pass the course on C#, maybe with the help of some nearby geek, for those who don't like programming too much, and then go on with your life. It's not like C# will be the only language they'll ever use after that.

    Unless, of course, it's the ONLY mandatory programming course they have?

    1. Re:so what? by sylvester · · Score: 2

      Unless, of course, it's the ONLY mandatory programming course they have?

      No, of course it isn't. It's one of several. The point, and the problem, is that this is curriculum set by industry members. And not just any industry members, but a convicted monopoly, that has been known to weasle in and out of things before.

      It's a compromise of academic integrity.

      -Rob

    2. Re:so what? by Suppafly · · Score: 2

      but a convicted monopoly,

      I wish people would stop saying that..
      there is nothing wrong with being a monopoly.. hell most monopolies are gov't sponsored and the fact that they violated anti-trust laws in the US has very little to do with whether or not some canadian school decides to take a million dollars for a class they probably would have taught anyway.

  9. Re:Where's the Problem? by sylvester · · Score: 3, Insightful


    And what about those students that are already here? I'm not in Computer Engineering, but Computer Science at Waterloo. I find it offensive that my school would sell out its curriculum to Microsoft. Switching schools is hardly a reasonable option for someone that's already here, though I would consider it if it happened in CS and not just CompEng.

    -Rob

  10. Buying mandatory classes? by Skyshadow · · Score: 5, Insightful
    It seems to me that the big at-fault party here is the University.

    The fact that this University is willing to sacrifice any sort of appearence of propriety in order to squeeze a few bucks out of Microsoft is as pathetic and outragous as if they were to let the parents of poorly-performing students buy their way in with large cash donations.

    Of course, the latter example happens all the time, but at least they don't brag about it in press releases.

    Anyhow, it seems to me a horrible idea to set this sort of prescident. What's next? Coke gives a few bucks to the football team and suddenly all students have to undergo a session about the crisp, refreshing taste of Coke, Diet Coke and Sprite? The music industry buys the U a building and, next thing you know, all students are required to buy $300 of Britney and N'Sync albums for their music appreciation courses?

    Universities should be about education, not indoctrination. Unless these are the best languages for teaching the foundations of computer programming (and they are not), they shouldn't be required.

    --
    Every year during my review, I just pray the words "slashdot.org" aren't mentioned.
    1. Re:Buying mandatory classes? by sweetooth · · Score: 2

      The football team won't be entering any classes on Coke, they'll just be required to wear coca cola memorabelia around campus and the logo will end up on the sleeves of the jersey's right under the Nike or Reebok logo. A slightly differant way of selling your students to corporations.

    2. Re:Buying mandatory classes? by locust · · Score: 5, Insightful
      No the people at fault are the provincial government of Ontario, and the people of Ontario. The University of Waterloo is a government funded institution. Over the last 5 years the government has slashed education spending so that people in the suburbs (905) could get thier tax cuts, while balancing the budget. The people of ontario elected these people twice. Its gotten so bad in the school boards that auditors have recommended to the department of education that the province take over three (elected) boards (ottawa, toronto, and hamilton (? not sure about hamilton)) because the members of those boards refuse to implement any further province mandated budget cuts.


      --locust

    3. Re:Buying mandatory classes? by Skyshadow · · Score: 3, Insightful
      Oh, so you're saying that Ontario is going to end up like Arkansas, where people are so blinded by taxes that they doom their children to shitty education and $20k/year menial jobs?

      By the by, California is headed in this direction, too. Apparently people here think that quality education is free, and that it's just the greedy teachers (who can't afford to live here anyhow) who would be taking their money otherwise. Oh well, when I have kids I should be able to afford to send them to an expensive private school.

      --
      Every year during my review, I just pray the words "slashdot.org" aren't mentioned.
    4. Re:Buying mandatory classes? by Skyshadow · · Score: 2
      That's not *such* a big deal, though. Catering services at large institutions often sign large exclusive contracts (at my campus, it was Sodexo, I think). It mostly came into play for outside events (aka, student union rented out for whatever special event).

      Exclusive availablity is still a bummer, but at least they're not coming into class and having a trusted figure (your prof) tell you that Pepsi is a better drink than Coke or Gatoraide or water, whereas requiring C# at least brands it as a good learning language (which, IMO, it isn't).

      To use an analogy, I don't care if Tom Clancy books are the only fiction military thrillers available in the student bookstore, because I can always go elsewhere (and you could go to Safeway, buy a case of 7-Up and be done). I'd care if Clancy's publisher made a huge donation and suddenly, to graduate as a lit major, I had to take a mandatory course on his books.

      --
      Every year during my review, I just pray the words "slashdot.org" aren't mentioned.
    5. Re: Buying mandatory classes? by metamatic · · Score: 2, Funny

      I knew it was all over for academia when the University of Cambridge pimped out its reputation in return for dollars from Gates.

      I'm still angry about it. Every time I get a fundraising letter, I rip it up and trash it. If Maurice Wilkes wants more money for the Computer Lab he can bend over and kiss Bill Gates' butt some more, 'cause he's not getting anything from me for the William Gates Laboratory for Computer Science.

      I mean, what next? The Arthur Andersen Mathematics Building? The Rupert Murdoch School of Journalism? The Ken Lay MBA Program?

      --
      GCHQ Quantum Insert installed. If only our tongues were made of glass, how much more careful we would be when we speak
    6. Re:Buying mandatory classes? by sacrilicious · · Score: 2
      Reminds me of a Simpsons scene where the elementary school of the future is shown. In a classroom with desks stacked on top of each other three levels deep, the children stare at Troy McClure instructing them from a monitor:

      Troy: Okay, now if you have have five pepsis and drink three of them, how much more refreshed are you?

      Little girl: Pepsi?

      Troy: Partial credit!

      .

      --
      - First they ignore you, then they laugh at you, then ???, then profit.
    7. Re:Buying mandatory classes? by Citizen+of+Earth · · Score: 2

      I wonder if Microsoft would get a volume discount if they purchased the entire E&CE degree program. Throw in a little indentured servitude and they'd probably make a direct profit.

    8. Re:Buying mandatory classes? by Tim+Doran · · Score: 2

      Ding ding ding ding ding!

      Mod points... someone? The parent deserves 'em!

    9. Re:Buying mandatory classes? by Suppafly · · Score: 2

      Hate to be the one to hit you with the clue stick, but not so extreme examples of this have been happening for years and it isn't going to stop anytime soon.

    10. Re:Buying mandatory classes? by Suppafly · · Score: 2

      Catering services at large institutions often sign large exclusive contracts (at my campus, it was Sodexo, I think). It mostly came into play for outside events (aka, student union rented out for whatever special event).

      Same here.. sodexho is the devils catering service.. we can't even have pizza at our acm meetings unless we sneak it in or pay for shitty cafeteria sodexho pizza.

    11. Re:Buying mandatory classes? by Skyshadow · · Score: 2

      As someone who used to coordinate ACM meetings, please take my advice: Meet off campus.

      --
      Every year during my review, I just pray the words "slashdot.org" aren't mentioned.
    12. Re:Buying mandatory classes? by isorox · · Score: 2

      all students are required to buy $300 of Britney and N'Sync albums for their music appreciation courses?

      When were you last a student? Just hop on the network and copy them from someone else, sheesh!

    13. Re:Buying mandatory classes? by Skyshadow · · Score: 2
      Go reread my post, buddy.

      Yes, I care that my (potential) children get a good education so they don't end up cleaning the toilets of the people who do have good educations. It depresses me that the well-educated people I meet here in CA seem to have always grown up elsewhere.

      I would prefer they be able to get this education from the public school system. There are acceptible public schools elsewhere (some places in the Midwest, for instance), but those here in California suck. Why? Because they're grossly underfunded. Why are they underfunded? Because Californians can't seem to understand the connection between paying higher property taxes and the quality of education; they somehow think that money is completely unrelated to the quality of an education system.

      I'd gladly pay higher taxes for good public education, but unfortunately I'm apparently in the minority in CA. Since good public education is not an option, I plan to either move out of state or pay to send my kids to a quality private school.

      I'm not really sure where you think we're in conflict here, except that I'm willing and able to abandon the public schools if need be so my kids have the best possible shake at life. If you can't afford a private school and can't move elsewhere, you have my sympathy (but, really, it's not my problem).

      --
      Every year during my review, I just pray the words "slashdot.org" aren't mentioned.
  11. Waterloo has Been MS's for a long time... by puppetman · · Score: 2

    Years ago, I read that Microsoft invests more in Waterloo than in any other university in North America.

    Waterloo is the top comp sci school in Canada (no, I went to the University of Victoria, so pretty objective), and in the top 5 in North America.

    Bummer that they've sold out.

  12. Re:Where's the Problem? by dillon_rinker · · Score: 5, Insightful

    First they came for UW, and I didn't speak up because I didn't go there...

    It's a good deal for both sides.
    Deals between hospitals and insurance companies for managed health care are good for both sides. But are they good for the patient? Deals between the military and arms contractors are good for both sides. But are they good for soldiers & taxpayers? Hypothetical deals between congressmen and lobbyists ("hypothetical" because there is, of course, no quid pro quo) are good for both sides, but are they good for voters and citizens?

    Is this deal good for the students of UW? THAT is the only question that matters.

  13. Proprietary and Acadamia just don't mix by tutal · · Score: 5, Insightful

    There is a reason why serious academic institutions do not overwhelmingly adapt Microsoft. Primarily it is the cost both in dollars and also in loss of academic freedom that comes with the restrictive licensing that comes with many proprietary applications. One of the founding tennants of higher education is that information should be freely and intensely pursued. Sure some "MIS" programs may just be an advanced MCSE/CCNA course, but most real computer science programs could not afford such a narrow scope. CS by definition is much more broad than software developement, MIS, EE, or networking; rather it is the culmination of all of the above with other studies mixed in.

    Any CS program that concentrates too heavily on one thing (ie programming in C# or Java for that matter) really short changes its students and limits the potential that they can achieve. A much more broad approach, while not churning out top notch Java developers, produces excellent problem solvers who are able to quickly learn and adapt to the ever-changing technology world. Looking back on my undergrad experience I think that playing around on the HP-UX and AT&T UNIX (R) box helped me break out of the mold and learn much more effectively.

  14. Nothing new... by cmowire · · Score: 2

    This is nothing new. For quite some time, every CS Freshman at UIUC was issued a free copy of MS Visual Studio.

    Of course, it happened my Sophmore year, so I was not gifted with the freebies. Of course, I did get a free copy of the one true version of Windows (Win2k) from MS for free later, so I'm no more bitter than I usually am.

    1. Re:Nothing new... by BeBoxer · · Score: 2

      Man, I'm glad they weren't doing that when I was a student there. I would've been pissed. I thought it was bad I had to keep buying books by Reingold for my classes. Come to think of it, I never had single class which involved anything Microsoft. But that was '89-'93 when Redmond hadn't even figured out that a TCP/IP stack was a good idea.

    2. Re:Nothing new... by cmowire · · Score: 2

      Yeah, I was the first of the Java students at UIUC.

      I used to think that we should be using Smalltalk instead of Java, but then I learned a little more about Scheme and think we should be using Scheme.

      The problem that I've seen is some universities have moved entirely to Java and Scheme and other garbage collected languages and we've had some pretty baaad job canidates from there who know absolutely nothing about memory management. :/

    3. Re:Nothing new... by Anonymous Coward · · Score: 2, Informative
      Intro classes like 125 should never be designed to give a student "real-world useful" skills. Instead, it's an introduction to core CS concepts (simple data structures, programming paradigms, recursion, just to name a few).

      Agreed -- fortunately, that's exactly what the course does.

      Most of the problems that Java 125 people had when moving to 225 (before it became a Java class, too)

      225 was *never* a Java class. It has been in C++ since at least as far back as Fall 1995.

      That's what 223 was for, originally. It was a software lab that transitioned you from Scheme in the 125 intro to the C++ you'd need for 225 data structures. They got rid of 223 before moving 225 to Java, and that caused a hell of a lot of problems (they should've kept 223, and left 225 in C++, but oh well).

      You have no idea what you are talking about.

      Firstly, again, 225 was never taught in Java.

      Second, the department had the people who took 125 in scheme take 223 right away and then move to one version of 225. The people who took 125 in Java were sent straight to a different version of 225 that taught a bit of C++ at the start of the course. The only people who went through hell were the people who took 125 in scheme but decided not to heed the warning or take note of what was going on, and instead waited a while before taking 223/225, meaning that by the time they decided to do so, 223 was gone and 225 was quickly teaching C++ to Java-familiar students instead of having 223 around to provide a semester-long instruction in C++.

      Please get your facts straight when discussing UIUC in the future.

      Regards,

      Jason Zych
      Instructor (and former TA), 125/225

    4. Re:Nothing new... by cmowire · · Score: 2

      Whoa, Jason Zych on slashdot. Jason, don't ever let them teach 225 in anything that doesn't force you to think about how you use memory. ;)

      The problem is that *other* schools think they can push people through with NO memory management experience whatsoever. As in, we've got people who don't know what a pointer is and barely understand what a linked list is for interviews.

      My big worry is that if the CS undergrad programs stick to all memory managed languages and ditch assembley, than we're in for a lot of pretty useless programmers in the future. There are way too many cases where assembley knowlege has saved my ass while programming. We had people from the top-5 CS schools who seemed to be like that, although it's my strong suspicion that said canidate either was on drugs, a moron, cheated, or some combination of the above.

  15. So? by captain_craptacular · · Score: 5, Insightful

    If the CS department is worth a 1/2 a crap it doesn't really matter what language[s] they teach the classes in. The students should come away with a good solid foundation of general programming knowledge. Languages come and go, if a CS grad needs to know one they should be able to buy the reference and compare to their base of knowledge. Note: I'm not saying CS grads should be guru's in whatever language they choose after a day, but they should be able to get by.

    --
    They who would give up an essential liberty for temporary security, deserve neither liberty nor security
    1. Re:So? by MarvinMouse · · Score: 2

      Well, the CS department at Waterloo is definitely worthwhile. They emphasize the fact that languages are not what is needed to be learned, but rather the concepts of computer science. Hell, we've programmed our own compilers in second year (Nothing great, but working).

      On the other hand, the Engineering dept. (which is the one that is being forced to take these courses) is more dependent on working knowledge. Which means knowing the languages intricately over just knowing the concepts behind programming languages.

      E&CE IMHO is more an applied CS course then anything else. Thus, MS purchased the right dept. when they pulled this fast one. And at Waterloo, the engineering students would never do anything uncorporate so they'll probably just bend over and...

      This is why I am glad I am a honours pure math major. :-)

      --
      ~ kjrose
    2. Re:So? by tongue · · Score: 2

      Note: I'm not saying CS grads should be guru's in whatever language they choose after a day, but they should be able to get by

      too true... a professor of mine told us the first day of class that by the end of the semester, all we would need to be semi-productive (note: he said semi-productive, not necessarily efficient) in any language was the syntax for three structures: a loop, an assignment, and a conditional. I would say that's been my experience so far, though i would augment that with the caveat that to really produce anything worthwhile, one would have to know how to use a function library. so make that 4 things.

    3. Re:So? by Bryan+Ischo · · Score: 2

      It's also less eloquent. You should not attribute a quote to someone unless they said it.

    4. Re:So? by klparrot · · Score: 2, Insightful
      The point isn't so much that students won't know other languages, as that it obviously restricts their choice of platforms.

      With C++ or Java, or most other programming languages out there, compilers (and interpreters if necessary) are available on virtually every platform imaginable. Not so with C#.

      Because the course is in C# and is mandatory, students will be forced to buy Wintel machines and get the .NET tools.

      Even if the .NET stuff is available for cheap, don't think that Microsoft isn't making money off it. UW probably just covers the cost so the students don't have to. Except that they do, in the form of higher tuition bills.

      And when first-year students get roped into Wintel machines, they've just given M$ more money and market share, probably for their entire university career. Given the choice, though, they might have picked Linux on PPC or something else instead. And it probably would have been better.

    5. Re:So? by Salsaman · · Score: 4, Funny
      Yeah but how are the students gonna learn things like memory management and hardware control if they are using a managed, abstracted language like C# ?

      For the same reason, if I were to pick a single language to be taught to engineers, I wouldn't recommend teaching Java either.

      You should start with something like C that teaches the fundamentals, then when you know how a computer *really* works, you can move on to a higher level language like C# or Java.

    6. Re:So? by MarvinMouse · · Score: 2

      Actually, since I am taking CS as a minor, I have had the opportunity to take a large number of CS courses as my CS marks are quite high, and I can get permission from the CS advisors.

      I am not totally aware of what E&CE does, and I am not saying that you do not do theory. I am just saying that a CS major is exposed to more theory then an engineer would be. As the CS student is studying the science of computers and the engineer is studying how to engineer a computer.

      They are inherently two different subjects.

      Don't take me the wrong way though, I am not saying engineers have it easy. I have seen some of the courses that are taken at Waterloo for engineering and they definitely seem to be challenging. I am just saying that they will learn it from a different perspective then a CS student does.

      Even though I am majoring in Pure Math, I am not (as you politely termed it) "speaking out of my ass." I have experience with a large number of CS courses, and I know very well what the curriculum is like. As well, I have many friends in Software Engineering and E&CE and CS, and they have definitely let me know about their joys and quandries with their courseloads.

      --
      ~ kjrose
  16. Is this a suprise? by Herkum01 · · Score: 2, Interesting

    Community Colleges that have courses available, are very PRO-Microsoft. The Community College I am going to has,

    1. Windows Server XP Administration
    2. Windows Active Directory
    3. Programming in VB
    4. Programming in C#
    5. Programming for .NET
    6. Introduction to Computers/MS Office
    7. Database Programming and Administration/MS Access
    8. Networking on a MS Network

    The rare Linux, or C++, or C class is taught at night and there tends to only be one class. It is more a matter of Microsoft taking over all computer learning and other stuff is just a set of geeky computer products.

    1. Re:Is this a suprise? by Skyshadow · · Score: 2

      Well, community colleges aren't exactly performing their intended function (that is, training people for jobs rather than imparting higher-level sciences). Universities, by and large, turn out the functionally trained people, so the community colleges are left with the people who would otherwise be rebuilding engines (not that there's anything wrong with that).

      --
      Every year during my review, I just pray the words "slashdot.org" aren't mentioned.
    2. Re:Is this a suprise? by Radical+Rad · · Score: 2

      No it's not a surprise. Many of the teachers at community colleges aren't even professional teachers. I have known three people who taught computer courses on the side at a local community college and I can say that I would never sign up for a course with any of them as an instructor. It would be a waste of my money. What products would you expect low quality instructors to teach? They typically don't even know what alternatives exist, much less have any experience to compare and contrast them, although many have pretensious attitudes and regurgitate what they heard at some product seminar.

  17. Microsoft marketing gurus by Infonaut · · Score: 3, Funny
    I can see them all scratching their heads.

    Jane: "Darn it, Bob, I just don't understand. No matter how many times we ask people, 'Where do you want to go today?', they still seem to think of us as a big, bullying monopolist."

    Bob: "Well, Jane, maybe we should just change the message. Perhaps if we say, 'Where do you really want to go today?', people will respond better!"

    The guy in the corner from developer marketing meekly raises his hand. "Uh, guys, perhaps if we didn't put out press releases crowing about our ability to buy out universities, we wouldn't be perceived as bullies."

    Jane: "Bob, I think your proposal is right on the money!"

    Bob: "Hey, that's why they pay us the big bucks, right?"

    --
    Read the EFF's Fair Use FAQ
  18. Bill doesn't own C# by Kaz+Kylheku · · Score: 2

    The students don't have to use Microsoft's compiler. This is a very stupid move on Microsoft's part, because it just generates bad publicity, without any payoff. They think that they can own a programming language and somehow exert control through that ownership. Right, the same way Stroustrup controls the activities of thousands of Visual C++ developers. And hey, those C coders won't twitch a finger without Dennis Ritchie's approval.

    1. Re:Bill doesn't own C# by JamesOfTheDesert · · Score: 3, Insightful
      yeah but everytime you say C# you tend to spread word of mouth about Microsoft. So even if there is a C# compiler for linux, Microsoft gets free advertising.

      Try it this way: yeah but everytime you say Java(tm) you tend to spread word of mouth about Sun Microsystems. So even if there is a Java(tm) compiler for linux, Sun gets free advertising.

      Oh, but Sun is the good megacorp, and Java(tm) is an open source and standards-based, well, OK, it isn't really, but C#, is, well, it is an ECMA standard. But Microsoft is bad, no matter what.

      --

      Java is the blue pill
      Choose the red pill
  19. At least C# is (probably) useful by Wraithlyn · · Score: 3, Funny

    Not to take M$'s side or anything, but at least they're teaching something RELEVANT now. When I went there, they were inflicting MODULA-3 on us. (And Pascal.. but then, I like Pascal)

    --
    "Mind, as manifested by the capacity to make choices, is to some extent present in every electron." -Freeman Dyson
    1. Re:At least C# is (probably) useful by dillon_rinker · · Score: 3, Insightful

      Relevant to what? How much production code out there uses C#? How many people will still be programming in C# 20 years from now?

      Learning languages currently being marketed by corporations is stupidly shortsighted. I'd about exepct this from a 2-year tech school, maybe, but a university?

      "Hey kids! This semester, we'll learn about object oriented programming! Open your C# manual to page..."

      "Hey kids! This semester, we'll learn about data structures! Open your C# manual to page..."

      "Hey kids! This semester, we'll learn about algorithms! Open your C# manual to page..."

      "Hey kids! This semester, we'll learn about ethics! Open your C# manual to page..."

    2. Re:At least C# is (probably) useful by halftrack · · Score: 2

      Teaching any programming language is useful as long as you don't focus on the language but the technique.

      --
      Look a monkey!
    3. Re:At least C# is (probably) useful by tshak · · Score: 2
      Learning languages currently being marketed by corporations is stupidly shortsighted.

      But as with a lot of languages, using C# one can teach a student about:

      • Basic programming constructs
      • OOP and Design
      • Memory and Datatypes on a modern (Abstract Stack Machine) platform
      • Program design, conventions, etc.
      • Event driven programming
      • Multithreaded programming
      • UI development and design.
      • Etc.


      This isn't ASP, it's a full blown modern language. Would Java (or another language) be better for the task? Maybe, maybe not. Nevertheless, this has nothing to do with schools teaching the student's a trade.
      --

      There is no longer anything that can be done with computers that is nontrivial and clearly legal. -- Paul Phillips
    4. Re:At least C# is (probably) useful by Zeinfeld · · Score: 2, Flamebait
      Relevant to what? How much production code out there uses C#? How many people will still be programming in C# 20 years from now?

      I would suspect that there is already more C# production code than Modula 3 code. Redmond has been using C# internally for quite a while.

      Nobody raised any questions when comp sci courses chucked out Wirthless languaqges like pascal and Modula in favor of Java. And when it comes to proprietary control of a language only a complete slashweenie can pretend that Java is an open language when Sun uses the courts to enforce proprietary control.

      C# does have one major feature that Java does not, meta data and reflection. Now those are not features that many programmers who have not used the Lisp machine are familiar with but it is a very powerful way to program.

      The point is that in the past five years it has become possible to teach computer programming courses using languages that are both clean in design and relevant commercially. Modula and pascal were botched from start to finish.

      --
      Looking for an Information Security student project suggestion?
      Try http://dotcrimeManifesto.com/
    5. Re:At least C# is (probably) useful by Papineau · · Score: 2

      Java has some reflexivity. Not as much as Smalltalk, but it has some. For instance, you can query an object class for about anything you want, but you cannot (easily) modify it runtime (add/modify a method).

      For more info, check the java.lang.reflect.* documentation.

      I'm not enough familiar with it to talk about it's meta-data capabilities.

      And besides, usually you don't need that kind of functionnality, unless you're doing academic research on such languages, and then you'd probably use Scheme or Smalltalk anyway...

    6. Re:At least C# is (probably) useful by lgraba · · Score: 2

      C# does have one major feature that Java does not, meta data and reflection.

      Apparently, you knowledge of Java is as extensive as your knowledge of the relative openness of the two languages. Java does have reflection. Every object has a Class object, and can get it throught the getClass() method. From this, you can query for the class and interface hierarchy, and for the methods.

      As for openness, it depends on your definition. C# is standardized, but I'll bet that if a big player, such as IBM, were to make extensions to the language and was able to flood the market with their version, Microsoft would not sit on their hands; they would take to the courts, just as Sun did when MS tried to change the way Java worked with their tools and JVM. I see no difference. I do, however, see dozens of implementations of JVM's on the market that are compatible. I don't seen any company other than Ximian stepping forward to provide C#, and we know why that is: MS would squash them.

    7. Re:At least C# is (probably) useful by dillon_rinker · · Score: 2

      And WINS has an RFC. It still sucks. What's your point? That it's OK to suck as long as you suck according to the specification?

    8. Re:At least C# is (probably) useful by bigjocker · · Score: 3, Insightful

      C# does have one major feature that Java does not, meta data and reflection. Now those are not features that many programmers who have not used the Lisp machine are familiar with but it is a very powerful way to program.

      Please check the java.lang.reflect package in the standard J2SDK and come back to this thread. And while you are doing so check the JPDA architecture and head up to the Eclipse Project to see a ass kicking implementation of meta data and reflection.

      BTW, all this was in Java a lot of time ago, if you didn't know it, that's your fault.

      I would like someone to explain us what's about the getter and setter structure in C#, it's like Minority Report: Spielberg couldn't get rid of the whole AI crap completely ... and MS can't get rid of the VB crap either.

      --
      Life isn't like a box of chocolates. It's more like a jar of jalapenos. What you do today, might burn your ass tomorrow.
    9. Re:At least C# is (probably) useful by Tony-A · · Score: 2

      Hmmm... I also see Java being seven years old and .NET being essentially 0. Not a really fair comparison.
      It's a fair comparison if I've got to depend on it.
      Plus there's IBM and Sun to keep each other honest.

    10. Re:At least C# is (probably) useful by Zeinfeld · · Score: 2
      Please check the java.lang.reflect package in the standard J2SDK and come back to this thread.

      You still don't get it.

      Java has reflection. C# has meta data and reflection. You can reflect an annotated data structure. This is exactly what you need if you are going to generate ASN.1 or XML direct from a data structure.

      People who have only used one language and are prejudiced against the other are going to completely ignore the significance of mata-data tagging. I have used more than 20 languages and I have designed several compilers and translators for custom languages.

      Of course strictly speaking you can also use the meta data tagging in Java since it is an extension in J#.

      I would like someone to explain us what's about the getter and setter structure in C#, it's like Minority Report: Spielberg couldn't get rid of the whole AI crap completely ... and MS can't get rid of the VB crap either.

      A property is a method that uses the same syntax as an attribute. Since attributes only support get and set operations I fail to see the VB connection, although the not so secret agenda of C# is to unify Basic and C++ by providing the features of both.

      Properties are actually quite useful. They allow an effective means of sub typing so that an integer that is limited to a specific range can be validated on assignment. They also allow read only properties that are calculated from attributes. So an objects with attributes length and width could define a read only property for area which syntacticaly would look like an attribute.

      It is only in the prejudiced 'MSFT bad' 'Sun good' world of Slashdot that people can denounce C# for lack of innovation while praising Java for being the most momentous thing ever. Both languages are merely incremental improvements on their predecessors. Java only looks so good because it is compared to C++, compare it to Objective C and the improvement is not so great.

      Both C# and Java have several defects compared to languages like occam or python. First off what is it with the semi-colons and braces? Lets get rid of them, the only reason they were ever needed was people misapplying Chomsky to develop parsers. Secondly neither language has an adequate model of parallel programming, and yes I do know all about pthreads and the like.

      From the point of view of control, I suggested to Gosling that they work with formal methods people early on in the development of the language, advice that was completely ignored - as was the advice of every other person outside at the time. After the lawsuit I lost all interest in Java, Sun clearly intend to control the language absolutely to suit the needs of their company as they lose market share to Linux.

      --
      Looking for an Information Security student project suggestion?
      Try http://dotcrimeManifesto.com/
    11. Re:At least C# is (probably) useful by Proaxiom · · Score: 2
      Computer Science students who started in 1997 or later had the option to use Java instead of MODULA-3. Java is now being taught to first years in lieu of Pascal, and they can carry it through to third year when C++ is first required. At least, that was the state of the school when I graduated last year.

      I started at UW in 1996.

    12. Re:At least C# is (probably) useful by lgraba · · Score: 2

      Hmmm... I also see Java being seven years old and .NET being essentially 0. Not a really fair comparison.

      I assume you are responding to the issue of many implementors of JVM's, versus only MS and Ximian as implementors of C#. Do you know of anyone who has announced that they will develop a C# clone? If they were to succeed and make $$$, would they not fear MS coming over and taking over that market, as MS has done in the past? I would think that this is a reason that only the most naive companies would embark on such an exercise. Yes, C# may be technically open, but practically speaking is a MS language.

    13. Re:At least C# is (probably) useful by alext · · Score: 2

      it's a full blown modern language

      Well, as modern as Simula 67 is, I suppose.

      OOP isn't fundamental, but many concepts that are are missing from your list.

      A good course in programming would be one based on learning Scheme to start with. After that, and in conjuction with ML, Lisp, Prolog etc., courses can cover Java and/or C#.

    14. Re:At least C# is (probably) useful by alext · · Score: 2
      C# has meta data and reflection.

      I fear that you are talking gibberish, and random references to Occam, Python and semicolons may not be sufficient to restore your credibility.

      For the record, here's how to serialize a Java object to XML (yes, it uses reflection, but Java hides that bit from you):
      import java.beans.XMLEncoder;

      XMLEncoder e = new XMLEncoder(
      new BufferedOutputStream(
      new FileOutputStream("Test.xml")));
      e.writeObject(myO bject);
      e.close();
    15. Re:At least C# is (probably) useful by tshak · · Score: 2

      But this isn't for a CS credit, it's for an EE/CE credit. And really, a lot of embedded systems are using the Java Micro Edition or the .NET embedded (whatever it's called).

      --

      There is no longer anything that can be done with computers that is nontrivial and clearly legal. -- Paul Phillips
    16. Re:At least C# is (probably) useful by bigjocker · · Score: 2

      I will not fall in the whole "metadata and reflection" crap. As a lot of posters have pointed out, you should drop that '94 java book you are reading.

      As for the Sun lawsuit, I'm 100% on Sun's side, not because all languages should be propietary, but because on the other side is the M$ OS/Development/Office Suite monopoly. If you let Microsoft make a tiny small change on java, they will kill the Java version from Sun, because they will integrate it on the OS, everyone will be using Microsoft Java (which would be incompatible with Sun's) and we would have yet another great language turned VB.
      Both C# and Java have several defects compared to languages like occam or python. First off what is it with the semi-colons and braces? Lets get rid of them, the only reason they were ever needed was people misapplying Chomsky to develop parsers. Secondly neither language has an adequate model of parallel programming, and yes I do know all about pthreads and the like.


      First: There is something called design, code maintenance and code structure. If you want to use a gibberish-language, go use perl. Java is 100% Object Oriented so is designed to "design" software, not just write programs.

      Here is where the whole setter/getter crap comes in. Do you remember pascal? where procedures without parameters where called without parenthesis? when you had a long program you couldn't tell if something being assigned to a variable was a procedure or another variable. People kept using notations to sepparate procedures and variables, so, what's the point of removing the parenthesis if the users will fall back to a non standard procedure?

      That same principle applies to C# "smart" getter/setters. If you have a big project you will have a lot of trouble knowing if some statement is a direct variable access or a hidden setter/getter call. You will have to run around the code to find out if you have a setter/getter for such variable. You see people making up notations again, so why dont you just keep using the all-known standard of setXXX and getXXX? well, this is M$, so they create their own standards, and everyone has to use it.

      Someday M$ will com up with a car with cubed tires, and we will see the M$ appologists ranting here deffending them.

      --
      Life isn't like a box of chocolates. It's more like a jar of jalapenos. What you do today, might burn your ass tomorrow.
    17. Re:At least C# is (probably) useful by Zeinfeld · · Score: 2
      I fear that you are talking gibberish, and random references to Occam, Python and semicolons may not be sufficient to restore your credibility.

      I don't think a low level hack such as yourself working for Dresdener whose main contributions have been to the CORBA fiasco should be assuming that people who disagree with you do so because they are idiots.

      The code you provide is useless as an XML encoding because simply serializing the data structure is not sufficient to produce output that validates against a given XML Schema. There is no way to provide information as to what data elements are to be encoded as elements and which as attributes.

      --
      Looking for an Information Security student project suggestion?
      Try http://dotcrimeManifesto.com/
    18. Re:At least C# is (probably) useful by Zeinfeld · · Score: 2
      First: There is something called design, code maintenance and code structure. If you want to use a gibberish-language, go use perl. Java is 100% Object Oriented so is designed to "design" software, not just write programs.

      I thought we were discussing C#, not perl. As for the sun marketroid speak you are spouting, it does not appear that critical thinking is your strong point (except where the evil empire is concerned). I certainly cannot see how you equate the use of braces and semicolons which were originally introduced by Wirth as a crutch for his crappy LR(1) parser with object oriented programming or design. It is prefectly possible to have a programming language which requires neither and those that do not tend to be languages like occam which have very strong comp-sci credentials, occam was the first commercial language that had a formally defined semantics.

      That same principle applies to C# "smart" getter/setters. If you have a big project you will have a lot of trouble knowing if some statement is a direct variable access or a hidden setter/getter call.

      It is hardly a problem, Visual Studio shows you whether a field is a property or a field as you are typing it. And just why would you care?

      The advantage of the notation is that it is very easy to change a field to a property without having to rewrite code. This is very useful if during developmenht you decide to reorganize a piece of code so that a public field that used to exist is removed or changed somehow.

      Somehow I don't think you have very much understanding or experience of programming language design, still less a doctorate in the subject. Pascal had many problems, not least being the fact that Wirth was an idiot and designing a language to support one pass compilation was rejected as a waste of programmer time over a decade before he reintroduced it. Not to mention the fact that his idea that int [2] is an intrinsicaly different type to int [3] and that therefore there is no legitimate need for a parameter of type int [*] is just plain wrong.

      Returning to you tirade, I think that the real thing here is that whenever C# has a feature that Java lacks you feel compelled to rant about why the feature is completely unnecessary etc.

      --
      Looking for an Information Security student project suggestion?
      Try http://dotcrimeManifesto.com/
    19. Re:At least C# is (probably) useful by bigjocker · · Score: 2

      Here we go again ... Java has had everything C# wishes to have for several years now. MetaData and reflection _is_ in Java (as some other posters have replied a lot of times in this thread). C# may have it's good things, but you can't compare it to Java, not yet.

      You are deffending the decision to teach C# in a mandatory course. If you dont learn to program in C#, you dont pass.

      Lets put aside all the design flaws in the C# language (which are a lot, I use it everyday at work) like setter/getter madness, lets pretend they are in there just to ease our work, there are a _lot_ of other issues to discuss regarding the C# adoptation.

      Is C# an industry standard? no
      How many companies are using C# in production? about 0.01% of the grand total, the rest using Java as OO language of choice.
      In how many OS does C# run? 1 M$'s (mono? nope)
      How many years has C# been in the market? not even 1.

      How can you pretend to make such a language a standard at an university??? Maybe in 5 years it should be used, but now??

      This is just as bad as teaching a phisics class using the last teory that just came out last week. Teaching is a huge deal, you cant just teach hypes. Maybe someday C# will be the right choice for teaching, but not now.

      PS: I'm not an anti MS basher, I love some of their's products. What I hate is the monopoly.

      --
      Life isn't like a box of chocolates. It's more like a jar of jalapenos. What you do today, might burn your ass tomorrow.
    20. Re:At least C# is (probably) useful by God!+Awful · · Score: 2


      Both C# and Java have several defects compared to languages like occam or python. First off what is it with the semi-colons and braces? Lets get rid of them, the only reason they were ever needed was people misapplying Chomsky to develop parsers.

      You had me until here. The fact is, research into the way programmers read code has shown that the statement:

      if (x)
      {
      y();
      }

      is far more readable and tends to contain fewer errors than:

      if (x)
      y();

      or:

      if (x) {
      y();
      }

      or
      x && y();

      Maybe you have an editor that marks different levels of indentation with different text colours or something. I dunno. Research also shows that whitespace makes code more readable. Python seems to be designed for compactness of notation instead. Maybe a lot of users still program in 25x80 VGA text mode or something like Linux does.

      Python seems to be easier to learn and debug as a scripting language than bash or perl, but you seem to ignore the fact that semantic inconveniences, such as semicolons, variable declarations and type checking, are all there to catch programming bugs before you reach the debugging phase.

      -a

    21. Re:At least C# is (probably) useful by Zeinfeld · · Score: 2
      The fact is, research into the way programmers read code has shown that the statement

      Can you cite the paper? What was the sample trained to use?

      The advantage of dropping the braces is that you can get a lot more code onto a screen at once.

      The advantage of dropping semicolons is you don't have to type them.

      The only research I am aware of is the Kernighan and Richie exercise where they looked at Fortran's use of a continuation character and pascal's use of semicolon as a statement separator. I agree with their conclusions, however they are not definitive and certainly don't support the claims you make.

      In occam that would be (with dots to get through the crappy slashfilter:

      IF
      . x
      . . y
      . TRUE
      . . SKIP

      I tend to think that occam goes too far, particularly since parallel process composition is raised to the same level as sequential. The multicase if statement is pretty cute however and entirely removes the if-then-dangling else problem which is the source of confusion with braces.

      Removing the comp sci lunacies from occam would give something like:

      IF
      . x
      . . y1
      . . y2

      --
      Looking for an Information Security student project suggestion?
      Try http://dotcrimeManifesto.com/
    22. Re:At least C# is (probably) useful by God!+Awful · · Score: 2


      Can you cite the paper? What was the sample trained to use?

      There is a good discussion of optimal formatting in Code Complete, which is a pretty well respected book, even on /. I believe the sample was either Pascal programmers or C programmers.

      The advantage of dropping the braces is that you can get a lot more code onto a screen at once.

      Well that's basically my point. Stop programming in 25x80 text mode and this will cease to be a problem.

      I don't actually program in Python but a few months ago I was interested enough to read a tutorial. I have to admit that when I found out about the wierd formatting rules, I gave up on ever using the language. I was bemused by the fact that a large portion of the tutorial was spent teaching you to avoid hard to spot mistakes (e.g. be very careful when typing variable names because if you misspell a variable, the compiler will just create a new one for you.)

      -a

    23. Re:At least C# is (probably) useful by Zeinfeld · · Score: 2
      Well that's basically my point. Stop programming in 25x80 text mode and this will cease to be a problem.

      I have an 18" LCD monitor, I woud prefer to be able to fit more than one or two routines on the screen at once.

      Admittedly the folding in Visual Studio helps a lot, but the half baked XML documentation scheme could have been better thought out.

      I would much rather have the lanugage define documentation constructs outright. If the documentation is important it should be part of the structure of the language.

      e.g. be very careful when typing variable names because if you misspell a variable, the compiler will just create a new one for you.

      Since I had Tony Hoare as my college tutor I pretty much had to read his Turing award lecture on the need for required variable declaration. Of course now he works for Microsoft so do the C# designers...

      --
      Looking for an Information Security student project suggestion?
      Try http://dotcrimeManifesto.com/
    24. Re:At least C# is (probably) useful by God!+Awful · · Score: 2

      I haven't used any of the recent versions of Visual Studio so I can't really comment on that. I do most of my programming on Linux and I really miss the browse info feature. Some of my coworkers even do all their Linux development on Windows just to get that feature. The fact is, you're supposed to design your functions in such a way that you don't need to look at more than one at a time. I've never heard of Tony Hoare, but apparently he invented quick sort. Not bad.

      -a

  20. Article text (finally got it) by JediTrainer · · Score: 2, Informative

    By Ryan Chen-Wing on Wednesday, August 14, 2002 at 12:33 p.m.

    MS Ca Pres Clegg and Dr. Dave sign agreement At 10:00 today Microsoft Canada Co. President Frank Clegg announced $2.3 million funding that will facilitate three projects in the areas of academic research, education solutions, and curriculum integration. UW President David Johnston, UW's Director of ICR Vic DiCiccio, and MS Canada's Director of Education Sector George Kyriakis spoke as part of the announcement.

    The aim of the research project is to develop equation recognition for new Tablet PCs that, in addition to having the functionality of laptops, have a screen which is touch sensitive to styli.

    Clegg said that Tablet PCs are set to be released 7 November this year. He said he couldn't say for sure what the retail price will, "It would be great if we could get it down to the price of of a regular laptop."

    Clegg and Dr. Dave discussing the Tablet PC The education solutions project will allow students to access lab equipment and simulators. A press release says that 8,000 course students in E&CE will benefit from this.

    Under curriculum integration, first-choice applicants to UW's E&CE program will be allowed to take a new pre-university programming course in C#, E&CE 050. Completion of this course will be mandatory for students entering the E&CE program. C# is a new programming language developed by Microsoft.

    The existing course E&CE 150, an introductory course to programming, will change from using C++ to C#.

    DiCiccio commented on changing curriculum under the agreement, "E&CE weighed all the aspects of it and was comfortable with the change...UW is really sensitive to curriculum decisions it makes." He also joked, "$2.3 million isn't enough to sacrifice curriculum."

    DiCiccio, Johnston, Clegg and Kyriakis At the end of the press conference, Clegg and President Johnston signed the agreement using an Acer Tablet PC. The announcement was made at UW in the Davis Centre's ICR Corporate Partner Lounge, which is also known as the fishbowl or the wine-and-cheese lounge. About 100 people attended.

    The funding is part of the Microsoft Canada Academic Innovation Alliance, a $10 million dollar fund administered over five years that will accept proposals from acredited universities. A press release describes the four categories of the fund, academic research, education solutions, curriculum integration and industry outreach.

    Kyriakis said, "We believe we should create ties between the business community and the academic community to ensure that innovation happens into the future." He added, "What we're doing at Waterloo is just fantastic."

    All projects under the alliance will incorporate Microsoft technology. Clegg said, "We think that is the value that we provide."

    Microsoft Canada President Frank Clegg has agreed to answer the 10 best questions posed by uws readers about the Microsoft Canada Academic Innovation Alliance, and its impact at UW. So, post your questions. uws editors will select the 10 best and send them to Mr. Clegg, then post his responses.

    --

    You can accomplish anything you set your mind to. The impossible just takes a little longer.
  21. Old Hat Distribution by Mittermeyer · · Score: 3, Informative

    Guys, this is an ancient practice dating from when IBM and alums would give away mainframes for market share and also writeoffs, all the way through to Apples in the classrooms to hook the little monsters on GUIs. This is so old hat, it's just a knee-jerk reaction story. Move along, nothing new to see here.

    --
    ________________________________________ History Must Not Fall Into The Wrong Hands ___________________________________
  22. I'm not concerned yet... by guttentag · · Score: 2

    I'll worry when the University makes the C# class mandatory for English majors.

  23. Re:Java by interstellar_donkey · · Score: 2

    The difference here is choice. It's not a matter of it being Micosoft that's doing this, it's a matter of a company being able to have the influence over academia to mandate students learn to use their products.

    There is nothing wrong with a University offering classes that deal with MS, but when they are forced, the message is sent that MS is insuring that when people graduate, they will have a healthy number of people in the workforce who are famiular with their prodcuts.

    Weather or not MS's products are better or worse then their competitors is a moot point. I certiantly woudn't want to go to a school that mandates I am knowledgable of a particular comapnies products at the expense of learning about another companies products that I am more interested in (or am seeking a job working on after graduation)

    Microsoft gets a good deal more of blame then if this was proposed by another company because it fits into a larger scheme of gorillia marketing tactics. Why spend more money/resources making our product better if A: we can make sure that everyone uses ours, and B: we can make sure that there will always be people around to fix it if it breaks.

    --
    The Internet is generally stupid
  24. Re:Where's the Problem? by geekoid · · Score: 2

    normally I would agree with you, but considering MS's history of domination, they will end up with a lot more cotrol over the industry, then most companies.
    Where does someone go to school when they all are like this? how does one minimize the effects of corporate bias?

    --
    The Kruger Dunning explains most post on /. http://en.wikipedia.org/wiki/Dunning%E2%80%93Kruger_effect
  25. Re:Glad to be getting out by An+Ominous+Coward · · Score: 2

    Let me put it this way -- there's ALWAYS a market for very talented people.

  26. The myth of Waterloo by AdamBa · · Score: 5, Interesting
    OK, just have to weigh in with my opinion on the exalted status of Waterloo within Microsoft. What explains Microsoft's fascination with Waterloo graduates? Read on (hint: it has to do with the interaction between how Waterloo does it co-op program, and how Microsoft does its interviews).

    [This is an excerpt from chapter 2 of my book.]

    "Waterloo is considered the premier engineering school in Canada, and is most famous for its co-op program, in which students alternate school trimesters with work trimesters for five years. By the time they graduate, students have accumulated six different four-month work assignments. Some students wind up spending three or four of these co-op terms as Microsoft interns and then hire on full-time when they graduate. "Co-op" and "intern" mean the same thing in this case--one is the Waterloo term and one is the Microsoft term--but because of how the Waterloo schedule works, Waterloo co-ops will show up for Microsoft internships not only during the summer, but also from January to April and September to December.

    Waterloo students have a reputation at Microsoft for being the crème de la crème among interns. In fact, for a while Waterloo interns were given special email addresses. While interns from all other schools had email addresses that started with "t-" (to visually distinguish them from full-time employees), Waterloo interns were given the unique prefix "w-". In the world of Microsoft that was high status indeed. Having grown up in Canada and knowing many people who went to Waterloo, I will state that there is nothing particularly magical about Waterloo students. Waterloo certainly does attract some of the best engineering students from all across Canada, but the admission standards are unquestionably lower than at the Ivy League universities, MIT and other top U.S. schools. Waterloo does a fine job of educating its students, but the curriculum is the same standard engineering courses offered elsewhere.

    Despite this, Microsoft will happily turn down honors graduates from top U.S. schools, while drooling over Waterloo students. Why is this? It is because of the co-op program. But what is it about the co-op program? First of all, let's separate the students who did co-op terms at Microsoft, and lump them together with students from other universities who did internships at Microsoft. Those students are treated differently from others interviewing--Microsoft does recognize previous work experience at Microsoft as a valid input to the hiring process. One of the main goals of the whole internship program is to conduct extended, real-world evaluations for future full-time employment. If you have worked as an intern at Microsoft in the past and gotten good reviews from your boss, that is considered prima facie evidence that you will do well as a full-time employee and will factor into your interview after college. In fact it may become harder and harder for others to get full-time jobs at Microsoft, because hiring former interns carries so much less uncertainty.

    But what about the students who have not interned at Microsoft before? Microsoft interviewers love to hear about specific tasks that were worked on by the candidate, with clear goals and results. Waterloo co-op jobs are great for this, so they give the students much more to talk about during interviews. This gives the Waterloo students a huge advantage over those from other schools, without indicating that they are likely to do any better once they are hired. The real ability they have is the ability to interview well at Microsoft.

    I once asked a former Microsoft recruiter what she thought about Waterloo. Her first instinctive reaction was "a top school for technical candidates." But after thinking about it for a bit, she commented, "Outside of Microsoft, I've never heard of Waterloo."

    Microsoft used to have a very bad attitude towards universities in general, viewing them merely as (imperfect) training grounds for students. Graduate degrees, with the exception of MBAs, were viewed as a waste of time. One senior manager, discussing recruiting students who were considering graduate school instead of Microsoft, once said, "We fully know how bogus [graduate school] is." This has improved recently (Microsoft now gives grants to schools without trying to dictate exactly what the money will be used for), but the bias against theoretical work and in favor of applied work still remains. Trying to figure out the relevance of a school project during an interview is hard--it is too dissimilar from the work done at Microsoft. Much easier to discuss co-op terms with a Waterloo candidate, and much less risk to recommend "hire" on one. So the myth of Waterloo persists."

    - adam
    1. Re:The myth of Waterloo by Succa · · Score: 4, Insightful

      Excellent. That's exactly how I've always felt about UW students. They're nothing special. In fact, I'm hard-pressed to think of a single famous UW grad. Not famous in the sense that they started a business, or that they've done well fiscally for themselves. I mean famous. A household name. A Dijkstra or a Stallman. I can't think of any, can you?

      After being surrounded by innumerable UW students in the last 5 years, I'm more than thrilled to see their self-congratulatory egos shattered by the hammer of reality. There's a common fallacy among UW CS/CE/EE students that goes like this:

      1. School X is good
      2: I go to school X
      3. Therefore, I am good.

      But many of the UW grads I've worked with don't know their heads from their asses. Ask anyone who has ever TA'd CS 354 (the third-year Operating Systems class), and who has had students ask them what a heap is, for example. And yet, they'll strut around school, thinking about how companies will stumble over each other in offering them cushy jobs with huge salaries, free Odwalla, etc.

    2. Re:The myth of Waterloo by Hoser+McMoose · · Score: 2, Insightful

      Good article, but I think there's one extra important things that you didn't touch on, and that's the Waterloo/Microsoft work mentality.

      Waterloo has a certain mentatiliy that they push towards their students (or at least those in Comp Sci and Eng. programs), and that is basically to get the top grades regardless of all else. It's a very competative school, and it's the only school I know of (in Canada at least) where students are publicly rated according to their grades from highest to lowest.

      To put it bluntly, Waterloo is definitely NOT known as a party school. Sure, I've gone out drinking with more then a few Waterloo engineers, but by and large, those people a.) hate the school and generally don't enjoy the competative atmosphere, and b.) are usually ranked amoung the lowest in the class :>

      From what I understand Microsoft really likes the attitude that the top Waterloo grads tend to bring to the table, ie work for 60-80 hours a week without every enjoying yourself just to get some sort of reputation.

      FWIW I actually just finished an engineering degree at the University of Guelph (only about 30 min away from UofW). We also have a co-op program at Guelph, as do pretty much all Canadian engineering schools these days (I suspect that other countries have a lot of similar programs as well). I can tell you that co-op is a great idea, but it has it's share of flaws, regardless of what school you go to (I know of and have worked with a number of people from Waterloo co-op as well as Guelph co-op and a number of other schools). Good idea, but bad implementation.

    3. Re:The myth of Waterloo by Stu+Charlton · · Score: 5, Insightful

      (Disclaimer: I'm a former Waterloo CS student. Left for my career without graduating around the beginning the dot-com bubble, still employed, no regrets.)

      I agree with your assessment that there's a mythos behind UW students that seems to be carried among other companies as well, particularily in professional service firms, whether smaller ones or larger (like Accenture). But this mythos isn't entirely without basis.

      I would generalize your observation to include my own experiences interviewing and working with UW co-ops and graduates: many UW students often *do* interview better than most other graduates and/or interns. And they often do generate better-than-average results. Over the past 2 companies I've worked for on the U.S. west coast and the east coast -- management fell in love with UW students.

      I would attribute this to what some might find surprising: many CS and Eng students at UW have very good communication skills relative to their peers in other schools. The co-op program requires them to be good, since they have to work in between heads-down course work. Naturally every class has legendary high-mark/anti-social students, but they wind up being professors anyway *grin*.

      A secondary reason for UW student's success at Microsoft and PSFs is that UW tends to hammer programming skills into CS students, even if it kills them (as anyone who's taken Operating Systems will attest to).

      Being relatively professional speakers, the best UW co-ops are usually both confident & technically savvy enough to be placed on the front-lines to do real work -- whether in front of a client for a contract, or @ Microsoft with the culture of debating ideas.

      Usually the UW co-ops and/or graduates I have known have been better than many full-time employees at client sites. But not perfect. I find UW grads, like all grads, have a lot of learning to do in placing systems work in business context. There's also a general lack of both high and low-level design skills, and an overemphasis on tricky algorithms and/or cleverness. The cynic in me believes this makes them fit right into Microsoft, which until .NET rarely considered elegance an important facet of keeping software costs low. The only grads that have design skills and/or good business skills usually are self-taught.

      So, in summary: there is a myth around waterloo students, but not entirely unwarrented. They're more experienced programmers than most regular interns from other schools, and often they can be better communicators.

      --
      -Stu
    4. Re:The myth of Waterloo by mikec · · Score: 4, Interesting

      Ian Goldberg. I had the entertaining job of teaching second-year programming to him. He answered questions practically before I finished asking them. I eventually had to limit him to, like, three answers per lecture.

    5. Re:The myth of Waterloo by irix · · Score: 2

      there is a myth around waterloo students, but not entirely unwarrented

      I think it is pretty unwarrented. Maybe I am biased because I turned down Waterloo for another University, but I know friends who went there, and I have met plenty of people in the workplace who did too.

      From what I see, Waterloo runs a CS/Comp Eng. school like everyone else. Sure, back in the day when they were the only ones doing co-op it might have been different, but now everyone does that.

      IMHO, what school you go to doesn't have that much of an impact. Your natural ability, personality and willingness to learn aren't going to be changed by a post-secondary institution, and those are the things that really count.

      --

      Do you even know anything about perl? -- AC Replying to Tom Christiansen post.
    6. Re:The myth of Waterloo by btempleton · · Score: 5, Interesting

      How many people are as famous as Dijkstra or Stallman? (Not that my mother would know either of their names!)

      And how many famous poeple do you know the alma mater of?

      A lot of guys from my time at U of Waterloo have done stuff to get noticed. People like Mark Tilden get written about. Ever heard of RIM? Built almost entirely by UW people, and I know their names and went to school with many of 'em, so you might not.

      Some for the people who founded Mortis Kern, who were also the people who wrote Coherent, pretty well known in Unix circles.

      Know Tom Duff and Bill Reeves? They're pretty famous in computer graphics circles. You see their names on the credits or a lot of movies from ILM and PIXAR. Late 70s waterloo folks again.

      Walter Banks, one of the founders of Byte magazine? Scott Vanstone, pioneer in eliptic curve cryptography. (he taught me crypto.) And as the article suggests, though MS doesn't make its programmers into stars, a ton of Microsoft's code is from UW grads.

      And you know, I'm not as famous as Stallman but I'm not that unknown myself in the online world.

      And this is just the guys from my time around 1980. Lots of other folks after us went on to great things, but I don't necessarily know what school they went to.

      Of course, UW is a young school, just coming up on 45 years of age. It got famous for WATFOR when it was only 10 years old. It takes a lot of time and reputation to get to the level of those other schools.

      Is it the best school in the world? Who knows, but I know when I started hiring people years later, few I found from various U.S. schools were as good as the friends I had who were the best from Waterloo.

      --
      Has it been over a year since you last donated to the Electronic Frontier Foundation
    7. Re:The myth of Waterloo by Stu+Charlton · · Score: 2

      MHO, what school you go to doesn't have that much of an impact. Your natural ability, personality and willingness to learn aren't going to be changed by a post-secondary institution, and those are the things that really count.

      Hey, I'm a Waterloo dropout, so I do agree. I'm just relating my experience that I've found more people with the above qualities at Waterloo than other universities during the time period 1996-2001. Maybe it's changed. Certainly some of he UW mythos has been shattered by the ego displayed by co-ops during the dot-com mania (give me perks, ft salary, etc.)

      --
      -Stu
    8. Re:The myth of Waterloo by Alomex · · Score: 2

      From what I see, Waterloo runs a CS/Comp Eng. school like everyone else.

      Not at all. UW gets better students so it demands more of them. The same course in UW will cover more material and at a deeper level than at most other universities. Plus you are more challenged by your peers as they are quite often smarter than you.

      IMHO, what school you go to doesn't have that much of an impact.

      Wrong again. If you go to a top notch university (be it UW, Stanford, MIT, Oxford, or Moscow State) you have face-to-face contact with top notch people. This enriches your learning experience.

    9. Re:The myth of Waterloo by DataSquid · · Score: 2
      Plus you are more challenged by your peers as they are quite often smarter than you.

      oh god, yes. thankfully with the new shitty software (peoplesoft) running the show, they now don't know how to put the rankings on the mark forms. for the first term in forever i don't rank in the bottom 1/4 of the class!!

      --

      DataSquid.net, a little about me.
  27. ECE150 focus is on programming, not language by miratrix · · Score: 2, Informative

    I've read the article on UWStudent.org, and while I don't know anything about E&CE050, as a computer engineering student at UW, I have taken E&CE150 not too long ago and I can definitely say that the focus is not really on the specific language used, but things like algorithms, data structures, sorting/searching, root finding.

    The second course of the set - ECE250 - is titled Algorithms and Data Structures and is taught in Java, and in either case, you are expected to pick up the language and start using it without any hand-holding. There's one hour tutorial at the start of the course that explains the language used (it was C++ for me), and after that, it's just TA's helping people during lab hours.

    I don't think this is as big a deal as it sounds...

  28. Re:Waterloo has the most recognised CS program by susano_otter · · Score: 2
    Actually, I'd recommend using a few throwaway certifications to get your foot in the door at a good company.

    Personally, I find that to be a much better choice for making big bucks from sitting in front of a computer.

    I can't imagine how you equate "paying several thousand dollars in annual tuition" with "making big bucks". Or did you mean that UW is the best choice for a stepping stone to those high-paying jobs? Because I'm sure there are millions of graduates of other schools around the world who would disagree with that statement.

    --

    Any sufficiently well-organized community is indistinguishable from Government.

  29. Re:Where's the Problem? by markbo · · Score: 2, Interesting

    The response of going to another school is so shallow it's hardly worth replying to, but as the comment got modded up...

    At the University of British Columbia (where I'm a PhD student) Coke has a monopoly deal -- all vending machines and food sources on campus sell only Coke products. (UBC is isolated -- virtually no off campus sources are available.) So what -- just drink water? UBC has removed/is removing the drinking water fountains from around campus, because of "maintenance costs" -- which is a bit of a joke because none have ever been maintained as far as I can see. No connection to the contract with Coke, I'm sure... My collegues and I currently fill waterbottles from the taps in the bathrooms, and we're just waiting for some nasty disease to ripple through.

    Universities fill a WAY larger role in society than job training. Deals like this one erode the functions of independant criticism.

  30. mod parent up! by Monkelectric · · Score: 2
    When I went to university, students were QUITE vocal about what they hated. Fuck Java, fuck Microsoft, fuck Visual Studio, fuck assembley, fuck linux, fuck makefiles, fuck everything.

    MS is never going to win any mind share, but they still have the upper hand ... Because every last person I heard say "Fuck Microsoft" didn't turn down a job offer doing development on MS platforms/compilers -- if an offer was made.

    Having principles can be damn expensive

    --

    Religion is a gateway psychosis. -- Dave Foley

  31. C++ Out at UW by daviskw · · Score: 2

    As a developer who uses C++ and who realizes that very, very few people who use it actually know it I would like to thank UW for ensuring that I never have to look at a resume from a kid who graduates from there.

    Droping C++ from the cariculum ensures that students graduating with degrees from UW will not be suitable for working on anthing that most of my peers would consider interesting.

    Bravo UW.

    --
    Beware the wood elf!!!
    1. Re:C++ Out at UW by BigMFC · · Score: 2, Interesting

      So you're going to turn down a student with six terms worth of practical work experience in a variety of companies and actually has proven ability to work in the real world, and instead you're going to hire a student fresh out of college whos only work experience is in a McDonalds in high school? Get real, in spite of all the accusations that Waterloo pimps its students, they come out with a far better looking resume that any other college grads. And ECE150 isn't the only course that uses C/C++.

  32. Re:Where's the Problem? by garcia · · Score: 2, Interesting

    you are right, but in most cases student opinion really doesn't matter.

    I graduated from Bowling Green State University this past December. They completed our new student union sometime around then (I really don't remember when it was done, maybe Spring Break). Anyway, this fucking project was funded in part by a large donation from Pepsi Co. which came from the school deciding to go 100% w/Pepsi instead of multiple vendors.

    I never have and never will like Pepsi. It's not b/c of them being stupid w/Spears, etc, it's just b/c it tastes like shit. Anyway. My last year or so I didn't have the choice of what drink to have on campus (no, I didn't have cash on hand to buy Coke somewhere else and drink it on campus).

    The student body was asked what their opinion was. A panel was formed, they decided, fuck Pepsi and the Union donation, we were sticking w/choice.

    The school OTOH decided that 8 million dollars was worth pissing on the students and building a huge Union (with a lot of empty space I might add).

    back to the original comment. Yes, they make these deals but w/o really caring for the students. $ > students, always.

  33. Universites- bunch of sell-outs by Graspee_Leemoor · · Score: 2

    Here in the UK our universities have been a bunch of evil sell-outs for ages. We always joked that our university was really a conference park that took students in when it wasn't conference season. We joked, but the conference guests got better amenities in the university accomodation than the students did.

    Also there was a lot of courses in compsci where you'd just think "Why the hell is this course in here ?" An example was on the MSc in Information Technology (basically a 1 year conversion course for people new to IT) where they had a course on inductive logic programming. This was way ahead of anything else the students were taught (data structures, basic pascal programming etc). The real reason was that the inductive logic dude was a former Oxford lecturer who came with attractive grant prospects.

    It's all about making money and not teaching students. Universities are businesses. They have only a little more integrity than those spammers who offer to sell you a degree over the internet!

    Also look at the fact that final degree marks have changed. In my parents' time it was incredibly difficult to get a 1st class degree, you had to work really hard to get a 2.1 etc. Now they basically split it like:

    bottom 10% = Do no work at all- go to no lectures: pass general , fail or 3rd class (randomly decided)

    middle 80% = 2.2 or 2.1- either did work or was intelligent but did no work.

    top 10% = 1st.

    graspee

  34. Harvad Law School and the RIAA joint venture by freerangegeek · · Score: 2

    Following in the footsteps of the esteemed Universtity of Waterloo, we'd like to announce a joint venture with the RIAA. In return for a generous donation from the music industry, we're adding a mandatory course in copywrite extension and protection. Students will learn first hand how the indefinite extension of copywrites and the robust persecution of lawbreakers, help insure the future of our great legal tradition.

  35. So what else is new? by AJWM · · Score: 2

    U Waterloo has always been in the computer industry's pockets, it seems. Back in the 80's it was IBM, now it's Microsoft. Ho hum. UW does produce good engineers, but they tend not to think outside the box. (Which may not be a quality you want in all your engineers, anyway.)

    (Disclaimer: while I've never attended UW, I used to live a block from campus, my (now ex-) wife worked there, and I once worked at a company where there were only two other (out of about fifty) non-UW grads on the tech staff. I also worked at the computer center of another university a few miles down the road from UW, we were pretty familiar with things at that campus.)

    --
    -- Alastair
  36. Re:Huh huh... Waterloo by danny256 · · Score: 2, Informative

    Waterloo, Canada is named for Waterloo, Germany (it was founded by German people and it used to be called Berlin before WW2 when people made them change it).
    Napolean's battle of waterloo took place in Belgium, not Germany, therefore a Napoleon joke is not required.

  37. Other lead Ontario schools doing the same. by Anonymous Coward · · Score: 2, Interesting

    ALL of Conestoga College computers in EVERY computer lab will be running WinXP by the start of this semester. why? nobody I have been able to talk to knows, the instructors aren't really happy, the IT people sure aren't happy (some still stuck on Novell). They are building a brand new building though... ;)

  38. think this is a bad idea? tell the president! by paulschreiber · · Score: 3, Insightful
    If you think this is a bad idea, let UW President David Johnston know:

    - email president@uwaterloo.ca
    - phone 519-888-4567, Ext. 2202
    - fax 519-888-6337

  39. Job Interviews in 4 Years... by unsinged+int · · Score: 5, Funny

    4 years from now a bunch of grads will be heading to interviews...

    Grad: "I know C#! Hire me!"
    Industry: "C#. Check. What else do you know?"
    Grad: "Huh? Like what?"
    Industry: "Well, what did you learn in some of your other courses?
    Grad: "I know how to design a web page so that it only works under Internet Explorer."
    Industry: "Hmm..okaaaay. What type of degree did you say you have again?"
    Grad: "I have a copy right here..."
    Industry: "That says MCSE. That's not a diploma."
    Grad: "No, it is. There's some fine print at the bottom. See?"
    ...

    1. Re:Job Interviews in 4 Years... by TheTomcat · · Score: 2

      Grad: "I know how to design a web page so that it only works under Internet Explorer."

      Should read:
      Grad: "I know how to design a web page."
      Industry: "Ok, let's see.. [clickityclicky] Wow! It's really messed up."
      Grad: "Oh. That's 'cause you're using a non-standard browser."
      Industry: "Uh, no. This browser follows the W3C's reccomendation very closely"
      Grad: "But it's not the de facto standard... Nobody uses those browsers anyway.. just fire up IE9.3XPMT"

    2. Re:Job Interviews in 4 Years... by isorox · · Score: 2

      That says MCSE. That's not a diploma.

      Ahh, but this uni'll give you an MSD - microsoft software degree

      Still, its better then the linux version I guess.....

  40. Um... so.. I've had 3 courses on Java... by benmhall · · Score: 2

    Well, it sucks a bit because it's MS, but to be fair, I've had three courses that used Java exclusively during my studies at Carleton University in Ottawa, Canada.

    The two first year intro to programming courses as well as a second year data structures course all used Java. As much as it is a cheap rip-off, MS seems to be paying more attention (or lip-service) to the standards bodies than Sun did.

    Don't get me wrong, I don't like that MS has basically ripped of Java, but I honestly don't see how this is any worse than the many schools using Java in the curriculum.

  41. how long until employers complain? by klparrot · · Score: 2, Interesting
    How long will it be before employers start complaining that their UW co-op students don't know Linux or Java and can't work with non-Intel architectures?

    Plus, in my experience, C# encourages bad programming style. I wrote a work report last fall (I'm a UW CS co-op) tearing it apart, but I'll leave a full discussion of that to someone else.

  42. Re:Where's the Problem? by Jucius+Maximus · · Score: 2
    "You have a problem with this? Don't attend. Go to another school that doesn't require this. There are plenty that will do that."

    Microsoft picked a good timing schedule for announcing this. The university admissions/offers cycle has just ended, so you can't easily rescind your acceptance of their offer of admission and switch to another university that also sent you an offer.

    The way it works in Ontario, Canada is that the central university admissions group, the OUAC manages all admissions requests and communicates between the high schools and universities. If a university sends you an offer of admission, you reply to the OUAC before a deadline which is common among all universities. If you get another offer you like more (maybe with better scholarship $$) you send that one to the OUAC and it overrides the previous one. This is all nice and good as long as it is done before the deadline.

    This deadline has already passed - I think it was about a month ago, so if someone got into Comp.Eng at Waterloo, they may just be kicking themselves now. (Note: I am not in this batch of applicants ... I have been in a well respected Engineering program at a well respected Ontario University for some years now. My Engineering Faculty actually did a formal survey of all students regarding this very subject last year because a situation like this with an unnamed but controversial corporation has arisen.) I think the timing of the announcement shows that MSFT knows that there will be opposition for this among students, thus they announce it now when it's too late to change your mind.

    One other thing to note is that not all universities send their offers of admission around the same time. For example, I got my offer from UofT a couple of months before the dealine, but Waterloo's came 2 days before. Waterloo doesn't give you much time to decide. Furthermore, they give priority to a very small number of students with elite marks. This one person I knew in high school who was an uber-intellect got her waterloo admission even before I got mine from UofT. (Note: The 'elite' mark status depends on the University. Waterloo's threshold is very, VERY high, somewhere above 96%. I believe I had 'elite mark status' from UofT with my 90+% average, thus getting me an early acceptance from them.)

    Note: I am not nor was I ever a student of the University of Waterloo or the University of Toronto. I chose to accept at another University.

  43. Re:Where's the Problem? by Arandir · · Score: 2

    First they came for UW, and I didn't speak up because I didn't go there...

    By not going there, you are speaking up.

    --
    A Government Is a Body of People, Usually Notably Ungoverned
  44. This sucks by CanadaDave · · Score: 2
    I don't think there is anything wrong with switching these courses from C++ to something more object-oriented. But I wish they had of switched to Java instead. One of the main reasons is that all the computers in the department will now have to be Windows machines. And what I am REALLY worried about, is Microsoft may have a special license agreement on these computers which they will be paying for, that says that they can't be dual-booted with Linux at all.

    I always thought that open source software or free software had a great place in the university setting. Teaching students at an earlier age about the many advantages of open source software is a great thing. Ever since I was introduced to the Solaris workstations, GNU gcc, emacs, I've realized how powerful they are. I wouldn't want tomorrow's students missing that experience.

  45. It's just Microsoft's coy way of saying: by bbc22405 · · Score: 2, Funny

    "All your brain are belong to us!"

  46. Re:Someone else is going to say it anyway.... by Jucius+Maximus · · Score: 2
    "Is this going to be Bill's waterloo?"

    It's already Bill's waterloo, and has been for years. MSFT has, for a long time, harvested the top CS and ENGG people from waterloo to work for them. This is a 'formalisation' of that relationship which has existed for a long time. It's pretty common knowledge when you get to the end of high school in Ontario, if you're a computers/engineering type person (like I was) that this is the case. All your upper CS/physical science teachers know about it through their former students who went to UW.

    One guy from my school who was almost graduated from Waterloo CS at the time I was almost graduated from high school was offered something like US$60k + US$10k stock options and a whole whackload of benefits by MSFT.

  47. mail and ask the pricelist by skotty · · Score: 2, Funny

    It might be interesting to let them know that there are quite some people who don't like the idea of "buying a course"
    For example: mail them to ask the pricelist to buy a course :)

  48. Nothing new under the sun by Arandir · · Score: 2

    This is nothing new. Rich patrons have been tying strings to their donations since the first university.

    The only alternative to private charitable donations is more government funding. But I don't know about you, but I trust my government even less than I trust Microsoft. In my home state of California, University curricula change every four years like clockwork, just after elections.

    I think a lot of the angst over this one is simply because this time it's Microsoft. Reactions would be much more subdued if Sun made a donation requiring a Java class. And the reaction would be downright positive if Redhat made a donation that required a GNOME class.

    --
    A Government Is a Body of People, Usually Notably Ungoverned
  49. Re:Wait a minute ... by jedidiah · · Score: 2

    Then why not subject all of those "really productive types" to MATLAB instead of C#?

    --
    A Pirate and a Puritan look the same on a balance sheet.
  50. Re:Where's the Problem? by Kwikymart · · Score: 2

    No, there is more to the story. I don't go to UBC, but I live in Vancouver and am going to SFU (another local university) next fall from HS. Anyway, a year or so back UBC didn't meet their quota for selling and Coke was threatening to pull out unless they started to really change the status quo. Well, I am not sure what really happened after that, but they didn't apparently pull out. It is not paranoia, it is quite rational thinking.

    --

    Buying a Dell computer is equivalent to dropping the soap in a prison shower.
  51. Re:Amazing timing! by Locutus · · Score: 2

    So you can be trained as a Microsoft lemming. There is a whole economy revolving around keeping Microsfot products running.

    But hey, Microsoft products work great until you open the package and install them..... Was it Teddy R who put millions to work cleaning streets, etc to get the economy rolling? This is what Microsoft does with it's monopoly money. They paid AT&T 5 billion dollars to use Windows CE when nobody wanted it and now they are paying Universities and even countries just to use their flawed products.

    Now it looks like you'll be picking your school with another criteria. How much MS crap is required for the degree.

    LoB

    --
    "Anyone who stands out in the middle of a road looks like roadkill to me." --Linus
  52. Re:Where's the Problem? by _Sprocket_ · · Score: 2


    Why all this vicious hating from the slashdot crowd? Are you guys insecure about something?


    Don't kid yourself - Microsoft is reaping what it has sewed in the IT industry for decades now; distrust.
  53. famous UW grad by RelliK · · Score: 2
    I'm hard-pressed to think of a single famous UW grad

    Ian Goldberg

    --
    ___
    If you think big enough, you'll never have to do it.
  54. The Other UW and Microsoft by jordanda · · Score: 4, Insightful

    My alma mater, the University of Washington, probably has the tightest relationship with Microsoft than any other school yet we've maintained a strong separation.

    Our new building is being funded almost exclusivly by personal donations from Paul Allen and Bill Gates. We do a large amount a research with Microsoft Research. All students get all the free Microsoft Software they want (except games). Some of our talented faculty have spent many years at Microsoft

    Desite all that we still have Unix orientation for new students. All homework is required to be turned in with a Unix Makefile and compile under gcc. Java is our introductory language.

    I didn't write a line of code in Windows while I was there and I'm the rule and not the exception. I suspect University of Waterloo is has a pedagogical philosophy more along the lines of a community college and scimps on theory.

    At the University of Washington I felt no pressure to learn Microsoft products or proprietary languages. It was quite the opposite, in fact. I'm certain no other University has a stronger relationship with Microsoft.

    1. Re:The Other UW and Microsoft by DetritusX · · Score: 2, Informative

      I suspect University of Waterloo is has a pedagogical philosophy more along the lines of a community college and scimps on theory.

      Suspect again. U(W) has very rigorous theory requirements. See here for the Electrical & Computer Engineering degree requirements.

      --
      .sig this!
    2. Re:The Other UW and Microsoft by Wraithlyn · · Score: 5, Interesting

      "I suspect University of Waterloo is has a pedagogical philosophy more along the lines of a community college and scimps on theory."

      Not at all... Waterloo is VERY heavy on theory. It's not rated one of the top Canadian universities year after year for behaving like a community college. You learn theory in class, and you learn practical on your co-op terms... last time I heard, UW had the largest co-op program in the entire world. It's a pretty good mix, not to mention it helps you pay your own way.

      Just don't venture into the psych building, or the 6th floor of the math building without a compass and a ball of string, or you'll never get out alive.

      --
      "Mind, as manifested by the capacity to make choices, is to some extent present in every electron." -Freeman Dyson
  55. Happiness is Mandatory by xixax · · Score: 4, Informative
    If you had been watching Friend Computer you would realise that strategic alliances can greatly educate students so that they are aware of products that may benefit them as adults. Maybe you are upset because you thirsty? Maybe a refreshing drink will help?

    Xix.

    --
    "Everything is adjustable, provided you have the right tools"
    1. Re:Happiness is Mandatory by Perdo · · Score: 2

      failure to comply will result in summary execution. Are you happy?

      Smoking boots.

      Paranoia, crica 1983

      --

      If voting were effective, it would be illegal by now.

  56. Not an "additional mandatory course" by rruvin · · Score: 3, Interesting
    It looks the like "Microsoft is the anti-Christ" brigade is overhyping this as usual.

    This is not a case of an "additional mandatory course on C#" being added to the curriculum. This is an instance where the language of instruction in one of the already mandatory courses, namely ECE 150, is being changed from C++ to C#.

    This does not make the degree a "Microsoft degree," anymore than using Java in introductory courses (as UW's School of Computer Science does) makes a degree a "Sun degree."

    1. Re:Not an "additional mandatory course" by sylvester · · Score: 2


      Except for the .. you know .. aditional mandatory course. E&CE 050 will (apparently) be a required course for those who *apply* to UW. It will be delivered online. To get accepted you must do the course. The course will become available to you when you apply. Thus, most students, even those who do not end up accepted (about 300 out of 1500 applicants are accepted to E&CE each year.) will probably take the course.

      -Rob

  57. C# is OK, the decision is not by g4dget · · Score: 5, Insightful
    I think it's fine to teach C# in an introductory CS course. Java is required at many universities, and it is no more open than C# (in fact, C# has an open standard).

    What is not acceptable, however, is for grants from a company to be tied to the use of its products in the curriculum. And, in fact, while C# is fine technically and educationally, Java would still be a more useful language for students to learn.

    Decisions like this really call into question the academic integrity of a university; potential students of U. of Waterloo should take notice.

    1. Re:C# is OK, the decision is not by ameoba · · Score: 2

      I doubt the requirement for engineers to learn a programming language is a new thing at Waterloo. So MSFT donates a large sum of money and some modern development hardware/software to the school, and as a consession convinces the engineering department to use C# instead of C++ or Java. I see no harm here.

      If Fluke donated a bunch of test equipment to a school, they would expect that students used it so that when they go out into industry they'll want Fluke hardware; MSFT is no different.

      --
      my sig's at the bottom of the page.
    2. Re:C# is OK, the decision is not by g4dget · · Score: 2

      No, that's not what it comes down to. That's what it would come down to if they had made this decision without a financial tie-in from Microsoft. Given that they are accepting money, that raises the suspicion that the decision is not based on technical or educational considerations alone, and that is a problem.

    3. Re:C# is OK, the decision is not by ameoba · · Score: 2

      No it's not. C# is just as valid of a vehicle for teaching an introductory, required-by-all, programming class as any other language. Its not like MSFT -created- the requirement; things like this are fairly standard for engineering programs.

      Simply learning Frontpage would be a pointless waste of time, only takes like 15min, and really has no place in the accademic requirements of a University. Passports would place system admininistration outside the control of the university. C#, on the other hand, fills the existing requirement for a programming language in an introductory programming class for people who don't really have an interest in programming. I don't see this as starting down a slippery slope either.

      Now, I wouldn't really be happy if I had to be in this class (personally, I think something like Python is more appropriate), but I see the choice of language for this class to be mostly insignificant. Now, if they were doing this to the CS dept., things would be different.

      --
      my sig's at the bottom of the page.
  58. It's what you'd expect by duncan+bayne · · Score: 2, Interesting

    I'm just suprised it's taken this long. In New Zealand, the Government can't afford to pay for tertiary education, and the majority of students seem unwilling to pay their own way - I'm picking it's only a (short) matter of time until the same thing happens here.

    Until Governments everywhere bite the bullet and stop using other peoples money to pay for Public Education (an oxymoron if ever there was one), underfunded Universities are going to have to try every trick in the book to obtain funding.

    If students themselves paid, in entirety, for their tution, then Universities wouldn't find themselves in the position of sucking up to large corporations in order to obtain money they desperately need, thereby compromising the education they are providing to their students.

  59. Re:Waterloo has the most recognised CS program by Screaming+Lunatic · · Score: 3, Interesting
    Whether you likeit or not, if you wanna make big bucks from sitting in front of a computer, Waterloo happens to be the best choice.

    That happens to be a very Ontario-centric, Toronto is the centre of the universe opinion. (Even though Waterloo is not in Toronto) Outside of Ontario, the opinion of Waterloo is that it has a very good graduate program, but its undergrad program puts out spagetti coders.

    If your looking for an undergrad, take a look into UofC, or SFU. SFU has a coop program just as good as Waterloo, if not better.

    If you're looking for a graduate school, you wanna school with a prof that works with stuff you are interested in. And a bigger school, such as UBC or UofT, that throws a lot of money at research. (Which sometimes involves selling your soul to the devil)

    But you state you wanna go to Waterloo so you can make big bucks. Here's a little tip. Do what you like. If you like it, you will be good at it. If you're good at it, then you'll make money.

    But if you wanna just make the big bucks, go to Waterloo. You and MS will make a great couple.

  60. Something to consider... by Quantum+Skyline · · Score: 2, Interesting

    Microsoft has been after Canadian universities for years. In my first year at my university, Microsoft held a info session about jobs and stuff like that and introduced a programming contest. The contest was to write a program for Windows CE. No problem, right? Except the emulator (which was free) only ran on Win2000 or NT. To get around that, they gave away free copies of Win 2000, with a free development environment. I still have mine.

    This year, a slightly different spin. Microsoft was introducing Visual Studio .NET and gave away free copies of VS .NET Beta 2. Do some stuff (write programs in VS, talk about them, etc) and get more free stuff (Office XP, Win XP, mice, etc). Need Win2000 to develop Web services? No problem. Ask and ye shall recieve. I still use VS .NET Beta 2, learned VB .NET on my own, learned C#, and will try VC++ .NET sometime. I keep my programs for a future application to Microsoft, (despite my dual booting Red Hat 7.3).

    Microsoft piloted DevHood.com, a website aimed at students using VS .NET and related technologies with tutorials, how to's, all kinds of neat little things. Students can post their creations, or tutorials. Some of them were damn good. Points were awarded for more free stuff. I used it frequently.

    The point? Microsoft wants kids to use their stuff and like it. They want kids to find out how easy it is. C# is easy. But then I've also taken 3 Java courses, so picking up C# was easy.

    Don't knock Waterloo too badly. There was a time when I would sell my soul to go there. (I'm not there now). But Microsoft isn't doing anything different. They're just more direct. Most employers that I've been told about want Microsoft knowledge. Waterloo is doing what most universities say they are doing to their grads.

    Making their grads marketable.

  61. Re:Where's the Problem? by sylvester · · Score: 2

    It affects a student indirectly even if not directly. The "spirit" of the E&CE department may have changed irrevocably today.

    I don't think there's been a CS class since UW started that didn't have some screwiness. I went through the first CS130 as Java instead of Pascal. We also had things moved around with CS246, and ended up with a course that had about 5 weeks of material. It's part of the process of education, albeit one that they aren't very forthcoming about.

    If you're interested in signing onto the letter that will be drafted to the CS department, drop me a line.
    my user id is raewasch, and I go to the same school as you. you can figure out my email. :-)

    -Rob

  62. Re:Where's the Problem? by dillon_rinker · · Score: 2

    Apple worked hard to SELL their products to the school for students to USE. Please correct me if I'm wrong, but I don't think Apple ever gave money to a school to mandate that students study Apple-proprietary technology. If they did, I'll slam them just as hard.

  63. Webcast (with slides) for presentation by SmiloidalManiac · · Score: 3, Informative
  64. Maybe... by Raul654 · · Score: 2

    ...that's because no one wants to corrupt young minds with their proprietary, inferior academic and development tools. If you don't believe that they are inferior, just try using their c++ compiler for classes that use inheritance and/or polymorphism. Getting it to work is more or less a crapshoot. [Granted, gcc 2.x has problems too, but that's what 3.x is for.]

    And, for the record, the reason Sun does so well in academia is that they purposely avoid locking people into using their products through proprietary-isms. Profesionals in academia don't take to well to that kind of bullying, and they tend to be computer-literate enough to depoly OSS.

    --


    To make laws that man cannot, and will not obey, serves to bring all law into contempt.
    --E.C. Stanton
  65. Concepts are independent of language..sort of... by zerofoo · · Score: 2

    Back in my college days, my CS professors stressed understanding of the concept over understanding of the language. As long as the concepts are reinforced I don't have a problem with implementing them in C#.

    I do, however, have a problem with this quote from the article:

    Kyriakis said, "We believe we should create ties between the business community and the academic community to ensure that innovation happens into the future."

    What does the business community have to do with innovation? Most innovation in this country comes from academia. The biotech industry was built around university research, most of the computer industry from "Stanford University Networks" (SUN) to Cisco had their foundations in academia. The innovation usually flows from academia to the business sector...not the other way around.

    Public sector businesses are great at refining the technologies for commercial sale and use, but when it comes to truly groundbreaking work...they stink at it. Research for research's sake costs lots of money and no corporation wants those costs to smack the bottom line.

    I've got a suggestion for the people in Redmond. If you want to give "innovation" to academia publish the source code to Microsoft products for academic study.

    -ted

  66. Don't single out Waterloo and Microsoft! by dstone · · Score: 2

    This isn't news. Maybe it's still worth talking about. But let me paint you a picture from 15 years ago at my university.

    CS graphics labs full of SGI, NeXT, and Sun workstations. Library word processing labs full of Apple hardware and Microsoft software with tutorials and manuals to encourage use. Another word processing lab full of IBM hardware with Big Blue banners. Students trained on proprietary software (Adobe, Microsoft, Corel), corporate posters polastered on the walls.

    Okay, so this C# course is mandatory and in -theory- you could avoid all the other corporate influences. Yeah, in theory, but almost never in practice. And from looking at resumes, I know that Java(TM) has worked its way into mandatory paths of education recently. And let's not even get into the Maya, 3DS, Photoshop, and AutoCad stuff that goes on.

    So let's keep talking about the downside of this trend, but as fun as it is to hate Microsoft, let's acknowledge that this practice wasn't started by them and they're not the only ones playing the game today.

  67. modern languages, antique methodology by DarkHelmet · · Score: 2
    Now if only they'd stop using NACHOS to teach operating system design...

    It doesn't matter how current your programming language is. If you're using a toy to demonstrate concepts when a full blown implementation is just as available, that's where things get ugly.

    Programming languages are not much of an issue to me nowadays. All of the languages that have seriously caught on (apart from Basic) have their structure ripped from C/C++. You can look at PERL and find bits of Bash and awk, but still.

    How long does it take to learn a new programming language, and its syntax? Not *incredibly* long. It takes longer to learn the syntax, and find out about all the specialized functions that each one has built into it.

    Being a compsci student, programming languages should be fairly simple to pick up (after C++, give a few weeks to learn how to do things equivalently). I wish we'd get more time learning how to do things (Makefiles etc) than focus on 10 different ways to say "Hello world"

    I'd much rather take two semesters of a class that does something real (like tweak with linux, or write a C compiler) than one semester of something that won't be useful in the real world (tweaking NACHOS, or a COOL compiler).

    It's times like that I wonder what *really* goes into getting a diploma.

    --
    /^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}$/i
  68. EULA Shrinkwrap 4 University of Waterloo Degrees? by meehawl · · Score: 5, Funny

    I can't wait to see what sort of scary EULA madness will eventually and inevitably be shrinkwrapped over the University of Waterloo's degrees. Just imagine the happy faces at graduation as they peel back the shrinkwrap on their degrees. And when MS move to a new licensing model, will all the version 1.0 University of Waterloo degrees be de-activated unless graduates pay a re-activation fee? The mind boggles.

    --

    Da Blog
  69. Its the money stupid by bogie · · Score: 2

    "Universities should be about education,"

    Yes in a ideal world it should be, but post HS education is all about money period. The fact that people get an education is just a byproduct of a business transaction.

    "Anyhow, it seems to me a horrible idea to set this sort of prescident"

    How about the deals college make with Credit Card and Long distance companies? You do know there are kickbacks for those little booths setup on campus? You also do know that most students get in way over their head in debt and that colleges and the CC companies know the parents will bail them out? Tell me that's not wrong. Did you also know colleges are scrambling to recover costs because students are bypassing the schools highly profitable phone service by using their cell phones. Bet you didn't know that most colleges either in the phone company business or get kickbacks from the local phone company. I am not even going to go into the deals which decide which textbooks you get and how much you will pay(get raped) for them.

    "Higher Ed" sold its soul for money long ago.

    BTW I also happen to be more than a little bitter about the spiraling cost of education. All I can say is support your local community college.

    --
    If you wanna get rich, you know that payback is a bitch
  70. Do something about it. by PythonOrRuby · · Score: 2

    The local community college here uses almost pure MS crap in teaching CS. Not just specific skills, either, but general computer science.

    I intend to appeal to the chairperson of the department to support me in setting up free(or very low cost) "workshops" for students(and faculty if they're interested) on other programming languages and environments. We have a Linux lab, but it typically goes unused since none of the faculty know enough to teach the students how to use it.

    The key is to change that. Spread thw word that there are alternatives.

  71. A word to the wise student... by tlambert · · Score: 2

    Back in the early 1980's, there was a change in the accreditation rules which stated that a College or University could not teach a specific computer language and remain accredited.

    The result was a lot of courses, like "Data structures using C++" and "Business programming with FORTRAN", rather than specific language courses, because computer languages were no longer allowed to be an ends in themselves: the accreditation committees had seen the writing on the wall that days of "COBOL is forever" would son be over.

    It's interesting to see that the U of Waterloo is endorsing a pure language course as a program entry requirement; I would not like to be standing near the fan when the accreditation committee gets a hold of this (though I'm not adverse to turning the fan on by telling them).

    If I were a student currently at, or considering entering, the U of Waterloo, I would be rather worried that I would not be able to go on to a graduate degree from Stanford, MIT, CIT, Berkeley, etc., because the University from which I received my undergraduate degree was not accredited.

    I would be particularly concerned if this was my third or second year, or even my first, if I turned down other offers to attend there instead.

    -- Terry

    1. Re:A word to the wise student... by Suppafly · · Score: 2

      It's interesting to see that the U of Waterloo is endorsing a pure language course as a program entry requirement; I would not like to be standing near the fan when the accreditation committee gets a hold of this (though I'm not adverse to turning the fan on by telling them).


      Thats not what they are doing at all.. read the article.. they are switching "some introductory level course using c++" to "some introductory course using c#" Its not even a new class.. this anti microsoft stuff is totally unwarrented in this case..

      Not to mention that this is not totally true

      Back in the early 1980's, there was a change in the accreditation rules which stated that a College or University could not teach a specific computer language and remain accredited

      Otherwise why would my college teach a class called c and a class called c++ and a class called visual basic.

    2. Re:A word to the wise student... by tlambert · · Score: 2

      "Thats not what they are doing at all.. read the article..."

      Quoting from the article which I have read, and apprently you have not: "Completion of this course will be mandatory for students entering the E&CE program."

      "Otherwise why would my college teach a class called c and a class called c++ and a class called visual basic."

      Because your college is not accredited? It's a community collge limited to associates degrees? You are in a country other than the United States, which currently leads the world in software and other engineering, precisely because of the standards enforced by its institutes of higher education? Stop me if I'm getting close...

      -- Terry

    3. Re:A word to the wise student... by Suppafly · · Score: 2

      Quoting from the article which I have read, and apprently you have not: "Completion of this course will be mandatory for students entering the E&CE program."


      Yes.. the course was mandatory before.. they are changing "some mandatory course using c++" to "some mandatory course using c#" much like the university I attend changed "data structures in pascal" to "data structures in java"

      Because your college is not accredited? It's a community collge limited to associates degrees? You are in a country other than the United States, which currently leads the world in software and other engineering, precisely because of the standards enforced by its institutes of higher education? Stop me if I'm getting close...

      Well you're not even close but you are horribly wrong so feel free to stop whenever.

  72. As a certain shit band would say: So Fucking What? by Wakko+Warner · · Score: 2, Insightful

    Are you slashbots sure other companies haven't tried things like this before? Don't you find it funny that a lot of the colleges in that Google search have gotten funding and done collaborative work with Sun Microsystems and -- strange! -- some of their courses are taught in Java?

    Do you really, really think other companies don't do this? Do you seriously think it's bad just because it was Microsoft and C#, and not Allegro and Common Lisp?

    And I defy any of you to tell me why it should matter that some students are taught C# as their introductory programming courses, whilst others are taught Java, C++, or C. They're supposed to be learning the fundamentals of programming, not learning how to write a fuckin' application. Why the fuck does it matter what language a college finds this easiest to teach in?

    Grow up, people.

    - A.P.

    --
    "Remember when the U.S. had a drug problem, and then we declared a War On Drugs, and now you can't buy drugs anymore?"
  73. Not quite -- they need a spread by dspeyer · · Score: 2, Insightful
    If the CS department is worth a 1/2 a crap it doesn't really matter what language[s] they teach the classes in.

    This is almost true. A real CS department does teach at a deeper level than the language, but language also shapes how you can think. Only an idiot or a masochist would teach recursion in basic, or OOP in prolog, or lambda-calculas in Java, or manual memory management in Lisp. Any decent education will show all fundamental designs (though not all combinations). This should include functional/procedural/OOP/rule-based as well as static/dynamic/weak typing etc. Once they've introduced this, each course should use the best language for it (e.g. AI in Lisp, Kernels in C). They should probably even teach the skill of choosing a language for a given project.

    Now, there is still the question of what language to teach first. The first language taught will set up patterns that are rather hard to break. I think Dijkstra made a comment about basic.... I started with Hypertalk (don't ask why) and I never had trouble with event-based programming. This is not a coincidence. What language to start with is an important decision, and should be made on the language's merits -- not corporate contributions.

    Now, C# may actually be a good choice. Many schools use C, which is awfully difficult on beginners, and many use Java, which IMO beats in OOP the wrong way. I might start a class in PERL, but I would have to be careful to stress readability. I would look for a procedural language with some OOP and functional capabilities, and a generally sane design. C# may be this. I would also want something with some history behind it, a user community, and developement tools I really trusted. C# IMO fails here, but these aren't the most vital charactoristics.

    So what languages they teach does matter, and what language they start with does matter, though they certainly should teach well beyond that. It also matters whether they show their students to make choices on a technical basis or a marketing/bribery basis. It probably doesn't matter as much as it looks like at first glance, though.

    Now if UWaterloo starts publishing research papers on how reliable and secure WinXP is, then we'll know they were up to something.

  74. so what? by Suppafly · · Score: 2

    Cisco paid my highschool a million dollars and gave them shitloads of hardware to teach cisco classes and they've done the same for several junior colleges and schools all over, you don't see anyone complaining about that.

  75. Re:Buying mandatory MS Office is worst by fferreres · · Score: 2

    Whoah, that's only a little tiny microscopic part of the problem. Consider a University that does not only ask students to be high profile and high pocketed and high IQ, but also MANDATES them to _BUY_ MS OFFICE and to intall it in the students personal computers (bough by them of course).

    There should be plenty of universities, the one that I know is Harvard. You either install XP and MS Office or you can choose yourself another university (a lossers one or what?)...

    Take a look at the computer requirements and be enjoy! (warining: the requirements are sent to the students as MS Word Attachments, so you must have office to look at them).

    Linxu evangelization is fine, but when you have the inquisition at universities, what good is the Cult of Linux??? They'll just hung or burn you if you don't pledge guilty of wizardry!

    --
    unfinished: (adj.)
  76. the other reason this is lame... by gerardrj · · Score: 3, Interesting

    Lots of talk in here so far about this is good/bad for Education so I'd like to make another point.

    I looked at the numbers in the MS press release and thought: $10 spread over 5 years and across all the universities in the country? How lame? $2.3M for this deal ($7.7M left for the remaining 4 years).

    Ten million dollars is equivilant to what, perhaps 4 seconds worth of profit from Microsoft? Consider that Microsoft proper currently sits on $40 billion in cash. If they where taxes 30% on that money. $2.3 million would be due in about 2 hours. This doesn't even get in to their temendous cash flow.

    Waterloo isn't just a Microsoft whore, it's a damed cheap one at that. I can understand selling out for the money, but they should have at least demanded $50M per year.

    --
    Article X: The powers not delegated... by the Constitution...are reserved...to the people
  77. partying at Waterloo by AdamBa · · Score: 2
    Well, I knew several Waterloo students, and have hoisted a few beers at that big club place they have (the name "Fed Hall" springs to mind, but I could be wrong). I would say that the engineering students at Waterloo are at least as likely to party as those at Ivy League schools. In fact in Canadian schools, the engineers are generally considered the degenerate party types, and the arts people are the geeks -- in the Ivy League it is the other way around.

    And at an Ivy League school you work real hard also, and you come out with the same work hard all the time attitude.

    - adam

    1. Re:partying at Waterloo by AdamBa · · Score: 2
      I'm curious what was insulting in the previous message! I said Canadian engineers liked to party, isn't that a compliment?!? I always thought engineers were proud of their reputation.

      Maybe in the US the BA students like to party and partying is the "cool" thing to do...meanwhile in Canada the BA students are grinds and partying is considered bad...once again engineers get the short end of the stick!

      - adam

  78. entrace requirements by AdamBa · · Score: 2
    I have absolutely no doubt that the entrance requirements are stricter at the Ivies than at Waterloo. I don't have firm data, but I went to an Ivy League school, and several friends from high school went to Waterloo. The stricter requirements are the assessment of all of us.

    The Ivies recruit (well they don't "recruit" per se, more like "harvest") from the top high school all over the US.

    - adam

  79. Re:Java by Erbo · · Score: 2
    It seems likely that this is at least partially a reaction on Microsoft's part to the fact that so many schools have taken up Java as their "language of choice" for CS students.

    In earlier years, the language CS students usually programmed in first was Pascal.* Java has now largely supplanted that, probably because it's freely available, easy to get impressive-looking results with (due to the standard GUI toolkits included with it), and stands a better chance of being relevant. Sun may have had a hand in promoting Java for academic use, too.

    So Microsoft's trying to even the score...hopefully, most schools will look at C# and decide "no, we already teach Java, how is this any different?" Of course, if M$ waves cash in their faces, all bets are off...

    * - At least, this was the case in the late 80's, when I went through the CS curriculum at UCSB. Lower-division CS classes tended to use Pascal; upper-division ones used C. They've since switched to Java in lower-division courses.

    --
    Be who you are...and be it in style!
  80. Re:Concepts are independent of language..sort of.. by Suppafly · · Score: 2

    I've got a suggestion for the people in Redmond. If you want to give "innovation" to academia publish the source code to Microsoft products for academic study.


    like they already do? anyone at a decent college can get access to the source for microsoft products..

  81. Re:Where's the Problem? by Suppafly · · Score: 2

    Please correct me if I'm wrong, but I don't think Apple ever gave money to a school to mandate that students study Apple-proprietary technology.

    Giving schools free computers and bribing faculty and staff with cheap/free computers for personal use accomplishes the same thing.. Apple is after all a hardware company.

  82. Re:Where's the Problem? by Suppafly · · Score: 2

    Well if you do in fact go there, you'd know that they didn't sell out their curriculum to microsoft, they just changed 1 class that was already mandatory and taught in c++ to c#.

    Switching schools is hardly a reasonable option for someone that's already here, though I would consider it if it happened in CS and not just CompEng.

    No you wouldn't.. you're just talking a big game because this is /. Everyone knows going into a program at Waterloo that they will mostly likely have an easy chance at getting at job at MS.

  83. Re:C# by Chris+Johnson · · Score: 2

    This public service announcement was brought to you by... ;)

  84. Look, this is the problem. by Chris+Johnson · · Score: 2
    The problem with Microsoft doing this sort of thing is as follows:

    Compulsory Microsoft courses requiring acceptance of viral Microsoft 'shared source' licensing to basically 'salt the earth' and prevent OSS from ever growing any more.

    It is a fact that acceptance of Microsoft's 'Shared Source' involves legal admissions of being privy to Microsoft IP, and also legal admissions that you have no rights to any of it. For that matter, there was something else in there blocking you from bringing suit against Microsoft over patents.

    Any compulsory Microsoft programming language course could easily be made to require reference to 'Shared Source' to pass the course- what do you think the course materials would be? This is a missing step- but so easy to implement, given the existence of the viral Shared Source licensing, and the existence of schools in which you MUST take a Microsoft programming language course (presumably for certain majors).

    It just falls into place- beautiful, beautiful strategy if you look at it strictly as warfare. If you look at it in terms of creating a society that's functional, then no- you are creating a society filled with booby-trapped coders, who can be taken out of action at any time by Microsoft.

    Any college taking such a path would turn out EXCLUSIVELY coders who were legally vulnerable to any Microsoft action. They would be on record as having agreed that they had seen and worked with Microsoft IP, and that this IP was not theirs to keep. This is a setup for directed lawsuits to shut down any OSS project deemed threatening, because the burden of proof would be on the OSS project to prove that it was not infringing proprietary Microsoft IP, even though it was using coders that had made formal legal admissions that they had seen and worked with such IP, and knew it wasn't theirs to keep.

    I really fail to see how this isn't a problem. It's not about 'mindshare' at all, it's about leveraging Microsoft's capability to get in a position where ALL CODERS (from a given school) are tainted with the Microsoft version of viral licensing, which equates to a permanent legal timebomb.

    That is too high a price to pay just to have the pleasure of playing 'free market capital' with education, and being given money. People seem to have forgotten that there are IP concerns that could arise from this sort of thing. It is a very deadly threat, perhaps the only thing that could genuinely cripple OSS itself (a widespread condition of guilty-unless-expensively-proven-innocent w.r.t. software) and I don't feel I am underestimating Microsoft when I say that this threat is being wielded with full awareness and attention.

  85. Waterloo: the good, the bad, and the ugly by epine · · Score: 2

    I was a freshman at UW in 1981. Back then it was IBM playing these games. And they've always had the idea that you take what they tell you to take.

    I travel 3000Km across Canada to go to the school regarded as having the best math/CS program and when I get there I discover that the CS faculity has been pillaged by the private sector, so the new rules are that first and second year CS majors can only take ONE course in computer science each term and that for that ONE course each term there is ONE choice. First year: FORTRAN and COBOL. Second year: 6809 assembly language and an introduction to data structures.

    Back then Ontario had grade 13, which meant they often had a computer credit on their high school transcript. None of us from out of province had this credit. If you had this credit, you could elect to take Pascal instead of FORTRAN (but the problem assignments were the same). It cost the university an extra $10 a student/term in extra computer time.

    The WIDJET terminal rooms we were given were the worst computing environment I've ever encountered. Waterloo Interactive Direct Job Entry Terminals. Ugh! A complete waste of phosphorous, although it did save trees.

    IIRC there were four IBM mainframes clustered together in the big Red Room. The terminals were handled by minicomputers which gathered the jobs together and submitted them to the IBM cluster.

    Some of the terminal rooms were worse than others. As a student you were given roughly 100K of storage area for your work in progress. In order to get a directory listing of the files you owned, you had to submit a job. This meant you had to sit there with your "give me a directory listing" job in the job queue. On any given night you could be stuck in the job queue for five to ten minutes. Then you had to submit a job to call up the desired file to edit. Another five to ten minutes. You couldn't do anything else on the terminal while you waited. Unless you were foolish: doing anything else cancelled the job you were waiting for!

    Finally, you would submit you program to run. Upper year students had priority over freshmen. Sometimes you would submit a job that would start at queue position 7. Half an hour later you might be at queue position 30. You can't work on another assignment while you sit there. That would cancel your run job. Other people are lined up at the door waiting for a terminal, but the terminals never come free because the whole room is stuck in the run queue, and no one is getting anything done.

    For one of my statistics courses I had the joy of using the IBM PC room. Brand spanking new 4.77MHz machines. We did our coursework for that course in APL in the greek/geek APL character set. I learned APL inside out in my highschool days so this was one course I enjoyed.

    The IBM PCs were so unreliable that at any given time 25% of the systems would be unresponsive. You'd be standing there waiting for a system and one out of every four systems would be inoperative.

    In an evil moment I discovered a way to reserve myself a keyboard. Take two systems set up back to back and reverse the keyboards. People would come up to the system, press a key see nothing on the screen. Then they would press CAPS lock and the keyboard light would toggle on and off. Obviously a dead system. Nothing to see here, move along! Too many hours at queue position 30 in that other terminal room, my survival instincts had taken over.

    The 6809 room was mildly redeeming. They were crashed a lot, almost as much as the IBM PCs. But if you did get a system that worked, you could actually use your time well. We used a 6809 assembler known as WSL (Waterloo Systems Language). WSL was the most modern and well structured language I learned at Waterloo. It was an assembler where you could right proper block structured code with a while/if/then syntax. I think this was an offshoot of the Waterloo Systems Group that eventually spun off the excellent Watcom C/C++ compiler.

    The only way to get a CS education at Waterloo at that time was to get a COOP assignment to the WSG. There you would meet real CS professors who would teach you real material like how to unroll conceptually nested iterators either forward or backwards.

    The other nice thing about the 6809 terminals were all the bugs in the file system. You had very little storage for your own programs. Roughly 100K. Sometimes it was hard to save all your work for just one assignment there. If you wanted to keep your old assignments for reference, tough luck. It became common practice to compile your programs to the /tmp drive to preserve space in your home directory. Ocassionally if you wanted to keep a compiled output you would just mv /tmp/output /home/myname. mv had a bug where it forgot to adjust quota usage. If you then deleted this file from your home directory, it would add space to your home directory quota that had come from the /tmp directory! Many of us had megabytes of storage once this was discovered.

    I explained this trick to a roommate of mine and went wild with it. He created such a huge file on /tmp that when he deleted it from his home directory, his quota wrapped to zero. Now he had an account where his home directory was frozen like ice and he was too afraid of confessing what he had done to ask the sysadmin to fix it.

    The non geek faction at Waterloo was very small at the time. The math/CS dept. had 4000 undergrads, engineering was next, then science, then the arts the professional schools. Some of the non geek departments were so small they got stuck in cubbyholes. For example, the kinners and wreckers (Kinnesiology and Recreation) shared the fifth floor of the math building with the pure math dept.

    There was this strange geek ordor that hung around campus and even pervaded the arts faculties. Over in the English dept. they had a required course in CS which Waterloo was teaching in PL/C of all god forsaken languages. One of the best jobs on campus was being the TA camped out in the corner of the PL/C terminal room. Half the females on campus were all in that one room, and they all needed help. Hmmm, perhaps there was a method to the cirriculum selection at Waterloo after all.

    In my residence the students in Systems Design Engineering and Physics had access to better CS instruction and better CS systems than those of us majoring in CS. At that time you needed a 92% graduating average from high school just to apply to Systems Design. Where I went to high school I had an English lit teacher who said he had given out one grade higher than 90% in the last ten years. The school system in Ontario had suffered from massive grade inflation in the grade 13 school year so that Ontario students could get all the scholarships according to these insane admission requirements. The guy who got the 90% grade at my highschool graduated Summa Cum Laude from Harvard in world literature, but he wasn't smart enough to be admitted to many of the programs at Waterloo.

    The other language I encountered at UW was Snobol, I think for one assignment in the second year introduction to structured programming. This was the one time Waterloo exposed me to something that really set me back. I didn't know what to make of Snobol. It had this weird PL/1-like puffy pastry syntax, yet under the hood it had this powerful string matching facility that reminded me a bit of APL's powerful array primitives. This was the first time I used a language that encouraged you to code only for the cases at hand. Your patterns weren't necessarily foolproof, but they worked for the cases the assignment required. It was my first exposure to a Perl-like environment.

    One language they wouldn't teach at Waterloo at that time was C. I think some senior courses used C, but they didn't teach C even for those courses. Even at that time, if you met a person who impressed you as a lean mean programming machine, nine times out of ten they did their serious programming in C.

    In second year I obtained a C compiler for my 26 pound Osborne. It came from Software Toolworks in a zip lock baggy. By the end of second year I was spending half my time programming in C on my Osborne at home, and half my time in the arcade. Much later I explained the consequences of this set of choices to my family this way: the arcade was the only place on campus where talent was rewarded with a good result.

    On one assignment intended to teach programming efficiency I came up with a superior algorithmic solution. Under interpereted Pascal on a 2MHz class machine, my program ran in 10 seconds, of which 7 seconds was spent by the program listing the results to the console. The class average run time was 30 MINUTES for the brute force algorithm (coded according to the lecture's efficiency guidelines). I got a 6 out of 10 for inefficiency. In Pascal I had written a for loop where the end value was a complex expression. In Pascal the end value is evaluated once and then pushed onto the loop stack. The TA didn't know the difference between Pascal and C so he marked me down for writing a complex expression that was evaluated each time through the loop. Then he marked me down another point for multiplying the same two integers in two different expressions (and not manually creating creating a temporary variable to save an entire machine instruction). Of course, if I made that change my program ran slower due to interpretation overhead. I lost 40% of my grade for four different complaints, every one of which slowed my program down! And I didn't even get a point back for the algorithm two orders of magnitude supperior to the brute force solution. I appealed this injustice to the arcade, which awarded me with a high score for the week.

    Back then IBM was the evil beyond evil. Waterloo had the same kind of relationship with IBM that they are forming with Microsoft now. And IBM had the same vision (and respect) for the minds of the future: whatever we pour in there they'll be stuck with forever. Only I think they got $5 million in kind from IBM in the form of vastly overpriced IBM equipment. And yes, it had a direct impact on Waterloo's CS cirriculum. The good news, in the case of IBM versus the free world, is that IBM was soon knocked off their arrogant throne.

    Now let's step back and look at C# versus C++.

    My understanding of C# is that it's a C/C++ like syntax on top of the CLR and that the CLR is a model in same general family as Visual Basic and Perl and Python and Java (to some degree): values are typed dynamically, and statically enforced type declarations are optional to the programmer. I could be all wet. I formed this impression by listening to TechNetCast archives, which is all the depth I want on C#.

    It makes my job easier here that Dijkstra, sadly, was in the news this week. Try to imagine what Dijkstra would have to say about the CLR as an introduction to programming.

    Many people seem to think that an introductory course has succeeded if the students can create a program, knows how to execute the program, and can debug it to the extent that it often produces a correct output. Students exposed to computers in this context come away with a runtime centric view of the programming process. If only they had more time to trace their values through the helpful and forgiving runtime, their programs would be correct more often.

    This is not the lesson I would choose to teach first, and most definitely not at a university with pretensions to serious education.

    There is another view of programming that what matters is the text of the program. That the text of the program has a significance far beyond the runtime nature of the code. That you refine your programming skills by learning to structure the text of your program until it convinces you of its logical integrity, to the extent that your mental model of the problem itself is correct. (If you have real talent, the process of writing the program text will debug your mental model long before you run your code for the first time.)

    We often forget that the text of a program represents one instance of a larger conceptual family of programs. In a language such as BASIC the text to runtime correspondence is so dominant you can't help but forget this.

    Languages with the concept of a type hierarchy and object derivation are a better introduction to programming because the idea that a program text belongs to a family of related programs is explicit in that construct.

    Languages which also feature static polymorphism (Ada generics, C++ templates) are explicitly oriented toward the program text as being more fundamental than the program runtime.

    At this point in my programming career manifest types don't seem any different to me than manifest constants. The real types that algorithms manipulate are sequences, arrays, and associative arrays, yet many languages still persist in having a notion of declared types which is directly equivalent to the language's runtime type layout. The CLR makes it explicit that the syntax of the language is just a different face on exactly the same runtime type model. What a strange way to introduce polymorphism to new programmers: surface syntax as a polymorphism on runtime object representation.

    For all the things you can say about C++, it has at least the virtue that it makes explicit all the features of programming where the text of the program is of paramount importance.

    It's hard for me to be objective, after 15 years of living with it, about the syntactic contortions of C++ and its split personality as a C impostor.

    For the most part, the syntax is not so bad that you can't cut and paste from working code most of the bits and pieces required to assemble something of your own. I can write advanced HTML verbatim, but for CSS I've never managed to rise above grab, paste, and mutute. The first 30 lines of every Perl program I write I have to try three variations for the syntax of each construct until my eye for line noise returns to me.

    There are a couple of areas where the syntax of C++ stoops to the unforgivable and these all have to do with irregular composition. Nesting a template type into a template can blow off your leg with the >> parsing anomoly. There is absolutely nothing worse you can do with a beginnning programmer than reward their first courageous foray into composition with a parse error from left field.

    The syntax of a template function declared within the class scope is different than when the same function is declared outside of class scope, for reasons that take a long time to master. (The type of the function return is likely to be in scope in one context, out of scope in the other, requiring Byzantine changes to your function prototype declaration.)

    In my view this is the tragic flaw in C++ as a teaching language. The syntax nests differently than the language semantics. The scope of the return value for a function should be a function of the scope of the function name, but it isn't because in the PARSE of the declaration the subordinate term happens to come first. You are trying to teach the principles of semantic nesting, but every time the student becomes brave enough to reform their syntactic structure basis on these insights, the syntax blows up horribly.

    I think C++ can be an excellent teaching language if you have a mentor who can help you past the punishments you don't deserve before your nerve collapses.

    The other point I should mention here, for people who had an impression of C++ once upon a time, is that modern C++ is not your father's C++. Now that the standard library is complete and fully integrated with the philosophy of the language and its type system, there is no difficulty teaching C++ at a level of abstraction suitable for geeky neophytes. Modern C++ is entirely unlike C and much the better for it.

    Third on my list for C++ is the support environment, and by this I primarily mean the quality of the diagnostics that come from the compiler when your brave attempts to nest one working structure into another working structure fall flat. To put it bluntly, it horrifies me that a language with the complexity of C++ did not admit the quality of the diagnostics into consideration during the standardization process.

    Yet C++ is not uniquely to blame here. Wouldn't it be cool if someone would sit down and classify all the kinds of mistakes that programmers make in translating their often imperfect mental model into working code, define a standard of acceptable diagnostics in all such cases, and then work backward toward a surface syntax which ensures that the compiler can achieve those diagnotics standards? (I think I was told that this was how PL/C became the supreme mess of all time and perhaps poisoned this well for all time.)

    But in real languages, 90% of the mistakes one commonly makes are artifacts of the way the language has been structured.

    More to the shame of the C++ community is that few (if any) C++ compilers see fit to offer a diagnostic listing in which the compiler identifies the fully qualified entity to which it binds each variable, function, and operator (or the selection procedure it used to admit or reject the available search scopes).

    Suggesting that Turbo Basic would be an improvement over teaching C++ is like suggesting that the New Math was so badly flawed students would have been better off practicing sales tax calculations.

    My opinion is that C++ contains more deep wisdom about the whole of the practice of programming than any other pair of langauges combined. The languages that set out to be languages universally disappoint me. In that family I would lump FORTRAN, COBOL, Pascal, PL/C, BASIC, Java, C#, and Python (my choice from this group when all I want is a language). The other family, languages with an internal vision I would lump LISP, APL, Snobol, Perl, Ruby, Prolog/Haskell/Scheme, and C++. These are the languages that can actually change the way you think. C++ stands out among this group as the language that least tries to simplify the world around it. All the other languages in this group have a strangely hypnotic character (even Snobol which I primarily included as an honour to its paternity).

    As a calorie free course credit, judged either by the pantheon of languages or the nature of the institution, one could do a lot worse than C#.

    In my mind the repugnance of this development has less to do with its affiliation to the Evil Empire Mark II (this too shall pass) than with the very real possibility that one could emerge from the University of Waterloo, after four years of study, and still have no idea what an intellectual calorie tastes like.

  86. Correction by Cardinal · · Score: 2

    but WinForms and ADO are the only things not submitted to ECMA

    I've mentioned this before, but I'm always happy to squelch misinformation, so I'll repeat. The only things that have been submitted to the ECMA are C# and the CLI. The rest is not. Let me say that again. No part of the .NET framework has been submitted.

  87. Re:Accreditation criteria by Suppafly · · Score: 2

    My university is accredited. The University of Waterloo is absent because the above acredidation programs are limited to the US and Waterloo is in Canada as the article mentioned.. Your original post, while somewhat interesting, was not relevent to the story so I'm not really sure what kind of point you are trying to make, but if it makes you feel better, go ahead and keep pasting urls and making nonsensical statements to your hearts desire.

  88. The point by tlambert · · Score: 2

    A University can not require a specific computer language and remain accredited. Those are the rules.

    Requiring C# (or *any other computer language course*) will endanger a University's accreditation.

    A Computer Science program is supposed to teach Computer Science. If you want to learn a computer language out of that context, you might as well go to a trade school or enroll in a vocational ng if it's a training program.

    By requiring a course in a particular computer language, the U of Waterloo is damaging itself.

    I don't give a flying XXXX *whose* computer language it is, or if the thing is public domain.

    -- Terry

    1. Re:The point by iso · · Score: 2

      Just a nit-pick, but you might want to consider that this isn't a computer-science program we're talking about here. It's Electrical & Computer Engineering. That may make a difference.

      I went through this program, and I remember those courses. They used to be taught in C++.

      - j

  89. Stock options...? In Encarta...? by leonbrooks · · Score: 2

    You'd have to be terminally thick to think stock options and other indirect employee benefits from Microsoft were worth the paper they're written on, in the long run.

    --
    Got time? Spend some of it coding or testing
  90. Sorry, your cognitive dissonance is showing by leonbrooks · · Score: 2
    at least they're teaching something RELEVANT now. When I went there, they were inflicting MODULA-3 on us. (And Pascal.. but then, I like Pascal)

    So... Modula-3 is not relevant because you don't like it, but Pascal is?

    Admittedly, gpc exists but gm3c doesn't. Yet.

    --
    Got time? Spend some of it coding or testing
  91. Bill could make a hero of himself instead by leonbrooks · · Score: 2

    He could fund a space elevator. USD$5-10G, cheaper than a bridge, bargain price and roughly 10% of Microsoft's current cash reserves.

    I was going to say `no strings attached,' because nobody would be stupid enough to use Microsoft software to stabilise something that big (and therefore dangerous), but then I thought (1) sez who? they run Navy ships on it; and (2) the thing's just a great big carbon string anyway... a superstring, sort of.

    --
    Got time? Spend some of it coding or testing
  92. Re:Someone else is going to say it anyway.... by Jucius+Maximus · · Score: 2
    "Microsoft is not at fault for "harvesting" talent from the university systems around the world. The fact is: they do a better job at it than any other company, hands down."

    I didn't say that they were at fault. As far as I can tell, this is a perfectly legitimate practice whose goal is to hire the employees which would, in the long run, give the most benefit to the company's stock value.

  93. Re:Yeah well, they taught WATFIV-S too by tb3 · · Score: 2

    I learned WATFIV-S, too, and I would rather be taught a langauge developed by a university for the express purpose of teaching structured programming, than be forced to learn a language developed by a corporation for the express purpose of vendor lock-in.

    Then next time the alumni association calls me for a donation the answer will be, "Why? Bill Gates already gave you more money than I ever could."

    --

    www.lucernesys.comHorizon: Calendar-based personal finance

  94. Re:Where's the Problem? by sylvester · · Score: 2

    I call that selling out curriculum.

    And yes, I would consider leaving. I'm not particularly attached to my waterloo degree. I patently refuse to work for microsoft. I have plenty of work experience, and plenty of good references. I don't need a waterloo degree to carry me, I can stand on my own merits.

    -Rob

  95. Loss of Lisp, Scheme, ML etc. by alext · · Score: 2

    I use Java all the time but replacing Scheme with it for AI makes no sense - not much different really from replacing Lisp with Pascal 20 years ago [shows age], and why would anyone do that?

    Logically, I should feel that there's a place for C Sharp somewhere in the courses just as much as Java - after all it's a standard, right? But this feels worse, and a successful Mono won't make me feel much better.

  96. Java by macdaddy · · Score: 2

    And to think I was pissed as a new EE when they made me take those stupid-ass Java courses. What the hell will and EE do with Java? Even the instructors were pissed.

  97. misses the point by AdamBa · · Score: 2
    Focussing on the top people misses the point. There are great people at any university. I'm sure many Waterloo students could go to top US schools. Admissions sets a floor on student quality, not a ceiling. Especially being the top school in a certain country, will automatically keep some top students who just don't want to go to school in another country (or can't for financial reasons).

    But Microsoft has accorded Waterloo this special status, like its graduates are better than top US schools. So you have to talk more about the 75+ percentile student. So questions like:

    1) Is the average Waterloo student coming in better than the average at a top US school.

    2) Does Waterloo do a better job with those students than a top US school.

    I think the answers are 1) almost certainly not and 2) maybe, which put together doesn't make a Waterloo grad anything unusually special.

    - adam

    1. Re:misses the point by btempleton · · Score: 3, Insightful

      Well, this special status is after my time, so I don't know the reasons for it, but I doubt it would simply be that the students give better interviews, as the book chapter implied. That would work at first, but surely after hiring a lot of UW grads if they didn't do a good job you would notice the steak didn't match the sizzle.

      I think microsoft would notice, they put a lot of effort into their hiring.

      --
      Has it been over a year since you last donated to the Electronic Frontier Foundation
  98. Tied languages by alext · · Score: 2

    To learn the fundamentals of programming, it helps if the environment is as open as possible. Seeing resultant machine code, tracing through code in a debugger, dumping data structures in a compiler, running interactively via a REPL - a lot of these aspects are best done with "toy" languages or environments such as DrScheme.

    In my day, Pascal (which I think used a compiler from the University of Waterloo), C, C++, Lisp, Prolog and Smalltalk were the mainstream languages and all except the last ran on a positively eclectic variety of machine environments.

    Now in other courses where languages are not the focus, C, C++, Java and C Sharp might have a place. However, there is a risk of such languages or associated tools and libraries being tied to particular products. This is not much of a risk with C on its own, only a little more with C++, a risk with Java and a certainty with C Sharp.

    Why only a 'risk' with Java? Well, although commercial, Java is fully implemented by a number of vendors - IBM and Sun, of course, but also BEA and a large group producing VMs for phones, PDAs and other devices. When you leave college and start buying products, there's only a modest chance that they'll come from Sun (unfortunately for Sun). More likely is that you $$ will go to Borland or IBM, with some small % going to Sun for things like their certification tools.

    There are really two important points to keep in mind - that learning is about ideas, and for computing fundamentals this are best facilitated by specific pedagogical tools; and that academic institutions should be as independent as possible to preserve their own reputations and to avoid arbitrary constraints on a student's future.

  99. Engineering theme song? by soundlord · · Score: 2, Funny

    we are we are we are we are we are the engineers!
    we can we can we can we can code C# with our peers!
    drink rum drink rum drink rum drink rum and come along with us!
    for we change policies for the companies that allocate funds to us!

    (next step: The Ridgid Tool replaced by The Flaccid Software as department mascot)

  100. Re:Concepts are independent of language..sort of.. by zerofoo · · Score: 2

    The complete source to all their products? I had no idea.

    -ted

  101. Napoleonic Deal? by sharkey · · Score: 2

    Perhaps this is Microsoft's Waterloo?

    --

    --
    "Outlook not so good." That magic 8-ball knows everything! I'll ask about Exchange Server next.
  102. Re:Admission standards by AdamBa · · Score: 2
    I tried to find that reference...there was an MIT vs. Waterloo discussion in this thread about the ACM programming contest, but a quick scan didn't reveal anything about admission averages.

    I don't think US vs. Canada is comparable though. Canada uses uncurved percentages for its grades (aka marks) (except in Quebec AFAIK where the government manages to curve percentage numbers, neat trick that), the US uses curved GPA for its grades. Some people try to convert saying 90 is an A or whatever, but it's not like that. Often it's just the top X percent get an A, the next get B, etc (college is usually like that). So if someone gets an A in the US, that could be a 99 in Canada, or a 90, or an 83.

    Plus of course you have this huge difference in how grades are applied. For example my brother and I went to different high schools in Quebec. The top average in my high school was about 87 or so, at my brother's it was about 95. Same school board, similar kids (in fact he went to his because mine closed, so a lot of the same families were at both). So I don't think it was smarter kids, just different degrees of grade inflation. Then you imagine how grades can vary all across Canada. That's why the SAT gained the importance it did, because US high school grades varied so much.

    - adam - adam

  103. C# in engineering? by pmz · · Score: 2

    The worst thing, perhaps, is that C# is simply not used as an engineering programming language. Most engineers use Fortran, C, Matlab, spreadsheets, have software like Pro/ENGINEER, or, God forbid, use calculators, paper, and pencil.

    C#, at best, is an application programming language useful only in the context of Microsoft Windows. Where is the logic in choosing this for non-CS engineering disciplines?

    Also, UNIX always has had a strong userbase among engineers. How is C# going to help them?

    I think the choice of C# has really detracted from Waterloo's attractiveness as a top-notch engineering school. I agree with other comments that the choice of C# is more along the lines of a communitity or technical college, which is expected to "sell out" to industry.

  104. Comprehensive or what? by alext · · Score: 2

    Java and C++, the full gamut of languages from A to B.

    1. Re:Comprehensive or what? by alext · · Score: 2

      Er, the point was that the languages usually used in teaching Comp Sci include those radically different from Java and C++, such as Scheme, Prolog, ML, Haskell, Smalltalk etc.

      It's not the quantity, it's the breadth.

  105. Re:Logic is Flawed by AdamBa · · Score: 2
    That's not my logic. I started with 3) [Microsoft prefers to hire Waterloo students] as an empirically observed fact when I worked at Microsoft. Microsoft does hire a lot of Waterloo people and hiring managers drool over them. 3) implies 1), in the case of Waterloo at least (but likely more generally true also), since you can't get hired if you don't interview well. And 2) is a fact that nobody disputes.

    My logic is more like

    1) Microsoft hires a disproportionate number of Waterloo students.

    2) Incoming Waterloo students are not superior to other schools Microsoft hires at.

    3) Waterloo does not do anything particularly unusual with students beyond the co-op jobs.

    4) Working as a co-op has no effect on your long-term potential at Microsoft, which is what Microsoft is theoretically hiring for.

    5) Therefore there is likely something in the way Microsoft interviews that makes it overvalue Waterloo co-op students.

    - adam

  106. LOL by Wraithlyn · · Score: 2
    Wow.. a pedantic troll with a low user ID, how fascinating. Well.. it's a slow day, why not?

    Mod3 and Pascal may both be decent enough teaching languages, but neither is particularly widespread in modern day, mainstream programming... although you could make a case for Pascal being more pervasive because of Delphi.

    As for my "but then, I like Pascal" bit which so grievously vexed you, I was referring to the "inflicting" nature of being taught it... you know, the transitive verb from the prior sentance I was expounding on?

    Hmm.. let's play the anal, inventive nitpicking game with YOUR post... just for fun!
    So... Modula-3 is not relevant because you don't like it, but Pascal is?

    Admittedly, gpc exists but gm3c doesn't.

    So... Modula-3 is not relevant because there's no GNU compiler for it, but Pascal is?

    --
    "Never ascribe to malice that which is adequately explained by incompetence"
    - Napolean Bonaparte
    --
    "Mind, as manifested by the capacity to make choices, is to some extent present in every electron." -Freeman Dyson
  107. If it is really an issue - money talks by Dark+Nexus · · Score: 2

    Do the math, people.

    We have 300 students in ECE. We'll ballpark their tuition at AROUND $6K CDN for a year.

    300*6000 = 1.8M

    Still below the $2.3M from MS, granted.

    But then, those are just the ECE students. What about the REST of the engineering Faculty? Or the rest of the student body? A student society rep from the Arts & Social Science Faculty at my Uni took it upon herself to write letters to the editor complaining about business grants to the Engineering faculty with FAR fewer strings attached (no curriculum changes).

    Very simply, if even 400 UW students make flat out complaints, things will start happening. And it's not just tuition money that talks.

    UWaterloo is, at least, partially, riding their reputation. That's not to say that they don't have a good program, but all accredited engineering programs in Canada are BASICALLY the same (they're all within 1 or 2% of each other in a continent-wide ranking of engineering programs). $2.3M is chump change compared to the reputation loss that would happen if they got massive complaints and didn't listen.

    --
    Dark Nexus
    "Sanity is calming, but madness is more interesting."
  108. "Yes they are. IN THE FUCKING USA!!!!" by tlambert · · Score: 2

    "Yes they are. IN THE FUCKING USA!!!!"

    Read the links.

    The ACM is an international organization.

    We are not talking about U.S. accreditation in particular, we are talking about accreditation in general.

    And people outside the U.S. wonder why the U.S. is kicking everyone else's rears in software as a percentage of GNP... sheesh.

    -- Terry

  109. CS vs. E&CE, Univerity transfer credits, etc. by tlambert · · Score: 2

    "It's Electrical & Computer Engineering. That may make a difference."

    It only makes a difference as to the subcommittee doing the accreditation. The accreditation is a strange thing, but most of it arises out of the wishes of professional societies, and most of them are international. In this case, an E&CE program falls under the blanket of the ACM (and IEEE).

    The professional societies have a vested interest in keeping ceritifcations in their professions from becoming nothing more than the moral equivalent of "union cards" -- "You got a card, you work; you don't got a card, you don't work. You don't like it, you talk to the shop steward".

    "I went through this program, and I remember those courses. They used to be taught in C++."

    Back before the rules changes in the mid 1980's, there were tons of language courses, as opposed to "CS concept using " courses (I took all of them that were available at my University, actually, including "COBOL" and "Business FORTRAN": this is not about me being a snob about my education vs. someone else's education).

    The ACM and IEEE ended up all pissed off that the colleges were turning CS classes into vocational education programs, and insisted that the "Science" part of "Computer Science" get the major emphasis. Most of these classes stage largely -- or even completely -- the same, just under new names. After a while, the courses evolved away from teching languages. Just as the people who had changed the rules intended.

    Their point (and I agree with it) is that there is a difference between a programmer and a software engineer: a programmer turns people's algorithms into machine instructions, whereas a software engineer solves problems using a computer as a tool. The mindsets required for these different approaches are miles apart.

    Is C# a valid language to know? Probably it will be something nice to have on your resume in about 3 years, after the economic recovery gets going, now that VC purse strings are starting to open up again and new businesses are starting to be created again. Just like Java was the thing to have on your resume, before all the J2EE and other Java based Internet startups folded in the .com crash. Not a lot of high paying work for Java programmers these days: the skills were intended to make the people modular and replaceable -- and they are. Without an artificial shortage to drive wages up, the pay is lower than for other skill sets.

    But that's not my point.

    My point is, and always has been, that if you intend to go on to a graduate degree (and most students would be smart to want this, now that there are no longer high-5 and low-6 figure salaries available to people without degrees or experience, just to get *any* warm body plugged into a cubicle), then you need to consider accreditation, and the ability to enroll directly into graduate programs at name universities, without having to take a semester or more of "make up classes".

    You can say it's snobbish, the way that credits transfer between the University of California and California State University systems (for example).

    OK. You've said it. So what? Does that get your degree from one accepted at the other's graduate programs without "make up classes"? No, it doesn't.

    By acting in a way that U.S. Universities are not permitted to act and retain accreditation, U of Waterloo is going to hurt their graduate's ability to get into U.S. University graduate degree programs, without adding a semester or more of "being gratuitously different on purpose" tax.

    You may not think this is fair, but that doesn't make me an asshole for pointing out that those are the facts, or that that's the risk they are running when they do what they are doing, and require a specific language class for entry into their programs.

    -- Terry

  110. India and China by tlambert · · Score: 2

    "Just wait, fellow code monkeys.... India and China are the rising stars...."

    China will not be a threat until they go from an ideogrammatic to an alphabetic language representation, perfect written/voice input, or figure out how to build a keyboard with 32,000 keys (same for Japan, which has kana, but doesn't use it for digital documents).

    Not to mention that problem solving ability tends to self-select against people in repressive societies, since problems-solvers don't tend to be incredibly particular about *which* problems they solve, or necessarily agree with their governments about *what* constitutes a problem.

    India is more of a threat to U.S. supremacy in information technology, but until they get their act together on state interference with etherpreneurial ventures (e.g. 3 weeks for a business license in the most heavily regulated locations in the U.S. vs. 3 months or more in India), it's much more likely that they'll simply come to the U.S. and start their business here (1/3 of all businesses in Silicon Valley are started by non-US born people). At which point, it's still U.S. supremacy, even if it's a non-U.S. citizen doing the coding.

    And it's not like people like me are sitting by and not saying anything when people try to dumb-down universities in North America (for example ;^))...

    -- Terry