Slashdot Asks: How Did You Learn How To Code?
Last week Apple's CEO argued that computer programming should be a 'second language', and that it should be a required subject for all students starting in 4th grade. But a large number of professional programmers didn't learn how to code in a formal school program, either because they're self-taught or because they learned on the job. There's a lot of abstract discussions about the best ways to teach coding, but if there's any group that's uniquely qualified to answer that question, it's the Slashdot community.
So leave your answers in the comments. How did you learn how to code?
So leave your answers in the comments. How did you learn how to code?
That is, the usual way for 1980s computer geeks. Self-taught BASIC on an Apple II using a few books on Applesoft and Integer BASIC. Later Pascal also on the Apple II with a few books including Jensen and Wirth's PASCAL User Manual and Report. Learned C (K&R, mind you, none of that prototype crap) on a Mac XL with the old Megamax compiler. Picked up 6502 assembler out of necessity in there, also 68000 and 6809.
I learned to code first in classes in high school (BASIC, FORTRAN, COBOL, Pascal) and then by reading the relevant books or documentation (C, C++, Lisp, Icon, Java, C#, Perl, Python, Ruby, PHP, Javascript et. al.).
The more interesting question is where developers first learned to program (a completely different skill from coding). IMO we don't need to teach children to code, we need to teach them to program. Which means first teaching them to approach problems logically and analytically, which is going to cause the loss of about 75% (my guesstimate) of the educational establishment when they can't deal with students who know how to analyze material, do independent research and call teachers on incorrect classroom material.
Just look at all of the shitty, shitty code that's out there. Any professional programmer will have encountered it. It turns out that nearly all of it is the product of these untrained programmers (they like to call themselves "autodidacts" to try to sound better than they are).
What's worse is that they'll try to blame properly trained professional programmers for this shitty code. Yet often it's the professional programmers who are burdened with fixing this broken, awful code written by untrained programmers.
It's really disappointing to see how much software out there is written in, say, JavaScript, just because that's the only language that some untrained programmer knew of. Or how many software systems use NoSQL databases that lose or corrupt data just because some untrained programmer didn't want to learn SQL and didn't know how to use a relational database. Or how these untrained programmers try to sort collections of millions of items using bubble sort only to wonder why it's so slow. It's all so unnecessary. If trained professionals had written the software in the first place, then all of this waste would've been avoided.
All of that code is the citation you're looking for.
Gee do Word and Excel Macros count? How about doing Maya animation?
Coding usually refers to programming a computer, not just using an app to get a computer to do stuff but writing the app.
Seven puppies were harmed during the making of this post.