Kalman and Bayesian Filters in Python
Author here.<p>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). Trivial to find out in the notebook; much more painful with a paper book.<p>OTOH, latex is mature technology, and I mean that in in the most positive way possible. I don't have to worry that version 1.7 is coming out tomorrow, and that \int will no longer display an integral sign. I would like to make the book much more interactive - go all 'Bret Victor' on it, but at what cost? I just tried to use Plotly, for example, but they don't support the current version of matplotlib; they are skipping a version for whatever reason. I can't expect readers to play the version war just to read a book.  Even with core Python+scipy stack I have doomed myself to endless maintenance as new, breaking changes occur. That is not hypothetical; IPython changed the format of the notebooks, and there went a weekend of work. And, with all of that said, I think most are just reading the PDF version, or using the static nbviewer rendering, not running it locally on their machine. Heck, that is how I read the other IPython books - in nbviewer or PDF form. You know what you can do in PDF that you can't do in Jupyter? Search. I can ctrl+f in a PDF and search an entire book; in Jupyter, which has no concept of a 'book', I have to go from notebook to notebook.<p>Anyway, I welcome ideas on how to approach this. I come from a world of C++ where code I wrote in 1995 is still running today, and still compiles with the latest compilers. I'm sure I'm not approaching this problem optimally due to lack of experience in web based mediums. But I do fear, not unreasonably, that once I move on the book will become essentially inaccessible in just 10-20 years or so.