
Falcon is a free, open-source SQL editor with inline data visualization - escot
https://github.com/plotly/falcon
======
chriddyp
Hello HN! Nice to see this up here. Chris here, cofounder of Plotly.

Falcon is open source and works without an internet connection or a Plotly
Chart Studio account. Falcon wires together our graphing library plotly.js
([https://github.com/plotly/plotly.js/](https://github.com/plotly/plotly.js/)),
the plotly.js chart editor ([https://github.com/plotly/react-chart-
editor](https://github.com/plotly/react-chart-editor)), Electron, and some
open source NPM packages for connecting to databases.

Just FYI - As a company (Plotly), we're spending most of our development
effort these days on Dash Open Source
([https://github.com/plotly/dash](https://github.com/plotly/dash)) and Dash
Enterprise ([https://plotly.com/dash](https://plotly.com/dash)). Truth be
told, we found that most companies we worked with preferred to own the
analytical backend. We also heard many stories of organizations running into
roadblocks with off-the-shelf SQL or BI tools (Falcon included!). Our approach
with Dash is to provide the visualization and application primitives so that
you could build your own tailor-made dashboards, analytical apps, or yes, even
SQL editors.

If you want to read more about where we're at, here's an essay we wrote last
week on Dash: [https://medium.com/plotly/dash-is-react-for-python-r-and-
jul...](https://medium.com/plotly/dash-is-react-for-python-r-and-
julia-c75822d1cc24)

~~~
fantyoon
Any reason the Github page advertises Windows and Mac but not Linux? I saw
that its built in Javascript and checked the releases page,you guys built a
Linux version too. Is it just something that, while possible, you don't want
to support officially with more than a build?

~~~
nicolaskruchten
Just an oversight :)

~~~
ies7
Thx for your pivottable.js, especially the jupyter notebook extension.

~~~
nicolaskruchten
You're welcome! I'm glad you like it :)

I wish I had more time to work on the Jupyter version but Plotly Express and
the JupyterLab Chart Editor keep me pretty busy at Plotly these days!

------
six2seven
Also see: Apache Superset [0] -- this one looks really like a fully fledged
data exploration and visualisation suite, being a possible free and open
source alternative to Microsoft Power BI [1]. Using the official / own image
can be also deployed as a service running in a local infrastructure.

Would be curious for a comparison between all the mentioned data vis suites in
this thread actually.

[0] [https://superset.apache.org](https://superset.apache.org) [1]
[https://powerbi.microsoft.com/en-us/](https://powerbi.microsoft.com/en-us/)

~~~
kfk
Quick comparison:

1) Redash and Falcon focus on people that want to do visualizations on top of
SQL

2) Superset, Tableau and PowerBI focus on people that want to do
visualizations with a UI

3) Metabase and SeekTable focus on people that want to do quick analysis (they
are the closest to an Excel replacement)

I have been using group 2) for 3 something years, I am not too excited by
them, Superset is cool, Tableau and PowerBI value has been blown out of
proportion by marketing. Group 3) is very promising but for some reason more
niche although because of their pricing structure they scale as well as Excel
(i.e. you can have thousands of users building stuff in Metabase no problem).
Group 1) not sure what to say there, I guess it would be my favorite but SQL
becomes messy after the first join.

The reality check is that none of those tools stands on its own. Without a
database, data prep and security setup they are more or less fancy toys.
Unfortunately very few companies understand how to set all of this up in a way
that users can actually work with it. So I keep seeing a lot of half done,
super expensive, setups in Tableau and PowerBI that have not delivered what
they were promising.

Also, I agree with chriddyp that most companies would rather own their
analytics for stuff that is customer facing. For internal facing dashboards
the dashboarding BI tools are OK (although I lean more on group 3) than group
2)).

~~~
rsmets
Curious where you would consider chart.io to fall in this ecosystem?

I have been using it for its seamless AWS Athena integration to get a handle
on load balancer logs when needed. However it is pretty pricey. Would love to
move to an open source solution. However my use case feels a little different
than what was mentioned above?

~~~
kfk
In theory you are saving some money for not using a database, redshift is also
pricey. Have you considered that? The free solution is python + altair in a
jupyter notebook, but you would have to decide if it is worth your time to
setup.

