Hydrogen: User Engagement and Understanding within Hydrogen

Created on 12 Nov 2019  路  8Comments  路  Source: nteract/hydrogen

Hello Hydrogen Users.

My name is Thomas Denton, and I recently began maintaining this project back in May this year (2019). I really want to make hydrogen a better product/package, but as it stands I do not have any form of regular communication with you the users. I want to find out what you guys want from the package (what features do you want/improvements to current features and such). I also want to understand how and why people are using hydrogen. As a non data scientist I have a hard time understanding all the ways in which hydrogen is unique and why so many people (~1.4 mil) have downloaded it. I am also extremely interested in knowing the most common workflows around hydrogen.

I would also love for the hydrogen community to be much more interactive with each other. I want users to be aware of what changes could be coming as well as lets users interact with each other. Currently the only user interaction we regularly get is bug/crash/install problems.

Just some things I have thought about so far:

  • optional package activation messages

    • which would basically means every time you activate hydrogen you could see a news page about what is happening

  • polls

    • which would allow users to vote on new features or fixes from within the atom editor ideally no github required

  • a Twitter

    • that features users/workflows/news/articles/memes/updates

  • an email list

    • similar to the twitter but more professional

  • data analytics

    • that could report an activate user base, common kernels, workflow information like the number of kernels or output pane vs inline, hydrogen compatible packages you use.

I will be discussing this openly with other nteract members in the public slack, but I just want to make hydrogen users aware before changes are even discussed.


Questions? Feel free to ping us on https://slack.nteract.io or comment on this issue.


cc: @captainsafia, @aviatesk, @BenRussert, @rgbkrk

discussion enhancement help wanted

Most helpful comment

Well I am brand new Atom/Hydrogen user (started using it last night :blush:), so take whatever I say with a grain of :salt:

IMHO the engagement can be done using GitHub notifications. For example, to keep track of projects that interest me, I mark them "Watch" and then any new issues show up in my notifications. This way announcements and polls can be done just as normal issues.

And since you've asked about use cases, here is why I decided to give hydrogen a go:

  1. I need to be able to easily connect to local and remote kernels; and
  2. I need to be able to launch a long-running task on a remote kernel and disconnect from it. Then reconnect later and resume where I left off.

Jupyter Lab mostly handles that, but its aesthetic aspects (or rather lack thereof) made me look elsewhere.

Visual Studio Code is good with local kernels, but is a royal PITA if you have to switch between local and remote kernels (requires IDE restart... :facepalm:). And there is no way to have 2 notebooks connected to two different kernels (local and remote).

