Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Ultorg: A user interface for relational databases [video] (hytradboi.com)
355 points by mjadobson on May 3, 2022 | hide | past | favorite | 67 comments


I've been using Hasura and TablePlus a lot lately, and actually wished for something that combines them.

Hasura is great at understanding relations and making joins feel effortless and TablePlus is so good at making table editing feel as fast as excel.

This looks like it's the thing, with some extra power thrown on top (formulas and nested layouts are nice!).

The UI looks drab, but maybe that's ok? It means the functionality needs to be so strong it doesn't matter. It also looks super snappy which matters most.

Something that Airtable has over relational database GUIs is lightweight enums and arrays of them. Sure you can model all that in SQL, but it's super useful to have it right inline. I hope this tool can pick up on a pattern like enum tables (like hasura) and provide UI that makes them look like tag list/select fields.


Check out https://xata.io/ We've taken a lot of inspiration from Airtable and applied it on top of a real database, so it sounds quite similar to the feature set that you are describing. We're in closed beta but I'm happy to give you access if you want to try it.


+1 for TablePlus! I absolutely love them for the fast editing as well as quick and dirty filters. Beats typing SQL for simple stuff. These quality of life features are really underrated. Absolutely worth the yearly fee!


I feel like they see themselves as a database management tool, but with just a few tweaks (good UI for working with relations), could be a FileMaker / Airtable contender.


You should take a look at Directus [0]. It's much lighter than Hasura.

[0] https://directus.io/


Hasura is a rock solid piece of software that does pretty much exactly the right thing for me. Performance exceeds expectations and it's never once crashed or been the source of a bug in years of use. "lighter" is not convincing. Directus looks cool in the CMS/no-code space, but as a backend API hub I don't see anything there that would tempt me over hasura.


You're not looking for it but datagrip seems to be able to do exactly what table plus does while also being a full fledged SQL IDE (for the same price).


Related: I'm enjoying the format of the HYTRADBOI (have you tried rubbing a database on it?) videos. It doesn't have that live-presentation feel of an in-person conference talk, but as I'm behind a screen anyway I don't really care about that. Give me the information succinctly, so I can watch it during a coffee break or whatever.

The organiser of the conference had an interesting (and likeiwse pleasantly succinct!) post-mortem write up of the event, if anyone is interested

https://www.scattered-thoughts.net/writing/hytradboi-2022-po...


Here’s some more information on Ultorg:

> Ultorg creates general-purpose software that helps organizations manage their data. Based on a new method for interactive data visualization, our product combines ease-of-use with expressive power to allow end-users to query, display, and edit relational data, without resorting to custom programming. This fills a long-standing gap between spreadsheets and tailor-made database applications. [0]

I find it inspiring that it has such readable and space-efficient interface, compared to current trends in many web apps.

[0] https://ultorg.com


I wonder how much the data in the demo helps sell the readability and space-efficiency. Like anything looks tidy if there's 3-4 rows of data being joined. But that sort of well behaved small-scale hello world database isn't difficult to work with in any tool.

How does it handle if the table I join pulls in a thousand matching rows for each key?


There's a dataset like that in the demo at https://vimeo.com/manage/videos/553439658 . Ultorg handles larger datasets through a number of strategies: (1) automatic LIMIT clauses with an infinite scroll like mechanism, and with various rules to deal with the nested data structure, (2) a multi-threaded UI that keeps the visual query representation responsive even during long-running queries, (3) automatic cancellation of ongoing queries if the user makes a change, e.g. to add a filter, (4) "frozen" headers and values that makes the data make visual sense even as you scroll down multiple pages, (5) a separate "single-column" form layout type that works well when you have a few grouping fields followed by a long subtable, and a few others.

(Author of Ultorg here.)


> I wonder how much the data in the demo helps sell the readability and space-efficiency.

This is a very good question.. In the section of the video on automatic form layout it is strongly implied that the auto-layout is driven by semantic inference of the column names. I see this easily breaking -- anyone who's ever inherited a production database knows that column names are often cryptic or context specific.

Also makes me wonder how well that system handles databases with non-English identifiers?


Column names are used primarily to inform the detection of "heading" fields, i.e. fields that should be given a larger font in the form layout, or fields that should be shown by default when adding a join to another table. The other heuristics are based on things such as data type, average length of strings, and average join cardinalities.

(Coincidentally, the system is named after a cryptic, context-specific column name in a real dataset the author once worked on.)


> I find it inspiring that it has such readable and space-efficient interface, compared to current trends in many web apps.

Agree.


> our product combines ease-of-use with expressive power to allow end-users to query, display, and edit relational data, without resorting to custom programming. This fills a long-standing gap between spreadsheets and tailor-made database applications.

