Attention to Detail

  •   > “Kids are not stupid. They are among the sharpest, 
      > cleverest, most eagle-eyed creatures on God’s Earth, and 
      > very little escapes their notice.”
    
    i wonder if this is because their lizard brain hasn't yet been trained to filter what's important vs what isn't.

    i find myself constantly questioning little details in my codebase like, "why do we thread a request all the way through the business logic" and i think the reason i catch these things, is because my brain hasn't become complacent with this style through 15 years of solving low level problems in C. all sorts of things jump out at me as accidental complexity that the most senior guys don't even notice. i think it's because it didn't used to be important, or maybe its not important to them because they wrote it over years and are already familiar, but it sure is important when you're trying to scale your team and they're facing a brick wall of code needing to be understood for every single little defect.

    this complacency is why big codebases get so noisy that you can't see the nuances of requirements in a code review. it's not possible to ask high level questions like < http://www.dustingetz.com/how-to-read-code > without aggressively abstracting away all non-essential complexity. breaking experienced people out of this complacent tolerance for accidental complexity, as we tackle higher and higher complexity, is a really hard problem.

  • I've seen children have amazing 'attention to detail' and I think there's a simple explanation: they don't have anything to do other than look at the world. In fact, their entire existence in early years is in dealing with understanding the world.

    I saw this in action the other day in a local coffee shop. In front of me was a mother with a child of about 4 who pointed out to her mother than high on a shelf above Italian coffee machine was a small, plastic toy from the children's program "In the Night Garden".

    I certainly hadn't noticed it and neither had the mother. Which isn't surprising because the mother (and I) were in the coffee shop with a head full of other stuff (buying coffee, work thoughts, relationship thoughts, etc. etc.) The four year old was in full observe the entire world mode. Given that he didn't have a purpose (like buying coffee) he was free to look around.

  • I've been a designer for the better part of my professional career (12+years). For the past three years or so I've been getting more and more involved in programming, to the point that it's the majority of what I do day to day.

    What I've taken out of it is that you can only have locus of attention at a time. I am a competent writer in my native language, but when I'm programming I can barely produce copy. I'm somewhat better when I'm writing markup, but this is because I've internalized it to the point I no longer need to think about markup while producing copy.

    I used to look up to Alan Cooper (who wrote _The Inmates are Running the Asylum_, where _the inmates_ are developers) but now I just loathe him. Programmers get a lot of unwarranted heat for producing unusable interfaces or producing cryptic error messages, but this is because programming requires a tremendous amount of mental effort, and I very much doubt that anybody is able to switch from computer to human oriented thinking instantly.

    To avoid these pitfalls I started practicing waterfall methods: I'd write all my copy, gather all my assets, produce pixel perfect mockups and then get down to programming.

    Nowadays I've learned to let go and get things achieved in multiple quick passes: one for design, one for programming, one for copy then iterate and repeat until the product is good enough for release. But it does take discipline, you must completely focus on the task at hand.

  • I don't think the example about the zombie is good evidence for children noticing things more than adults. As he says, the kids' favourite plant was The Chomper. Why would that be their favorite plant? The only explanation I can think of is that they like the fact that it eats zombies. So it goes without saying that they would pay attention to the moment The Chomper eats the zombie and all the little details of the event.

    Also, we all pay attention to different things, and ignore different things. So even though children notice a lot of things we don't, we probably notice a lot of things they don't. In fact, I'd bet that us adults could notice more things than kids, if we tried. The problem is that what we notice is biased by our expectations which have evolved over the years (for example, we've learned to ignore the zombie arm sticking out of the plant because it isn't important), whereas children look at everything with fresh eyes, which forces them to pay attention, which in turn makes them notice things we've stopped looking for long ago. So in the end, maybe kids do tend to notice things more than us, but it's just because they have yet to learn to close their eyes.

  •   In the beginner's mind there are many possibilities, in the expert's mind there are
      few.
    
    This is because the expert has learned what is important. For example, the too-large zombie arm is irrelevant to gameplay.

    Of course, if you have the wrong idea about what is important it is very useful to have "beginner's mind". This can happen when debugging the wrong part of the code or when an industry is disrupted changing the game (e.g. from efficiency to development speed then back to efficiency again),

    BTW: Employing Autism sufferers is an example of division of labour, the essence of civilization. Vernor Vinge examines the benefits of Autism with the fictitious "Focus" in A Deepness in the Sky.

  • Too many people confuse "lack of attention to detail" with "attending to detail you aren't paying attention to". You only have so much time, so much money, and so much material (or even so much understanding): you have to make decisions between a nearly infinite number of constraints.

    Plants vs. Zombies has really really well balanced game play: many game designers, even of quite popular games, are winging the game play, while paying incredible attention to things like sprite animations.

    I have personal experience at a game company where the atmosphere rendered on planets took weeks to perfect: implementing the behavior of light through atmosphere so accurately that if you flew so close to the planet that you crosses /into/ the atmosphere it was still correct. The game, mind you, wasn't the least bit fun.

    I also know people (mostly designers, sadly) who agonize over the color choice of icons (or admire the work of specific products), but completely miss that on iOS panels aren't supposed to slide from the right over others, or that highlights are supposed to fade as you go back, not stay lit or fade after click.

    As someone who cares a lot about the experience of using a console, Apple's Terminal app is the epitome of "not caring": just changing some defaults would makes it indirect more usable, and that's minutes of work. The fact that it fails to correctly handle certain common escape sequences, though, makes it nearly unusable.

    Yet, people love Apple, and they claim "the attention to detail". These same people tend to go "oh, I didn't notice" when I point out such problems. There are tons of tiny things wrong all over the place, and you get "oh, I didn't notice"... and at the same time they are playing the "did you notice game" about other things, and winning (and they often do: Apple has such a large profit per user, and always have, that they can afford a lot of attention on otherwise inane things).

    This article, sadly, plays into this same flaw. The child notices some things, but is going to be oblivious to others. People don't get worse at detail as they get older: they just focus on different things: they might focus on the amazing detail the author paid to nailing the feeling you have when you find out your father died, as opposed to the grammar.

    Some people are also just different than others. I know someone who seriously watches movies and afterwards is talking about the buildings. It was a love story, but they paid no heed to that: the question of whether the architecture of the time and location was presented with accuracy is what they are focused on.

    Developers care a lot about things like efficiency, stability, and security (with different balance depending on the person, sometimes lacking entire categories ;P). These are often the kinds of things you don't even notice unless they /don't/ work, and even then, most people will just get lucky.

    People, though, then compare the product with carefully designed animation that has a common "corrupts your file" failure case with a carefully engineered one that "looks ugly" and claims the former has this property of attention to detail, and the latter somehow doesn't. :(

    Go to a designer, or a film critic, or even a child, and they are not going to be saying "did you see how they actually were running nmap, from a real shell, in order to prove the enemy computers in The Matrix Reloaded?". That is what all the geeks I know paid attention to: every terminal in every movie gets extreme scrutiny.

    Even if the child wanted to pay attention to that, they can't: to even know what nmap is required a peculiar technical experience. With age comes an expanded set of things we understand, and an infinitely diverse set of different and very interesting things to care about. This is not a failure of age: at worst it is just a difference.

    (This was typed on my iPhone at a party; I was thereby forced to pay less attention than I normally do to high-level editing, and I trusted the iPhone's spelling corrector more than I should: it sometimes corrects words to things that are ludicrous.)

  • "very little escapes their notice" Hmm. In my experience, children have selective attention. Many a time, they can not find a particular article of clothing which is laying on the floor in the middle of their room in plain view.

  • My brain is wired a little differently from average (I really do see things that other people don't see), but overall I don't see kids as having better perception than I do. My son sees things I miss, certainly, but he misses a lot.

    Groups, at their best, can see things that individuals don't, but groups are also astonishingly good at creating blindness... The whole "emperor has no clothes phenomenon". Both families and work teams can labor on for years with fundamental misconceptions about what they're up against.

  • The number one reason for these little things, I suspect is that most programmers come to understand that whether or not these tiny errors creep into whatever they're creating will have zero bearing on the ultimate success or not of what they're creating.

    But the next feature they work on instead of tracking down all those little errors... might.

  • This is so important. We do routine usability tests all the time simply because it's hard for us to see the detail in our own product.

    A user can stumble across the most subtle things that take two seconds to fix that otherwise we would have never noticed and we'd keep losing customers because of it.

    +1 for attention to detail.

  • Note: if you write a long response on HN, you'll lose the very people who still have "this."

    Digesting long-form prose isn't antithetical to this semi-autistic ability that kids have.

    But try to mix it up sometimes.

    Also note: if you're about to complain about someone's "wall of text," please refrain. :-)

  • I'm the author of the article, and while I was camping this hacker news post last night, I didn't want to be "one of those guys" that replies to everything instantly when it comes in.

    Thank you everyone for whichever combination of Reading | Upvoting | Commenting you did.

    Several of you have made some insightful points about how “attention to detail” can be a double edged sword.

    In my experience, you don’t get to decide to ignore a detail as “insignificant” until you notice it in the first place. I chose my examples for novelty, not value, but I think the point still holds.

    Noticing details, of any nature, is a separate event from deciding what to do with them. I was writing more to the former, at least I meant to :)

  • I enjoyed the footnotes, too. "This is not an endorsement of pair programming."

  • I hate it when people point out things that you lose with experience or age. It makes me paranoid that I'm losing them even though if you'd asked me five minutes earlier I wouldn't have given it a second thought.

  • undefined

  • I liked his Plants vs Zombies anecdote. I've been playing Tiny Tower with my 4-year-old, and he always asks why the construction workers are just walking around on the floor under construction and not building anything.

  • "No amount of genius can overcome a preoccupation with detail."

  • "...the read deal is Specialisterne based in Denmark"