Live data from Hacker News

Launch HN: Neptyne (YC W23) – A programmable spreadsheet that runs Python

news.ycombinator.com

1–10 of 221 posts

Launch HN: Neptyne (YC W23) – A programmable spreadsheet that runs Python

#1
Hi HN! We are Douwe and Jack, founders of https://neptyne.com. Neptyne is a programmable spreadsheet that runs Python. It’s like Google Sheets, but for software engineers and data scientists. If you have three minutes, go to https://neptyne.com/neptyne/tutorial and it gives you a taste.

The world runs on spreadsheets, and for good reason: they are a universal data canvas. But building on top of and around the spreadsheet is clumsy: limiting scripting environments, APIs and file formats get in the way of making the spreadsheet a part of a broader application. Excel workbooks become monolithic and unmaintainable. Google Sheets data become static and stale.

Both Excel and Google Sheets offer some level of programmability but we have yet to find any user who liked the experience. It’s harder than it should be, using programming languages that are more limited than you expect. With Excel you've either got VBA or an extension like pyxll to deal with. With Google Sheets, your options are AppsScript or the REST API. These tools are mediocre but the need for programmable spreadsheets is such that people use them anyway.

With Neptyne, the spreadsheet itself runs in the Python runtime, so you can write to it or read from it like an in-memory data structure, because that's exactly what it is.

Neptyne primarily solves problems that exist at the boundaries of what other spreadsheet tools can do. We make Python a first-class citizen of spreadsheet-land, meaning you don't need a clumsy integration or extension to make your code work with spreadsheets. You can use standard off-the-shelf Python libraries to build on top of an Excel-like spreadsheet environment to build collaborative applications. You mix Excel style cell addresses (A1, C3) and ranges (B2:B20) with Python code (e.g. `A1 = "foo" if B2 > 0 else "bar"`, or `for num in B2:B20:`).

Before starting Neptyne we worked at Sidewalk Labs, where we built models in Python that would typically be shared or used via spreadsheets on an interdisciplinary team. The final step of many pipelines was "write a .csv with the results", which was a great way to share data but only in one direction. What we really needed was a way for users to interact with our Python models through a spreadsheet: tune inputs, see results, make quick aggregations. After making some version of this work with the Google Sheets API, we knew this could be better. What we wanted was basically a Jupyter notebook embedded in our spreadsheet, that could give us the full power of Python while keeping the accessibility of a spreadsheet. We built a proof of concept, found some interest in it, and formed Neptyne.

Neptyne differs from lots of modern takes on the spreadsheet tool in that we really wanted to preserve the "data canvas" nature of a true spreadsheet. While there is value in making spreadsheets more like SQL databases with column-based types and formulas, Neptyne gives you the freedom to structure your spreadsheet as you would with Sheets or Excel. Mix and match data types, table dimensions, graphs, charts, and buttons as freely as you might with those tools.

Neptyne behaves exactly like a spreadsheet but is secretly an alternative frontend to a Jupyter Notebook that has an embedded spreadsheet engine. Because it runs a Jupyter kernel, we support anything you can run in a Jupyter notebook, including all the expected visualization packages (matplotlib, plotly, etc.). This is not merely scripting using Python—you can use any (stateful) Python framework to get serious work done.

Things users have built with Neptyne so far include a Twitter bot, a private spaceflight schedule optimizer, and a CRM that pulls from several different data sources.

Neptyne's basic tier is free to use. As we add more capabilities to the product, certain features will be introduced at paid tiers. For individuals building interesting stuff to be shared with the community it will always be free. For teams that need private documents, sharing and custom images, we will charge a team fee.

Here’s a link to some videos: https://www.youtube.com/@neptynehq that show how Neptyne works. If you really want to get a sense of the product, the best way is try out our three minute tutorial: https://neptyne.com/neptyne/tutorial.

We’d love to hear about things you’ve built in spreadsheets and what new things might be possible with a native Python integration! Fire away!

Re: Launch HN: Neptyne (YC W23) – A programmable spreadsheet that runs Python

#3
I can't understand how this will improve the work. I see the value of having python instead of sheets formulas for python developers, but developers would work on totally different toolsets (like Jupyter notebook, as you mentioned), or something like StreamIt or https://gradio.app/

This would be useless for spreadsheet users (those who use sheet formulas) as they have to learn python.

I'm not in the target audience, so I might be completely wrong about the use cases.

Re: Launch HN: Neptyne (YC W23) – A programmable spreadsheet that runs Python

#5
post #3

I can't understand how this will improve the work. I see the value of having python instead of sheets formulas for python developers, but developers would work on totally different toolsets (like Jupyter notebook, as you mentioned), or something like StreamIt or https://gradio.app/ This would be useless for spreadsheet users (those who use sheet formulas) as they have to learn python. I'm not in the target audience,…

(co-founder of Neptyne here)

You're spot on in that, if you're a Python developer, you're probably using Jupyter and/or Streamlit, gradio, etc. and spreadsheet users are most comfortable with Excel-style formulas. What we've done with Neptyne is create an environment where teams of both types can be productive in a shared environment: the usual spreadsheet formulas are there, and so is a full Python/Jupyter runtime.

As with any tool that attempts to combine the best of multiple great tools, there's always the risk that it falls short of one or the other. Our aim is to make Neptyne a better alternative to both standard spreadsheets and Jupyter notebooks.

One more thing that surprised me a bit: in talking to spreadsheet power users, you see a lot of interest in using more Python. Neptyne is a great way to start off with a spreadsheet and gently incorporate more Python into your work!

Re: Launch HN: Neptyne (YC W23) – A programmable spreadsheet that runs Python

#7
post #2

I had three minutes, clicked tutorial and got a modal asking me to sign up. Left the page.

I didn't even get three minutes; as soon as the page opened, I couldn't do anything without signing into Google or creating an account. Closed the tab.

Re: Launch HN: Neptyne (YC W23) – A programmable spreadsheet that runs Python

#8
I may be wrong, but most people that know python have already understood there's better ways to code than spreadsheets. Also, at least where I live, not even Google could undermine Excel's dominance.

PS: I'm convinced I was indeed wrong after reading replies, because I didn't consider the interaction of coders with no coders, and this tool may indeed be useful. Nevertheless I maintain these cultural changes are very hard, and wish the company good luck!

Re: Launch HN: Neptyne (YC W23) – A programmable spreadsheet that runs Python

#9
Traditionally the business is the source of spreadsheets (data comes from the biz side of the equation). The data analyst then has to make sense of the data.

So to convince a BA to input their data on Neptyne because the DA might need to python script it at some point is maybe premature optimization.

That's an uphill battle... But I definitely see it a good case for me personally as someone who both originates data (nothing fancy) and needs to process it further...

Will definitely check it out!

Post reply on HN