YoVDO

Programming Devices and Services with P

Offered By: Paul G. Allen School via YouTube

Tags

Programming Languages Courses Software Engineering Courses Formal Methods Courses Concurrency Courses

Course Description

Overview

Explore the P programming framework for designing, implementing, and validating event-driven asynchronous systems in this 52-minute talk by Shaz Qadeer. Gain insights into how P incorporates deep modeling and specification techniques into asynchronous programming, allowing systematic testing and debugging of applications before deployment to prevent difficult-to-fix Heisenbugs. Learn about P's real-world applications in Microsoft products, including USB drivers, Microsoft Office, Azure services, and autonomous robotics research. Discover key ideas behind P, its workflow, and open research problems. Delve into topics such as concurrency, reactivity, failure handling, modeling, and programming techniques. Examine P# and its code structure, asynchronous systems, monitors, and various search and execution strategies including depth-first search, random sampling, partial order reduction, and symbolic execution. Understand how P addresses the challenges of the Heisenberg uncertainty principle in distributed systems and its potential for improving software reliability.

Syllabus

Introduction
Devices and Services
concurrency reactivity and failure
Heisenberg uncertainty principle
Azure storage example
Azure integration tests
Heisenbergs logs
P is an attack
P programmer workflow
Modeling and programming
Successes
PSharp
Code Structure
Asynchronous Systems
Monitors
DepthFirst Search
Value Proposition
Delaying Scheduler
Prioritizing Search
Randomization
Random Sampling
Partial Order Reduction
Symbolic Execution
Compositional Reasoning


Taught by

Paul G. Allen School

Related Courses

A Beginner’s Guide to VCS and Git
Packt via FutureLearn
面向对象技术高级课程(The Advanced Object-Oriented Technology)
Peking University via Coursera
IBM AI Developer
IBM via Coursera
Migrating to the AWS Cloud
Amazon Web Services via FutureLearn
AWS Networking Practical Approaches
Amazon Web Services via AWS Skill Builder