1. Foreword - Why Learn Programming?

Programming is consistently one of the top paid skills that you can learn. Try searching for “Top Paid Majors”. Engineering, computer science, and actuarial science have consistently ranked at the top. Computer science is also one of the most flexible majors you can get, because it is in demand in almost any industry and any location.

Even if programming isn’t going to be your main job, as a skill it can still enhance your career. Need an interactive website? Need to crunch sales numbers? What about automatically saving the data and graphing the results of your latest experiment? You might need to run 100 different simulations of a mathematical model. Or maybe you want your home to automatically e-mail you if the garage door is left open more than twenty minutes.

1.1. Programming Is Fun

With programming you get to create. People paint and perform music to create and express themselves.

Picasso had a saying. He said, “Good artists copy, great artists steal.” And we have always been shameless about stealing great ideas and I think part of what made the Macintosh great was that the people working on it were musicians and poets and artists and zoologists and historians who also happened to be the best computer scientists in the world.

Steve Jobs in PBS’s “Triumph of the Nerds: The Rise of Accidental Empires” (1996)

Not only do you get to be an artist when you program, but you get to design.

Design is a funny word. Some people think design means how it looks. But of course, if you dig deeper, it’s really how it works. The design of the Mac wasn’t what it looked like, although that was part of it. Primarily, it was how it worked.

Steve Jobs in Wired’s “The Next Insanely Great Thing” (1996)

1.2. Programming Pays Well

Search up “top paid majors” and you’ll see computer science is usually one of the top paid degrees you can get.

The National Association of Colleges and Employers (NACE) says that Computer Science is the second best paid degree (as of Jan 2018) that you can get. Engineering is number one.

Payscale breaks the engineering degrees out, and puts computer science at #14. The other top-paid majors, such as engineering and mathematics, all use programming extensively.

In addition we’ll teach the topics of a typical first-semester programming class. But the most important thing is for you to find out if programming is worth your time.


In How to Draw with Your Computer we show how to create your first graphics. These first chapters we show you how to get your computer set up.

1.3. What Other Students Have Made

Here are some videos of games students have created in prior semesters. Students who didn’t know any programming, were able to create these games by the time they finished the semester.

Video: Spring 2018 Game Projects
Video: Spring 2017 Game Projects
Video: Summer 2015 Game Projects
Video: Spring 2015 Game Projects
Video: Fall 2014 Game Projects
Video: Spring 2014 Game Projects
Video: Fall 2013 Game Projects
Video: Fall 2012 Game Projects
Video: Spring 2012 Game Projects