I would like to see an option to make a copy of the analyzed data and/or a hash value for it.
Launch HN: Evidence (YC S21) – Web framework for data analysts
21–30 of 94 posts
Re: Launch HN: Evidence (YC S21) – Web framework for data analysts
#22How do you handle live data vs fixed data? If I am making a report, I want the charts to remain static - if not, over time, they may not match with what is said on the report. Is there an option to, after saving the report or run the query, to make the values static forever?
This is an excellent question, and it's one of the areas where we think we can do some pretty novel things with our approach. There are a two main cases of this idea that we have spent time thinking about. 1. Truly static report. Here, you would need to condition your SQL queries so that they continue to return the same results over time. E.g. your `where` clause restricts the results to 'on or before' the day of wri…
Kudos on the launching anyway!
Re: Launch HN: Evidence (YC S21) – Web framework for data analysts
#23We used to build custom, turn-key machine learning products for enterprise. Recently, after playing with things like Voilà, Streamlit, and Superset, we made it possible for our data scientists and ML people to show prototypes and applications right from the platform, without worrying about creating a VM, setting up the environment, scp stuff, create an application, configure a server, set up authentication, send a link to the client, etc.
I can envision doing something similar with Evidence. Given it's markdown, could we imagine having a Jupyter notebook containing markdown cells that somehow use Evidence? Could this be a JupyterLab extension?
I'm asking this because we have live collaboration / collaborative editing notebook on the platform, with access to external data sources such as S3 as if they were filesystems, so several people could collaborate on the same notebook, see cursors and selections of others, etc. Why not do that on Evidence work as well:
- I start a notebook. Add a Markdown cell. Some magic, I can do whatever it is I can do to generate reports with Markdown.
- Share the notebook with other users. We get together and work on that visualization/report.
Tangent: Something that kind of sucks is that some clients send us a database dump as a file, plus all other miscellaneous data. We have to create a MySQL database from that dump. It's not a big deal, but we don't like it.
Re: Launch HN: Evidence (YC S21) – Web framework for data analysts
#24Earlier quoted context omitted.
This is an excellent question, and it's one of the areas where we think we can do some pretty novel things with our approach. There are a two main cases of this idea that we have spent time thinking about. 1. Truly static report. Here, you would need to condition your SQL queries so that they continue to return the same results over time. E.g. your `where` clause restricts the results to 'on or before' the day of wri…
Thanks for answering. The approach about adding the date on the where clause may not work. I may receive/ingest more data from that point in time after I made the report. Of course, the report wouldn't be updated, but I'd prefer to have an updated report that says "We did it witht he data available at this time" and not one that says one thing but shows a different thing. Kudos on the launching anyway!
Re: Launch HN: Evidence (YC S21) – Web framework for data analysts
#25If your app is built on Node it's got an unwieldy amount of dependencies which frequently have security issues and something like Postgres is usually only viable as an online service you're self-hosting, and those things get hacked. So redbean is really a no-brainer if you want to protect data without making life difficult for the people who are authorized to look at it. We're also looking at integrating QuickJS soon, as an alternative to Lua, so there should be a painless migration path for Node folks.
Re: Launch HN: Evidence (YC S21) – Web framework for data analysts
#26Have you heard of knitr ( https://yihui.org/knitr/ )? It's the gold standard as far as I'm concerned for dynamic report generation that needs to run code. Since it supports running arbitrary shell commands, it can already be used to query remote databases as long as you have a CLI to query them with. Combined with RMarkdown ( https://rmarkdown.rstudio.com/ ), which augments Markdown with support for LaTeX typesetting…
I have written a lot of R Markdown over the years, and I agree wholeheartedly with most of what you're saying. The R ecosystem is phenomenal. Anyone who is excited about our project, might be 10x more excited about learning R and writing a report with R markdown.
A big part of why we are building Evidence is that my co-founder Sean and I felt like we lost a lot on the presentation side when we graduated from notebooks to primarily working with data warehouses, dbt & BI tools.
The thing is, we gained so much from that transition to 'the modern data stack' that we would never go back. So we're setting out to fix the presentation layer in a way that would have worked for us.
Undoubtably, anything that you could accomplish in Evidence is going to be do-able within the R Markdown or jupyter ecosystems, so I won't try to claim any truly unique features. It's maybe more of a vibe: what's easy in Evidence vs. what's tricky in a notebook?
If you're writing an ML paper, R markdown is definitely the move. If you're trying to build a common, internally consistent understanding across hundreds (thousands) of people about how your business is doing, and what they might do about it, Evidence is going to be a better fit.
Here's a comment from awhile ago discussing the comparison with Jupyter: https://news.ycombinator.com/item?id=27363349
It only supports SQL and Markdown:
That constraint is part of the point.
In a large organization, a fair number of people are going to contribute to your reporting apparatus, and you want to keep it in a state where you can re-factor useful abstractions up into your data warehouse. This gets a lot harder if your reporting is a swirl of R scripts and python snippets and whatever else.
Some order of magnitude more people know SQL and markdown than R or Python. Every business I have been involved in has someone there who is cranking out analysis and data pulls using SQL. Very rarely would that person be comfortable working in R markdown.
You can't in-line an ML model into your reports:
Again, we think this constraint is basically a good thing. If you have a model that is profitable to your business, it should be governed and executed in a purpose built environment and, where feasible, you should be storing the relevant outputs for posterity in your data warehouse.
We will add instructions on setting the port! :)
Re: Launch HN: Evidence (YC S21) – Web framework for data analysts
#27Have you heard of knitr ( https://yihui.org/knitr/ )? It's the gold standard as far as I'm concerned for dynamic report generation that needs to run code. Since it supports running arbitrary shell commands, it can already be used to query remote databases as long as you have a CLI to query them with. Combined with RMarkdown ( https://rmarkdown.rstudio.com/ ), which augments Markdown with support for LaTeX typesetting…
This looks more like it's made for an Analyst who mainly uses SQL or Excel.
But if it makes me more productive that Jupyter Notebooks for simple reports, I'll give it a try.
Re: Launch HN: Evidence (YC S21) – Web framework for data analysts
#28This is very cool and something that appeals to me as someone does a blend of web and data work. A constant problem I run into is making good reports quickly. Like you mention, I don't have time to hand code it, but no code dashboards are both slow and tedious to make and the quality is terrible. I have a couple questions. 1. I work in research and we use a lot of strange databases and query languages, how hard would…
1. Yes, if you have specific DBs, please feel free to create an issue on Github. We're also working on opening up the DB connector ecosystem so that people can add their own. I've also opened an issue for CSVs, I think we could support them pretty seamlessly.
2. Evidence is actually pretty slick in this regard. This is one of the benefits from starting from a web framework and working backwards towards the data analyst, rather than starting from Jupyter and trying to work forwards (if that makes sense).
The markdown documents compile to svelte components, so you can just add tag, and/or a tag right into your .md file. d3 works pretty seamlessly in svelte, so you can go nuts. The other neat thing is the styles scope themselves to the
We haven't written the docs for this portion yet, but you can also add global svelte components to your project, so if you wanted to write something re-usable you can write it that way, and then just import it into your reports to use it as a component. In either case, you could call out to other APIs if you didn't want to retrieve data via a SQL query.
As an example, an add-on component library we'd like to build is an interface to FRED data from the St Louis Fed. That way if you just need a quick chart of GDP, or you want to add recession shading to one of your charts, you can just drop it in without having to load that data into your database. that type of thing.
Re: Launch HN: Evidence (YC S21) – Web framework for data analysts
#29Very cool! I struggled with this exact problem at a previous role to generate reports from the results of a simulation codebase. Ended up learning and using Django, which always felt overpowered for a simple static report. Excited to see how the product develops!
Re: Launch HN: Evidence (YC S21) – Web framework for data analysts
#30Very cool! I would like to see an option to make a copy of the analyzed data and/or a hash value for it.
There are also some other great products doing data diffing, like datafold that might fit the bill here.