A week ago we were in Kraków at Java Developers Days, one of the biggest annual Java conferences in Poland. For the first time we showed Vertabelo live to a wider audience.
It was a pleasure to meet all the Java developers and talk about their projects, technologies and tools they use. We had a strong team at the conference and it allowed us to talk anyone interested - more than one hundred talks. See some of us in action on the photo below.
During the conference we made a short survey about databases that developers use in their projects. We asked five questions:
- How do you create a database schema for your project?
- Who is responsible for database schema creation and maintenance?
- How big are your database schemas (in number of tables)?
- What database engine do you use?
- What is the size of company you work for?
About 15 percent of developers who participated in the conference filled in the survey. Thanks a lot for your answers. Here we present details of survey results with my personal comment. Read till the end please, you might be surprised!
Big companies, big databases
Nearly 80 percent of developers that came to the conference work in big software companies (more than one hundred people on board). It is not surprising if you know that Kraków is one of the biggest outsourcing centers in the world.
Most of them use/develop rather big databases in their projects. Nearly a half of databases have more than 100 tables. About one third are medium size database (between 20 and 100 tables).
The database engine market is interesting. There is strong front ranks with Oracle, MySQL and PostgreSQL (near 75% in total) and in my opinion one attacker – SQLite. Small is beautiful :)
IBM DB2 position was totally disappointing for me. Only two developers use it in their projects. It makes me a little sad, because I'm a big fan of DB2. From the other hand my second favorite is PostgreSQL, which has strong position. So calculation of my satisfaction is about zero :)
NoSQL databases occupy only five percent of the market. Big hype, small usage. News about death of relational databases are exaggerated. That is the third time that I hear a lot about RDBMS death. It was the same with object oriented databases and XML document databases. Does anyone know it or use it anymore?
Who is responsible for a database schema?
Theere were three answers in out poll: Software architect, Software developer and Database administrator. All three job positions have strong representation in results. This is what I anticipated, but I expected a stronger position of software architects.
The leading position of software developers will be clear if you see the results for the next question.
How to create database schema – an unexpected surprise
I've been designing databases for more than fifteen years. It is obvious to me that if I have to design a database with more than twenty tables I do need a visual tool. Nothing could surprise me more then the result of our survey. 44 percent of developers said that design database manually. Unbelievable!
Moreover, the next 42 percent of developers don't use visual tools either. They use database schema generation directly from Java code (mostly from Hibernate) instead. On one hand I understand this approach, but from the other hand it is hard to imagine how to deal with a big system without database schema visualization. Maybe they use different tools for understanding the system complexity. I must ask about it next time.
So only 14 percent of developers use visual tools. That's the perfect market for Vertabelo. We are waiting for you!
What do you think about the survey results? Share your opinion with us.