Mark Niemann-Ross |
Tuesday, July 15, 2014
“Learn to code!” It’s the latest buzzphrase. Everyone from Barack Obama to Will.i.am is talking up the importance of learning a programming language—which is good. But it’s only part of the story.
Successful programmers know more than just a computer language. They also know how to think about solving problems. They use “computational thinking”: breaking a problem down into segments that lend themselves to computer solutions.
Our Developer content at lynda.com already provides a wealth of programming courses geared towards all levels of experience. Starting this month, we’ll also delve into computational thinking—with a unique new set of courses called Code Clinic.
Code Clinic is six courses, each with a different lynda.com author solving a different real-world problem. And each author uses a different programming language to do it.
The series begins this month with the first Code Clinic problem: interpreting weather data for Lake Pend Oreille in Northern Idaho. The task is to use data collected by the lake’s weather station to calculate the mean and median of wind speed, temperature, and barometric pressure for a range of dates.
We enlisted six authors to solve this problem, each using his language of choice:
We sent these authors scurrying to their respective laboratories to create six unique solutions in six distinct programming languages.
The resulting videos explain how the code is used to solve the problem—but that’s not the most important part of the course. Each author gives an overview of his solution, starting with how he approached the problem, then explaining how he broke it up into logical components and revealing the difficulties he encountered.
You may not have time to view all six courses, but be sure to watch two or more of the overviews. Understanding how programmers find solutions is vastly more important than the actual code used to implement an application. Generating weather statistics for Lake Pend Oreille shows why: Calculating statistics is easy, but obtaining the data from the weather station would have generated an oppressive amount of traffic on that server. Independently of each other, the authors each came across and recognized this problem, then added code that would reduce the server load. Their solutions are wonderfully unique.
Incidentally, the authors have included their source codes for you to play with and examine, but don’t get hung up if it’s difficult to compile or run. The important part of Code Clinic is to understand the thinking behind the code. So dive in and explore their solutions.
Want to go further? Now that you understand computational thinking, how would you solve the problem with your favorite language? How would your solution be different than, or similar to, our authors’ solutions? If you solve it on your own, post a link in the Facebook comments[LINK]; we’d love to see what you did.
Join me to meet our authors in a live Code Clinic Google Hangout session on August 6. Next month we’ll release the second problem: analyzing images. Happy computing!
Tags: C#, Developer, Java, PHP, Programming, Programming Languages, Python, Ruby
Check out these popular Developer courses.
Thanks for signing up.
We’ll send you a confirmation email shortly.
Sign up and receive emails about lynda.com and our online training library:
Keep up with news, tips, and latest courses with emails from lynda.com.
We've updated our terms and conditions (now called terms of service).Go Review and accept our updated terms of service.