85
El síndrome de Niggle, la orientación a objetos, y la Familia de Juan Carlos I Jorge Uriarte Aretxaga @jorgeuriarte http://www.slideshare.com/gailen/

Sindrome de Niggle CAS2015

Embed Size (px)

Citation preview

Page 1: Sindrome de Niggle CAS2015

El síndrome de Niggle,la orientación a objetos, yla Familia de Juan Carlos I

Jorge Uriarte Aretxaga@jorgeuriarte

http://www.slideshare.com/gailen/

Page 2: Sindrome de Niggle CAS2015
Page 3: Sindrome de Niggle CAS2015

“La Familia de Juan Carlos I”, de Antonio López

Page 4: Sindrome de Niggle CAS2015

“La Familia de Juan Carlos I”, de Antonio López

Page 5: Sindrome de Niggle CAS2015
Page 6: Sindrome de Niggle CAS2015
Page 7: Sindrome de Niggle CAS2015
Page 8: Sindrome de Niggle CAS2015
Page 9: Sindrome de Niggle CAS2015

“Niggle’s syndrome”A fairy tale…

Page 10: Sindrome de Niggle CAS2015
Page 11: Sindrome de Niggle CAS2015

“There was once a little man called Niggle, who had a long journey to make.”

Page 12: Sindrome de Niggle CAS2015

“Niggle was a painter. Not a very succesful one.”

“There was once a little man called Niggle, who had a long journey to make.”

Page 13: Sindrome de Niggle CAS2015

“Niggle was a painter. Not a very succesful one.”

“He was the sort of painter who can paint leaves better than trees.”

“There was once a little man called Niggle, who had a long journey to make.”

Page 14: Sindrome de Niggle CAS2015

“He used to spend a long time on a single leaf, trying to catch its shape, and its sheen, and the glistening of dewdropes on its edges.”

Page 15: Sindrome de Niggle CAS2015

“Yet he wanted to paint a whole tree, with all of its leaves in the same style, and all of them different.”

“He used to spend a long time on a single leaf, trying to catch its shape, and its sheen, and the glistening of dewdropes on its edges.”

Page 16: Sindrome de Niggle CAS2015

“There was one picture in particular that bothered him.”

Page 17: Sindrome de Niggle CAS2015

“It had begun with a leaf caught in the wind, and it became a tree”

“There was one picture in particular that bothered him.”

Page 18: Sindrome de Niggle CAS2015

“It had begun with a leaf caught in the wind, and it became a tree”

“There was one picture in particular that bothered him.”

“and the t ree grew, send ing out innumerable branches, and thrusting out the most fantastic roots.”

Page 19: Sindrome de Niggle CAS2015

“Strange birds came and settled on the twigs, and had to be attended to.”

Page 20: Sindrome de Niggle CAS2015

“all around the Tree, and behind it, thorough the gaps in the leaves, a country began to open out”

“Strange birds came and settled on the twigs, and had to be attended to.”

Page 21: Sindrome de Niggle CAS2015

“all around the Tree, and behind it, thorough the gaps in the leaves, a country began to open out”

“Strange birds came and settled on the twigs, and had to be attended to.”

“…a forest marching over the land, and of mountains tipped with snow...”

Page 22: Sindrome de Niggle CAS2015

“Soon the canvas became so large that he had to get a ladder, and he ran up and down it, putting in a touch here, and rubbing out a patch there.”

Page 23: Sindrome de Niggle CAS2015

"Soon the canvas became so large that he had to get a ladder, and he ran up and down it, putting in a touch here, and rubbing out a patch there."

“Leaf, by Niggle”J.R.R. Tolkien - 1939

Page 24: Sindrome de Niggle CAS2015

“The professional bias toward getting deeply lost into details.”

“Niggle’s Syndrome”

“The obsessive quest for accuracy in our real world's representation, far beyond the point where that level of detail proves itself worthy."

Page 25: Sindrome de Niggle CAS2015

How do we recognize Niggle’s syndrome?

• At product “stories” level

• At a “technical” level

Page 26: Sindrome de Niggle CAS2015

• At product, “stories” level:

• Too many things to do

• To many details in the wrong areas

• “Featuritis”

How do we recognize Niggle’s syndrome?

Page 27: Sindrome de Niggle CAS2015

How do we recognize Niggle’s syndrome?

• At a “technical” level:

• Miniaturism in implementation

• Treating non-core parts as first-class citizens

