97 Things Every Programmer Should Know

(Chris Devlin) #1

(^54) 97 Things Every Programmer Should Know


Don’t Just Learn the Language, Understand Its Culture .......


Anders Norås


iN HiGH SCHOOL, i HAD TO LEARN A FOREiGN LANGUAGE. At the time, I
thought that I’d get by nicely being good at English, so I chose to sleep through
three years of French class. A few years later, I went to Tunisia on vacation.
Arabic is the official language there and, being a former French colony, French
is also commonly used. English is only spoken in the touristy areas. Because
of my linguistic ignorance, I found myself confined at the poolside reading
Finnegans Wake, James Joyce’s tour de force in form and language. Joyce’s playful
blend of more than 40 languages was a surprising, albeit exhausting, experience.
Realizing how interwoven foreign words and phrases gave the author new ways
of expressing himself is something I’ve kept with me in my programming career.


In their seminal book, The Pragmatic Programmer (Addison-Wesley Profes-
sional), Andy Hunt and Dave Thomas encourage us to learn a new program-
ming language every year. I’ve tried to live by their advice, and throughout the
years, I’ve had the experience of programming in many languages. My most
important lesson from my polyglot adventures is that it takes more than just
learning the syntax to learn a language: you need to understand its culture.


You can write Fortran in any language, but to truly learn a language you have
to embrace it.


Don’t make excuses if your C# code is a long Main method with mostly static
helper methods, but learn why classes make sense. Don’t shy away if you have a
hard time understanding the lambda expressions used in functional languages—
force yourself to use them.

Free download pdf