http://www.nichesoftware.co.nz/2021/07/10/magpie-driven-development.html Toggle navigation Niche Software * Blog * Software * Presentations * Articles * [twitter] * [github] * [rss] Magpie Driven Development (MDD) [icon-calen] Saturday 10 July 2021 [icon-tag] other-methodologies Imagine this: Your team has a big release date coming up next month. This is a big deal, as you're releasing a bunch of new features just prior to the industry's biggest trade show. This morning you found out to your surprise that one of your senior developers has just about finished developing a critical new web-service. Using Rust. Literally every other component in your back-end systems has been written in C#, running on the .NET Stack. Much of the foundation work your team has done over the last six months has been to migrate.NET 5, with some components already successfully running on .NET 6 in your test environments. This migration has been driven both by a desire to reduce costs, by switching to Linux servers, and by a desire to position your team well for the future. In other words, you've doubled down on .NET as your technology stack. Investigating, you find out that there's no compelling business reason for the component to be written in Rust. Not much of a technical reason either. It's just that the developer involved really wanted to learn the Rust language and related ecosystem of tooling, and they figured this work project was the best place to do that learning. Magpie Driven Development is when you have developers who want to use something new for no better reason than it's shiny and fun. Examples include someone using an unexpected programming language to complete some feature work, as illustrated here; someone picking up a research paper from MIT and using the associated demonstration code as the basis for their design; or someone choosing to use a different library for a given task than the one the team has standardized on. It's key to recognize that MDD occurs when developers indulge purely because they want to try something new. There's little or no benefit to the product group or the wider team, and the change is often shoehorned into place regardless of the appropriateness of the solution. Often MDD happens covertly - and senior developers get away with this more often than juniors. Background: The Australian Magpie is a highly intelligent bird species commonly found in both Australia and New Zealand. They're known to be highly territorial: I have vivid memories of being attacked by the Magpies living on my grandparent's farm. They seemed to like going for my knees. Magpies also collect shiny things for their nests. Comments Please enable JavaScript to view the comments powered by Disqus blog comments powered by Disqus Next Post Gesticulation Driven Development (GDD) 24 Jul 2021 Prior Post Sharpen The Saw - July 2021 03 Jul 2021 Related Posts Gesticulation Driven Development (GDD) 24 Jul 2021 Rockstar Driven Development (RDD) 26 Jun 2021 Distraction Driven Development (DDD) 12 Jun 2021 Promotion Driven Development (PDD) 29 May 2021 Complaint Driven Development (CDD) 15 May 2021 Profanity Driven Development (PDD) 01 May 2021 Hype Driven Development (HDD) 17 Apr 2021 The Other Development Methodologies 03 Apr 2021 Archives July 2021 2021 [icon-mail]support[at]nichesoftware[dot]co[dot]nz All content (C) 2021 Bevan Arps, Niche Software. Disclaimer: These are my own personal opinions and do not represent anyone elses view in any way. Powered by Jekyll, Bootstrap, Psake, and PowerShell.