Silico is built around the idea of model-based code. In Silico, a model composes pieces of code - each with a specific purpose: Cleaning data, running algorithms or producing charts, graphs and tables.
Each part of a Silico model is built with code.
Code is organized as a fully independent programming environment, with its own language, data and history.
Models can be built from multiple code projects, or just a single one.
Models and code are fully versioned. Models keep track of their own history, while each code project maintains its own independent history.
Third-party libraries can be added to any part of the model.
Silico takes care of the library installation, versioning and environment management.
"Data" are interesting files that are independent of a specific model or research question.
Data can be included in any part of a model, and can be used in any number of models.
Assignments use models to teach scientific and research coding.
An assignment is made up of a set of questions - each question based on a model.
Silico is on the web, so students only need a web browser to get access to an entire programming environment. No setup, no labs, no administration!