Order from Amazon.com, The Persuasive Wizard: How Technical Experts Sell Their Ideas. Now available in Kindle e-book. The Persuasive Wizard is a must for anyone wanting a better job, desiring a raise in their current one, seeking investment funding, or just needing to persuade others. College and High School students find it invaluable as they begin their carers.
This year I wrote the curriculum for my High School Engineering class. One of the things I included was an introductory tutorial on C++ programming.
Let me say, up front, if you have never programmed in C++, it can be addictive, particularly if you do it on an iPad or smart phone.
In the hierarchy of programming, C++ is an intermediate level language. At the lowest level is assembler programming where you actually input ones and zeros as your code. (In the early days of intelligence satellites, power and memory were at a premium. We put almost everything into Assembler code. Can you imagine?) At the highest level of programming, you are simply moving objects around and the code is built internally, based on the associations of the objects. Most 3D printer-application programs work this way by permitting you to create objects at a very high level, combine them, and output to the 3-D printer. C++ lies in somewhere between those two extremes of programming..
With C++ you can get your hands dirty. You create the logic and let it play out. I teach at a High School where the use of iPads is one-on-one. The students use them for all my lectures, the class calendar, note taking, and assignment submissions. Thus, while we do have computers available, they are becoming obsolete. I wanted to make use of the iPad so that the students could program at their leisure. Plus, it just sounded like fun.
The fantastic thing is that several companies make C++ iPad applications. I bought my first and downloaded it to my smart phone. Now how cool is that – programming in C++ from a smart phone? The application program operates identically for the iPad. For about $4, you get the application and unlimited compilations, which you will need because of the nature of using the compiler to find errors in code and logic.
Of course, iPads have some serious limitations. To begin with, they are not computers. The code you write is not compiled by the iPad like it would be in a computer. The code you write onto the iPad is sent to the cloud, along with any input data. The program is compiled in the cloud, executed, and the answer downloaded to the iPad over the wireless internet. It is s0 slick. The ability to sit there and play with a program, read and fix compilation errors in real time, and then get the program running, is just unbelievable. You can get on a high quickly. Are there limitations with the iPad. Yes, some serious ones. What you sacrifice with the iPad application is the ability to interact at the speed required to play a game, for instance. But, if your aim is to teach programming, you worry not a bit about that limitation and might even call it a blessing – one less interruption.
I highly recommend that you try teaching C++ with the iPad. Half of the students could not ewait for my assignments. They wanted the entire month’s assignments immediately so they could start building their library of programs Teaching C++ this way turned turned out to be one of the most successful ideas I have implemented in secondary education.