Hacker News new | ask | show | jobs
by jypepin 3723 days ago
One of our data analyst had fun drawing all the shots from Kobe during his whole career. He did everything on jupyter, which I discovered at that moment, and was mind blown on how well it worked and how powerful it is.

I don't think I would ever use this tool as a seasoned software engineer, but I can definitely see the power it has for newer people who want to learn, or simply people like him who know a little bit of code and just wanted to run it.

Congrats to the team building this tool!

4 comments

Your comment implies that using a Jupyter notebook is a programming crutch for those who are not skilled. That's far from the case; Jupyter notebooks allow for logical separation of code and output, which is important for comprehension.

It also allows for reproducibility of results, which is arguably even more important, especially in the data science case.

sorry, maybe my comment is wrong because of my lack of knowledge about the tool (I've seen it used 10 minutes) but it's seems like it's a nice UI replacing what a terminal does, if I'm right. So all I'm saying is, since i'm confortable using a terminal, and I'm usually already there using vim, etc., then it's more convenient for me to test stuff in my terminal than going into my browser to test in jupyter
Right, but what if you want to combine your test commands, their output, and comments? Share that with other people? Let them change things and re-run the examples in the same place? NOW you're cooking with notebooks.
that's a fair point. I'll look more into the tool then :)
no, you miss the point of the notebooks. You use it to tell story.
As a seasoned software engineer, I use it as a persistent, better-organizable shell. Even when working on a remote host, I forward its port and work there rather than open a shell on the remote machine, and I'm someone whose IDE is vim.

It's just much better when you can see all your functions in one place, edit a function far back and have the changes propagate to the last command you ran.

makes total sense :)
I went back and read more about notebooks. You are right, I totally missed the point, my bad :)
How do you get graphs and images in your terminal?
I totally get the use for that, but I usually don't do this kind of things, which is why I said that I could see how amazing and powerful the tool is and don't see myself use it intensely
You never test drive libraries or pieces of code in a REPL before you integrate it into your application/codebase?
This is what I've been using it for lately.
exactly. But I'm already in iTerm using vim, so I use the iTerm repl instead. Not saying jupyter wouldn't do a great job, just that seems more convenient to use what's in my environment instead :)
The nice thing about Jupyter notebooks is that rather than having a command history which can be unwieldy when tweaking functions, you have cells that are easy to go back and edit. Additionally, when you're done with your experiments you can tidy things up, stuff a few markdown comments in there and you have a nice tutorial for other developers.
can you comment on why you wouldn't use it? I am somewhere in the middle of software engineering and (biological) data science. I have seen some jupyter notebooks as companions to genomics software and I enjoyed those presentations. I was considering using it in the future based on that; so, I wanted to hear your thoughts.
As another "software engineer", I can say that we simply don't ever need a tool like Jupyter for our jobs. It's excellent for exploratory programming, research, and publishing -- but it's not really meant for software development.
I kind of missed the point of how notebook are used (and should be) and it seems actually very interesting :) So you should definitely look into it and see if you like doing whatever you do with them!
Yeah, the coolest thing I just found out is that nbconvert can be used to turn your python/matplotlib/markdown to reveal.js presentations.
I would say beyond just learning, transparency is another major issue.