Refactor Legacy Code: Pass The Bigger Thing

Working in legacy code makes it clear how important refactoring is to maintainability. I'll go so far with the importance of Refactoring to say, "If the code isn't refactored, it isn't maintainable." Clearly I think this is a huge thing. One of the definitions of "Legacy Code&…

Refactor Legacy Code: Reduce DataBags

What is a DataBag? I consider a databag any object that primarily acts as transportation for data. In C++, this would be a struct. Ignoring any associated functions, the data's exposed and being passed around. Java would represent a databag by a class with primarily get/set methods around data.…

Antipattern: UI Databinding Android

This is me going through the Android recommendations on how to do databinding. As with A LOT of practices that increase the complexity and harm maintainability; databinding and the recommendations enable, perceived, QUICK development, but it has such a high cost afterwards; there WILL be re-writes. It won't be refactorable…

Antipattern: UI Databinding

I started this EARLY into my adventures gettign to understand what Object Oriented Programming is. The UI is always a rough part of the experience. I found some effective ways to deal with it. My latest way is to have the UI do nothing. There are ways to make it…

Technical Practice: No Inheritance

I've written before about the technical practice of composition over inheritance but what about the idea that we have NO inheritance? I use inheritance VERY infrequently. I have two cases where I use inheritance. Only when there is clear duplication between classes. I'd have to copy and paste the same…

Patterns: Chain of Responsibility

The Chain of Responsibility is one of the major patterns I use in my MicroObject projects. When I have a sequence of events, applying the practices forces things into a very narrow set of forms. I've found one that I feel is the clearest, cleanest, and most inline with the…

The UI - It Does Nothing!

The UI should have no logic That's not strong enough. THE UI MUST DO NOTHING! That's better. The UI is the edge of our system. The edges of our system are hard to test. They interact with things that are not ours. We don't control them and we can't ensure…

Two Years

I've been blogging for two years now. Well... Nearly two years as I write this on Thanksgiving. :) Last year I was in a really good groove cranking out posts. I had a lot fo really new stuff for me. This past 1/2 year has been a bit of a…

Doesn't Affect me

I'm not one to be opening my mouth about these types of things. Let's get that our there right now: I'm super unlikely to identify any of these concerns I'm not gonna be affected if nothing changes My lack of being bothered has zero impact that others are I want…

Tool impact on Developer Discipline - PowerMock

There's a lot of tools that exist to make what developers to easier to do. If it's something we do a lot, we tend to find ways to have something do it for us. I've done it. I'll probably do it again. I built a little tool to automate the…