Courses from 1000+ universities
Buried in Coursera’s 300-page prospectus: two failed merger attempts, competing bidders, a rogue shareholder, and a combined market cap that shrank from $3.8 billion to $1.7 billion.
600 Free Google Certifications
Psychology
Information Technology
Digital Marketing
AP® Microeconomics
Let's Get Started: Building Self-Awareness
Dino 101: Dinosaur Paleobiology
Organize and share your learning with Class Central Lists.
View our Lists Showcase
Learn to create C++ automated refactoring tools using Clang, scaling expert knowledge and ensuring best practices across large codebases. Discover practical applications for improving code quality efficiently.
Explore Class Template Argument Deduction (CTAD) in C++17, its benefits, controversies, and practical applications. Form your own opinion on this divisive language feature.
Explore C++23 std::mdspan's efficiency as a zero-overhead abstraction for multi-dimensional arrays through matrix and image operations, comparing assembly output to low-level implementations.
Explore plug-in architecture in robotics, enhancing system functionality without altering core code. Learn implementation techniques inspired by ROS for flexible, extensible robotic software design.
Explore a new open-source Linux technology for precise C++ object memory profiling, enabling efficiency improvements without code modification. Learn two approaches for object introspection with practical examples.
Explore complexities of C++ libraries and progress towards standardized dependency management. Learn about metadata files for prebuilt libraries and a roadmap for defining C++ library standards.
Explore strongly-typed units in C++ for digital audio processing. Learn to prevent API and math mistakes using user-defined types, conversion operators, and operator overloading. Examine the mp-units library proposal.
Explore advanced C++ concurrency features in Concurrency TS2, including Synchronized Value, Safe Reclamation, Bytewise Atomic Memcpy, and Asymmetric Fence. Learn their applications in lock-free and low-latency programming.
Explore linkers, loaders, and shared libraries in Windows and Linux. Gain insights into binary layouts, symbol visibility, and C++ build differences across platforms.
Explore the complexities of noexcept in C++ function contracts, its impact on testing, and potential alternatives for better integration with contract checking in C++26.
Explore the powerful applicative pattern in C++, learning its uses in optionals, ranges, futures, and more. Gain insights to write simpler, composable code beyond monads and functors.
Explore C++ initialization methods, their nuances, and best practices. Learn to choose appropriate forms for clearer, more robust code in various contexts, including template scenarios.
Explore six implementation approaches for a math expression calculator in C++, comparing runtime and static polymorphism, smart pointers, templates, and C++20 concepts.
Explore non-virtual polymorphism in C++, covering std::any, std::variant, std::tuple, and CRTP. Discover code examples and modern techniques for handling diverse types without inheritance.
Explore lessons from implementing a Common Package Specification for C/C++. Learn about challenges, solutions, and the potential for improved interoperability between build systems and package managers.
Get personalized course recommendations, track subjects and courses with reminders, and more.