When submitting an enhancement proposal, individuals will include the following information in their submission.
The problem that this enhancement addresses. If possible include code or anecdotes to describe this problem to readers.
A brief (1-2 sentences) overview of the enhancement you are proposing. If possible include hypothetical code sample to describe how the solution would work to readers.
A detailed explanation covering relevant algorithms, data structures, an API spec, and any other relevant technical information
A list of pros that this implementation has over other potential implementations.
A list of cons that this implementation has.
A list of individuals who would be interested in contributing to this enhancement should it be accepted.
https://github.com/jupyterlab/jupyterlab/blob/master/CORPORATE.md
Enterprise Jupyter will be a separate Jupyter Org to handle the unquie demands of groups of users using Jupyter for Enterprise purposes. Enterprise includes groups that have a large number of users with multiple user classifications.
Three pieces will be added to Enterprise Jupyter. Two additions are code packages. One addition is a solution to connect the Enterprise Jupyter community.
- paperboy - Scheduling and parameterizing notebooks in production to produce reports
- nbgallery - A community created GitHub repo that creates user-friendly Jupyter notebook sharing and collaboration platform
- community for Enterprise Jupyter
Existing platforms to connect the Enterprise Jupyter community and their challenges
- Discourse -- Blocked by firewalls -- Not real time -- No security model
- Gitter -- Blocked by firewalls -- Not sufficient for complex issues -- No threading -- Too real time -- Not searchable
- Maximum participation
- Threaded conversation
- Searchable and archivable
- Organized by thread type (question vs discussion/ideas)
- Rating system for threads and responses (likes)
- Accessible from Enterprises
- Notification Settings (daily, per message, etc.)
- Secure channels (by invitation)
As a User answering questions, I want an incentive for questions with supporting information and categorization.
As a Maintainer, I want the ability to assign secure access and appropriately categorize questions, and to provide incentives for participation of questions and answers.
As a User with questions, I want a searchable, easily navigable interface and a strong possibility of getting a prompt, helpful answer.
As a Person with an idea, I want a system that encourages dialog while amplifying the most relevant or helpful topics/discussion.
As an Enterprise System Administrator, I want insights into what my users are asking, access to secure channels for communication, and perhaps access to paid support.
The ideal community for Enterprise Jupyter would have:
- A strong set of communication channels
- A reasonable cadence of in-person meeting opportunities for collaboration around ideas and best practices
- Established expectations of support levels and opportunities
- A secure communication channel for security discussion
Support of Jupyter has historically from from three sources: community, sponsors, and institional partners. Enterprise Jupyter should have a clear concept of support
- Community - incentivized by visible status in the community (badges, points, etc).
- Paid - Job boards and advertisement of paid support methods for enterprises (like Open Collective and OpenTeams)
There are several avenues currently for in-person meetings, but none of them is ideal for Enterprise collaboration and engagement. Future JupyterCONs are intended for all user types of Juptyerc. Jupyter Community Workshops are intended to support under-represented groups or specific topics. Jupyter Days are meant to be more of a mini-conference with presentations from local practioners.
WE might want a recurring Jupyter Enterprise CON that has sponsorship.....
Today I met with Tim Paine and Vidar Fauske and their boss from JP Morgan, as well as Dave Stuart and a few others from the intelligence community.
Dave's group made nbgallery [1][2], and had been exploring some of the same space as Tim Paine in making a production workflow for notebooks.
Tim has been working on paperboy, a web UI and configurable back-end for generating parameterized scheduled reports using papermill [3].
The thrust of the call was to get on the same page and collaborate moving forward.
I had suggested that we make a JEP to set up a jupyter_enterprise
org and move the Enterprise Kernel Gateway there, along with nbgallery and paperboy.
We would also use a team_compass
repo there to organize thoughts and discussion around enterprise use of Jupyter.
We also talked about a more enterprise-friendly communication channel (discourse is blocked both at JPM and in the DoD).
Darian later suggested that we set up a weekly video chat time.
Finally, we talked about setting up more regular in-person meetings, that are not ad-hoc like the event that the Argonne folks are planning [4].
Any thoughts or objections to me starting the JEP?
Regards,
Steve
[1] https://github.com/nbgallery/nbgallery [2] https://conferences.oreilly.com/jupyter/jup-ny/public/schedule/detail/68450 [3] https://github.com/timkpaine/paperboy [4] https://discourse.jupyter.org/t/jupyter-security-best-practices-workshop/1496
I don't know a ton about JEPS in general, but does it make sense to outline a little more in the area of 'pain points'. I think it would be interesting to know the problems being addressed by paperboy and nbgallery, instead of just the solution offered.
I think it also makes sense to give a section on what challenges do enterprise end users have that others don't face. Here's a rough example:
User Needs Analysis
Enterprise users of Jupyter often view reproducible computing differently from scientists. Analysts take advantage of Jupyter to find quick insights from rapidly evolving datasets. You're not always looking for long-term study results and as such it's useful to create shorter, punctuated results more often, then catalog them. It's often necessary when looking at data over the long term to extract usable insights in throughout the process. Other challenges include transparency (not highly valued between companies), trade secrets, sensitive information stewardship (GDPR/HIPAA compliance), and working behind a firewall.
This is rough and it's probably not accurate but I think it adds some context to the 'why' behind this proposal.