• Somehow unbalanced granularity between the parts

Page 28: Sindrome de Niggle CAS2015

http

s://tw

itter

.com

/san

drom

ancu

so/s

tatu

s/58

8503

8772

3578

1632

Page 29: Sindrome de Niggle CAS2015
Page 30: Sindrome de Niggle CAS2015

http

://w

ww.

efer

ro.n

et/2

014/

06/d

e-te

st-u

nita

rios-

de-c

lases

-test

s.htm

l

Page 31: Sindrome de Niggle CAS2015

• Much easier code mantainance (way better refactors)

• Lesser bias toward over-design

• Domain much better reflected in code

• Earlier access to a complete solution that will be further refined.

Edu Ferro - http://www.eferro.net/2014/06/de-test-unitarios-de-clases-tests.html

Edu’s words (sort of), not mine!

Page 32: Sindrome de Niggle CAS2015

Sandro Mancuso - http://codurance.com/2015/05/12/does-tdd-lead-to-good-design/

And back to Sandro’s post…

Did we really throw it away?

What happened in the las twenty years?

Page 33: Sindrome de Niggle CAS2015

So it’s not about tech granularity…

Page 34: Sindrome de Niggle CAS2015

So it’s not about tech granularity…

…it’s about design

Page 35: Sindrome de Niggle CAS2015

So it’s not about tech granularity…

…it’s about design

And maybe design is essentially…

Page 36: Sindrome de Niggle CAS2015

…it’s about design

And maybe design is essentially…

…the quest for the adequate level of abstraction

So it’s not about tech granularity…

Page 37: Sindrome de Niggle CAS2015
Page 38: Sindrome de Niggle CAS2015
Page 39: Sindrome de Niggle CAS2015
Page 40: Sindrome de Niggle CAS2015

In some parts, we’ll push toward real-world’s details…

Page 41: Sindrome de Niggle CAS2015

In others, we’ll settle for ‘basic function’, and discard ‘form’ or

‘reality’

Page 42: Sindrome de Niggle CAS2015

http://www.ymedioteatro.com/espectaculos/siete/

Page 43: Sindrome de Niggle CAS2015
Page 44: Sindrome de Niggle CAS2015

“Lung-on-a-chip”“Guts-on-a-chip”

Page 45: Sindrome de Niggle CAS2015
Page 46: Sindrome de Niggle CAS2015

http://www.wired.com/2015/06/chip-mimics-human-organs-design-year/

“Design in its greatest simplicity is minimizing any system down to its elements so as to have the greatest impact”

Page 47: Sindrome de Niggle CAS2015

And what about the ‘big’ scope?

Page 48: Sindrome de Niggle CAS2015
Page 49: Sindrome de Niggle CAS2015

What about the ‘big’ scope?

• Does having a vision implies BDUF and featuritis?

• How much should we leave for discovery, how much should we pre-define?

Page 50: Sindrome de Niggle CAS2015

It’s not a fair comparison, because a painting is not a moving target like

software products

Page 51: Sindrome de Niggle CAS2015

Or isn’t it?How to approach big scopes?

Page 52: Sindrome de Niggle CAS2015

“in a painting, first thing to decide is its size, the size of the canvas, that the subject of the painting itself will initially drive”

Page 53: Sindrome de Niggle CAS2015

“it takes me a lot of effort to find the proper size for the painting, to decide what size should I use to represent the landscape. It’s too hard to grasp.”

“Sometimes, I will change my mind two or three times.”

Page 54: Sindrome de Niggle CAS2015

“only when I’m able to see the definitive format of the painting, I bring up to myself;

- what amount of city?

- at what scale should I paint it?”

Page 55: Sindrome de Niggle CAS2015

“It can’t be drawn at a very small scale, because it’s all about the balance between how exactly can I get my paint brush into, and the amount of elements that should go into the painting”

“so you start with the big pieces -plenty of space for them- and then, only when you start painting the windows of the big pieces you say:”

Page 56: Sindrome de Niggle CAS2015

“there’s no way for me to put the windows here. I don’t know how to paint them. The paint brushes are too small.”

“And then I know; I should expand the size. And it goes like that until I found the balance.”

Page 57: Sindrome de Niggle CAS2015

“there’s no way for me to put the windows here. I don’t know how to paint them. The paint brushes are too small.”

“And then I know; I should expand the size. And it goes like that until I found the balance.”

I know

too small

until I found the balance

