Translator: Michele Gianella Reviewer: Nicoletta Pedrana
With the advent of mass production of electrical and electronic devices,
a new “problem” began to emerge:
how do we make
all these things that we use every day
simple and understandable to anyone?
Plug and play is a beautiful term that I really like,
because it gives the idea of what customers' expectations are.
We want to buy a device, to plug it into our computer,
and to start using it as soon as possible
and this has to work.
The technology was born on the Amiga platform in 1986,
but then it was called AutoConfig.
Later, in 1990,
a very similar technology was used on Apple computers
and later on compatible IBM computers.
The real term “plug and play”
was first used in 1993,
at Windows Hardware Conference.
When we think of plug and play,
the first thing we imagine is for example a USB key:
we plug it into the PC and it must work.
Imagine a printer:
we plug it into the computer and it has to print.
Imagine a screen: same thing.
How do we explain the banality behind this gesture of immediately
connecting and using a device?
Behind this banality,
there's a world that we don't even imagine made of pure black magic,
because the easier it is to use a device
the more developers work behind it.
They try to cover
all possible cases of use of a device
to make sure that, whatever the user does,
the thing works.
But the corner cases, as the word suggests,
are always around the corner
and I'll try to explain you the concept by approaching it with caution.
Some power outlets in the world, like the one you can see,
don't just look like nice smiley faces, but are also polarized.
What does this mean?
This means they have a direction of insertion
because if for some reason
I insert the plug into the socket incorrectly,
something bad could happen.
So, how do we solve it?
Why does the user buy a device without reading the instruction manual,
unless he\she needs it because it's Ikea furniture?
From an early age, we are used to play with a funny wooden toy
in which to insert the shapes in the right place:
we put the square into the square, the circle into the circle,
the triangle into the triangle and it's technically easy.
We have decided to use the same principle
for electrical outlets
and we've added mechanical limitations,
so that the socket only enters in one direction
because on the other one it doesn't fit, very easy.
In Italy, for example, as in other countries in the world,
we have decided that the limitation
of polarization of electrical outlets
had to be removed to delete the problem at the root
and this is why electrical sockets are not polarized.
I think that this has been done specifically in Italy
because Italians tend to put the square in the circle
so we decided to remove the problem at its root.
Indeed, I am convinced that you or someone you know,
at least once in a lifetime,
were able to insert the German socket
without using the adapter
because "It's a tiny difference. If I push, it'll work."
Please don't do this!
Okay, so what's plug and play?
It's a very vague concept,
because people who make plug and play devices
must be able to give the user
an experience of use as simple as possible.
How can we do this?
We can do this by creating very complex tools,
that allow the user
to dispose of this type of tool.
Yeah, but what does this mean?
Take the example of the USB port,
to stick with the field of connections.
I'm convinced that everyone at least once, even Giulio confirmed it to me,
when inserting the USB key into the computer,
had to put it in three times, before managing to do it
because it could't be inserted.
Turn it, insert it...no way.
Turning it in the direction tried at the beginning,
it strangely worked.
Crazy, 50% chance, but you need yo try three times.
So, what happened?
The engineers, to whom this happens too,
tired of having to do these very complex things
and find a mathematical problem
to insert a USB key three times when two of them should be enough,
decided to invent the USB-C connector.
The USB-C connector has no insert direction,
so however you put it, it's always right at first strike.
Beautiful, it all works!
We decided to use USB-C ports everywhere
because it's a beautiful connector, so USB-C ports everywhere.
We'll have more compact computers, because it's much smaller
and people won't get crazy
and use it easily.
However, there's obviously the so-called legacy of old devices
that don't have this new connector.
So what do I do?
I have to allow people
to use this new technology even on older devices.
So how do I do it?
With adapters, used in the miserable life of people with USB-C computer like me.
These people generally have to connect different things on old machines
and walk around with a suitcase full of dongles.
So if I have to connect the monitor… adapter,
if I need to unplug the Ethernet cable…adapter.
Then there are the beautiful compact adapters
which have everything together... I'll let you imagine how beautiful it is!
Okay, but then how do we explain
the reason why, when we plug something, it works right away?
I personally like to use a slightly extreme similarity,
which, in my opinion, conveys the right idea:
when we connect something to the computer and this works,
we have an immense exchange of information in no time,
and it's like when we meet someone
we have never seen in our lives,
we get along well immediately
and we seem to know that person perfectly,
because everything works like a well-oiled mechanism.
Then I can also tell you about another type of plug and play,
which is the plug and play that you may not know
and that I hope you'll be curious about when you get out of here.
It is another type of plug and play
which I will introduce to you using a proverb:
because it often happens that "those who have bread, do not have teeth".
Let's bring this proverb to the world of technology:
to me, bread are ideas
and teeth are knowledge and possibilities.
Those who have all these things are usually very successful in life,
take the example of our dear friend Elon Musk.
He's a genius and he had a lot of success,
but for ordinary mortals like us it's a little more complex,
because maybe we have a great idea,
but we don't have the knowledge to tecnhically develop it,
or the money to do so.
However, until some time ago, the only chance of a common mortal
to develop an electronic product
was to go to a freelancer or consulting firm
and give the socalled order.
You would ask to realize the idea,
cause you couldn't do it.
Well, in an ideal world, everything is perfect,
but we know that people aren't always completely honest so,
if we have a particularly innovative idea,
we have to try to protect it.
How can we protect it?
With the so-called NDAs, which are legal contracts
not to disseminate sensitive information
or thanks to patents.
Oh, that's good.
Luckily, the world is beautiful because it is varied
and there are people who invested their good will
to try to make technology accessible to anyone.
In the perfect plug and play philosophy,
this is how a new hardware was born: a hardware for the creation of hardware,
which allows anyone,
even without skills in electronics or computers,
to be able to give life, in some way, to a personal idea.
The two greatest protagonists in this world,
are Arduino and Raspberry Pi.
For those who don't know these two players,
they are companies that practically do
development platforms for rapid prototyping,
that make the understanding of electronics and computing,
much easier,
because they provide very simple tools
to do very complex things.
Take this example, because until recently,
before these tools were developed,
to do these things in a simple way,
the typical programmer, who wanted to
turn on and off a LED connected to a programmable device,
had to use a language that was not very understandable
to those who have never seen IT in their lives.
Something like that,
which is not that self-explanatory.
So what was the idea?
It's well known that creative people are usually not engineers,
so the issues is:
for example how can we teach creative people,
who do not have the technical knowledge,
how to program?
We try to map some tough stuff
more easily,
for example using commonly used words.
In this way we use the standard spoken language,
familiar to the user:
if I speak English,
let's say that the words written on this code
are not incomprehensible.
For example, it says pinMod:
with some fantasy, if I understand English,
I understand that a PIN is used,
and that it will then be "contact"
in output mode
Okay.
Then I want to write something, wait,
write something else and wait.
"Loop" might mean I want to repeat it forever.
Perfect!
This was very important, because it allowed us to have
an exponential development of these platforms,
because very strong communities have been created,
made by creative and technical people
who have put together their skills
to further develop the platform
and make it more usable to everyone.
Indeed, if I look at the complex code shown before
I might be terrified
but if I look at the other one, it's a bit better.
Even children can program with this language:
as it will also be told during this TED,
children can be very creative.
Let's say that also
thanks to the very strong use of these devices,
other types of platforms have developed,
such as crowdfunding platforms.
I'm sure you know, for example, Indiegogo or Kickstarter:
they are platforms
on which you have the visibility of the internet
to present your idea,
maybe with a project that can also be a render,
it doesn't have to be final product.
You can have this visibility, propose the idea,
look for financiers that can be companies or private
and maybe start with your start-up.
Like I told you before,
if you go to these sites, browse and search prototypes,
you see that almost all these prototypes
are made thanks to Arduino and Raspberry Pi platforms,
because they have very strong communities and are very easy to use.
But we need to think about a few things,
because as customers we have very high expectations
concerning plug and play:
as I said, you can buy an Arduino or Raspberry Pi card
and do crazy things.
Okay, that's right, I confirm it,
but we also have to consider
the fact that
when we have things that do complex operations in a simple way,
we're building many superstructures
to map complex things
in a simple way.
This obviously introduces overhead
and the customer's expectations must be taken into account.
In this case I can make another example:
what happens with WordPress?
Knowing nothing about websites
I can buy a domain, install WordPress,
use a graphics editor, drag items, install plug-ins
and make a website, become a website developer.
No!
I used a tool to reach a result, and learn new things,
but I certainly can't call myself a website developer.
Why do I say this?
Because these platforms to learn new things
are very useful and must definitely be used,
but if you want to meet the customer's high expectations
in the world of plug and play
and to cover all the corner cases,
you have to work hard, go into the details of the technicalities
and optimize the application
specifically to avoid malfunctions.