Technical Practices: Low Coupling

Low coupling can mean a few flavors of things depending on your context. My general definition of Low Coupling is "Not knowing what it is, just what it does". This allows us to interact with objects without knowing the underlying implementation, and unable to make any assumptiosn about…

Quick: MicroObjects and Json

A question on twitter has moved forward doing an example of serialization and deserialization. This is gonna be a pretty quick example and blog post as this is being done so that I can provide a code sample as my answer to the asker! I'm going to use…

Technical Practices: No Primitives

No Primities. My idea with not using the default data types centers around them being data storage. Working on object oriented langauges, we don't need to be concerned about the raw data storage mechanism. > We deal with objects that communicate with each other, not raw data we…

Beneficial Results: Code Reuse

I don't remember exactly where or who, but writing re-usable code was impressed upon me as an important thing I now completely disagree with that. > Do not write reusable code. One of the worst things you can do when writing code is to make it "re-usable&…

Teach Yourself MicroObjects: Output the Data

Encapsulation - it's a huge part of what allows us to be highly effective developers. It's what MicroObjects is about. Encapsulation is the highest thing to strive for when striving to write good code. If we encapsulate our data so effectively that we can never just…

Teach Yourself MicroObjects: Add Two Ints

I'm working on ways I can share the practices and mindset that allows me to create MicroObjects. One of the suggestions I've gotten from a co-worker, John [https://twitter.com/jeboal], was to create as simple of a project as possible and show my steps to…

Book Review: Java by Comparison

I got Java By Comparison [https://java.by-comparison.com] from Amazon [https://www.amazon.com/Java-Comparison-Become-Craftsman-Examples/dp/1680502875/] a while ago. I wasn't impressed with what my initial page flipping showed me. I skimmed it and largely evaluated based on name and example code. Feel free to ignore…

Technical Practices: Never Return Your Data

No Getters That's the normal form of this technical practice. No Getters There's some uncertainity around what "No Getters" means. OK, there's two versions of it. Yegor Bugayenko in Elegant Objects Vol. 1 [https://quinngil.com/2017/08/06/book-review-elegant-objects-vol-1/] says, >…