Remix

Courtney "Coco" Mault, Dylan MPLS, 2015, photograph

Remixing enables effortless reuse and sharing.

Reproducing the same results on different computers is a time consuming process. Differences in operating systems, configurations, and dependency versions can make important code unrunnable. Working on the related technical issues distracts researchers and programmers from the problems they are actually trying to solve.

Nextjournal remedies this by automatically versioning every aspect of an article. All research becomes instantly reproducible. This provides:

  • Access to previous drafts from custom code to earlier software dependencies
  • Effortless collaboration across machines with full accreditation
  • Published results that are runnable by your peers anywhere in the world, at any point in the future

1.
Tutorial

1. Hit the remix button on a published article.

2. That's it! Now get to work!

Remix an article

2.
Remixing Makes Research Easier

Here are three scenarios that illustrate how remixing can enable reproducibility, encourage experimentation, and engender collaboration.

2.1.
Sharing and Reproducibility

Janet receives an eMail about her research. Her original published paper relied on a now-deprecated Python package called NumbaPro. After hours of effort, the team cannot reproduce Janet's work because they cannot find a configuration that works with the newer Numba package. Perhaps she could help?

Janet's quite busy, but the research looks interesting. She opens up the old notebook, looks at the new Numba package, and immediately sees the issue. Rather than explain the issue and risk prolonging the back-and-forth, she uploads the notebook to Nextjournal and makes a few quick changes. Her peers hit the remix button and get to work.

Perhaps even more important than the simplicity of sharing, Janet knows she will never have this dependency problem again. It doesn't mater if a repository moves or a package is deprecated. Nextjournal saves the version you used for your article and ensures reproducibility in any web browser at any point in the future.

2.2.
Experimentation

Abduba is a data scientist with a deadline. Late one night, he stumbles on a new software package that might save him significant time down the road. He doesn't mind investing some energy to see if it's the right fit, but he doesn't want to lose the work he's done if it ends up being a dead end.

Since Abduba is using Nextjournal, he simply publishes his article-in-progress and hits the remix button. Remixing duplicates the article: from his custom code all the way down to the operating system, including everything in between. Newly installed dependencies and changes to the code don't affect his original article. He is free to experiment.

2.3.
Collaboration

Nick studies artificial intelligence at the University of Illinois. He met Kylie at a conference last month and they realized their research overlaps in significant areas. Since she works at the University of Hamburg, the two will have to figure out a sensible remote working relationship.

Nick shares his work-in-progress article on Nextjournal. Kylie can immediately see how Nick's choice of data skews his results, but hesitates to make any changes. Having used Nextjournal for some time, Nick tells Kylie that it's okay to remix the article and make all the changes she wants. When Kylie shares the new URL a few days later, Nick reads through the article and now understands what she was saying.

The new data inspires a few changes. Rather than waiting for Kylie to finish her work, Nick remixes her article and optimizes his code for new data. Through the entire process - Nick's original article, Kylie's remix, and Nick's remix - all original work remains intact. Kylie can continue to edit her own article, or now that they are on the same page, they can edit the latest remix together.

3.
More Than a Notebook

Nextjournal promises complete reproducibility across your entire project. Read the introduction to environments to learn more about how this enables experimentation and sharing. For a broad overview what what makes Nextjournal different from other notebooks and development environments, check out Why Nextjournal. If you'd like to try it yourself, get in touch for Private Beta access.

© 2018 Nextjournal GmbH