So You Want to Be a Programmer?
worthlessgenius.com
worthlessgenius.com
The thing is, the industry is a lot bigger than it seems when you're at university. Developers/programmers are actually a pretty small part of it. For example, software testing/validation is a job in itself which can involve very little coding. Professional documenters are paid to write about software and do very little coding, but an understanding of the field is still useful to them. And lets not forget the good old ranks of management, forever considered to be a complete waste of time that gets in the way of "just hacking shit out". Except it turns out people don't want shit.
So basically, just because somebody is on your course and doesn't want to spend all night fiddling with their ubuntu installation, reading HN and learning the stuff you know that you'll need for the job you want, doesn't mean they wont be able to hack it in industry. If anything the industry could do with more normal people. Preferably ones with boobs.
I'm certainly not/not going to be the world's most stellar programmer, but I have to look at the other people in my class who are obviously holding up the rest of the students through their complete misunderstanding of the material.
Sure there is potential in everyone, and most likely a career path for any number of variables involved in producing a quality software product. But when a person is taking their second class in a programming language, and you ask them to show you their switch statement, and all you get is blank stares, is it your place to think that they need to find something else?
Obviously this is all from my personal experience, and I don't profess to know all the answers. But, as a general question, how do you handle a fellow student who is obviously not getting the coursework, and if they achieve the same degree will lessen the effectiveness of said degree from the same institution?
So, my advice is to give the guy a hand if you have time, you'll probably find he has skills that compliment your own which could come in useful someday. Also, try to stop caring so much about how your peers are performing, and focus on exploiting the access to people and resources available to you so you can get what you want out of the course. Ultimately there's very little you can do to change the behaviour of people your only mildly acquianted with.
If someone just wants to work adjunct to software development, why should they take the same courses as people who want to be software developers? A class that presents programming as a medium of communication rather than an exercise in minutiae seems like it would get a lot more traction with people who don't see the glamor in spending their nights and weekends in front of a computer screen.
Perhaps less useful is the author extrapolating from his community college classmates to the general programmer population.
But the part I disagree with is the reductionist description of programmers as people who only type and solve problems. This is only true if you expand the definition of "problem" to be so broad that it's meaningless. As a good software developer, you have to make aesthetic choices, exhibit empathy with customers and coworkers, do boring paperwork, be personable, and many other things. I'm not sure all of these things are problem solving.
I also don't think any of his 8 pithy statements of advice are very helpful. Just one example: "Take everything very seriously." Really? Is this tongue-in-cheek? How about, "Don't take yourself so seriously. Have fun and be curious about your world." That sounds like better advice to potential programmers to me.
As for the statements of advice, you are correct. They are indeed broad, and would do with a good bit of expansion. This wasn't meant to be the alpha and omega of posts about what it means to be a programmer.
But, as you say, most likely a person who doesn't have the ability/desire to study and learn about a certain subject probably wouldn't take the time to consider the time and effort involved.
Google cache: http://74.125.93.132/search?q=cache:jnMtyv9i7LUJ:www.worthle...