C++ Language Fundamentals
What is PFM::C++ Language Fundamentals??
PFM::C++ is a 2-part course (videos + 9 projects) featuring Code Reviews for learning Modern C++ and JUCE in the context of developing audio apps and plugins.
What are the 2 parts of the course?
The first part is a series of video lessons that cover modern C++ and JUCE. These lessons assume no prior knowledge of, or experience with, programming. They progress from absolute beginner to advanced concepts specific to audio development at the end of the course.
Each C++ video has an associated task (a part of a project) to enforce the concepts taught in that video. Code Reviews are an important part of life as a developer on a team, which is one of the reasons I included this process in the course.
Videos are available to watch immediately. The expected pace for viewing is about 20-30 minutes per day. Here’s a short overview of how to view the videos in Gumroad, how to use the Slack workspace, and how the Projects work.
The second part is a series of 9 Projects that you’ll complete and submit for code reviews.
What are Code Reviews?
A Code Review is where other developers looks over your code and provide feedback. Companies use Code Reviews to make sure you aren’t contributing garbage to their products when they hire you as a developer. Code Reviews are a great way to get multiple opinions on what you’ve created. Take a look at the following video showing the review process:
Who is PFM::C++ Language Fundamentals For?
This course is designed for someone who is curious about developing audio software but has a full-time job, or is attending school full-time, or just doesn’t have a lot of time in their day to learn a new skill but wants guided help to get them up to speed as quickly as possible.
PFM::C++ Language Fundamentals is not a ‘Code With Me’ video course.
Programming is learned by doing, not by simply watching or following along with someone who doesn’t make mistakes when they code.
I believe that this guided approach is the best way to turn someone into a self-sufficient, problem-solving developer that can solve any problem thrown their way.
- Getting your computer set up to develop, debug, and test Audio Plugins, including setting up Xcode (Mac) or Visual Studio (Windows), the JUCE Framework, Github and Fork/SourceTree
- A COMPLETE C++ course with over 30 videos to get you fully functional with writing modern C++, including 9 Projects built around the material taught in each C++ video that solidify the concepts presented.
- Code Reviews for each step of the projects!
- 30, 60, or 90 days of 1-on-1 Mentorship via a private Slack Workspace
PFM::C++ Language Fundamentals includes 30 days of 1-on-1 mentorship. Continued Mentorship is available here: https://www.programmingformusicians.com/pfm_membership
C++ For Musicians runs at your own pace. The videos are available immediately. The suggested pace to get through the video content is about 20-30 minutes per day. You’ll set up the projects after you join the Slack workspace. The 9 C++ Fundamentals projects are split up in to 25 project parts. If you complete 1 project part per day, you will complete all 9 projects within the included 30 days of 1-on-1 mentorship.
Mentorship begins immediately upon purchase. You decide how quickly you want to proceed through the material during the included mentorship period.
The 1-on-1 Q&A and mentoring is accomplished via a private Slack Workspace. This workspace also provides group discussions about the course content with the other students.
You’ll have lifetime access to the course content via your Gumroad account.
Experience Days 1-7 of PFM::C++ Language Fundamentals
At the end of Day 7, you’ll have accomplished the following:
- Set up a working development environment on your computer
- Learn how to create GIT repositories for your code.
- Build your first C++ application
- Build your first Audio plugin
- Learn some key C++ Language Fundamentals and start coding
- Experience several Code Reviews of your work from me
- Generate the first sounds out of your audio plugin
- Gain lots of confidence in your ability to turn your ideas into actual working projects.