Subj : Re: Are programmers like this in the real world? To : comp.programming From : Randy Date : Mon Jul 25 2005 01:21 pm EricF wrote: .... > > Most programmers work with business applications and don't need to be computer > scientists or mathmeticians. Most of us don't write operating systems or > compilers. .... > > Eric In fact, "most" should probably read "almost all" -- 90% of professional programmers work in business. (Searching dice.com or careerbuilder.com will verify this.) That 90% needs to understand Java web services (increasingly), databases, simple data structures, and how to build menu interfaces. But most of all, they need to understand the process of developing software that serves the need of the customer, whatever those may be. They *don't* need to understand compilers, networking internals, kernels, AI, CS theory, calculus, language theory, scientific computing, graphics, O/S internals, or all of the CS curriculum that is taught after the sophomore year. These students best acquire the skills they do need by taking courses in programs *outside* of CS -- in IT or IS programs that attempt to combine the necessary software skills with basic business skills. It's probably the right approach in preparing the vast majority of programmers for the work they really do. Ironically, in my experience, the best programmers almost never enroll in IS/IT programs. Employers know this. Therefore, if a business wants to hire the smartest kids, it has to hire from a pool of folks whose degrees are less than ideal to serve its needs -- CS, physics, mathematics, music. Or folks who never went to college... That's why you'll be disappointed by the caliber of students in intro programming courses. The CS kids can't take them (since they're outside their curriculum), and the engineers and scientists generally pick up these skills in an engineering course that combines the language with numerical programming (like fortran, or increasingly, C++ and Java ). Try to sit in on an CS 101 course, or visit the course's web page, if you want to see programming instruction that doesn't bore the pants off you. For example, visit MIT's 6.001: "Structure and Interpretation of Computer Programs": http://ocw.mit.edu/OcwWeb/Electrical-Engineering-and-Computer-Science/6-001Structure-and-Interpretation-of-Computer-ProgramsFall2002/CourseHome/index.htm Randy -- Randy Crawford http://www.ruf.rice.edu/~rand rand AT rice DOT edu .