Middle ground #1 does not sound crazy to me. And it could be controlled by a publisher switch.
For me I think it is just throwing different switches - all the laborious parts are already in place.
Rob
On July 17, 2024 4:59:55 PM EDT, Brad Miller <br...@runestone.academy> wrote:
>One of the biggest requests I get from CS authors, especially authors writing books about C, C++ or Java is that they want to see their code examples as they will appear on Runestone Academy, and that they want to be able to test their code, especially since nearly all coding questions have unit tests, which need to be tested. I can think of at least six authors this summer!
>
>As things are today, when you build an html version (non-runestone) of a book you get a static listing of C, C++, Java, and any other language we support on our JOBE server. A sandboxed environment where we can compile and safely run those languages, and then send results back to the book.
>
>Right now the solutions are:
>
>1. Use the author interface on Runestone Academy -- but that means you have to commit to github and pull to our servers, and its a heavyweight process to just see a few changes.
>2. set up your own Runestone Server environment. Although Kevin Webb got one up and running in under an hour in Tacoma (while coming down with COVID) its still a fairly daunting task for people who are not savvy about Docker and other command line work.
>3. Trust that everything will be fine when you do finally move to Runestone :-) and just press on with a happy face
>
>
>I'm trying to think if there is a better middle ground.
>
>1. The recent Proteus grant has money to support Runestone running a separate machine in our cloud that supports a sage server. Perhaps that machine could also host JOBE and we allow plain html builds to point at that. That would mean work for Rob to render these languages as activecode in an html build. I don't think that is scalable for a live book, but would work for authors.
>2. Maybe there is a way to make this work in Codespaces? We already have a Dockerfile to build the JOBE server, but I don't think that Codespaces let you have multiple images. Or maybe just incorporate the JOBE server into the basic Codespace (its way lighter than including texlive)