I seem to be seeing a lot more interest in C++ is high schools these days. I’m not sure what is bringing it on though. It could be a “back to basics” sort of movement I guess. Or perhaps it is a function of not being able to do “real” pointers in languages like Java, C# and Visual Basic. I know that a lot of systems –level programming is still being done using C++. Frankly I don’t see that changing anytime soon. While applications that are part of the total operating system (system being a key word there) can and are written in languages that use some sort of virtual machine some things call for getting a little closer to the hardware. C++ can really shine there.
This all has me thinking about projects again. What sort of projects are really valuable to a class learning C++? My gut feeling is that people are not learning C++ is a first course. That means that the very basics (this is a loop, this is a conditional) are not that important. Students should know those concepts pretty well and be able to quickly learn the syntax. I suspect that some projects that involve pointers, rather than arrays, and data structures that traditionally are down using pointers (trees, linked lists, circular lists) may be more useful.
In any case I would like to collect a few good C++ projects and write up instructions, common issues with them, and some good coded solutions. If you have a favorite, either that you already use or that you think might be useful, please leave a comment or send me an email. If I can put together a bunch of them by the end of July I’ll share them with everyone.