BestPractices My Thoughts: 'Interface' isn't harmful My thoughts about Object Oriented Programming has evolved over the years. Especially in the past 6 months. My development of MicroObjects has caused a lot of thinking about Object Oriented Programming and how
µObjects: Single Style One of the things I've noticed working with multiple devs doing microObjects is that the code generated tends towards a single style. A module can be built in as many ways, or more,
Book Review Book Review: The Nature of Software Development TL;DR: I loved the book. Go read it. 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
UWP UWP: Signing and Verifying Recently I had the joy of busting open the cryptographic documentation to figure out how to sign a file, and verify that signature. There are a lot of documentations for .NET Framework -
microObject µ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
µObjects: Class creation dilemma! Working with µObjects at work and in the examples I've been experimenting with; I've found a recurring conflict of principles. In the early days of learning actual Object Oriented Programming with Fred George
µObjects 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
microoop µObjects: Fluent Types I expect us all to be aware of the anti-pattern Primitive Obsession. If not - there are some quick resources available. Now that we have an idea of Primitive Obsession; I'll give my
µObjects: Code Free Constructors One of the big practices I got from Elegant Objects is the concept of a code free constructor. Your constructor should have zero logic. Let's see why! Always born My favorite reason for
BestPractices µObjects: Being CLEAN Beyond Legacy Code's CLEAN I've read David Bernstein's Beyond Legacy Code and clearly enjoyed it. :) One of the concepts he expands on in the book is "Clean Code". He takes this
TDD µObjects: Being Nonredundant Redundant code is code that changes at the same time for the same reason. Part of object oriented programming is limiting change to a single place. If it changes, it should change in
TDD µObjects: Being Assertive Being assertive is about being self-responsbile. Being assertive is about an object being lazy. This also has the object doing all behaviors for the state it holds. It follows from encapsulation that an
µObjects @ AONW I went to Agile Open Northwest. IT WAS AMAZING! I don't go to a lot of conferences; but this was a wonderful experience. Super friendly, super welcoming, super supportive. I've been developing the
TDD µObjects: Being Encapsulated Encapsulation for objects is, IMO, how well the data is hidden. Encapsulation is only acting via behavior from an object. Never getting data and doing something. A well encapsulated object is also a
TDD µ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
microObject µ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
TDD µObjects: Pizza Shop - Review The Pizza Shop The Start More µObjects New Requirements Calzoned The Final I started the Pizza Shop example to show how to apply µObjects in code; Using a very similar process I do
TDD µ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
20180110 µObjects: Pizza Shop - Calzoned! The pizza shop is expanding it's offerings! CALZONES! We'll do a 1/2 calzone and a full calzone! $8 and $14 respectively. Based on how we did the Medium pizza last time... Not
TDD My Thoughts: Unit Test - Examples I got a tweet from boltyk on twitter asking about a post on types of unit tests. https://t.co/bSV7nDcQ4O @TheQuinnGil I think I have all kind of unit test levels you
TDD µObjects: Pizza Shop new Reqs Pizza's going great! We've got our system in place; we've cleaned up our code! We have µObjects everywhere! In my ideal; there aren't enough tests. All behavior is still covered; test coverage is
TDD µObjects: Pizza Shop - More µObjects We return to our pizza shop to refactor. I like to check out my "TODO" or "Smelly" comments and see what I can clean up. I normally go for
µObjects: Pizza Shop I've been trying to find a kata or small project that will help show the process and the value of applying µObjects to a code base. I've written about how µObjects hit all
Book Review Book Review: Beyond Legacy Code Read It It's a fantasic book; and you should read it. Beyond Legacy Code This is one of the books that will help developers understand the best practices that lead to quality code.
One Year I'm writing this post quite a ways in advance, Oct 05 2017. But I've got enough queued up that this is schedule for Dec 31, 2017. This will be 1 year since my