3 ms·
I agree that the way programming is taught needs an overhaul. But I don't think programming should be taught at all. Students should know programming before t
by codeonfire 15y ago
I agree that the way programming is taught needs an overhaul. But I don't think programming should be taught at all.
Students should know programming before they get to college. Do music students who go to music school all spend the first year learning guitar together? That thinking is from the olden days when programming was a job. Today it is an art. The cold war refrigerators and punch cards are gone. Here is how it should be done:
Students enter the school and are given a variety of starter options: game programming with python, web programming with rails, numerical computing with c, classical data structures, etc. Then, students audition in order to take advanced courses. The audition is two parts: technique and style. Technique is judged on traditional things. Did they display good class design? Did they define a good data model? Did they use show a high level of knowledge of whatever language they used? Next is the style component. Is the project "good". Does it follow modern tastes in software engineering? Does it follow modern tastes in UI design? Is it meaningful and relevant to the world?
The key part is that applicants are put on notice that their entry into the real program depends on their demonstrated prior progress as programmers and CS students. If only 10 kids show up, so be it. That is all the students that formal education will be useful for. Teaching programming to CS students is like teaching the greek alphabet to history students or welding to mechanical engineering students. It's something they should already be way into, otherwise it's not really productive for anyone. I for one am tired of seeing programmers who can't think for themselves, who can't do anything without being told the answer like a robot. They second guess everything that isn't written down and schedule endless meetings thinking someone will be show up with the answer for them.