Compy Sci

June 6, 2006 20:25 by dgood
This is self-plagairized from a post I originally made on Slashdot in August of 2005... == I'm in the "MIS/IT is not CS" camp. I don't think IS/IT or even CE grads are as prepared to enter into a career as a developer as CS grads. Having said that, I also don't believe that all CS degrees are created equal either. One of the most frustrating things I see are 2 year schools churning out "programmers" with Associate's degrees with impressive-sounding names like "Computer Science and Engineering Technology" that turns out to be 4 or 5 semesters of vocational PHP and Java programming. If you ask any of those grads to rate themselves on a scale of 1 to 10 on their programming expertise, nearly all of them will rate themselves at or above a 6. Usually it's a case of they don't know what they don't know and, in reality, they're more like a 2 or 3. Ask them to explain MVC or the difference between composition and aggregation and they're lost. I think there's a place for these 2 year colleges but I think they are doing these students a disservice by cranking them out with some vo-tech skills and leading them to believe that they're prepared to be software developers. I would be remiss to lump all of those grads together - I've met some that are highly dedicated and passionate about compy sci and just throw themselves at learning it and bettering themselves, so don't get me wrong it depends on the individual as well. Another problem I see frequently are programmers with a lot of knowledge about encumbrance and descent database design skills but no knowledge of their business domain. I always explain to prospective candidates that I'm interviewing that it's great that they know how to multiply a number by 4 by with a bit-shift but that's only half of what they need to know. It's not enough to be a good programmer, they have to be, or become, knowledgeable about the business too. We write accounting and human resources software. It's difficult, nay impossible, to write that kind of software without the requisite knowledge of accounting procedures and processes and learning the rules. (Believe me, there are a lot of freakin' accounting rules. Sheesh.) One has to learn how accountants work and process journal entries and how the payroll taxes are paid and filed and what the SUI and OASDI caps and rules are and a mountain of other non-CS things before writing payroll software. Knowing how to code and knowing how to design are absolutely essential. Knowing how to *learn* and knowing your business domain is just as essential too. I don't consider that a problem with computer science - it's a fact that's inherent to a lot of disciplines such as law - but it is something that seems, for whatever reason, to be minimized or overlooked frequently. It seems that CS programs are becoming more standardized, boiler-plate curriculums that are as expected at most schools as much as accounting and business management majors. One thing that may help - it would be a step in the right direction - would be to make the CS curriculum a 5 year program and mandate, at minimum, a minor in another non-cs-related discipline. CS is a difficult major and it can be a hard life if one isn't prepared to invest in it. It takes a lot of passion and a lot of ambition to excel and it's imperative to continue learning long after college is over. Once the degree is conferred the learning just begins. I'm a believer in new cs grads are now ready to learn how to be programmers. One other thing I always ask new grads that I interview is "How does it make you feel that every language and technology you're going to learn in the next 6 months or year might be obsolete and worthless very soon?" I'm looking to assess their dedication to learning and their passion for their chosen field. If they don't have it then they won't last very long.

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5
Comments are closed