DEV Community

Quentin Delcourt
Quentin Delcourt

Posted on • Originally published at quentin.delcourt.be

The Demo Effect

Developers worldwide share a few common fears: the time when a project manager
asks for an estimate, the fear of being an impostor, the fear of not delivering
on time for a deadline. And then there's a very scary thing that is known in the
development world as the "Demo Effect".

The Demo Effect happens whenever you need to present your (supposedly finished,
or almost) work to a client, an N+1 or any other kind of spectator.
You will, with pride, show the features you've been working on for
[weeks|months|years]. You feel very confident, you tested it all before,
and all of a sudden, the
application crashes in front of your audience.
This is the Demo Effect.

Why is it happening? We developers tend to be biased and use data that will
fit our best case scenarios. Once we start fiddling with more realistic data
for the sake of our presentation, that's where the cracks in our programs
begin to appear.

DDD: Demo Driven Development

My company recently adopted a new habit, which is the "Friday demo".
The format is quite simple: each department has someone on their team
doing a little, 5 minutes presentation. This is a good idea as the short
format reduces the pressure (it's not like you're doing a one hour talk).

Our team was asked to present something, and I thought that
I could demo one of our most advanced, but still in development feature.

I tested many things beforehand and thought that the feature was
ready to go to QA. So naturally I thought this would be a piece of cake.
And of course I was very wrong.

I started inserting records with real names of real people. With extended
latin characters. That's where I noticed there were collation problems
with the database.

I started having more than 10 records in my test DB, which showed problems
with the pagination system.

I started using the application a lot, instead of testing it, which showed
me there were some async problems, and some other bugs.

I later explained that to my colleagues and, as a joke, said we could now do
DDD: Demo Driven Development. But it might be a really good thing to keep doing
that once in a while, as it helps us get into the users shoes.

I might start doing Demo Driven Development from now on, and overcome my fear
of the Demo Effect.

Top comments (0)