Throughout all the programming courses I’ve been taking, I would start to worry that after the course I won’t be able to type out lines of code as if I’m composing a symphony. However, I now realize this is not a worry that’s grounded in the reality of what it is to be a programmer. After reading this post on Reddit, I felt more at ease about the fact that I’m constatly searching Google to find code and solutions instead of actually writing code.
“The best way to get the right answer on the Internet is not to ask a question, it’s to post the wrong answer”
- Cunningham’s Law
Nearly every comment on that post was from an experienced programmer affirming that this is standard practice and completely normal. I kept reading the same expression over and over, “There’s no use reinventing the wheel”. In other words, whatever you are trying to code, it’s already been successfully coded before. So why not use code that another programmer has made (which could have been taken from another previous programmer) and build upon that? Similar approaches are common in art, music and engineering, so why would there be an exception in programming?
“People think that computer science is the art of geniuses but the actual reality is the opposite, just many people doing things that build on each other, like a wall of mini stones.”
- Donald Knuth
Of course, it’s still important to be able to type lines of code from memory, but this will come with experience and repetition. What’s important at the novice level, is having a solid understanding of the language you are working in so you can modify the code and know how to properly run tests and debug.
“This is programming. No matter how good we get, we’ll spend less time writing code and more time figuring out why the code doesn’t work.”
- Simon Allardice
Most of my experience so far has been a cycle of searching for the right code, fitting it in with the rest of the code and figuring out why it’s not working the way I want it to. Then when coming across an error, copy and paste the error into Google and repeat the process. So it’s refreshing to realize that this is common programming practice and not considered cutting corners.
“There is only one thing more painful than learning from experience and that is not learning from experience”
- Archibald McLeish
Learning to program is more than just learning syntax. It’s just as important to know what it means to be a programmer. Using any tools and resources available to make something work is an essential part of the job.Tweet