Hydrogen is awesome in that regard. And I really like that it nicely integrates into my desktop environment. But it's lacking a few important (IMHO) features for full .ipynb notebook support. These are (in order of importance):

  1. Ability to export notebooks with cell output included. (This feature alone would make me ditch vscode completely and replace it with atom/hydrogen.)

  2. When importing a notebook, the imported python file should keep the name and path of the original notebook and change the extension to .py (currently it's called untitled).

  3. When exporting as notebook, it should likewise default to the current file's path and name and change the extension to .ipynb

Thank you and keep up the good work.

All 8 comments

Thanks for opening this issue, @wadethestealth!

With regard to the Twitter, I can give you access to the existing @nteractio Twitter account. It already has a following and, to be honest, could use some activity.

My experiences with an email list are mixed. The hardest thing (for me personally) is continuously sending out content. Emails are a lot more long-form than tweets so you have to dedicate some time to publish content regular. This is not meant to discourage so much as it is meant to warn.

Data analytics sounds like a good idea, as long as we anonymize everything and make sure that users have insights into what is being logged.

From the list you provided, do you have an idea which might provide the most bang for our buck in this effort?

@captainsafia
Twitter requires constant active engagement and time commitment, and as you state now its hard to keep active.

Personally, I think email lists are better because you aren't required to push content out regularly you can push as often or as little as you want you can send 2 one week and 1 the next because there is no reply back. This can seem to lack user engagement, but you can always tag the slack link at the bottom and ask for people to join for discussion. In terms of creating content, you don't have to provide a lot. A simple one paragraph email about news or recent discussions is perfectly suitable for instance The fact that 3 Microsoft products launched using nteract packages is enough for one email if nothing else is happening.

Data analytics can get a lot of extremely high value data about the community, and I would also love for everyone to be able to view it (anonymized open-source data). A community of data scientists may also find it useful or fun to play around with, and we could even enhance our example pages with real data examples.

My personal recommendation is to setup good data analytics, automate an email listing with a set header and footer, and I personally would like to add polls to hydrogen using a native ui to atom (similar to our current startup message of what kernels hydrogen located) which would then be sent to the data analytics setup. These are of course over an extended period of time and will require iteration to get it perfect.

Thanks for sharing your thoughts.

We have an existing Mailchimp account for nteract that you can use. If you'd like, we can coordinate you getting access to this over Slack.

I think the nteract slack at #hydrogen would be a good place to discuss the roadmap and features.

One possible process could be:

  1. Someone has something to discuss. (This will probably be wadethestealth atm).
  2. Prep some materials to facilitate the discussion (options, thoughts, mocks... etc)
  3. Cross-post the topic on the website, as an github issue, and perhaps a maililng list: ask for people to join slack to comment
  4. Discuss the topic in slack

Well I am brand new Atom/Hydrogen user (started using it last night :blush:), so take whatever I say with a grain of :salt:

IMHO the engagement can be done using GitHub notifications. For example, to keep track of projects that interest me, I mark them "Watch" and then any new issues show up in my notifications. This way announcements and polls can be done just as normal issues.

And since you've asked about use cases, here is why I decided to give hydrogen a go:

  1. I need to be able to easily connect to local and remote kernels; and
  2. I need to be able to launch a long-running task on a remote kernel and disconnect from it. Then reconnect later and resume where I left off.

Jupyter Lab mostly handles that, but its aesthetic aspects (or rather lack thereof) made me look elsewhere.

Visual Studio Code is good with local kernels, but is a royal PITA if you have to switch between local and remote kernels (requires IDE restart... :facepalm:). And there is no way to have 2 notebooks connected to two different kernels (local and remote).

Hydrogen is awesome in that regard. And I really like that it nicely integrates into my desktop environment. But it's lacking a few important (IMHO) features for full .ipynb notebook support. These are (in order of importance):

  1. Ability to export notebooks with cell output included. (This feature alone would make me ditch vscode completely and replace it with atom/hydrogen.)

  2. When importing a notebook, the imported python file should keep the name and path of the original notebook and change the extension to .py (currently it's called untitled).

  3. When exporting as notebook, it should likewise default to the current file's path and name and change the extension to .ipynb

Thank you and keep up the good work.

So much for engagement... :disappointed:

@dimitry-ishenko I appreciate your love for hydrogen. I did read your comment the day you made it, however I personally have taken a back seat on hydrogen. As of right now this post is almost 6 months old, but I still think that leaving comments is great for current or future developers and contributors. Feel free to become one yourself if you wish as well. I am unaware of their time commitment to hydrogen, but two other hydrogen developers seem to be active once a month and I will at them in this so they can see your comments. Happy coding!

@BenRussert @aviatesk

@wadethestealth thanks for your reply! Sorry, I didn't realize you gave up on hydrogen. Unfortunately, I am about to do the same. Judging by your and @captainsafia comments (in my other issue), it seems ya'lls are focusing on the desktop nteract app and the web app.

Unfortunately, the ntreact app has ways to go to be usable IMHO and hydrogen was so close. And as much as I would like to step in and do some coding, I am trying to focus on ML right now.

:peace_symbol:

Was this page helpful?
0 / 5 - 0 ratings

Related issues

Mike-MU10 picture Mike-MU10  路  4Comments

nils-werner picture nils-werner  路  3Comments

vader333 picture vader333  路  3Comments

jasonleonhard picture jasonleonhard  路  3Comments

ekoepplin picture ekoepplin  路  4Comments