All Projects → autolab → Autolab

autolab / Autolab

Licence: apache-2.0
Course management service that enables auto-graded programming assignments.

Programming Languages

ruby
36898 projects - #4 most used programming language

Projects that are alternatives of or similar to Autolab

Expertiza
Expertiza is a web application through which students can submit and peer-review learning objects (articles, code, web sites, etc). The Expertiza project is supported by the National Science Foundation.
Stars: ✭ 160 (-69.7%)
Mutual labels:  rails, education, students
kids-code
Showcase of the websites written by some kids in under a day, at a summer camp. I taught them HTML, CSS, and very basic JavaScript.
Stars: ✭ 11 (-97.92%)
Mutual labels:  students, programming, teaching
bash-course
Material for the advanced bash scripting course at Heidelberg University
Stars: ✭ 35 (-93.37%)
Mutual labels:  education, teaching
vly1
v1 Voluntarily application - deprecated
Stars: ✭ 14 (-97.35%)
Mutual labels:  education, teaching
Awesome Courses
List of free online programming/CS courses [Massive Open Online Courses]
Stars: ✭ 273 (-48.3%)
Mutual labels:  education, programming
teaching-app-dev-swift-archive
DEPRECATED. Teaching App Development with Swift materials, bundled up as a single archive.
Stars: ✭ 14 (-97.35%)
Mutual labels:  education, teaching
data-science-training
Reproducible data science with R, RStudio, Git, and GitHub
Stars: ✭ 18 (-96.59%)
Mutual labels:  education, teaching
Awesome Algorithms Education
A curated list to learning and practicing about algorithm.
Stars: ✭ 267 (-49.43%)
Mutual labels:  education, programming
full-teaching
A web application to make teaching online easy. WARNING: the updated version of this repo is now in the link below
Stars: ✭ 34 (-93.56%)
Mutual labels:  students, teaching
Jupyter Edu Book
Teaching and Learning with Jupyter
Stars: ✭ 325 (-38.45%)
Mutual labels:  education, teaching
Oppia
A free, online learning platform to make quality education accessible for all.
Stars: ✭ 4,361 (+725.95%)
Mutual labels:  education, teaching
30 Seconds Of React
Short React code snippets for all your development needs
Stars: ✭ 3,991 (+655.87%)
Mutual labels:  education, programming
30-seconds-of-csharp
Short C# code snippets for all your development needs
Stars: ✭ 132 (-75%)
Mutual labels:  education, programming
data-vis-labs-2018
Principles & Practice of Data Visualization, CS631 Spring 2018
Stars: ✭ 34 (-93.56%)
Mutual labels:  education, teaching
python-programming-for-data-science
Content from the University of British Columbia's Master of Data Science course DSCI 511.
Stars: ✭ 29 (-94.51%)
Mutual labels:  programming, teaching
AutomationShield
Arduino library and MATLAB/Simulink API for the AutomationShield Arduino expansion boards for control engineering education.
Stars: ✭ 22 (-95.83%)
Mutual labels:  education, feedback
Textbook Curriculum
Ada Developers Academy Online Curriculum
Stars: ✭ 396 (-25%)
Mutual labels:  rails, programming
Postfacto
Self-hosted retro tool aimed at helping remote teams
Stars: ✭ 224 (-57.58%)
Mutual labels:  feedback, rails
ontask b
A platform offering teachers and educational designers the capacity to use data to personalise the learner experience.
Stars: ✭ 31 (-94.13%)
Mutual labels:  students, teaching
Presentations
DEPRECATED. Short, topic-focused instructor presentations that illustrate iOS and Swift concepts.
Stars: ✭ 304 (-42.42%)
Mutual labels:  education, teaching

Autolab is a course management service, initially developed by a team of students at Carnegie Mellon University, that enables instructors to offer autograded programming assignments to their students over the Web. The two key ideas in Autolab are autograding, that is, programs evaluating other programs, and scoreboards.

Autolab also provides other services that instructors expect in a course management system, including gradebooks, rosters, handins/handouts, lab writeups, code annotation, manual grading, late penalties, grace days, cheat checking, meetings, partners, and bulk emails.

