The World Wide Web was conceived of as a medium for the expression and exploration of scientific and engineer- ing ideas. However, much of the innovation in web technologies is now focused on consumer facing applications. Although science and engineering content is available on the web (Wolfram Alpha, 2017), there are not that many tools that allow engineers and scientists to create and build scientific and engineering applications.
Fundamentally, HTML and HTTP are certainly sufficient for the creation of scientific and engineering content just as they are for the creation of online magazines and websites. But while a number of "content management systems" have been created to facilitate the publication of prose, there are very few such tools that cater to making it easy to create scientific and engineering content.
In this paper, we will present a platform which can be thought of as a content management system for scientific and engineering content. We will start by describing what we believe to be the fundamental requirements for such a system. From there, we will discuss two different applications built on this platform. The first is an interactive tutorial for teaching the basics of the Modelica languages and the other is an example application that involves creating interactive content for use in an engineering course on hydro-electric power generation. This content will be published on the modelica.university domain and we are already collaborating with others to contribute additional content to the site.
Keywords: Modelica, web, cloud, education, content management
Proceedings of the 12th International Modelica Conference, Prague, Czech Republic, May 15-17, 2017
Michael Amundsen. Collection+JSON - Hypermedia Type, 2013. URL http://amundsen.com/media-types/collection/.
Marco Bonvini. Modelica in action: compile and simulate models, 2017. URL http://marcobonvini.com/modelica/2017/01/02/modelica-in-action.html.
ECMA International. Standard ECMA-262 – ECMAScript Language Specification. 5.1 edition, June 2011. URL http://www.ecma-international.org/publications/standards/Ecma-262.htm.
Facebook. React - v15.4.2, 2017. URL https://facebook.github.io/react/.
R. Fielding, J. Gettys, J. Mogul, H. Frystyk, L. Masinter, P. Leach, and T. Berners-Lee. Hypertext Transfer Protocol – HTTP/1.1, 1999. URL https://tools.ietf.org/html/rfc2616.
Roy Thomas Fielding. Architectural Styles and the Design of Network-based Software Architectures. PhD thesis, 2000. AAI9980887.
Martin Fowler. CQRS, 2011. URL https://martinfowler.com/bliki/CQRS.html.
Marijn Haverbeke. CodeMirror, 2017. URL https://codemirror.net/.
Internet Assigned Number Authority. About Us, 2017. URL http://www.iana.org/about.
Michael Kelly. JSON Hypertext Application Language, 2016. URL https://tools.ietf.org/html/draft-kelly-json-hal-08.
Eve Maler, Tim Bray, Jean Paoli, François Yergeau, and Michael Sperberg-McQueen. Extensible markup language (XML) 1.0 (fifth edition). W3C recommendation, W3C, November 2008. http://www.w3.org/TR/2008/REC-xml-20081126/.
Nextjournal. Nextjournal, 2017. URL https://nextjournal.com/.
Node.js Foundation. About Node.js, 2017. URL https://nodejs.org/en/about/.
Open Source Modelica Consortium. Openmodelica, December 2016. URL https://openmodelica.org/.
A. Palanisamy, M. Sjölund, and P. Fritzson. Generating OpenModelica Web Books Including Mathematical Typesetting from OMNotebooks, 2016. URL http://www.modprod.liu.se/filarkiv/1.672879/
Project Jupyter. Project Jupyter, 2017. URL http://jupyter.org/.
Salvatore Sanfilippo and Pieter Noordhuis. Redis, 2017. URL https://redis.io/.
Susan Fowler. Production-Ready Microservices: Building Standardized Systems Across an Engineering Organization. December 2016. URL http://shop.oreilly.com/product/0636920053675.do.
Kevin Swiber. Siren: a hypermedia specification for representing entities, 2016. URL https://github.com/kevinswiber/siren.
Michael M. Tiller. Modelica by Example, 2016. URL http //book.xogeny.com/.
Michael M. Tiller. Generate a Dockerfile for any NodeJS application, 2017. URL https://www.npmjs.com/package/dockergen.
Bret Victor. What Can a Technologist Do About Climate Change? (A Personal View), 2015. URL http://worrydream.com/ClimateChange/.
W3C. HTML 5.1, 2016. URL https://www.w3.org/TR/html/.
Wikipedia. Droop speed control, 2017. URL https://en.wikipedia.org/wiki/Droop_speed_control.
Wolfram Alpha. Wolfram Alpha, 2017. URL https://www.wolframalpha.com/web-apps/.