How does it compare to Access or LibreOffice Base? That's always been the next step once the spreadsheet proves inadequate.


Microsoft Access was an attempt to do the same: provide a user interface to a relational database. But it was never as easy to use as Excel, or the other office applications. There are still quite a few MS Access files around in government and legacy corporate datasets, and Ultorg can connect to them.

Back when Ultorg was an academic project, we did a controlled user study comparing Ultorg's visual query interface (then called SIEUFERD) to Microsoft Access' query builder. Using the System Usability Scale, Ultorg's usability was in the 52th percentile (better than 52% of business software), while Microsoft Access was 6th(!) percentile (better than 6% of business software, i.e. worse than 94% of business software). (Source: https://people.csail.mit.edu/ebakke/research/sieuferd_sigmod... )


I’m honestly really blown away by this. Are there other such tools out there that do a similar thing?


https://dbeaver.io/ is an open source tool with community and commercial builds that's quite mature and capable. I don't like SQL or database administration very much so it's become my go-to utility if I need to look at an unfamiliar DB. I've never had any problems with it though I keep a copy of SQL workbench around as it seems to perform better on large projects.


dBeaver is awesome and the best thing its free and open source. There is enterprise version tat includes NoSQL databases and some other stuff.

It also has vertical row view (swith by using TAB) that is great help when when you have lots of columns.

If they ever add option to join columns like this app, it could pretty much replace it.

Metabase is another one.


This is the most interesting thing related to databases I've seen in years.


I agree. This is better than DataGrip that my employer gives me.


https://github.com/dbgate/dbgate is an open source SQL IDE that automatically join data from other tables through a similar interface


From the screenshots, the interface doesn't look similar at all. Thanks for pointing out dbgate though, I am downloading it. ;-)

I really like Ultorg's grasp of how to display 3-dimensional+ data. That form generator shown in the video was really smart too.


I've been writing SQL for so long it's second nature. I have tried these GUI tools from time to time but for me, nothing beats just writing SQL in a text-mode window. I use emacs and whichever sql mode is appropriate for the database I'm working with.

If I don't understand the data model well enough to know how to write joins to get what I need, I have never found that a GUI helps me very much.


I think one big advantage of GUIs is safety. There's no shortage of people who accidentally typed a bad command in production.

GUIs usually don't let you operate on anything you can't see, so it's harder to do the wrong thing by selecting something without looking at it.

Like with dd, you can type /dev/sdWrongDrive and never see anything about the device. With a GUI you will click a button that says "Root Device: 67GB free of 128GB" and instantly see it is not your blank SD card.


I have not seen a GUI tool of this sort that is substantially safer than a command line tool. If you're letting users do things like deleting or altering production data with any kind of ad-hoc tool, you've got a bigger issue than what the specific tool is.


Judging by meme threads, and comments on them, it seems like unfortunately nobody got the memo that it's a bad idea.

The usual issues are things like a select without a WHERE, least with a GUI, the tool can ideally do a select before any modifications happen, and say "You're about to affect 39482 rows out of 39482 total".

I suppose you could do things like parsing the SQL, figuring out the intent, and generating the select call, and throwing an error if it can't pre-check things on the CLI, but GUIs also have a speed bump effect that keeps the confident power user types from moving faster than their heads, and different expectations.

People seem to expect command line tools not to have layers and layers of confirmations and hoops to jump through, and the people who want this stuff probably prefer a GUI.


Not a tool but Django admin has also a similar concept. You define the models as Python classes and it provides an abstract CRUD user interface. It also supports one-to-one or one-to-many joins, so you don't have to generate or write a CRUD app from scratch.


Sigma is a BI system with a visual manipulation interface for query construction (Workbook) that has similarities with Ultorg.

https://www.sigmacomputing.com/


Datastation is sorta similar but in my brief experience the description is more aspirational at this stage.

https://datastation.multiprocess.io/


Hey thanks for the shoutout and trying it out!

It is indeed early stages (I started it not yet a year ago).

I'd love to hear any feedback you've got.

In general every release gets more stable, more automated tests, better performance, etc.


Per some of the other answers, you might want to check out this discussion from last year:

Ask HN: Best low-/no-code solution for simple web-based database frontends

https://news.ycombinator.com/item?id=26657803

(208 points on April 1, 2021 | 142 comments)


Yes, tableau


Access, Salesforce


LINQPad


Related:

Ultorg: A General-Purpose User Interface for Relational Databases (2020) [video] - https://news.ycombinator.com/item?id=29647880 - Dec 2021 (13 comments)