------
cetra3
Also see metabase: [https://www.metabase.com/](https://www.metabase.com/)

We use this to embed some nice dashboards & run queries to great effect. A
very powerful tool!

~~~
nikita2206
Last time we tried to use it there were real problems with date filtering in
SQL based DBs and it’s a must for big datasets that span over time (this looks
like the most common use case to me). Basically metabase would generate WHERE
condition that would like `date(date_column) BETWEEN ... AND ...` (or if you
were filtering by minutes or years this would be something else). This
prevents DB from being able to use an index on date_column and don’t even get
me started on why adding indexes for all sorts of `date(...)`, `year(...)` etc
expressions is not an optimal solution. I ended up fixing this in metabase and
opened a PR
[https://github.com/metabase/metabase/pull/9860](https://github.com/metabase/metabase/pull/9860)
Which was initially welcomed but then was ignored for a few months (we were
using our forked version in my company in the meantime), after which was
closed because they’ve fixed it differently and sure enough they did and it
was a neater fix architecture-wise. Just that it didn’t actually fix the
majority of use cases so there’s now new isssue opened with the same problem
described
[https://github.com/metabase/metabase/issues/11502](https://github.com/metabase/metabase/issues/11502)
And surely it’s ignored. Since then we migrated to a relatively simpler
Redash, we’ve found that none of the people at our company who were supposed
to benefit from GUI query builder never actually used it and only engineers
were building dashboards, and for us it’s obviously easier to write SQL. One
benefit of Redash I’ve noticed was that it allows you to schedule dashboard
queries to run for example every 10 minutes which means that amount of users
of the dashboard doesn’t add any load to the DB because they get cached
results and those results are relatively fresh at the same time.

~~~
throwaway_pdp09
It's usually easier to write SQL than drag/drop it. For complex joins having a
graphical view of the join structure (list? tree? star?) is very helpful if
you're new to it, otherwise no. And drag/drop tools don't cover complex stuff
like recursive CTEs, and often, simpler stuff too. IME, YMMV. Maybe better
graphical tools exist than the ones I have seen.

------
eloff
I want to find a way to incorporate this into a dashboard for suits. Seems
like it would let them solve a lot of their own requests - in theory. In a lot
of companies they'd probably still make requests to create the graphs and sql
queries for them.

Give a suit a fish and he's happy for a day. Teach a suit to fish and he'll
still be back tomorrow for his fish. Who wants to fish when you can get a code
monkey to do it for you.

~~~
mythrwy
I have experience with this. Give a powerful SQL editor to a suit and find
your data integrity borked beyond repair.

~~~
tracker1
For this, could probably dump/replicate to SQLite for archive/backup/point in
time... Or one-way replicate for reports.

~~~
eloff
I've used this strategy with a read only replica. It also protects the
database from long running and inefficient queries. Highly recommend doing
this if you have the budget for it.

------
kthejoker2
Not to be confused with

[https://github.com/uwdata/falcon](https://github.com/uwdata/falcon)

Another interactive data visualization tool named Falcon.

Both are pretty sweet.

~~~
zelphirkalt
Not to be confused with the API framework for Python.

The list probably goes on.

It's bad naming.

~~~
jrvarela56
My initial reaction is the same when I see names like these, but...

This happens everywhere in business/products/mom-and-pops even street names in
different cities!

Not sure why we’re so sensitive to software names, maybe hits close to home
with naming being one of the tough problems along with caching etc (sure
everyone knows how the saying goes).

~~~
rovr138
> Not sure why we’re so sensitive to software names

For tools that install in a machine, you can have things be overridden if you
install another tool of the same name. Binaries, libraries, or other assets.

------
tracker1
The funny thing to me is always how Oracle is the odd duck, requiring a
specific client install to use.. where as most other databases have
established protocols with open client library implementations.

~~~
sigzero
We use Oracle at work but I don't use any Oracle clients because you can
connect to it use JDBC.

~~~
tracker1
JDBC doesn't require the oracle client software to be installed?

\-- edit

Apparently Java is the one platform that Oracle supports without a separate
driver install... Though their driver is probably itself written in Java.

------
sandGorgon
This is a cool project - however Mac and Windows only...most likely because
they are creating the toolchain for this.

I would pay money to get something like this inside vscode - which is an
ecosystem that works great on all platforms and provides the hooks to build
something like this.

On that note, I think microsoft is making a mistake by not creating an app
store of sorts for vscode. VsCode is as good a desktop developer marketplace
as the play store is for mobile apps.

I wish that plotly had built this inside jupyter (where their Dash product
competes against Streamlit) or vscode. Building a desktop installer toolchain
from scratch, does not make sense.

~~~
Spiritus
Apparently it does support Linux as well. At least according to some of other
comments here.

~~~
dhruvkar
It does, I'm running it on Ubuntu.

[https://github.com/plotly/falcon/releases](https://github.com/plotly/falcon/releases)

------
jaxn
Does anyone know if the visualizations are savable/shareable?

I'd love to stop pasting screenshots in slacj

------
that_girl
Hey, looks great! Can't wait to try it out. I wish I could connect to
Snowflake.

------
nchase
What command line tools do people use to plot data?

I'd love to be able to write some SQL and pipe to CSV or directly to a tool
that will just spit out a PNG or SVG that has the data plotted.

Is gnuplot ([http://www.gnuplot.info](http://www.gnuplot.info)) the thing for
this?

~~~
nchase
Here's a thread on the topic:
[https://news.ycombinator.com/item?id=5215040](https://news.ycombinator.com/item?id=5215040)

------
escot
There are surprisingly few desktop apps for basic sql -> charts, so I was
happy to stumble on Falcon. It's similar to their web offering (or Periscope,
Looker, etc) and works quite well (regardless of a few UI quirks).

------
ssaunier_
For those on Rails, do yourself a favor and add this great engine:
[https://github.com/ankane/blazer](https://github.com/ankane/blazer)

Life-changing!

------
mrwebmaster
No Linux?

~~~
nicolaskruchten
ReadMe updated to include Linux link!

------
edshiro
This looks great! I had never heard of Dash either and it seems it is
precisely the tool we need at our startup to do data visualisation.

Awesome work. Will check all this out during the week-end.

------
snidane
I tried but can't connect to any of my databases.

Why not just support odbc/jdbc configurations?

Guys, this should be a solved problem.

------
mrwnmonm
Wow, this is great.

------
rmrten
Looks great!

