Searching for my own Database IDE

QueryPie Development #1: Why I decided to create a DB tool

Brant Hwang
QueryPie
Published in
8 min readJan 7, 2019

--

한국어 : https://medium.com/p/b38ee2d09103/

They say a good craftsman never blames his tools. In the developer world, this adage also applies. And if developers are frustrated with the performance of their tools, instead of blaming the tool they just make a new one.

Linus Torvalds made Git in 2 weeks because he was sick of other tools not working https://commons.wikimedia.org/wiki/File:Linus_Torvalds.jpeg

In my years of developing, I have always striven to reach a higher level of craftsmanship. But when I couldn’t reach it, I began to realize the tools available to me did not have the features to do everything I wanted. I couldn’t make my own, so I searched instead for other tools created by established craftsmen. I learned during my search that having good tools is the most efficient way to make coding more comfortable and enjoyable.

When coding for databases and SQL, I also often blamed my tools. So I spent a lot of time trying to find my favorite database IDE. To begin with, I’ve been using more than 10 different free and paid database tools over the past six years. But I never found a unique tool that met all my needs.

So I’d like to share my journey to find my favorite database tool for Mac, and share my fairly systematic and highly subjective evaluation of the database tools that I found.

Why isn’t there an intelligent database IDE for Mac?

In 2011, when iOS application development was very popular, I bought a Macbook to begin dabbling in app development. I’ve been a loyal Mac OS user since then, and I can comfortably say that one of the biggest advantages of using a Mac is that the Unix-based operating system provides a built-in terminal environment and allows users to add iTunes and Zhell to the terminal to create a convenient environment. Another advantage is how IDE software commonly used to develop on Android and on the web like Android Studio, WebStorm, and IntelliJ IDEA, are more stable and powerful in MacOS than Windows.

