Can Anyone Become a Programmer? 767
another random user writes "A Q&A on Ars Technica asks about an old adage that many programmers stick to: 'It takes a certain type of mind to learn programming, and not everyone can do it.' Users at Stack Exchange are wading in with their answers, but what do Slashdot users think?"
Re:Absolutely not. (Score:5, Informative)
IQ isn't exactly an exact science but as an off hand estimate the average IQ is ~100.
It's not freaking estimate. The average is fixed at 100. Sigh. And you complain about people being stupid. Sigh. SIGH.
Re:Absolutely not. (Score:2, Informative)
The 100 IQ is an estimate of an average for any given IQ test since not all people can be measured.
Re:Absolutely not. (Score:5, Informative)
Also, if you knew about how they actually set it, they set it based on the middle people, with assumptions about the tails. As there is an absolute minimum, and no maximum, the long tail effect will push the "average" (mean) above 100. If it were actually a true normal curve as asserted, the mean and median would coincide at 100. As it is, the mean is, by definition, above 100, while the median is what's set to 100. But if you set the test based on middle aged white males in the US, then the world average is somewhere around 90-95, as was done with the first tests. 100 is, at best, an estimate, due to the problems of what it is and how it's set.
Re:Absolutely not. (Score:4, Informative)
Re:Absolutely not. (Score:4, Informative)
Programming classes at reputable colleges have an horrible attrition rate that can be largely laid at the door of people just not being able to grasp it.
Programming classes are NOT where one learns to program. They are where you learn a particular language syntax. Language theory, discreet math, compiler design, OS design, etc...are where one learns to program. The belief that you actually learn to program in a programming language class is one of the major failings on our industry.
Not a good programmer (Score:4, Informative)
The start-up went nowhere and I moved on. I did, and still do, enjoy programming tremendously. I sometimes still do it in my free time as a hobby. So I got a new job and with this job I could program all day. I made long hours that did not feel like long days at all as I was doing some very nice things, or at least that's what I thought. I was making enhancements to core parts of the software, and even got multithreading working for them, something that they were not able to because of compiler bugs, which I also helped finding. I was refactoring their code at high speed, because there was a lot of room for improvement, to say it politely. I often stared with disbelief and some amusement at the nonsensical functional designs handed to me. But worse, I started to clash with their main programmer, who had been there for a long time, and did not like what he saw. Our manager did not extend my contract after a year. He did not like it either. I was using object oriented techniques which they were not used to, it was a "different paradigm" for them, as the manager put it.
This was a disillusion. Programmers at the time were hard to find, and I could not believe that this was happening to me. Was this manager clueless? Probably. Was their main programmer pulling my leg? Perhaps. But I was sure I had done some very valuable things for them and as a reward, I was thrown out. Apparantly, I had been unable to demonstrate my abilities sufficiently. That might have been either my or their shortcoming, but for me that did not matter. I decided to abandon programming, or rather, developing. I felt developing did not receive the respect it deserved. It was often looked down upon by management and being outsourced to India. I decided to become a business analyst.
Life as a business analyst was a walk in the park compared to programming. I could now make designs on a higher level, but with my technical background, also talk to the guys that were going to implement it. I would never hand over a design that the developers would be unable to build. Also, the deadlines where less pressing. In the cycle design-develop-test-release, the time pressure existed mainly in develop and test. The testers would be the ones making extra hours when a release deadline was to be met.
I had been a business analyst for a couple of years at several banks. They have large systems and a high rate of IT staff turnover. Generally at banks, knowledge it sparse, documentation often non-existent, and management not competent on a technical level. They do have enough money though so they just bring in loads of consultants. So being a consultant I benefitted handsomely financially as well. My days as a programmer that got no love were soon forgotten by just looking at my bank account every now and then. I worked happily with the Indian vendor (Infosys) who created just horrible code, but ultimat