|
Reader's Favorites
Media Casualties Mount Administration Split On Europe Invasion Administration In Crisis Over Burgeoning Quagmire Congress Concerned About Diversion From War On Japan Pot, Kettle On Line Two... Allies Seize Paris The Natural Gore Book Sales Tank, Supporters Claim Unfair Tactics Satan Files Lack Of Defamation Suit Why This Blog Bores People With Space Stuff A New Beginning My Hit Parade
Instapundit (Glenn Reynolds) Tim Blair James Lileks Bleats Virginia Postrel Kausfiles Winds Of Change (Joe Katzman) Little Green Footballs (Charles Johnson) Samizdata Eject Eject Eject (Bill Whittle) Space Alan Boyle (MSNBC) Space Politics (Jeff Foust) Space Transport News (Clark Lindsey) NASA Watch NASA Space Flight Hobby Space A Voyage To Arcturus (Jay Manifold) Dispatches From The Final Frontier (Michael Belfiore) Personal Spaceflight (Jeff Foust) Mars Blog The Flame Trench (Florida Today) Space Cynic Rocket Forge (Michael Mealing) COTS Watch (Michael Mealing) Curmudgeon's Corner (Mark Whittington) Selenian Boondocks Tales of the Heliosphere Out Of The Cradle Space For Commerce (Brian Dunbar) True Anomaly Kevin Parkin The Speculist (Phil Bowermaster) Spacecraft (Chris Hall) Space Pragmatism (Dan Schrimpsher) Eternal Golden Braid (Fred Kiesche) Carried Away (Dan Schmelzer) Laughing Wolf (C. Blake Powers) Chair Force Engineer (Air Force Procurement) Spacearium Saturn Follies JesusPhreaks (Scott Bell) Science
Nanobot (Howard Lovy) Lagniappe (Derek Lowe) Geek Press (Paul Hsieh) Gene Expression Carl Zimmer Redwood Dragon (Dave Trowbridge) Charles Murtaugh Turned Up To Eleven (Paul Orwin) Cowlix (Wes Cowley) Quark Soup (Dave Appell) Economics/Finance
Assymetrical Information (Jane Galt and Mindles H. Dreck) Marginal Revolution (Tyler Cowen et al) Man Without Qualities (Robert Musil) Knowledge Problem (Lynne Kiesling) Journoblogs The Ombudsgod Cut On The Bias (Susanna Cornett) Joanne Jacobs The Funny Pages
Cox & Forkum Day By Day Iowahawk Happy Fun Pundit Jim Treacher IMAO The Onion Amish Tech Support (Lawrence Simon) Scrapple Face (Scott Ott) Regular Reading
Quasipundit (Adragna & Vehrs) England's Sword (Iain Murray) Daily Pundit (Bill Quick) Pejman Pundit Daimnation! (Damian Penny) Aspara Girl Flit Z+ Blog (Andrew Zolli) Matt Welch Ken Layne The Kolkata Libertarian Midwest Conservative Journal Protein Wisdom (Jeff Goldstein et al) Dean's World (Dean Esmay) Yippee-Ki-Yay (Kevin McGehee) Vodka Pundit Richard Bennett Spleenville (Andrea Harris) Random Jottings (John Weidner) Natalie Solent On the Third Hand (Kathy Kinsley, Bellicose Woman) Patrick Ruffini Inappropriate Response (Moira Breen) Jerry Pournelle Other Worthy Weblogs
Ain't No Bad Dude (Brian Linse) Airstrip One A libertarian reads the papers Andrew Olmsted Anna Franco Review Ben Kepple's Daily Rant Bjorn Staerk Bitter Girl Catallaxy Files Dawson.com Dodgeblog Dropscan (Shiloh Bucher) End the War on Freedom Fevered Rants Fredrik Norman Heretical Ideas Ideas etc Insolvent Republic of Blogistan James Reuben Haney Libertarian Rant Matthew Edgar Mind over what matters Muslimpundit Page Fault Interrupt Photodude Privacy Digest Quare Rantburg Recovering Liberal Sand In The Gears(Anthony Woodlief) Sgt. Stryker The Blogs of War The Fly Bottle The Illuminated Donkey Unqualified Offerings What she really thinks Where HipHop & Libertarianism Meet Zem : blog Space Policy Links
Space Future The Space Review The Space Show Space Frontier Foundation Space Policy Digest BBS AWOL
USS Clueless (Steven Den Beste) Media Minder Unremitting Verse (Will Warren) World View (Brink Lindsay) The Last Page More Than Zero (Andrew Hofer) Pathetic Earthlings (Andrew Lloyd) Spaceship Summer (Derek Lyons) The New Space Age (Rob Wilson) Rocketman (Mark Oakley) Mazoo Site designed by Powered by Movable Type |
Cranking Out Code Monkeys I'd been wondering about this. Apparently, computer "science" degrees are no longer teaching computer science. There's no doubt that there isn't as much demand for actual CS types as there is for programmers, but if that's the case, they should shrink the CS departments and start up a different one, perhaps called computer applications, to teach the programmers. As it is now, I'd consider it academic fraud. This is a generic problem, to me. The word "science" has gotten too watered down, even (especially?) in academia. Of course, it all started when someone came up with the oxymoronic major, political science... Posted by Rand Simberg at January 14, 2008 06:22 AMTrackBack URL for this entry:
http://www.transterrestrial.com/mt-diagnostics.cgi/8866 Listed below are links to weblogs that reference this post from Transterrestrial Musings.
Comments
That's the main reason I never completed my Computer Science degree. I was acing every test, had a perfect 4.0, and was regularly speaking to graduate level classes on large scale networking (this was back in the mid-90s). People in my classes were failing every test, not doing any of the out of class work, and were there just to get an entry level VisualBasic job. In the end we both got the same degree. I quit and ended up doing a lot of Internet standards work that has gotten me way more than a CS degree would have. In many CS programs the basic requirements for class credit are still there (operating systems, algorithm, etc) but the class itself is really dumbed down. My networking class required you to write a token ring stack from scratch. I'm sure these days you only cover TCP/IP and you barely scratch the surface of Ethernet. Next year I do the executive MBA thing at Georgia Tech. A few schools still teach CS as a science. Georgia Tech is one of 'em. But they're rare. Posted by Michael Mealling at January 14, 2008 09:04 AMCarnegie Mellon University is another place where real CS is taught. My daughter is in her second year there as a CS major and so far she's gotten more science, math, and logic than programming. However, I think it would be wrong to be too dismissive of the importance of programming in computer science. Programming is a necessary skill that enables CS types to try to put their theory-based ideas to the test, an essential step in any scientific endeavor. Posted by notanexpert at January 14, 2008 09:47 AMI think it would be wrong to be too dismissive of the importance of programming in computer science. I don't think anyone was doing that. Posted by Rand Simberg at January 14, 2008 09:56 AMBack in the day, all computer operators were tape apes and programmers still are all code monkeys, assuming they write any code at all. The fact is, no human can encompass the fantastic range that software covers. Any given person can only handle a very trivial subset. What gets me are those that believe their subset is the only true way. Personally, the kitchen sink approach and uglyness of Java code turns me off but how can you argue with financial success? I've been programming for over 30 years and have been part of the history and have seen many changes. During that time I've not only seen many fashions proclaimed the only true way, I've worked with a lot of different programmers. Some were traditional CS and some were not. What makes a good programmer is something internal that can't be taught in any school. Anybody can be taught a particular algorithm. What can't be taught is how to write elegent code. Believe me, 99% of the code that people are very happy to use is crap if you look at the actual code. The problem is their are no good metrics. Which allows people to successfully arguing for bad things and proclaim them good. C has a preprocessor and header files, both bad things because they are unneccesary and make code harder to read (watch now as a deluge of comment argue just the opposite.) The fashion today is for programmers to call themselves 'software engineers'... what a joke. A good programmer is humble and teachable, always learning what is good and bad. They have always been in the minority. Posted by ken anthony at January 14, 2008 10:10 AMJoel Spolsky (of FogBuzz) wrote I think the solution would be to create a programming-intensive BFA in Software Development--a Julliard for programmers. Such a program would consist of a practical studio requirement developing significant works of software on teams with very experienced teachers, with a sprinkling of liberal arts classes for balance. It would be a huge magnet to the talented high school kids who love programming, but can't get excited about proving theorums.
It's all about the government funding. When "Science" was riding high on the hog, you wanted to get a part of that gravy and so named your subject "****** Science". Since then, priorities have changed. Witness the "Social Ecology" department at UCI. If there was actual truth in department nomenclature, "Computer Science" would be called "Consumer Electronics" Posted by K at January 14, 2008 10:31 AMAs a computer scientist who understands pointers and recursion, I find it difficult to compete in the job market against code monkeys who have little grasp of broader principles but who can claim experience with the expensive proprietary crippleware management has been sold. As for C macros being bad, I've seen them used in ways that make code harder to read and manage. I've also seen them used to greatly improve readability and maintainability of code. Like many tools it's how it's used. I was a sysadmin for some years, and got the Java bug when I saw the money that was available (at that time). By simply taking a 13 week course in Java and a few short-term contract jobs, I then landed a position at a dotcom as "Software Engineer". But I was only a novice code monkey at best. Of course the bubble popped and I was soon back to my old ways. Posted by Orville at January 14, 2008 10:49 AM1) I think it would be wrong to be too dismissive of the importance of programming in computer science. 2) I don't think anyone was doing that. Hahaha. I got in to a very nasty argument with a tenured professor while I was in graduate school in computer science because I took the position that you couldn't really be a computer scientist unless you knew how to program in at least one language. His position was that programming was totally irrelevant. This was at a school where the graduate CS department was and is rated in the top five in almost all surveys. But, I can see your original point. If I were in charge, I would split it in to Computer Science and Software Engineering, where CS is in the same college as mathematics (because, really, if you take out the programming it's effectively a sub discipline of math), and put the SE in the Engineering college along with the eletrical engineers, because what an engineer should focus on is building things, which in software means designing and implementing software. Posted by Annoying Old Guy at January 14, 2008 01:42 PMOne of the more amusing moments in grad school was when my committee chair described Political Science as 'History taught badly'.... Posted by Scott at January 14, 2008 03:00 PMThe problem cuts in several directions. The core issue is that many people who want an education in software engineering have been forced into Computer Science majors. The result is CS programs which fail at both providing a solid CS education or a solid software engineering education. Software engineering is much, much more than just "programming" and it is not at all a direct subset of CS knowledge. Even a good CS education will tend to produce substandard software engineers, on average. In part due to this problem, the quality of the average "programmer", even with a CS degree, is very low compared to the average quality of college educated professionals in other fields. This is a key reason behind much of the problems with low software quality generally. Posted by Robin Goodfellow at January 14, 2008 05:46 PMI'm very much in the its an Art not a Science camp. You can teach people the syntax of a language, but it's impossible to teach them to be creative. The science is important but its much much easier to teach the formal science part than the creative part. I spend about 1/3 of my working life answering software support questions from "Programmers" for NetBurner TCP/IP and OS products. I see the problem every single day. There is a huge gulf between the old time code craftsman and the Java coder monkey. The very best programmers are born not taught.
Isn't this what Chinese people are for? Posted by Josh Reiter at January 14, 2008 07:44 PMI came up through a Computer Science department, because there was no Software Engineering department at my school. There's more to Software Engineering than programming, like software metrics, testing methods, defect injection analysis, etc., and there's more to Computer Science than programming, like algorithm analysis, data structures, etc. But, like a composition major in music school who can't play the piano is pretty much hosed when trying to demonstrate a piece, it's something every CS or SE major should be able to do, even if they aren't gifted at it. Really, programming is a craft that doesn't really need a university education to practice; university level education should be more than that. Posted by Jonathan Card at January 15, 2008 08:57 AMThere are two subjects whose names include the word "science" (computer and political science) and I think they had to put it there otherwise many would not consider it exact science but applied science and/or engineering. Posted by miklos at January 15, 2008 11:42 AMPeter said... "As for C macros being bad, I've seen them used in ways that make code harder to read and manage. I've also seen them used to greatly improve readability and maintainability of code." This is an example of what I was referring to. I would put this in the category of 'good implementation of bad design' something all programmers have to do. For assembler, macros are essential, but asm is a bad language for humans even though essential to code down to the metal. Essential may the wrong word here. 'The one true language'(TOTL) should give you at least the power of assembly. Of course, there is no such thing as TOTL, but I think you can get pretty close. Since 1975 I've coded professionally in over a dozen languages and explored quite some more as a hobbiest. Contrasting all these languages helps to appreciate the elements TOTL would have to have. This is going to require a blog post to elaborate. Posted by ken anthony at January 15, 2008 12:11 PMI was tempted to answer to Ken with something scathing, but hey... I've seen worse. Personally, I always was suspicious of CS, because of many bad things these people hoisted onto the world of programming. Wirth was especially bad. Pascal alone with its broken types and pointers set programming back for a decade at the least. The only thing to come out of CS that I appreciate was algorithmics, various funky trees and graphs. Posted by Pete Zaitcev at January 15, 2008 11:34 PMPost a comment |