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
Moralities of Everyday Life
Philosophy, Science and Religion: Religion and Science
Programming for Everybody (Getting Started with Python)
Organize and share your learning with Class Central Lists.
View our Lists Showcase
Explore an innovative approach to on-demand analysis for higher-order languages, focusing on precise call graph construction and scalable bug detection in complex code bases.
Explore automated extraction of grammar optimization rule configurations for metamodel-grammar co-evolution, reducing manual effort and enabling fully automated migration processes.
Explore a lightweight generator composition concept using symbol tables for heterogeneous modeling languages, enabling seamless code generator synchronization and enhancing language composition capabilities.
Explore the impact of Large Language Models on programming, artificial languages, and CS education in this thought-provoking talk by Crista Lopes.
Explore nanopass attribute grammars for managing compiler complexity, enabling type-safe language versioning and transformation composition in feature-rich language implementations.
Explore simplified algorithms for Octagon domain closure, featuring elegant proofs, efficient computations, and improved abstract transformers for affine assignments in program analysis.
Explore a methodology for reusing and integrating recommenders in modeling tools, addressing language, tool, source, and item dimensions. Learn about IronMan plugin for automating integration.
Explore techniques for scaling machine learning workloads across accelerators, focusing on partitioning, parallelism, and programming language concepts to optimize performance and hardware utilization.
Explore Hydroflow, a Rust-based dataflow runtime enabling correct program transformations for distributed systems. Learn about refactoring, replication, and partitioning techniques for optimizing distributed programs.
Explore innovative approaches to improve type error messages in constraint-based type inference systems, focusing on data flow and subtyping constraints to enhance programmer understanding.
Learn to verify complex concurrent programs using Civl's layered refinement approach. Master techniques for simplifying proofs, enhancing maintainability, and scaling verification of advanced concurrent systems.
Explore string solving techniques for software verification, focusing on theory, implementations, and applications in programming languages and security analysis.
Explore automated datastructure verification techniques using unfoldings and SMT solving. Learn foundations, FO-completeness, and applications in program verification.
Explore key principles for leveraging machine learning in program synthesis, examining challenges at the intersection of programming languages, software engineering, and AI.
Explore type-driven abstractions for probabilistic modelling, covering discrete probability and quasi-Borel spaces. Gain hands-on experience through accompanying exercises for self-study.
Get personalized course recommendations, track subjects and courses with reminders, and more.