4 ms·
In essence, yes. Ninja is based around the idea of reproducable science: a given execution of a notebook is immutable and accessible consistently. It writes out
by alfl 5y ago
In essence, yes. Ninja is based around the idea of reproducable science: a given execution of a notebook is immutable and accessible consistently. It writes out cell outputs depending on their mimetype (this is included in Jupyter Notebook metadata).
It writes out all declared variables, per-cell, and makes them accessible in several formats (for pre-alpha, as JSON objects).
It then exposes all of these via our web servers, so it's really easy to connect them to other services.
Or, for example, generate a permanent link to the execution of a particular cell.
- whitten 5y agoI'm glad to see that you can link to the execution of a particular cell. Just to clarify, if the cell had the execution for the Age of a particular person, I don't know if the link to the cell is of the age of that person as of the particular day and time when it was executed, or if is stored in an unevaluated form, the execution would yield an age dependent upon the calculation and using "Now" as the value that is compared to the Date of Birth to find out what the age may be. (IE: is the "NOW" evaluated lazily to the date+time of execution, and thus the age will change as time passes) OR (is the "NOW" evaluated eagerly to the date+time of when the execution first occurs, and the value of the age of the person as of that date+time is stored unchanging as the value of the AGE cell ?
- alfl 5y agoIt's evaluated eagerly. The notebook is executed and materialized at upload. We're enabling re-triggering notebooks soon, which will allow things like scheduled and parameterized executions, and those will be eagerly evaluated as well.