Cracking the Code: Learning Computer Programming Languages
I learned to code when I was in fourth grade. Okay... maybe that's an exaggeration. I learned Logo when I was in elementary school, using an Apple IIe (in the school library, naturally) and later a Macintosh.
Logo is a programming language that was developed as an educational tool for kids. You issue commands to the "turtle" (pictured at left) and receive output as his simple or complex path on the screen. I didn't know it at the time, but I was solving puzzles and making cool geometric patterns because my teachers wanted me to learn how to think about computers and logic. I didn't consider myself to be programming a computer, but just doing an assignment that was half mind-bending, half fun and rewarding.
Right now it seems fashionable to want to learn to program. It is an added skill set that can be of benefit no matter your current career. And if you are more than a casual user of the web it can help you understand how it all works together, which is an important part of strengthening information literacy.
- "Computer Science for the Rest of Us." by Randall Stross. The New York Times, March 31, 2012.
Computational thinking is a skill that transcends traditional academic boundaries. So what do non-Comp Sci majors need to learn before they graduate?
- "A Surge in Learning the Language of the Internet." by Jenna Wortham. The New York Times, March 27, 2012.
Night schools and online courses in web development are growing in popularity, and a market has formed to serve these eager new students.
- "Where's _why?" by Annie Lowrey. Slate, March 15, 2012.
"Rubyists possess an often exaggerated, yet nevertheless merited, reputation for being the quirky hug-everyone kids of the programming world." One journalist takes time off for a personal project to learn about Ruby, as well as the mysterious disappearance of _why.
- "How I Failed, Failed, and Finally Succeeded at Learning How to Code." by James Somers. The Atlantic, June 2011.
Problem solving, the ORIC-1, Project Euler, and learning to program through a program.
- "Why Johnny can’t code." by David Brin. Salon, September 14, 2006.
Computer programs today are far more abstracted away from the user then they were in the good old days of BASIC. Why it's important for kids to see the "insides" of a computer and learn how to code.
From the blogosphere:
- "Johnny and Jenny Can Code." The Fishbowl, April 3, 2012.
Forget BASIC; right now is the best time to learn, because the most advanced resources are available and affordable.
- "Should everyone learn to program? And by everyone I mean women." Anne Z., April 1, 2012.
Overview and individual take on the conversation around encouraging girls to develop computer programming and other STEM (Science, technology, engineering, math) skills.
Online tools and resources
- Hackasaurus is a tool that was created for tweens, but anyone can play with the "X-Ray Goggles" that let you turn a website inside-out. From there you can "hack" the site to make changes happen before your eyes, and then share the results. The goal is to turn kids into active users instead of passive consumers of the web. Learn more at the next Hackasaurus event at the library!
- TryRuby lets you practice right in your browser; download Hackety Hack for Windows, Mac or Linux to create your own programs and games in Ruby to share within the community.
- Udacity made headlines when 58,000 people signed up for a free Stanford course on Artificial Intelligence. They now offer classes on "Building a Search Engine," "Design of Computer Programs," "Web Application Engineering," and more.
- MIT App Inventor lets you build an informational or recreational app for your Android phone and start using it right away.
- Google Code University offers basic introductions to web programming, databases, programming languages, and Linux, as well as more advanced courses for Computer Science students.
- Visit ilearnedtoprogram.com for a random snippet of inspiration.
- Nostalgic for the reptilian computer language of your youth, like me? You can practice your Logo skills using the applet on this site.
With your library card
- Browse downloadable eBooks on "Computer Technology;" includes some titles on programming.
Sign in to Credo Reference with your library card barcode to access these works:
Books on these subjects available at the library
- APIs (Application Program Interfaces)
- HTML (Document Markup Language)
- iOS development
- Mobile Computing -- Programming
- Object-oriented Programming
- Ruby on Rails
Which computer language do you "speak"? Did you learn it in a formal class or by exploring on your own?