×

CppCon's video: Interview With Phil Nash Accelerated TDD: For More Productive C - CppCon 2024

@Interview With Phil Nash (Accelerated TDD: For More Productive C++) - CppCon 2024
Register Now for CppCon 2024: https://cppcon.org/registration/ Join Phil Nash and Kevin Carpenter from September 15th - 20th at CppCon 2024 Aurora, Colorado, to enjoy the many and varied inspirational talks! --- Interview With Phil Nash (Accelerated TDD: For More Productive C++) - CppCon 2024 Kevin Carpenter from @cppevents interviews Phil Nash ahead of his two-day onsite training course "Accelerated TDD: For More Productive C++" Course Description We all know that writing tests for our code is “what we should do”, and maybe we’re even doing that already. But it feels like extra busy-work that slows us down – and they hardly ever catch any bugs anyway… Maybe we’ve even tried TDD, and felt that it was just adding even more ceremony to the problem with no real advantages. But the advantages are definitely there! We just need a good grounding in what TDD _actually_ is (and isn’t) and how to do it properly – especially in the context of C++, which brings its own idiosyncrasies and bottlenecks to the matter. That’s what this workshop aims to be. Whether you’ve never written a test before, or you’ve had some mileage with TDD already, be prepared to ratchet up your productivity by thinking about things in new ways and gaining more approaches to breaking down problems in sustainable ways. Prerequisites - Be comfortable with the basics of C++. Being an expert is not required - A laptop with a reasonably modern OS. - A compiler capable of running C++11 (ideally gcc, clang or VC++) – don’t worry if it’s not what you use in your day job. - A development environment you’re comfortable with. - An open mind and motivation to find better ways of doing things. Course Topics We’ll cover the following topics, but not necessarily exactly in this order: FIRST DAY Why “Accelerated”? Why test? What is a test? - Type of test (unit, integration, system, regression, acceptance…) - Roles of a test - How testing makes us go faster Why test first? - Coverage = Courage - Design pressures - Mental modes - Focus and flow - Never more than 5 mins from green How to TDD - The TDD Cycle - The Art and Craft of TDD - Are we done yet? Relevant Design Principles - Separation of Concerns - Single Responsibility - Cohesion - Low/ Loose Coupling - SOLID? Growing Software, Guided By Tests - Putting it all together - Treat test code like production code - Negative paths - Avoiding brittle tests - Pruning tests - Dependent Tests - Tests as documentation SECOND DAY Decelerated TDD - Slowing down to speed up - Deliberate Practice Pain points and Limitations - Slow running tests - Flakey Tests - Brittle tests revisited - Testing the implementation - Orthogonal concerns (e.g. logging, error handling) - Premature Generalisation - Beware a false sense of security - Getting legacy code under test - Getting team buy-in - The Transformation Priority Premise Beyond TDD - BDD - ATDD - Property based Testing - Mutation Testing - Fuzz Testing - Treat test code like production code, except when you shouldn’t - Mocking - Risk Planes Next Steps - Keeping the momentum going - Pairing - Forming habits We’ll work through several demos and exercises together and will often work in pairs. For further details visit https://cppcon.org/class-2024-accelerated-tdd/ --- Course Instructor - Phil Nash Phil Nash is the original author of the C++ test framework, Catch2, and composable command line parser, Clara. As Developer Advocate at SonarSource he’s involved with SonarQube, SonarLint and SonarCloud, particularly in the context of C++. He’s also a member of the ISO C++ standards committee, organiser of C++ London and C++ on Sea, as well as co-host and producer of the Cpp.chat and No Diagnostic Required podcasts. More generally Phil’s an advocate for good testing practices, TDD and using the type system and functional techniques to reduce complexity and increase correctness. He’s previously worked in Finance and Mobile and offers training and coaching in TDD for C++. --- Videos Filmed & Edited by Bash Films: http://www.BashFilms.com YouTube Channel Managed by Digital Medium Ltd: https://events.digital-medium.co.uk --- Registration for CppCon: https://cppcon.org/registration/ 100+ Sessions Over 5 Days! Pre and Post Con Workshops/Classes/Course and Much More! Join Us Onsite!

36

1
CppCon
Subscribers
153K
Total Post
1.6K
Total Views
293.1K
Avg. Views
11.3K
View Profile
This video was published on 2024-08-22 00:14:00 GMT by @CppCon on Youtube. CppCon has total 153K subscribers on Youtube and has a total of 1.6K video.This video has received 36 Likes which are lower than the average likes that CppCon gets . @CppCon receives an average views of 11.3K per video on Youtube.This video has received 1 comments which are lower than the average comments that CppCon gets . Overall the views for this video was lower than the average for the profile.CppCon #cppcon #cppprogramming #cpp #programmingcourse #cpp #computer #coding #cpplearning #code #software #softwaredevelopment #technicalcourses #cplusplusprogramming #cplusplus has been used frequently in this Post.

Other post by @CppCon