Episode 59: FOSS, Mentorship, and Doing Great Work
Katherine Druckman and Doc Searls talk to Travis Carden and Petros Koutoupis about maintaining open source projects, mentoring contributors, Drupal, and automated testing.
(42s): Intros, subscribe to our newsletter, and buy our swag. ;)
(1m 38s): Who IS Travis Carden?
(4m 36s): Maintaining an open source project and mentoring contributors.
(8m 13s): Drupal's origins and evolution.
(18m 57s): Impressive Drupal examples.
(24m 49s): Mentorship and Drupal.
(31m 24s): Intro to Orca, the Drupal testing tool.
(33m 17s): Open sourcing Orca.
(48m 33s): Basics of automated testing.
(57m 35s): Automated testing strategy.
Special Guests: Petros Koutoupis and Travis Carden.
- acquia/orca: A tool for testing a company's software packages together in the context of a realistic, functioning, best practices Drupal build — ORCA (Official Representative Customer Application) is a tool for testing a company's Drupal-adjacent software packages. It ensures their cross compatibility and correct functioning by installing all of them together into a realistic, functioning, best practices Drupal build and running automated tests and static code analysis on them. Its guiding design principle is to use company packages as a customer would. It installs the latest recommended versions via Composer and performs no manual setup or configuration.
- Liskov substitution principle - Wikipedia — Substitutability is a principle in object-oriented programming stating that, in a computer program, if S is a subtype of T, then objects of type T may be replaced with objects of type S (i.e., an object of type T may be substituted with any object of a subtype S) without altering any of the desirable properties of the program (correctness, task performed, etc.). More formally, the Liskov substitution principle (LSP) is a particular definition of a subtyping relation, called (strong) behavioral subtyping, that was initially introduced by Barbara Liskov in a 1987 conference keynote address titled Data abstraction and hierarchy.
- Drupal Cloud: Acquia CMS - YouTube — Preview of Acquia CMS.
- Test Driven Development: By Example: Beck, Kent: 8601400403228: Amazon.com: Gateway — Travis's recommendation - A great resource for anyone getting started driving their own development or struggling "where the rubber meets the road". It's hands-on and practical.
- xUnit Test Patterns: Refactoring Test Code (Addison-Wesley Signature Series (Fowler)) 1, Meszaros, Gerard, eBook - Amazon.com — Travis's recommendation - This is the most comprehensive and authoritative book I know of on unit testing--for those who want to get really good at it. It's a long read at 833 pages, but it covers most issues you're likely to encounter on your way to proficiency. It's organized in such a way that it can be used as a cookbook or pattern library even if you don't read it straight through.
- Clean Code: A Handbook of Agile Software Craftsmanship: Robert C. Martin: 9780132350884: Amazon.com: Books — Travis's Recommendation - This would be my top recommendation for its balance of breadth, comprehensiveness, length, and accessibility. It's companion book The Clean Coder: A Code of Conduct for Professional Programmers, though on a little different topic, is also highly recommendable. Both were highly formative for me. The more recently published Clean Architecture: A Craftsman's Guide to Software Structure and Design in the same series is also excellent.