
Stencila: An open source office suite for reproducible research - muraiki
https://stenci.la/
======
buchanae
> The calls for research to be transparent and reproducible have never been
> louder. But today's tools for reproducible research can be intimidating -
> especially if you're not a coder.

As someone (a software engineer) who has been trying (struggling) to reproduce
biology research lately, I say amen. Hallelujah.

But. It's time to accept coding as a core skill. Science has more to learn
from software engineering than it realizes. Software engineering (aka coding)
eats reproducibility for breakfast, even when hundreds or thousands of
"collaborators" are involved. These days, it's rare for a single biology
researcher to produce (publish) code that is easily reproducible by an
external researcher.

~~~
tincholio
It's a bit more complex than that, as it's not just having access to the
software, but to the whole environment. The move towards reproducible builds
and configurations (Nix and the like) is a good thing for this, as well.

~~~
hazz99
I've come across this problem before (as a third party - I don't do research)
and I've considered writing software to help solve it. Maybe something like a
Jupyter notebook with an attached mini-filesystem that can be easily shared
with colleagues? What do you think would be a required to solve this?

~~~
Vinnl
If you're really interested in this, you should contact Ivo Jimenez and Felix
Z. Hoffmann. Although there's not much information available, under the
heading of " Reproducible Computational Research – a case study " at [0], they
tentatively explored such an idea at a hackathon in Cambridge in May.

[0] [https://elifesciences.org/labs/bdd4c9aa/elife-innovation-
spr...](https://elifesciences.org/labs/bdd4c9aa/elife-innovation-
sprint-2018-project-roundup)

------
osrec
This looks interesting. I'm actually rather surprised at the lack of quality
in most open source 'office' alternatives. I'm not sure why, but
open/libreoffice is almost unusable for heavy duty office work. Microsoft
products are the clear winners if you require productivity and stability. I
really hope that changes soon, because I feel it's a major factor that holds
back widespread Linux adoption.

~~~
sheetjs
There's a ton of mindnumbing testing and grinding work that honestly no one
really wants to do, involving bit-level accuracy in many cases. We
([https://sheetjs.com/](https://sheetjs.com/)) are attacking the file
compatibility problem (our major open source project is
[https://github.com/sheetjs/js-xlsx](https://github.com/sheetjs/js-xlsx), used
in stencila's spreadsheet converters) and it is painfully obvious that OO/LO
cuts corners at certain places. For example, the mathematics of Calc is
intentionally bugged:

> ignore the last two bits for many stuff to improve the user experience.

[https://bugs.documentfoundation.org/show_bug.cgi?id=83511](https://bugs.documentfoundation.org/show_bug.cgi?id=83511)

A successful alternative to Microsoft Office has to start from a level of
compatibility that no current developer in existing solutions has expressed
interest in attaining.

~~~
erAck
As you referenced that bug and there also gave an example involving fractions
and =0.1+0.2 you would certainly also agree that the binary floating point
representation of =0.1+0.2-0.3 is not 0.0, still Excel displays 0 as result
(and so does Calc) instead of 5.551115123125783E-17 because users expect that.

Your bit-level accuracy approach isn't as simple when it comes to user
experience and Excel compatibility.

~~~
erAck
Regarding your fraction example there:

=RAWSUBTRACT(0.1,-0.2,1/3) => -0.033333333333333

=RAWSUBTRACT(0.1,-0.2,2/7) => 0.014285714285714

So which one is closer to 0.3?

------
miles
Not sure why that page does not include a link (that I can find anyway) to
this intro video that the creator, Michael Aufreiter, put together:

[https://www.youtube.com/watch?v=EzrR96PDnO8](https://www.youtube.com/watch?v=EzrR96PDnO8)

------
jsilence
Interresting!

Does Stencilla offer any kind of author collaboration? Publication are usually
not one person efforts and research teams oftentimes are not working in the
same location.

In my experience the GDocs or Word comments and revise mode are heavily used
in collaborations.

~~~
basiliskparty
I was wondering that too. It seems like there might be collaborative editing,
given dat project involvement?

~~~
nokome
Yes, we'd love to have real-time collaboration, preferably in a decentralised
way using Dat!

------
brianzelip
tl;dr - an interactive notebook, that accepts Jupyter files, for folks who
usually use MS Office.

From their FAQ:

> Stencila allows you collaborate with colleagues who use other tools than
> RMarkdown and Jupyter Notebook, without you having to give up your favourite
> tool. Stencila Coverters make it possible to open documents in various
> formats (R Markdown - Rmd, Jupyter Notebook - ipynb and so on) in Stencila.
> The conversion is lossless for all interactive parts (such as code cells).

Nice to see dat part of the conversation.

~~~
foobarbecue
Those coverters are really good for undercover work.

------
writepub
How's stencila supposed to produce reproducible research?

No one's fudging the formulae, they're fudging data. And stencila will digest
whatever data you give it, real or fake

~~~
gnufx
Hear, hear! Even if they're not fudging them as such, they may have cocked up
the measurements. You figure that out from hard experience in the field (or
relevant experience from another, which is often very helpful), not with some
trendy piece of software.

------
Gabrielfair
Has anyone else noticed this trend of integrating data science tools into one
package that installs and potentially monitors you? For example this seems
like another `Anaconda Navigator` clone. Or am I missing something here?

------
thsowers
I'm surprised that there appears to be no link to the Github Repo on the
homepage:
[https://github.com/stencila/stencila](https://github.com/stencila/stencila)

~~~
dEnigma
There is a link in the "Contribute" section.

------
mockingbirdy
If any contributor sees this: The "Learn" link in the footer points to a 404
Github page.

Is this usable for daily usage? And can we output PDF and use LaTeX for
publications?

~~~
nokome
Hi, Stencila dev here. In my opinion, Stencila is not ready for daily usage.
But we are looking for beta testers who are willing to put up with bugs and
crashes and help us shape the framework. We have converters, based on Pandoc,
which are able to convert to both PDF and Latex - although they are also in
preliminary development.

------
gkya
So this is a reproducible research application suite built on Node.JS, the
epitome of non-reproducibility and characterised by fast pace, little care for
compatibility, and an ecosystem of volatile libraries?

~~~
nokome
Hi, Stencila dev here, thanks for the feedback. There are several modular
components that make up Stencila. The user interface modules are indeed built
using Javascript, and Node.js is used in a number of places including the
desktop and CLI apps and format converters. But for code execution, Stencila
does not rely on Node, and users can use R, or Python or SQL.

> Reproducible research depends on reproducible execution, which depends on a
> reproducible environment, which depends on a reproducible set of libraries
> and frameworks.

Completely agree. We are trying to make it easy for people to use reproducible
libraries and environments. To this end, we are developing Nix environments (a
highly reproducible way of defining computing environments) which include
Stencila "execution contexts" for R, Python etc with standard libraries
included. These environments can be connected to the user interface. See
[https://github.com/stencila/images/](https://github.com/stencila/images/) for
more details.

~~~
gkya
Thanks for the explanations!

------
anotheryou
So this is jupyter for "excel", right? Nice!

