Live data from Hacker News

Kalman and Bayesian Filters in Python

nbviewer.ipython.org

21–30 of 30 posts

Re: Kalman and Bayesian Filters in Python

#21
post #5

Author here. I struggle a lot with the choice of medium. In many senses Jupyter (IPython Notebook) is fanstastic in terms of workflow. With latex+external program+external data+external output it is hard to keep everything in sync. Here, it all happens in one place. And, of course, it should make it easier for the reader. "What happens if I change this constant?" (A normal question with scientific processing). Trivia…

The ebook publishing world has a lot to learn from iPython notebooks. There's such resistance to javascript and active content in EPUB3, because somehow that's not a book. And to be fair, in most cases its stupid pet tricks. But this book is a great example of a real book that needs to be live.

Despite that, I think EPUB has a much better chance at evolving into something like ipynb than TeX or PDF.

Re: Kalman and Bayesian Filters in Python

#23
post #5

Author here. I struggle a lot with the choice of medium. In many senses Jupyter (IPython Notebook) is fanstastic in terms of workflow. With latex+external program+external data+external output it is hard to keep everything in sync. Here, it all happens in one place. And, of course, it should make it easier for the reader. "What happens if I change this constant?" (A normal question with scientific processing). Trivia…

Have you tried conda, the package manager by continuum analytics? It stores pre compiled instances of packages for easy install cross platform and does some virtual env stuff.

Much easier and more robust than pip:

http://www.continuum.io/blog/conda

Re: Kalman and Bayesian Filters in Python

#24
post #5

Author here. I struggle a lot with the choice of medium. In many senses Jupyter (IPython Notebook) is fanstastic in terms of workflow. With latex+external program+external data+external output it is hard to keep everything in sync. Here, it all happens in one place. And, of course, it should make it easier for the reader. "What happens if I change this constant?" (A normal question with scientific processing). Trivia…

Have you tried conda, the package manager by continuum analytics? It stores pre compiled instances of packages for easy install cross platform and does some virtual env stuff.

Much easier and more robust than pip:

http://www.continuum.io/blog/conda

Re: Kalman and Bayesian Filters in Python

#25
post #23
post #5

Author here. I struggle a lot with the choice of medium. In many senses Jupyter (IPython Notebook) is fanstastic in terms of workflow. With latex+external program+external data+external output it is hard to keep everything in sync. Here, it all happens in one place. And, of course, it should make it easier for the reader. "What happens if I change this constant?" (A normal question with scientific processing). Trivia…

Have you tried conda, the package manager by continuum analytics? It stores pre compiled instances of packages for easy install cross platform and does some virtual env stuff. Much easier and more robust than pip: http://www.continuum.io/blog/conda

Sure, that is what I use. Great package. But I can't tell readers what to use.

I spent a bit of time supporting a reader. It is easy enough for me to get the versions, but the typical reader may not be au courant on the latest libraries in Python. For example, we have Python 3.4, and IPython 2.4. IPython 2.4 runs Python 3.4. That's confusing until you realize that the IPython version has nothing to do with the Python version.

I mean, none of this is unsurmountable, but it feels quite wrong to have to provide tech support to somebody that just wants to read a book.

Re: Kalman and Bayesian Filters in Python

#26
post #6

I really like the subtle hat-tip to Star Wars with the use of TIE fighters in the graphs. (see http://nbviewer.ipython.org/github/rlabbe/Kalman-and-Bayesia... )

I see error bars...I really don't think those were intended to be anything but error bars.

Total accident. Is it not clear to some that these are error bars?

Re: Kalman and Bayesian Filters in Python

#27
post #25
post #23

Earlier quoted context omitted.

Have you tried conda, the package manager by continuum analytics? It stores pre compiled instances of packages for easy install cross platform and does some virtual env stuff. Much easier and more robust than pip: http://www.continuum.io/blog/conda

Sure, that is what I use. Great package. But I can't tell readers what to use. I spent a bit of time supporting a reader. It is easy enough for me to get the versions, but the typical reader may not be au courant on the latest libraries in Python. For example, we have Python 3.4, and IPython 2.4. IPython 2.4 runs Python 3.4. That's confusing until you realize that the IPython version has nothing to do with the Python…

Gotcha..

I wonder if this can help: http://nuitka.net/pages/overview.html?

Re: Kalman and Bayesian Filters in Python

#28
post #5

Author here. I struggle a lot with the choice of medium. In many senses Jupyter (IPython Notebook) is fanstastic in terms of workflow. With latex+external program+external data+external output it is hard to keep everything in sync. Here, it all happens in one place. And, of course, it should make it easier for the reader. "What happens if I change this constant?" (A normal question with scientific processing). Trivia…

Sorry about the notebook format change. Did you loose work? Conversion should be handled for you, if not it is a bug, we can fix it on 3.1.

We would be happy to get more feedback on your writing process and your need, feel free to directly contact the team (IPython-dev at scipy.org, or issue on main IPython repo is fine).

As for concept of "book" or collection of notebook, we are working on that (integration with sphinx)

Re: Kalman and Bayesian Filters in Python

#29
post #5

Author here. I struggle a lot with the choice of medium. In many senses Jupyter (IPython Notebook) is fanstastic in terms of workflow. With latex+external program+external data+external output it is hard to keep everything in sync. Here, it all happens in one place. And, of course, it should make it easier for the reader. "What happens if I change this constant?" (A normal question with scientific processing). Trivia…

If you want to do things in JavaScript and want to have your users avoid the version problem, the thing to do would be to provide an installer which pins versions of the various libraries (ostensibly through NPM) and/or to just distribute the package as a whole with the various libraries in place. This can be automated. If you'd like, ping me at stonecypher at gmail dot com, and I'll share the system I use, and show…

Thanks for the offer. However, I kind of don't want to do things in Javascript, as Python is a fantastic platform for numeric computation, and so staying in that ecosystem makes a lot of sense (people can take my matplotlib code and go off and do their own plots for their filters, for example).

But I'm sort of at an inflection point. Is my book about using Python to do Kalman filtering, or is it about Kalman filtering, and it happens to use Python. So far it has largely been the latter, so I could see doing a Javascript version. But I think that puts my needs over the needs of the reader, which is probably wrong.

Re: Kalman and Bayesian Filters in Python

#30
post #26

Earlier quoted context omitted.

I see error bars...I really don't think those were intended to be anything but error bars.

Total accident. Is it not clear to some that these are error bars?

Apparently there was some confusion, but from my perspective it was perfectly clear.
Post reply on HN