Classes & TalksRecommended BooksBlogsAncient Blogs

Old ArticlesSubscribeInvite Me!Clean Code GearContact

Classes

Clean Code

Duration: 2-3 days.
Audience: Programmers of any experience.

In this course Uncle Bob teaches the basics of Clean Code as described in the Clean Code book.

More Info...

Clean Architecture

Duration: 2 days.
Audience: Programmers, leads, architects.

In this course Uncle Bob teaches the basics of Clean Architecture as described in the Clean Architecture book.

More Info...

SOLID Software Design

Duration: 2-3 days.
Audience: Programmers of any experience.

In this course Uncle Bob teaches the basics of the SOLID and Component principles as described in Agile Software Development: Principles, Patterns, and Practices.

More Info...

Test Driven Development

Duration: 2-3 days.
Audience: Programmers of any experience.

In this course Uncle Bob teaches the fundamental skills of TDD (Test Driven Development), and Refactoring; essential disciplines for any software craftsman.

More Info...

Advanced Test Driven Development

Duration: 2-3 days.
Audience: Programmers with 1-2 years using TDD.

In this course Uncle Bob guides developers who have gained an initial competence with TDD towards true mastery of the discipline.

More Info...

Clean Agile

Duration: 1 day.
Audience: Programmers, Testers, Leads, and Managers.

This is Agile starting at the 30,000' level, and gradually coming down to beginning basics.

In this course Uncle Bob introduces the basics of Agile to executives, managers, analysts, testers, and programmers alike.

More Info...

Agile Immersion

Duration: 3-5 days.
Audience: Programmers, Analysts, Testers, leads.

Agile, where the rubber meets the road. This is a gruelling boot-camp-like session. Students are taught Agile by doing it. Lectures are kept to a minimum. Requirements, tests, and code are kept to a maximum.

More Info...

Talks

Expecting Professionalism

60-90 minutes.

In this talk, Uncle Bob transports you into an alternate reality where he is your new CTO. This is what he expects from you. As you listen, notice how reasonable these expectations are to customers and users. Notice also how impossible they appear to programmers.

Video...

Solid Principles

90-120 minutes.

In this talk Uncle Bob provides an introduction and overview of the SOLID principles of software design. They are:

SRP: The Single Responsibility Principle.
OCP: The Open Closed Principle.
LSP: The Liskov Substitution Principle.
ISP: The Interface Segregation Principle.
DIP: The Dependency Inversion Principle.
Video...

Component Principles

90-120 minutes.

In this talk, Uncle Bob introduces the history and utility of components, and provides an overview of the three principles of component cohesion:
REP:The Release-Reuse Equivalence Principle
CCP:The Common Closure Principle
CRP:The Common Reuse Principle

And the three principles of component coupling:
ADP:The Acyclic Dependencies Principle
SDP:The Stable Dependencies Principle
SAP:The Stable Abstractions Principle

Video...

The Programmers Oath

60-90 min.

We are the modern scribes. Nothing happens in our society without us. And yet we have no ethical standards or foundation for our profession.

In this talk Uncle Bob addresses this fundamental problem, and lays out his concept for the ethics of software development.

Video...

The Future of Programming

60-90 min.

This is a playful talk, that concludes with a stark warning. In it, we talk about how programming began, how it progressed, where it is today, and where it is likely to be headed.

Video...

Architecture - The Lost Years

60-90 min.

What is architecture? We knew in the '90s; but then came the WEB and... In this talk, Uncle Bob revives that old notion of architecture and describes, in detail, the principles and rules in the Art of Drawing Lines.

Video...

Clean Code - Functions

60-90 min.

In this talk Uncle Bob talks about what makes functions clean. He addresses the size of functions, the content of functions, the names of functions, the arguments of functions, and just about everything else that can be crammed into an hour long talk about functions.

One thing is sure. After you've listened to this talk, you'll never think about functions the same way again.

Video...

Test Driven Development

60-90 min.

This is an overview and introduction to TDD (Test Driven Development). In this talk Uncle Bob explains what TDD is and provides the cost/benefit motivation for why it is important.

Video...

Functional Programming - The Failure of State

60-90 min.

Functional Programming. Is it the future? Are non-functional approaches becoming obsolete? In this talk Uncle Bob walks through the basics of Functional Programming and discusses the pros and cons for adoption.

Video