Comments:"C++ Grandmaster Certification [CPPGM]"
URL:http://www.cppgm.org/index.html
Overview
Participants in this free online course will develop their own C++ compiler, standard library, and toolchain with the following features:
- Compliant with the latest 2011 standard (C++11)
- Written entirely in C++ with no third-party dependencies
- Code generator targeting Linux x86_64
- Full toolchain including preprocessor, assembler, and linker
- Will build with itself (self-hosting) and pass provided conformance test suite
Prerequisites
There are no hard prerequisites; the course is open to all. However it would be beneficial if the participant has:
- 2+ years experience working on a C++ codebase or similar language (Java, C#, C)
- taken a typical undergraduate Compilers course
- read the dragon book or similar
- developed a compiler for a toy language
- coded and debugged at an assembly level
- basic Unix/Linux experience
Outcomes
As a primary outcome the participant will demonstrate:
- a complete, exhaustive knowledge of the C++ language and C++ standard library
Secondary outcomes are:
- the ability to cope with large-scale software implementation
- an understanding of language design and compiler construction
- a knowledge of Linux kernel-userspace interface and operating system
- Intel 64 assembly programming/debugging and computer architecture experience
Rewards
Course graduates will receive:
- the title Certified C++ Grandmaster [CPPGM]
- a letter of recommendation detailing their achievement
- access to a course graduate exclusive professional networking group
Course Structure
The course is broken down into a linear series of milestones that build upon one another.
Each milestone has an associated starter kit containing:
- skeleton code
- design and reference documentation
- a test suite
- a support forum
To complete a milestone, the participant submits their codebase for automated testing and peer review.
Upon completion of each milestone, access will be granted to the next.