<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>Holocron</title><description>Jason Duffy writes about software, systems, simplicity, and thoughtful collaboration.</description><link>https://jasonduffy.com/</link><language>en-us</language><item><title>Predicting the Unpredictable</title><link>https://jasonduffy.com/blog/2024-09-27-predicting-the-unpredictable/</link><guid isPermaLink="true">https://jasonduffy.com/blog/2024-09-27-predicting-the-unpredictable/</guid><description>Replacing estimates with data-driven forecasting</description><pubDate>Fri, 27 Sep 2024 00:00:00 GMT</pubDate></item><item><title>Swift Type Erasure</title><link>https://jasonduffy.com/blog/2017-07-23-type-erasure/</link><guid isPermaLink="true">https://jasonduffy.com/blog/2017-07-23-type-erasure/</guid><description>A walkthrough of Swift&apos;s type erasure pattern, using Force wielders to show how to put protocols with associated types into a collection.</description><pubDate>Sun, 23 Jul 2017 00:00:00 GMT</pubDate></item><item><title>The Virtue of Simplicity</title><link>https://jasonduffy.com/blog/2017-02-21-simplicity/</link><guid isPermaLink="true">https://jasonduffy.com/blog/2017-02-21-simplicity/</guid><description>Why simplicity is a choice that takes hard work: complexity smells to watch for and remedies like value types, functional style, and composition.</description><pubDate>Tue, 21 Feb 2017 00:00:00 GMT</pubDate></item><item><title>Design Principle Kata 3 - Liskov Substitution Principle</title><link>https://jasonduffy.com/blog/2016-10-26-lsp/</link><guid isPermaLink="true">https://jasonduffy.com/blog/2016-10-26-lsp/</guid><description>A refactoring kata for practicing the Liskov Substitution Principle, with a rubber-duck example of why composition beats inheritance.</description><pubDate>Wed, 26 Oct 2016 00:00:00 GMT</pubDate></item><item><title>Design Principle Kata 2 - Open/closed Principle</title><link>https://jasonduffy.com/blog/2016-07-03-ocp/</link><guid isPermaLink="true">https://jasonduffy.com/blog/2016-07-03-ocp/</guid><description>A refactoring kata for practicing the Open/closed Principle: making changes by writing new code instead of modifying old code.</description><pubDate>Sun, 03 Jul 2016 00:00:00 GMT</pubDate></item><item><title>Design Principle Kata 1 - Single Responsibility Principle</title><link>https://jasonduffy.com/blog/2016-06-19-srp/</link><guid isPermaLink="true">https://jasonduffy.com/blog/2016-06-19-srp/</guid><description>Introducing a refactoring kata for practicing the Single Responsibility Principle, the first in a series on software design principles.</description><pubDate>Sun, 19 Jun 2016 00:00:00 GMT</pubDate></item><item><title>Playing with FlatMap in Swift</title><link>https://jasonduffy.com/blog/2016-06-04-flatmap/</link><guid isPermaLink="true">https://jasonduffy.com/blog/2016-06-04-flatmap/</guid><description>Exploring what Swift&apos;s flatMap actually does with nested arrays and optionals, including a few surprises along the way.</description><pubDate>Sat, 04 Jun 2016 00:00:00 GMT</pubDate></item><item><title>Colemak: Ergonomic, Unpopular, Less Weird</title><link>https://jasonduffy.com/blog/2016-05-26-colemak/</link><guid isPermaLink="true">https://jasonduffy.com/blog/2016-05-26-colemak/</guid><description>How I learned to touch type in Colemak, why I chose it over Dvorak and Qwerty, and how I made it coexist with pair programming.</description><pubDate>Thu, 26 May 2016 00:00:00 GMT</pubDate></item><item><title>Extrospective: To Pair or Not To Pair</title><link>https://jasonduffy.com/blog/2016-05-13-to-pair-or-not-to-pair/</link><guid isPermaLink="true">https://jasonduffy.com/blog/2016-05-13-to-pair-or-not-to-pair/</guid><description>An introvert&apos;s honest look at two years of full-time pair programming, with research-backed conclusions about when pairing helps and when it hurts.</description><pubDate>Fri, 13 May 2016 00:00:00 GMT</pubDate></item><item><title>First Post</title><link>https://jasonduffy.com/blog/2016-05-04-first-post/</link><guid isPermaLink="true">https://jasonduffy.com/blog/2016-05-04-first-post/</guid><description>The obligatory hello-world post: why this blog exists and what I planned to write about.</description><pubDate>Wed, 04 May 2016 00:00:00 GMT</pubDate></item></channel></rss>