Image for Computer Science 102

We’ll just come right out and say it: CS101: Introduction to Computer Science is our most popular course, due in part to the outstanding interactive Java lessons from Bradley Kjell (which we previously showcased in the blog). 101 made its way onto our iTunes U channel not too long ago, and today its sibling arrives on the scene.

CS102: Introduction to Computer Science II is now on iTunes U. We follow up on part one with more work in Java as well as a thorough introduction to C++, another industry-standard language. Readings, lectures, and video tutorials are gathered from some of the best the web has to offer, and of course we’ll help you get your hands dirty with actual programming (without which all this is merely…academic).

Who cares? Well, the “why code?” question has already been hashed out in detail online, but we recently found a great interview with Mitchel Resnick of MIT, who says:

“It’s important for everyone to learn to code in same way that it’s important to learn to write. Coding, like writing, can help you organize your thinking. As people learn to code, they think systematically. They start to identify bugs and problems and fix them in ways that carry over to other activities. You learn basic strategies for solving problems, designing projects and communicating ideas.”

To get more specific, when you’re done with this course you’ll be able to:

  • Demonstrate an understanding of the concepts of Java and C++ and how they are used in Object-Oriented Programming;
  • Demonstrate an understanding of the history and development of Object-Oriented Programming;
  • Explain the importance of the C++ Standard Template Library and how basic components are used;
  • Demonstrate a basic understanding of the importance of run-time analysis in programming;
  • Demonstrate an understanding of important sorting and search routines in programming;
  • Demonstrate a detailed understanding of generic programming and principles in the standard template library;
  • Demonstrate an understanding of various types used within the standard template library in C++;
  • Demonstrate an understanding of the generic usage of templates in programming for C++ and Java; and
  • Compare and contrast the features of Java and C++.

Not using iOS? You can get the browser-based course here.