Book Review: The Nature of Software Development

TL;DR: I loved the book. Go read it. [https://pragprog.com/book/rjnsd/the] -------------------------------------------------------------------------------- Over the past few years working with a team of XP devs who've been using the XP practices for well over a decade each has taught me a lot. These amazing colleagues…

µObject Poker: Scoring a Hand

I found I'm not a huge fan of the video. I don't tend to put a lot of time and effort into each post; it's an opportunity for me to share research and experimentation with the world; as well as give myself a searchable…

M:TG Game - Event Bussing

I've been pondering how to do some µObjects in a more intelligent system for a while. I'm going to try to use Magic: The Gathering for this. Much like the poke one; the idea here is to explore µObjects and how they can be applied in…

µObjects: Fluent Types

I expect us all to be aware of the anti-pattern Primitive Obsession. If not - there [http://wiki.c2.com/?PrimitiveObsession] are [https://refactoring.guru/smells/primitive-obsession] some [http://blog.thecodewhisperer.com/permalink/primitive-obsession-obsession] quick [http://blog.ploeh.dk/2011/05/25/DesignSmellPrimitiveObsession/] resources [https://lostechies.com/jimmybogard/2007/12/…

µObjects: Being Loosely Coupled

Loose coupling is about how much a class knows about the objects it's using. The less a class knows about the components it is using; the better the decoupling. Or they are loosely coupled. How do µObjects fair with being loosely coupled? That's what I want…

µObjects: Being Cohesive

Cohesion for objects is how well the behaviors in the class belong together. Some very non-cohesive behaviors would be multiplying two numbers and splitting a string. Multiplying and Raising to a power can be very cohesive behaviors. How do µObjects do cohesion? That's what this is about. The…

µObjects: Pizza Shop - Review

The Pizza Shop The Start [https://quinngil.com/2018/01/07/uobjects-pizza-shop/] More µObjects [https://quinngil.com/2018/01/08/uobjects-pizza-shop-uobjected/] New Requirements [https://quinngil.com/2018/01/09/uobjects-pizza-shop-new-reqs/] Calzoned [https://quinngil.com/2018/01/10/uobjects-pizza-shop-calzoned/] The Final [https://quinngil.com/2018/01/11/uobjects-pizza-shop-final-changes/] I started the…

µObjects: Pizza Shop - Final Changes

These are the final changes for our Pizza Shop. I think a few will be interesting to implement; but nothing stands out as a "how would I...?". µObjects make it very simple and quick to get new functionality in cleanly. One of the changes is the ability to…