Make C++ my language of choice (ahead of C)
I remember very clearly my first exposure to the C programming language. I was a couple of credits away from receiving my BA-CS from UCSD and had to complete a two-quarter class, writing a compiler. The previous year the class had been taught in UCSD-Pascal, as had all of my upper division classes. New professor, new rules and now the project had to be delivered in C. Professionally, my first couple of jobs worked with Pascal but it became very clear very quickly that I had to embrace C if I wanted to pursue my dream of being a software engineer. Fast-forward to 2016 and now that I am actively pursuing a new job I am finally welling to face the fact that detailed knowledge and experience of C++ is no longer optional for an embedded software system engineer.
I have taken classes and done maintenance work on existing C++ projects and this isn’t enough. My first design effort, while it finally bore fruit was late and had to be re-designed a couple of times. Since I acknowledge I am re-inventing myself I have to embrace C++ as my language of choice.
It’s always good to give yourself a project when faced with learning something so I am falling back on familiar ground and rewinding the clock to circa-2003 when I was working as a free-lance Linux contractor and I got hooked up with a PhD sort who wanted to teach a UCLA-extension class for professionals and we started to work on the course curriculum. The class never was taught, though it did appear in the UCLA catalog, and I did the project work ahead of time and have a working version of the Hypothetical PartStamping Machine implemented in C using SYS-V IPC mechanisms on a Linux host.
This PowerPoint sets the stage for the HPS machine and this PowerPoint is intended as more of a technical reference, and finally, this PowerPoint is the gory detail.
As I work on this self-imposed project I will be posting some interim results and probably making the source code available. Once I dig up the C code it will be posted as my starting point.
I expect to use these online resources to help polish my C++ knowledge.
Online C++ Tutorials
- C++ Language
- LearnCpp.com
- Learn C++ simple easy learning
- C++ Programming Language Tutorials
- C++ tutorial for C users
Advanced C++ Tutorials