Building the Best PostgreSQL GUI: Announcing Our Acquisition of PopSQL

Building the Best PostgreSQL GUI: Announcing Our Acquisition of PopSQL

The PopSQL team joins Timescale to help build the best PostgreSQL developer experience for the cloud era.

Today we are announcing that Timescale has acquired PopSQL, the modern SQL editor, collaboration, and visualization tool for developers and data teams. We're excited to welcome PopSQL’s founder, Rahil Sondhi, and the PopSQL team to Timescale.

The PopSQL editor
PopSQL is the SQL editor for team collaboration

With this acquisition, Timescale customers can now query their databases entirely in the browser or via desktop app; easily create visual dashboards on top of their databases; keep a history of past queries for reuse; collaborate on queries with others on their team; and even more coming soon. This integrated experience is available for all Timescale users today. 

We will also continue to maintain and improve PopSQL for the PostgreSQL and Timescale community to have access to a best-in-class UI for their databases, whether hosted at Timescale or elsewhere. PopSQL will still be offered as a standalone service to both new and current PopSQL customers (including its free plan) and still support other data sources (Redshift, Snowflake, BigQuery, MySQL, SQL Server, and more).

To get started, please follow this tutorial.

To understand why we are so excited about this, please read on.

PostgreSQL for Everything

“PostgreSQL isn’t just a simple relational database; it’s a data management framework with the potential to engulf the entire database realm. The trend of “Using Postgres for Everything” is no longer limited to a few elite teams but is becoming a mainstream best practice.” (source)
“One way to simplify your stack and reduce the moving parts, speed up development, lower the risk and deliver more features in your startup is “Use Postgres for everything”. Postgres can replace—up to millions of users—many backend technologies, Kafka, RabbitMQ, Mongo and Redis among them.” (source)
A diagram showcasing how Postgres can simplify your setup

One of the biggest trends in software development today is the emergence of PostgreSQL as the de facto database standard. Software is eating the world, data is flooding the world, and developers are drowning in data. This has led to a world of overly complex data pipelines. But complex pipelines are brittle, slow down development, and get expensive. The answer to this problem is not complexity but simplicity: “PostgreSQL for Everything.”

At Timescale, we have been PostgreSQL believers for nearly a decade. That’s why we built our business on PostgreSQL, why we are one of the top contributors to PostgreSQL, why we run the annual State of PostgreSQL survey, and why we support PostgreSQL meetups and conferences. 

But today’s PostgreSQL GUIs were built for the desktop era

But one thing has always bugged us: the lack of a modern graphical user interface (GUI) that worked natively with PostgreSQL. PostgreSQL was first built 30 years ago, long before the cloud, during the very early days of the Internet. The best PostgreSQL GUIs today were built for the desktop era and look like this:

A view of pgAdmin
A view of DBeaver
A bar graph from the State of PostgreSQL 2023 report, showing the most popular tools used with Postgres (psql, pgAdmin, DBeaver, Datagrip, and IntelliJ)

We have nothing but appreciation and respect for the teams who have developed these tools (and we are friends with some of them). But since these were developed, developer experience expectations have changed. In software development, VS Code has set a new bar. But for data tools, and PostgreSQL in particular, there is an opportunity to raise the bar. The right tool would not only look good but also be cloud-native, support real-time collaboration and version history, scale with large amounts of data and massive schemas, and be enterprise-ready.

PostgreSQL is the future, but its potential is limited by the lack of a modern GUI.

Enter PopSQL

Like many great products, PopSQL (pronounced “popsicle,” like the ice pop) was born out of the frustrations of an engineer. 

The PopSQL story starts in 2015, when Rahil Sondhi joined a small 150-person San Francisco startup called Instacart. Rahil’s previous company used MySQL, while Instacart used PostgreSQL. Unfortunately, the SQL editor Rahil used at his previous company only worked with MySQL. So he had to find something new.

Asking around, he found that different engineers at Instacart used different SQL editors, one of which was an internal open-source tool. All of the editors had annoying limitations: some only worked with MySQL or PostgreSQL, but not other databases; some only worked on macOS but not other platforms; most of them did not have great interfaces.

Also, none of these editors supported collaboration. As an engineer, Rahil had to do data analysis so that when he was making an internal case for something he could back his point with data. This meant he needed to share his work: not just the actual insights but also the underlying query and, ideally, a visualization. 

Doing so was a painful process. He had to export the query results to CSV, import them to a Google Sheet, and share that Sheet. But that Sheet was now disconnected from the query. So then Rahil had to save the raw SQL query somewhere others could access it (e.g., a Dropbox folder or Git repo). When his teammates wanted to see the data, they had to open that folder, find the SQL file, copy/paste the SQL into their SQL editor, and hope nothing went wrong.

After suffering through this disjointed experience, Rahil was convinced there had to be a better way. He wanted to build something better. Something that connected to multiple data sources, something that allowed for single and multiplayer editing, to let engineers collaborate on a query together and share insights.

He then teamed up with a friend, and PopSQL was born.

What is PopSQL?