Since 2010, Autolab has had a transformative impact on education at CMU. Each semester, it is used by about 5,000 CMU students in courses in Pittsburgh, Silicon Valley, Qatar, and Rwanda. In Fall, 2014, we are releasing Autolab as an open-source system, where it will be available to schools all over the world, and hopefully have the same impact it's had at CMU.

Build Status GitHub last commit

Subscribe to our mailing list to recieve announcements about major releases and updates to the Autolab Project.

Try It Out

We have a demo site running at https://demo.autolabproject.com/. See the docs for more information on how to login and suggestions on things to try.

Installation

We released new documentation! Check it out here.

We are currently in the process of updating our documentation to work with our newest release of Autolab, v2.5.0, which has been upgraded to Rails 5 from Rails 4

Testing

Setting up Tests

  1. Add a test database in database.yml

  2. Create and migrate the database.

    RAILS_ENV=test bundle exec rails db:create
    RAILS_ENV=test bundle exec rails db:migrate
    

    Do not forget to use RAILS_ENV=test bundle exec in front of every rake/rails command.

  3. Create necessary directories.

    mkdir attachments/ tmp/
    

Running Tests

After setting up the test environment, simply run spec by:

bundle exec rails spec

Rails 4 Support

Autolab is now running on Rails 5. However, we may still work on important bug fixes on the Rails 4 branch, partially because the deployment on CMU is currently still on Rails 4. Please file an issue if you believe that you have found a severe bug. The Rails 4 branch can be found on master-rails-4.

We will not be backporting new features from master to master-rails-4.

Updating Docs

To install mkdocs, run

pip install --user mkdocs

We rely on the mkdocs-material theme, which can be installed with

pip install --user mkdocs-material

To run and preview this locally, run:

mkdocs serve

Once your updated documentation is in master, run:

mkdocs gh-deploy

This will build the site using the branch you are currently in (hopefully master), place the built HTML files into the gh-pages branch, and push to GitHub. GitHub will then automatically deploy the new content in gh-pages.

Finally, go to the repository Settings page, and set docs.autolabproject.com under the Custom domain field.

Contributing

We encourage you to contribute to Autolab! Please check out the Contributing to Autolab Guide for guidelines about how to proceed. You can also reach out to us on Slack as well.

License

Autolab is released under the Apache License 2.0.

Using Autolab

Please feel free to use Autolab at your school/organization. If you run into any problems, you can reach the core developers at [email protected] and we would be happy to help. On a case by case basis, we also provide servers for free. (Especially if you are an NGO or small high-school classroom)

Changelog

v2.5.0 (2020/02/22) Upgrade from Rails 4 Rails 5

  • Autolab has been upgraded from Rails 4 to Rails 5 after almost a year of effort! There are still some small bugs to be fixed, but it should not affect the core functionality of Autolab. Please file an issue if you believe you have found a bug.

v2.4.0 (2020/02/08) Speedgrader - The new code viewer

  • The File Tree shows file hierarchy of student’s submission
    • Click on a file to open
    • Click on a folder to expand
  • The Symbol Tree allows you to jump quickly to functions in the student’s code
    • Click on a function to jump
  • You can easily switch between submissions and files
    • Up/down arrow keys change file
    • Right/left arrow keys change submission
  • How to use new annotation system:
    • Make annotations with grade adjustments
    • Important: annotations can only be made for non-autograded problems (to preserve the original autograded score of the autograded problem)
    • Annotations grade changes summarized by the Annotations table on the right
  • New: Score for problem automatically updates after annotation score changes based on the following formula (this no longer has to be done manually on the Gradebook):

score = max_score + ∑(annotation score changes)

  • For example, a way to grade style in a deductive manner would be to set the max score for the Style problem, and make annotations with negative score for style violations and zero score for good style

UI Enhancements

  • Tables are more standardized
  • Fixed text overflowing issues on Gradebook modals
  • Improved standardization and UI for annotations on PDF submissions

Others

  • Course assistants are now able to submit assignments early
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].