Subj : Re: Are programmers like this in the real world? To : comp.programming From : Rotes Sapiens Date : Sat Jul 30 2005 12:02 pm On 22 Jul 2005 15:24:14 -0700, "Mike Deeth" wrote: > I've been coding for over a decade in all sorts of languages, as a >hobby. My career is mathematics. As such I was obligated to take an >intro programming class. "Well" I said to myself, "let's get this over >with, it's the last 'nonsense' course needed for the degree so from >here on out it'll be all upper division and graduate math classes. >Anyway, I'll probably learn some new stuff!" > Boy was that last part ever off. In my experience mathematicians tend to make good programmers because of the symbol manipulation involved. > If I ran a company, I wouldn't let any of these people within 10 >feet of a computer. I wouldn't trust them to write "hello world". And >that includes the instructor. > We get an assignment. Sieve of eratosthenes-- no problem at all. >Have it working in 5 minutes, just like I'm sure anyone on this NG >could as well. Then I find out that to pretty much everyone else in >the class, it was the assignment from hell, hours of hair pulling, most >didn't finish at all. What the hell? When I first started doing programming courses, I was able to write programs by myself in 20 mins which two other students couldn't get written in two hours. At the uni I went to, we were lucky. Many of the lecturers were internationally recognised. Everyone was expected to know C and understand basic programming principles. > One of my classmates works at Microsoft. He does assembly and >works with unix. So this guy should have it together, right? Wrong. > As he describes how he spent 3 hours on the Sieve before finally >dispatching a bug, I am intrigued. What, oh what, sort of exotic bug >could so thwart such a professional coder? "Oh, well, in my for loop I >was checking i against queue.size() and of course queue.size() changed >whenever I dequeued." (Jaw hits floor. This guy makes a PAYCHECK??) >"Ahh yes.. that one will get you every time" I say politely... thinking >to myself, I wouldn't trust this guy to run Spybot for my grandma's >infected machine. Your classmate doesn't appear to have heard of code inspection. > In class the instructor proclaims he will enlighten us by showing >us how to reverse the order of a singly-linked list. "So how would we >go about doing this?" he asks, that knowing gleam in his eye. I >chuckle to myself, at his and my shared secret: a couple book-keeping >variables for _next and _prev and this'll be just a routine run through >the list. Nope. "Of course, we will just push the whole entire list >onto a stack and then push it back!" That strange smell is my faith in >humanity being engulfed in the flames of hellfire. A typical academic's approach. Back in the old days of DOS, many programs had to be rewritten because someone made the mistake of using a stack. The program worked fine in the lab, but in the real world it overlowed with data and crashed. > So this has to just be because it's an intro class. It has to, I >assure myself, with some desperation. Then I head over to the CSC >computer lab. After hearing a large group of senior level CSC students >struggle for about an hour with the sublimely vexing problem of >non-blocking sockets, my earlier assurance evaporates. I have the feeling they didn't study the appropriate textbook. > Now I think I understand better why in general programmers are >treated like shit. If these people are the bold new generation of >keyboard commandos, then I say their cheap cubicles are more than they >deserve. And no fucking wonder companies want to outsource-- if this >is the shit produced in the USA! Many programmers don't seem to be given specific goals and guidelines. One of the rationales behind outsourcing is: Why pay for expensive rubbish from USA when outsourced rubbish is so much cheaper? > So the reason I'm writing is to desperately try and get >reassurance this is not how all programmers are. Please, I beg of you, >tell me that 99% of these people will end up greeting people at Walmart >and not within 50 feet of a computer. Unfortunately many good programmers are lost because of office politics, and many bad programmers are promoted for the same reason. Sig: I do not fear computers. I fear the lack of them. -- Isaac Asimov .