Skip to content
rocky edited this page Sep 11, 2021 · 1 revision

The basic philosophy of this release is to get something out which is stable and supportable, and in a short period of time.

This would give us freedom to make more radical changes to the core after the release.

Therefore some modules were removed either because they weren't quite ready, or because their specialized nature pulled in huge OS and Python dependencies. Specifically: the Graph module wasn't stable enough. The Natural-Language processing module is a bit custom, not very advanced, and pulled in a lot of large dependencies. So these were removed.

They will be added back later as separately-installable packages.

What we've seen in working on the code base is that while the technology used was fine for 2011, other technology is better suited for Python currently. For example, the Django interface is pretty neat and was cutting edge a decade ago, but nowadays for interactive workbook use, Jupyter is probably a better choice. This is planned for the end of the upcoming year.

Similarly, while TeX is a de facto standard for printed documentation, inside Python projects Sphinx and ReStructuredText make more sense. Underneath, Sphinx supports LaTeX.

Right now graphics in the Django interface or for any Web interface appear as SVG images. This means, for example, that decisions about how many points to plot, where lighting should be placed, and capabilities for labeling axes are baked into the image.

Also, the command-line interface doesn't support graphics at all. This will change by creating a new kind of graphics formatting type which doesn't bind these graphics decisions early on as happens now. Instead such information will be passed along at a high-level to the front-end which can use whatever graphics packages are available to bind decisions and create images. As a fallback, the front-end can still use the same routines that are being used now.

With this, we should be able to support both mathplotlib and networkx graphics better, not just in a web interface but also in the command-line interface.

Finally, I should say that it is not hard to find bugs in the current implementation. What is hard is to find a develper who has the time to investigate and fix bugs.

So please get involved and help out.