too subjective?where is the method?

Page 58: Sindrome de Niggle CAS2015

And change?What about dealing

with ‘change’?

Page 59: Sindrome de Niggle CAS2015

Sometimes, the vision will growyet keep the original concerns “centered”

Page 60: Sindrome de Niggle CAS2015

Sometimes, the vision will growyet keep the original concerns “centered”

Page 61: Sindrome de Niggle CAS2015

“Madrid desde la torre de bomberos de Vallecas”, de Antonio López. 1990 - 2006

Sometimes, the vision will growyet keep the original concerns “centered”

Page 62: Sindrome de Niggle CAS2015

But sometimes, vision asks to evolve in a much more radical way…

Page 63: Sindrome de Niggle CAS2015

“Terraza de Lucio”, de Antonio López. 1962 - 1990

But sometimes, vision asks to evolve in a much more radical way…

Page 64: Sindrome de Niggle CAS2015

“Terraza de Lucio”, de Antonio López. 1962 - 1990

Page 65: Sindrome de Niggle CAS2015

“Terraza de Lucio”, de Antonio López. 1962 - 1990

Physical center of the canvas changed…

Corrected and expanded for 28 years

Original human figures removed

Main theme of the painting changed

Page 66: Sindrome de Niggle CAS2015

Incredible details…

…live together with regrets and corrections…

…so it’s not a pre-defined vision

…where the whole painting evolves…

Page 67: Sindrome de Niggle CAS2015

…even though there was a vision

Page 68: Sindrome de Niggle CAS2015

Space as a driving factor.

What could we learn?

Adequate distribution of your product features.

The right scale

Continuously learn, integrate change and even failures

Page 69: Sindrome de Niggle CAS2015

Not ‘painting’, but ‘reality grasping’ tools

Antonio Lopez’s tools

Page 70: Sindrome de Niggle CAS2015

“My uncle despised all those strict methodologies. He used to say the sight should be educated, and for long years I thought the same.”

Page 71: Sindrome de Niggle CAS2015

“For a long time we worked like that, at a guess”

“My uncle despised all those strict methodologies. He used to say the sight should be educated, and for long years I thought the same.”

Page 72: Sindrome de Niggle CAS2015
Page 73: Sindrome de Niggle CAS2015
Page 74: Sindrome de Niggle CAS2015

But… but… we’ve got tools too!

Page 75: Sindrome de Niggle CAS2015

• We’ve got SOLID, the Four Rules of Simple Design, patterns, antipatterns…

• They will help us to identify BAD DESIGN

• But does not suffice to warrant a GOOD one

But… but… we’ve got tools too!Yep… in the technical side…

Page 76: Sindrome de Niggle CAS2015

• We’ve got agile, incremental approaches…

• Inceptions, prototyping…

• User story splitting and mapping techniques…

• “Personas”

• Customer Journey

• “Design thinking”…

But… but… we’ve got tools too!And even more, in the product side…

Page 77: Sindrome de Niggle CAS2015

• Lean Startup… ;)

• Lean UX… ;)

• Lean whatever…

• “Design sprint”…

But… but… we’ve got tools too!And even more, in the product side…

Page 78: Sindrome de Niggle CAS2015

but again… even though they will help us understand the reality we want to model…

But… but… we’ve got tools too!

Page 79: Sindrome de Niggle CAS2015

But… but… we’ve got tools too!

…they do not suffice to consistently reach to a GOOD PRODUCT DESIGN

but again… even though they will help us understand the reality we want to model…

Page 80: Sindrome de Niggle CAS2015

So… how should we approach product design?

Page 81: Sindrome de Niggle CAS2015

So… how should we approach product design?

How could we escape from" “Niggle’s Sydrome” ?

Page 82: Sindrome de Niggle CAS2015

So… how should we approach product design?

How could we escape from" “Niggle’s Sydrome” ?

Are we throwing away our design knowledge?

Page 83: Sindrome de Niggle CAS2015

Niggle got lost, never finishing his ideal Tree

Antonio López show us that, no matter how

complex, it can be done

Maybe we must start by admitting that, once we get there, it's not the place we initially thought, not

anymore.

And that our job is, precisely, to walk and help others walk the path down to that place.

Page 84: Sindrome de Niggle CAS2015

“A work is never finished, just takes you to the limit of your own posibilities”

- Antonio López García

Page 85: Sindrome de Niggle CAS2015

@jorgeuriarte