Thursday, January 28, 2016

We could be moving so much faster

A few years ago in a public presentation on the Arduino Day I asked the audience a simple question:

"What is the best Database Management System (DBMS)?"

"Is it Oracle? SyBase? MySQL?". Can YOU answer this?
Some yielded Oracle, others MySQL and so on. However, the really good answer, like almost anything in the software industry, is "it depends". Just like that. Take a look at the list of currently available Relational DBMS. And this is ignoring other Database Types like NoSQL. So, based only on the question I asked it would be hard to say which one is the best. If I added that "cost is a priority factor" or "it must guarantee ACID properties" or "must be relational", than you could narrow down the answer.

Nevertheless, keep your focus on that list I linked about Relational DBMS. Can you identify the main problem with that list?

Well yes: It's HUGE!

It's basically a lot of software that, in essence, solves the same problem. And here goes the "speed block". So many engineers developing "the same idea" just in different flavours. We live in a competitive world instead of being in a cooperative world. And this is scattered everywhere: Android, iOS, Windows Phone... You name it! On top of this, so many engineers having to know lots of different ways of working with the same basic concepts. Sometimes it's just syntax. All this reminds me of the cables every single phone manufacturer had years ago. If you had a Nokia, the connector of the charger was one. If you had a Sony, another.
"Hey, there's micro USB!"

Technology is just a means to an end.
Humankind could be moving so much faster.

Cooperative VS Competitive