Hacker Newsnew | past | comments | ask | show | jobs | submit | more jackhodkinson's commentslogin

When I learned to program I was working as a scientist. I was relying on OriginLab (a scientific version of Excel) for my data analysis and it was a real pain. I decided to start using python for analysis and plotting and started with scripts and terminal interactivity, but found it too clunky. Jupyter feels more interactive when you are working with data because you need to explore the data and experiment with data manipulation in a way I found quite natural to do in a notebook.

Since then I've moved into software development where I rely on my IDE for any coding that involves working with more than a few modules. And as I got better working with an IDE I did gravitate toward making a script for certain kinds of tasks where I use to reach for a notebook, but there are still many data analysis tasks that I would much prefer a notebook for.

It's also quite nice to share a notebook with someone to show them how you arrived at your conclusions, and it's nice for them to be able to take your analysis and modify it or test their own ideas on top of yours. Obviously the notebooks are not great for collaboration without some fiddling around with git, but they are still very good for this kind of collaboration.


Is this it? https://www.sagemath.org/

This looks like a programming language built on top of Python.

Satyrn only supports the Python programming language right now.

If you are using this on the regular, I'm curious if you have tried Julia or Mathematica, if so why do you use Sagemath over those alternatives?


There are many reasons to use Sagemath.

It unifies multiple existing open source math libraries and packages. It integrates with Octave, Scilab, Maxima, etc. It also integrates well with LaTeX... you can take results, format them as TeX and also render them.

Its objective is to be a replacement for Maple, Mathematica and MATLAB, which are prohibitively expensive for many people. As such, once it's installed it comes with batteries included and you can easily share workbooks that others can run without falling into a DevOps-like situation.

The DSL that is offers can be more convenient than Python.

There are some interesting quickstart tutorials here https://doc.sagemath.org/html/en/prep/quickstart.html

And it was also discussed earlier on HN here, with many comments that are more informed than anything I could say at this moment: https://news.ycombinator.com/item?id=23511183

I tried JetBrains DataSpell as a desktop frontend for Sage and the results were not good.


> If you are using this on the regular, I'm curious if you have tried Julia or Mathematica, if so why do you use Sagemath over those alternatives?

Sagemath has pure math stuff. Julia does not. Sagemath can do lots of cool symbolic calculations like rings, quotient rings, algebraic curves, etc. Mathematica has some of this functionality but it's not free.


It can be confusing. The key is that you probably have multiple versions of python installed on your computer (that's normal). Secondly, the default "kernel" in Jupyter was probably not the one you used to install torch.

I'd suggest 2 things to help: 1. Try `pyenv` for python version management 2. See this tutorial for how to create a virtual environment and add it as a Jupyter kernel: https://selvamsubbiah.com/run-jupyter-notebook-in-a-virtual-...

Satyrn makes it easier to add virtual environments as a kernel, but you still will need to create the virtual environment and install torch there yourself.

That's a really great point you made about how confusing it is to pip install stuff with `!pip` when working in the notebook. Right now Satyrn does not support the `!` commands, but I will add this soon and try to make it so `!pip` works with the expected virtual environment you are working with.


Thanks for your feedback! I'm looking into this. I'd also really like copilot here.


I'll work on making them easier to configure.

At the moment you press `g` (for generate) while in command-mode to create a "prompt cell". I'll think of ways to make this more obvious.

Appreciate you spending the time to try it out and share your feedback.


Thanks for your feedback!

If you'd be happy to share: I'm curious to know what scientific field you work in? Do you do 100% computational work, or is it a mixture of experimental and computational?


Sure. I do algorithm development at a biotech company, it is 100% computational work. I am not a software developer by training, my background is in mathematics.


I agree! At the very least I can port this to Tauri to make it have a smaller footprint.


Since your app is currently Electron I'm surprised it doesn't work with Windows. Would it be hard to get the app to play nicely with Windows?


Might be some useful things you can do with the Tauri rust backend too


That contribution to Zed from rgbkrk looks awesome.


Not yet! But I'm working on this :)


That will be interesting. Happy to test and share feedback. Previously, I was a part of the DataSpell and PyCharm team building notebook support. Now working with dstack, where we support dev environments and super interested in remote support.


Thanks! I'll let you know when it's ready. What do you use now to work with remote environments? JupyterLab or VS Code?


We use a self-hosted JupyterLab. I would love to have an external tool though our existing workflow isn’t too bad.


Right now, mostly VSCode - mainly because it’s a desktop IDE and it also supports notebooks.


I use jupyterlab via an SSH tunnel


ah, I def need remote for my current use case - the web interface just isn't that nice to use!


This is the feature, I want.


Agreed, that's a big one. I'd love to add that capability to Satyrn too.


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

Search: