Code Monkey home page Code Monkey logo

miniature-octo-ironman's Introduction

Overview

I want to be able to make ruby-monk style lessons e.g. https://rubymonk.com/learning/books/4-ruby-primer-ascent/chapters/44-collections/lessons/98-iterate-filtrate-and-transform This project is to support that.

Getting started

Install dependencies with rake bootstrap
Run tests with rake cuke
Run server with rake server (once someone does Rake task for server anyway)

Iteration 1 goals

  • I can embed a Ruby snippet into a markdown page and see an editor
  • I can run the code in the editor and see the output (Follow along with progress at #12)

How do I contribute?

  • Pick an issue:
    • Look for one that is not assigned
    • Sub issues of #12 would be super helpful :)
    • Also #17 is small.
  • Try to work in small steps that you can push up to master without breaking tests
  • Make sure any relevant behaviour is tested, so we don't break your shit when we change it (we'll do the same for you, so you can change our shit without fear)
  • In any relevant commits, mention the issue number (e.g. #17), they will automatically be associated with the issue (more on linking)
  • When your commits are adequate to complete your story, ask for a code review.

Philosophy of collaboration

  • Change anything you want (try to understand why it is the way it is, ask others if you need context)
  • Try to work in small enough steps that you can push them multiple times per day (ideally, you can push after each commit, though you don't necessarily)
  • Everyone's local master should be hovering around origin/master so that all changes are small with low likelihood of conflict, and everyone has as much of everyone else's work as possible, so that no one is being held up by unmerged features.
  • Have reasonable tests on your features so we know if we break them. If you're having difficulty knowing what or how to do this, come ask.
  • Never push failing tests to master, you'll break everyone else's ability to work on their thing, they'll have to deal with your failure.
  • See a problem? Fix it. Have an idea? Open an issue.

Future shit maybe

  • manifest of lesson names to git repositories (ie gist) rather than having to edit the source of the server to change a lesson
  • maybe scoped by content owner
  • maybe overridable language for the editor

miniature-octo-ironman's People

Contributors

joshcheek avatar andydangerous avatar allisonlarson avatar 121watts avatar koriroys avatar rnavarrete avatar ericfransen avatar timproctor avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.