result of preferred Operating System by developers at Stack Overflow (source: https://insights.stackoverflow.com/survey/2018/)

According to a survey conducted by Stack Overflow for their users, more than 25% of developers use Mac and more than 50% use operating systems other than Windows. As a result, the number of developers who use Mac every year around the world is increasing. Because of this trend, many development-oriented startups including Naver (Korean equivalent of Google), Kakao (Popular Korean Messenger app), and Woowa Bros (most used food delivery service in Korea) also use Mac for a development tool.

However, for me one of the most inconvenient things about using a Mac was the lack of database tools that provided the functionality and convenience of software like SQLGate and Toad, which are only supported by Windows. Of the 10 most common IDE tools available on Mac OS, I prefer using Sequel Pro because of its simple and intuitive UI. But even Sequel Pro doesn’t feel like the best tool to work on databases with due to the lack of Auto Commit, multiple SQL executions, auto-completion, and Import/Export options.

My personal SQL development tool evaluation method:

Since I can be rather persnickety, I decided to evaluate some database tools using my own criteria. I’m not a database-specific developer, so I’d like to tell you in advance that I’ve given priority to creating and running SQL for everyday development rather than the advanced capabilities or the high technical maturity of applications required to manage the database.

Evaluation Criteria

  • Does it provide intuitive UI/UX to its users?
  • Is the execution speed of the software fast?
  • Is there a high level of auto-complete functionality when writing SQL code?
  • Is the software stable?
  • Is it possible to run multiple SQL executions?
  • Is the Auto Commit feature supported?
  • Is it possible to Import/Export in various formats (especially Excel)?

Highly subjective and personal Query Tool Assessment for Mac:

The experience of using a tool varies widely, and the situation as well as the nature of the user should be factored in. So I think the assessment in this article will be most helpful for developers who are in the following situations.

How many of these cases apply to you?

  • Developer using non-Windows Operating System, such as Mac/Linux
  • Developer who enjoys using an IDE like IntelliJ IDEA and PyCharm, and believes these software are very important for development productivity
  • Developer who believes UI/UX in development tools is important and prefers high-quality visuals
  • Developer using cloud databases such as the AWS(Amazon Web Service) MySQL and MariaDB
  • Startups and small/medium business developers whose main tasks include creating/modifying/ deleting tables and writing/executing SQL.
  • Company with no DBA, where developers directly manage databases

From free/open source products such as MySQL Workbench, DBeaver, and Sequel Pro to commercial products such as DataGrip, SQLPro Studio, TablePlus, and DbVisualizer that have been used over the past six years, 7 products that are believed to be used most by Mac developers around the world based on findings from Google Trends: below are my reviews of these 7 products. Since I mainly use MySQL/MariaDB, I used those databases to review these products.

Google trend result: Mac OS SQL tools (source: Google Trends)

(1) DataGrip

(source: https://www.g2crowd.com/products/datagrip/reviews#reviews)
  • Intuitive UI/UX: ★★★
  • Processing Speed: ★★
  • Auto-Complete Function: ★★★★★
  • Software Stability: ★★★★
  • Multiple SQL Execution: Yes
  • Auto Commit: Yes
  • Import/Export: Import- CSV, TSV / Export- CSV, TSV, HTML, XML, JSON
  • Price: Business & Organization- $199/1st year, Personal Use- $89/1st year
  • Supported DBMS: PostgreSQL, MySQL, Oracle, MS SQL Server, Azure, Amazon Redshift, SQLite, IBM DB2, H2, SYBASE, Exasol, Apache Derby, MariaDB, HyperSQL, ClickHouse, cassandra

(2) DBeaver (Free version)

(source: https://www.g2crowd.com/products/dbeaver/reviews#reviews)
  • Intuitive UI/UX: ★★★
  • Processing Speed: ★★
  • Auto-Complete Function: ★★★★
  • Software Stability: ★★★
  • Multiple SQL Execution: No
  • Auto Commit: Yes
  • Import/Export: Import- CSV / Export- CSV, HTML, XML, JSON, SQL
  • Price: Free (Enterprise Version with improved functions — $149)
  • Supported DBMS: MySQL, MariaDB, PostgreSQL, MS SQL Server, Oracle, IBM DB2, SAP MaxDB, Informix, SYBASE, Mimer SQL, InterSystem Cache, Firebird, Ingres, Yellowbrick, Linter, Virtuoso, CUBRID

(3) DbVisualizer

(source: https://www.g2crowd.com/products/dbvisualizer/reviews)
  • Intuitive UI/UX: ★★
  • Processing Speed: ★★
  • Auto-Complete Function: ★
  • Software Stability: ★★★
  • Multiple SQL Execution: Yes
  • Auto Commit: Yes
  • Import/Export: Import- CSV, XLS, XLSX / Export- CSV, HTML, SQL, XML, XLS, XLSX, JSON
  • Price: New License $197 / User, Existing License Renewal $69 / User
  • Supported DBMS: IBM DB2, Exasol, Apache Derby, H2, INFORMIX, Mimer SQL, MySQL, NETEZZA, NUODB, ORACLE, PostgreSQL, Amazon Redshift, SQLite, MS SQL Server, SYBASE, VERTICA

(4) TablePlus

(source: https://www.g2crowd.com/products/tableplus/reviews)
  • Intuitive UI/UX: ★★★★
  • Processing Speed: ★★★★★
  • Auto-Complete Function: ★★★
  • Software Stability: ★★★★
  • Multiple SQL Execution: Yes
  • Auto Commit: No
  • Import/Export: Import- CSV / Export- CSV, JSON, SQL
  • Price: $49 / User
  • Supported DBMS: PostgreSQL, MySQL, MariaDB, MS SQL Server, SQLite, Amazon Redshift, Oracle, Redis, cassandra, cockroach, VERTICA

(5) TeamSQL

(source: https://www.g2crowd.com/products/teamsql/reviews)
  • Intuitive UI/UX: ★★★
  • Processing Speed: ★★★★
  • Auto-Complete Function: ★★
  • Software Stability: ★★★
  • Multiple SQL Execution: No
  • Auto Commit: No
  • Import/Export: Import- SQL / Export- CSV, JSON, Markdown
  • Price: Free
  • Supported DBMS: MySQL, PostgreSQL, MS SQL Server, Amazon Redshift, Redis, Oracle, Google BigQuery

(6) Sequel Pro

(source: https://www.g2crowd.com/products/sequel-pro/reviews)
  • Intuitive UI/UX: ★★★★
  • Processing Speed: ★★★★★
  • Auto-Complete Function: ★
  • Software Stability: ★★★
  • Multiple SQL Execution: No
  • Auto Commit: No
  • Import/Export: Import-CSV / Export- CSV, JSON
  • Price: Free
  • Supported DBMS: MySQL, MariaDB

(7)MySQL Workbench

(source: https://alternativeto.net/software/mysql-workbench/reviews/)
  • Intuitive UI/UX: ★★★
  • Processing Speed: ★★
  • Auto-Complete Function: ★★
  • Software Stability: ★★★
  • Multiple SQL Execution: Yes
  • Auto Commit: Yes
  • Import/Export: Import-CSV, JSON / Export- CSV, JSON
  • Price: Free
  • Supported DBMS: MySQL, MariaDB

To wrap things up:

Since this is a very personal standard and assessment, please take into account that these reviews are just my opinion when choosing the perfect IDE for your needs. (If the above information is inaccurate or should be added to, please let me know!)

This review started with my complaints and questions about database IDE on Macs, and went through the process of exploring various DB Tools.

When I worked as a developer for Kakao, I always blamed my tools for not doing what I wanted them to do. Then one day, I made up my mind to develop my own tool. That’s how I became the founder and CEO of a startup company called CHEQUER. Now my company is upgrading, expanding, and bettering SQLGate, a 16-year-old IDE database tool. (If you’re curious, head over to CHEQUER and SQLGate to find out more.)

And at the end of last year, the team of talented software engineers at CHEQUER began developing QueryPie using the accumulated know-how and technology acquired during the years of developing SQLGate.

QueryPie is a cross-platform database IDE which works on Mac OS, Windows, and Linux. We plan to better the experience of database tools in Mac OS with QueryPie using built-in core functionality and intuitive UI/UX. Our goal is to enable all developers to work faster and more conveniently with the best database technology in the world.

QueryPie is scheduled to launch within the first quarter of 2019.

Creating a Cross-Platform application is rare in the software industry and requires a lot of technical consideration and effort, so I want to document this development journey under the title of ‘QueryPie Development’. I want to help those who are preparing to develop new applications by sharing what I learned through trial and error, and I want to keep learning and growing.

In my next post, you will learn about the key features and requirements defined by QueryPie’s target customer analysis, and what technologies have been used to design the software.

See you soon!

- Brant Hwang, CEO of CHEQUER

--

--