Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

YouTube

Zen and the Art of Code Life Cycle Maintenance

NDC Conferences via YouTube

Overview

Save Big on Coursera Plus. 7,000+ courses at $160 off. Limited Time Only!
Explore the intricate relationship between software quality and philosophical concepts in this thought-provoking NDC Oslo 2023 conference talk. Delve into the challenges of defining and measuring software quality, drawing parallels with Robert Pirsig's "Zen and the Art of Motorcycle Maintenance." Journey through the territories of tests, types, and static and dynamic analysis while examining the most crucial aspects of software quality and how they interact. Discover how concepts like correctness, applicability, reliability, and complexity influence software development. Learn about various testing techniques, including code coverage, property-based testing, and manual testing, as well as the importance of error handling and type safety. Gain insights into functional programming techniques, simplicity in code, and the benefits of lowering complexity. Conclude with a meditation on the formula for success in software development and engage in a Q&A session to further explore these concepts.

Syllabus

Introduction
About Phil Nash
Two types of quality
CIQ
Application and correctness
The alignment trap
correctness and applicability
correctness and reliability
code coverage
Branch coverage
Propertybased testing
Fast testing
Manual testing
Error paths
C example
Nullable types
Result types
Logic errors
String checks
Ada
Contract Check
Functional Programming Techniques
Talking to Simplicity
Simple and Complex
Common Causes of Complexity
Benefits of Lowering Complexity
Formula for Success
Reasonability Efficiency
Systems languages
C Plus
Ternary Operator
Property Based Testing
Code Analysis
Michael Feathers
Meditation
Questions

Taught by

NDC Conferences

Reviews

Start your review of Zen and the Art of Code Life Cycle Maintenance

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.