PopSQL is a SQL editor that lets you write queries, visualize data, and share your results. Its autocomplete, schema exploration, and versioning features all make it a delightful way to work with data. PopSQL works as a desktop app or a web app, and can connect to PostgreSQL and Timescale, but also many other popular data sources like Redshift, Snowflake, BigQuery, MySQL, SQL Server, and more. Hundreds of thousands of developers and data analysts have used PopSQL to work with their data.

PopSQL's features include:

  • Schema browser: Understand the structure of your database and see usage data on tables and columns.
  • Real-time collaboration: Collaborate with your team directly in the SQL query editor with live presence and multiple cursors.
  • Autocomplete: Get suggestions as you type your queries.
  • Version history: Use the built-in revision history, or connect to a git repo if you prefer.
  • Charts: Visualize data right within your SQL editor rather than switching to Sheets or Excel.
  • Dashboards: Create beautiful SQL-based dashboards.
  • Schedules: Automatically refresh queries and dashboards to create push alerts.
  • Query variables: Use Liquid to parameterize your queries or use if statements.
PopSQL's SQL editor
SQL editor with autocomplete and query variables. Organize your team queries in folders
Inspecting your schema in the PopSQL editor
Inspect your database schema and see usage data on tables and columns
Several graphs with the number of daily visitors and orders, and the order sources
Create and share beautiful SQL-based dashboards

PopSQL helps teams of all sizes, from small startups to midsize companies, such as Udacity, Pipe, Vercel, Optimizely, and the Chicago Bulls, to large enterprises, such as Rivian, Target, Redfin, Lululemon, and more.

“It was difficult having everyone in different tools: Jupyter for data science, Chartio for analysts, DBeaver for data engineers. Jupyter was a bit too advanced for analysts, DBeaver’s UI was not friendly or easy to use, and Chartio didn’t provide the ability to show tables and columns within the schemas across our three databases (Redshift, Postgres, Athena).”

- Anima Sharma, Director of Analytics at Udacity

“PopSQL’s collaboration features have been game-changing and have really helped our non-technical users get comfortable with SQL and answer their own questions. It’s personally saved me 2-4 hours a week since they can now self-serve.” 

- Mark Scoptur, VP Product at FactoryFix

“Many business teams, such as Finance, now use PopSQL to get the data they need fast. They’ll write a query to get what they need, ask us [the data team] to go over the SQL and make sure it’s correct, and then it can be scheduled on a regular basis."

- Rowan Jacobson, VP Analytics at Jobandtalent

Timescale’s Mission

Timescale exists to empower developers so that they can build the future. 

We started because we were solving some hard sensor data problems for IoT. But rather than using an esoteric database engine or building a new time-series database from scratch, we embraced PostgreSQL. 

That was nearly a decade ago. Since then we’ve expanded to solving more hard data problems across AI, energy, gaming, machine data, electric vehicles, space, finance, video, audio, web3, and so much more. We’ve made PostgreSQL better, adding auto-partitioning tables (hypertables), native columnar compression, real-time materialized views (continuous aggregates), specialized functions for analytics (hyperfunctions), infinite low-cost storage to S3 (data tiering), consumption-based pricing for storage and compute, and much more. 

Overall, Timescale makes PostgreSQL powerful at every scale. Thousands of companies like Uber, Coinbase, Microsoft Gaming, HPE, Raytheon, and NextEra Energy run 100,000+ production databases on Timescale. They migrated to us because their previous solutions on Amazon RDS, Mongo, InfluxDB, and others were slow and expensive.

We believe that developers should be using PostgreSQL for everything, and we are improving PostgreSQL so that they can.

Timescale ❤️ PopSQL

We have long been fans of PopSQL. It’s the best SQL editor we’ve seen. Our engineers and data analysts use it internally. We appreciate the clean, easy interface, visualizations, and seamless collaboration. When we had an opportunity to bring PopSQL’s team and technology on board, we jumped at it.

Timescale makes PostgreSQL powerful at every scale. So we were especially impressed with the PopSQL team’s focus on ensuring the product worked at every scale: from solo developers to large enterprises who have complex data models with hundreds of schemas, thousands of tables, and millions of database objects.

Here are some examples of how PopSQL scales: Database schemas are incrementally fetched on the server side, so there's no bottleneck if you have an extremely large schema with millions of database objects. On the UI level, large schemas are virtually rendered and lazily loaded as you expand different schemas or tables. The team also spent significant effort making sure you get query results as fast as possible, without any added overhead. PopSQL streams query results to the client as soon as they're available, so you can start seeing the first few rows sooner while more stream in. 

Similarly, the PopSQL team chose Timescale because they realized the fit was amazing: Timescale, the best-in-class database platform, combined with PopSQL, the best-in-class SQL editor. Both companies also shared a passion for helping developers, and for making PostgreSQL successful.

More Coming Soon!

As they say, this is just the beginning. We’re now embarking on deeper integrations. Some ideas we are considering include developer notebooks for common queries; better experience for business intelligence via replicas; tutorials for learning how to use PostgreSQL; and more. If any of these sound interesting to you—or if you have other ideas—please let us know. 😊

Originally posted

Apr 04, 2024

Share

Subscribe to the Timescale Newsletter

By submitting you acknowledge Timescale's Privacy Policy.