// JSON-LD for Wordpress Home, Articles and Author Pages. Written by Pete Wailes and Richard Baxter. // See: http://builtvisible.com/implementing-json-ld-wordpress/

Archive for March, 2010

Encapsulation, It Isn’t Just For Your Public Interface

Tuesday, March 23rd, 2010

Encapsulation, one of Object Orientation’s (OO) “Big Three” (or four if you include composition), is the concept most often forgotten when I ask an interview candidate to define the key tenants of OO.  Giving the benefit of the doubt, perhaps it is considered “obvious” and hence not necessarily related to OO design in the person’s mind.  Once I bring it up though, there is usually agreement that it is an important aspect to achieving significant value from OO design.

Classically, encapsulation, also called information hiding, “serves to separate the contractual interface of an abstraction and its implementation.”1 The idea is that the user of the functionality only knows about the public interface (contractual interface) and has no knowledge, nor any ability to tie itself, to the implementation.  The implementation includes both data representation and, effectively, algorithm.

Many times I’ll get an alternate definition; essentially the respondent will define encapsulation as, “as an approach which allows an object’s behavior to be called without the caller having knowledge of how the behavior is implemented.”  This seems very close to the classical definition but misses the key point of “contractual interface.”

I could argue that when any method is called the caller doesn’t have knowledge of how the method is implemented; it just gets a value back.  The missing aspect, the key aspect, is the constraint regarding which methods the caller may call, e.g. the public interface.

What started me on this topic was a recent conversation with a peer regarding read-only objects.  Before I get into specifics, let me baseline the traditional encapsulation approach in a typical object.

(more…)

Cut Waste, Not Costs

Monday, March 15th, 2010

As I read more and more about the Toyota debacle I’m struck by an apparently myopic management drive to cut costs.  In the case of Toyota it appears that cost cutting extended into quality cutting.  A company once known for superb quality had methodically reduced that aspect of their output.  This isn’t just conjecture; it seems that people inside the company had been aware of a decline in quality due to a focus on reducing costs.1 Is there a general lesson to consider?

I believe the failure is one of misplaced focus. The focus when Toyota began cutting costs was to remove waste.  That waste could be found throughout their manufacturing processes.  Wasted materials, productivity, tooling, and equipment were all identified as Toyota’s management and workers struck out on a journey to reduce waste and improve productivity.  They ushered in a set of practices that others would soon adopt.

Head back to the 1950′s and you’ll find Taiichi Ohno2 hard at work addressing myriad manufacturing shortcomings at Toyota.  Mr. Ohno is really the father of lean manufacturing and just-in-time inventory management.  He didn’t name them as such.  He was just trying to remove waste from the entire manufacturing process.  By the late 1990′s these concepts had become standard operating procedure at many firms.

It makes sense that a business would focus on reducing waste.  Although it may require effort to remove waste without reducing productivity, overall one would expect a leaner process to have an overall efficiency gain.  It would also seem that quality does not benefit from waste.  After many years of experience with these principles, companies have found that an approach of using only the resources that are needed when they are needed provides a sound basis for their operations.  So what happened at Toyota?  They apparently went beyond cutting waste.

(more…)

Our Odyssey of the Mind Concludes for the 2009-2010 Season

Tuesday, March 9th, 2010

This was the first year that Sarah and Michael were on separate teams.  Sarah and her team chose to do this year’s classics problem, Discovered Treasures, while Michael and his team chose this year’s technical/performance problem, Return to The Gift of Flight.  The older team, being high-schoolers, competed in Division III.  Michael and his teammates were in Division II.

The  teams worked hard.  Lisa coached both teams so she had twice the fun from previous years.  The house also contained twice the cardboard and other assorted paraphernalia as usual.  As the year progressed it was clear that the two problems required very different strategies in terms of planning and execution.

(more…)

Two Teams, Two Divisions, Two problems, One day

Friday, March 5th, 2010

It’s that time of year again – Odyssey of the Mind Regionals.  This year Sarah and Michael are on different teams and Lisa is coaching both!  The crunch to the deadline is twice as frantic.  In celebration I was motivated to take a few minutes to reflect on the relative peace that has descended on this competition eve.

Here is my poem to honor all the hard working teams and their incredible coaches:

Twas the night before regionals and all through our home
Not a creature was stirring from cellar to dome.
The sets were all folded and ready to pack,
Plus a few rolls of duct tape nearby in a sack.

The team mates were nestled all snug in their beds,
While visions of Omers danced in their heads.
And mamma in her ‘kerchief, and I in my cap,
Were hunting for the elusive competition site map.

To move through our house was unequivocally tough,
As we hunted and searched through piles of stuff.
Every surface was covered no matter the place,
Like chairs and counters and a telephone base.

(more…)