

Product Performances - gmcabrita
http://dcurt.is/magic

======
bryanlanders
_Bugs and "known issues" become personal flaws. How well the user accomplishes
his or her goals become a personal reflection of the creators._

It's a dangerous idea for performers to hang their ego on a performance. Just
because you played a crap guitar solo one night does not mean you're a bad
person. It's all part of a process - you can learn from what didn't work and
try something different tomorrow night. The more time you're in the process,
the better your performance gets.

A great performance is about making the audience feel something. Sometimes you
can feel like it was your worst solo every, but the audience loved it because
you really took a chance and went for something and they were with you for the
adventure. It's not as entertaining to watch you play it safe even if it's
technically more refined.

To stick with the guitar example, compare Kurt Cobain's guitar solos to those
of Django Reinhardt - both made for a great performance, but they are on
different planets in terms of complexity and sophistication. My significant
other and I have been playing Draw Something and I find it ugly and ad-ridden,
yet I love playing the game because we have fun and enjoy the challenge.

 _He will never accept anything less than perfection because it would be a
personal reflection of himself; he loves what he does and it shows through his
work._

The best artists I've learned from didn't reach high levels because of ego or
a desire to appear perfect. They were able to put unfathomable amounts of
energy into honing their craft because they were that passionate about it. The
love of the process is what enables the quality of the finished product. Jony
Ive strikes me as this kind of artist. His obsession with the process is clear
- his love of materials, creativity in inventing new methods of
machining...everything right up until when you're holding the device in your
hand as the user feeling something.

~~~
mikeg8
Designing a product is much different than executing a musical performance
because playing guitar on stage contains elements out of your total control
like a broken guitar string, amp malfunction etc. Sometimes they miss a note,
that's not a mental lapse, it can be a physical disconnect between what their
mind is trying to accomplish and what their finger actually does.

A designer has total control over a product before it is released. This
article is about the mental pursuit of perfection.

~~~
NathanKP
A designer does not have total control except in the most ideal of
circumstances. In the real world there are deadlines, a budget, the whims of
clients to cater to, and investors to impress. It's nice to think that
perfection is possible but realistically compromisesl must be made in the real
world.

------
dmragone
What's most impressive to me in Penn & Teller's work is not just that they put
in extraordinary amounts of time perfecting a trick (giving themselves a
barrier to entry), but that they "ship". They don't let perfection get in the
way of bringing a new trick out.

I agree with Dustin that caring is critical to creating well-designed
products, but fear the desire for perfection getting in the way of releasing.

------
tptacek
"More trouble than it's any reasonable person would have expected it to be
worth" turns out to be a pretty good description of modern exploit
development. For instance, from Derek Soeder:

 _The author's proof-of-concept exploit uses this technique to implement a
six-stage approach, comprising: (1) the replacement INT 10h handler, a tiny,
low-byte arithmetic / PUSH / Jcc sequence that computes the offset of the next
stage, pushes it, and branches to a nearby RET, RETF, or IRET; (2) a larger,
low-byte sequence stored over the 8x8 graphics font table (hopefully in video
BIOS ROM pointed to by the INT 1Fh vector) that computes the bytes of the next
stage, pushes them onto the stack, and branches to a nearby RETF or IRET; (3)
a small, base-64-like decoder that decodes and executes the next stage, which
was also stored in the font table; (4) a loader that reads the subsequent
stages into RAM from the "guestinfo" database via the VMware backdoor
interface, decodes them, and executes the next stage; (5) the main V86-mode
payload, which prepares the next stage to execute in ring 0 using the
appropriate, aforementioned HAL or NTOSKRNL infiltration technique; and (6)
the main kernel payload, which creates an interrupt gate for convenient kernel
access and cleans up the environment so that execution can resume without
crashing. The Win32 portion of the exploit can then use the interrupt gate as
needed._

(This is, of course, art, and it's hanging on the wall in our Chicago office.)

------
peterjmag
Wow, Dustin sure has been prolific on HN lately. Four front page articles in
the last few days. Prior to this week, he popped up in my news reader maybe
once a month.

I'm not complaining, mind you. Just acknowledging and applauding his renewed
motivation to write.

~~~
klochner
I think it's self-fulfilling - people see his posts score high for a
submission, so they scramble to be the first to submit his next one, or
automate submission through a bot/rss.

That agrees with the observation that this post hit 15 points before anyone
commented, with the first 2 comments not even related to the blog entry
content.

~~~
dbaupp
I agree with the rest, but it's not _that_ unusual to get several points
without comments.

(e.g. as an extreme case: I recently submitted one that made it to 50 before
the first comment, and dropped off the front page at ~60 with just that
comment.)

------
richcollins
_Great startups work like this too. The best and most successful teams
invariably exhibit these characteristics and failing companies almost never
do. It’s an emotional and personal attachment that a team has to the end
result of their work._

If you're in a competitive space, obsessing over details is a great way to
differentiate. The "product market fit" theory better predicts startup
success:

[http://pmarca-archive.posterous.com/the-pmarca-guide-to-
star...](http://pmarca-archive.posterous.com/the-pmarca-guide-to-startups-
part-4-the-only)

------
georgeorwell
So it seems like the main argument here is this: perfectionism in product
development is a good thing because (in the author's experience) products
succeed if and only if the team is perfectionist. This requires obsession and
investing yourself personally into what you are creating, as if the products
you produce are a performance of your soul.

First of all, I think this ignores various different effects that also
influence success, such as mainstream tastes, the first mover advantage,
PR/marketing/sales/branding/whatever, monopolies/antitrust, being an
established player, and the overall utility of an idea independent of its
execution. If you have enough of these things, perfectionism doesn't matter,
as long as you're defining success in capitalist terms.

But let's say perfectionism IS required to succeed; in that case I'm still not
sure it's helpful in the long run. Growing up as a superachiever, I used to
embrace perfectionism more than anyone else I knew personally. (Then I met
someone who was more obsessive than I am and he got cancer and I slowed down a
bit.) It does work if you want to make a certain kind of beautiful thing - a
transcript, a CV, a piece of software, a meal - but it's psychologically hard
on the perfectionist and by extension the people the perfectionist works with.
It's not a sustainable model. It is notoriously ungood for healthy
relationships; God help you if you try to perfect your relationship partner.

In the end, our work and personal lives are complex, and you simply cannot
optimize all the variables. Enjoy things for what they are, rather than what
they should be. In my personal experience, perfectionism is a defense
mechanism that seeks to fill up a desperate emptiness inside.

------
rglover
Running a design studio, this comes up frequently. We work with startups that
rarely have the time/budget to do that over-the-top perfect work. In most
cases, too, it is a bit soul crushing to ship work that isn't the absolute
best we could have done.

I'm sure both of us don't feel great about it, but at some point there has to
be a compromise. We tend to work along the lines of "strive for perfection,
accept reality."

~~~
NathanKP
Exactly. Too often I see posts by idealistic people who haven't actually
shipped product who are espousing the idea that your product should be
perfect. (Not saying Dustin Curtis is one of these, mind you.)

~~~
yen223
I think we're starting to see the opposite. A lot of pragmatic people who are
arguing that shipping crappy products is a _good_ thing.

I like this article. It provides some balance to the wave of "worse is better"
posts that have been coming out.

------
ssp
Also worth reading Bruce Tognazzini on Magic and Software Design:

<http://www.asktog.com/papers/magic.html>