Someone who builds something like this in form of an Excel plugin will have a real winner. And if you do, and when you make your millions, please send me a check as a show of gratitude :)


Are Excel plugins really a valid market?

I know there are some but I wonder what the size of the entire segment is... 95%+ [<- random large percentage] of places will never allow installation of anything extra!


Essbase and its Excel plugin is a notable exception.


Excel plugins are unfit for this as the app enforces a perfect grid


In Google Sheets I can merge cells horizontally or vertically, does Excel not have that?


Excel does, but merging is not a "best practice". It breaks navigation and causes all sorts of annoying UX issues.

Still, it's unmanageable to replicate the grid in TFA (TFV?) by merging/un-merging cells


I've used the Ultorg beta for some experimental data UIs in house. It's still early days, but the tech is sound and the ability to construct multiple different views into the same set of data is very useful.

Performance is pretty good overall given the complex queries it may have to juggle behind the scenes.


Surprised there isn’t SQLite support. Perhaps it’s in the works. Also surprised this is a native app, would have expected a web application. In any case, compelling demo.


> Also surprised this is a native app, would have expected a web application.

who is going to pay for a database access tool that requires you punch an incoming hole in your firewall?


The same idea/designer applied to a web based CRUD app development tool would do well though. If Airtable/Quickbase/etc took some of these ideas, it would be much faster to churn out CRUD apps.


A bunch of the database IO in it is JDBC based, so a web app probably isn’t going to happen.


Database drivers are commoditized on all major language runtimes. I don’t think this is a reason for it not being a web app.


This is literally my dream project I never had the time (or honestly technological expertise) to build...

I have some other very opinionated ideas on a couple other layers to this problem that I hope to try to investigate in the next 12 months or so


I like the idea. But I‘m turned off by the fact that there is no pricing information. Just a request access action button.

Maybe it’s vapor ware. Maybe they are checking market interest. Maybe they are looking for large pilot customers. I don’t see a product for me.

The discussion here is still interesting and I‘m grateful for the mentioned alternatives.

As for my pricing limits? Probably something between 10-50 USD per user per month, where at 10 USD I would very seriously look into it and at about 50 USD, I would have to carefully run the numbers.


Here's my anecdote: I requested access and got a download link in an email from the founder shortly thereafter. I found out about it from https://news.ycombinator.com/item?id=30871660. You seem like someone that would be ideal for the private beta as a potential paying customer. Might help him out.


I filled out the form to get access, and I got it about a day later. It's free, and it didn't ask me about anything else.

As far as I can tell it's above beta quality, so definitely not vaporware.


What GUI toolkit is this using? Is this native?


Looks like Java Swing to me, or something in that area. This isn't open source, but the author's github has primarily Java projects including an old swingx fork. https://github.com/eirikbakke?tab=repositories


Here's an amusing project: a program that benchmarks the user of a database software, to measure its ease of use.

https://github.com/eirikbakke/SDEBM


It's Java/Swing--same stack as IntelliJ. Though the IDE-like parts (window system etc.) are from the NetBeans IDE, which has a very good application development platform. Also a shoutout to Karl Tauber's excellent FlatLAF library ( https://www.formdev.com/flatlaf ).


I like the concept of converting a database into an application. I don't know why but it reminded me the Aspmaker product, I've been using it in highschool times and I created so many admin panels with it.


Also Delphi ecosystem had so many that kind of components such as DataGrid, DataView, etc. I remember at that time almost all the ERP, CRM applications were using Delphi and a component suite called Devexpress. Nowadays everybody using React :)


Feels like GraphQL graphically combined with Excel. What Airtable could’ve been.


Man this looks amazing. I've been wondering why something like this doesn't exist yet - or at least with this level of quality.

An alternative I use is Jailer[1]. It's great but can be quite confusing to use so I hope this takes off.

[1] https://wisser.github.io/Jailer/


This is really cool! I hope this gets more traction


Reminds me a lot of https://sigmacomputing.com


My first ever programming gig was converting a small business's back-office MS Access database into a CRUD web application. Sure, I made it look all pretty, but if this had been available back then, I would've been out of a job! Super impressive work!


Awesome tool the UI is really smart.

Shameless plug: I built a similar, web-based tool for exploring a database at www.human.software


The sign up button does not seem to work so I was not able to try it. Also, the FAQ's on the home page are gibberish.


Thank you for taking the time to check it out tacotime :-)

I'm looking into why sign up didn't work for you, the UX where I allow people to sign up and sign in with the same UI might be at fault here (I don't see any failed signups in the backend). I will simplify it and update the FAQ. Grateful for your feedback.


Signup fixed, now updating the FAQ




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: