Code Monkey home page Code Monkey logo

checkin's Introduction

Checkin

Remote-friendly scrum checkins without the annoying meetings.

An educational student app project originally designed for Learn JavaScript with Eric Elliott.

Instructions

Create a repository and implement your own Checkin app. Feel free to recruit other people and work in groups (ideally 2 - 7 people). Recruit your team in the JavaScript Questions Chat.

Can't find a team? No problem. Fly solo and keep all the glory.

Things to Keep in Mind

  • Not sure where to start? Try the Universal React Boilerplate or take a peak at some sample code.
  • Don't export any classes. If you need to instantiate anything, use a factory function.
  • Use pure functions wherever you can. A pure function does not mutate anything outside itself. A pure function does not produce side effects. Given the same inputs, a pure function will always return the same output.
  • Notice how much of the program state can be represented as lists of things:
    • A list of users.
    • A list of teams.
    • A list of checkins.

What's a Scrum Checkin?

In agile development, we strive to implement the minimum effective amount of process to enable high velocity development.

The scrum meeting is a common element of that minimal process. Its purpose is to allow team members to check in with each other. On each work day, each small team gathers to answer three questions:

  • What did you do on the last workday?
  • What are you doing today?
  • Is there anything blocking you?

Scrum teams should be small, so these meetings should last less than 15 minutes.

But what about distributed teams working in different timezones? And even a 15 minute meeting is still expensive. What if you could get even better visibility without the inefficiency of a meeting?

That's where this app comes in.

Basic Requirements

Don't worry about anything but getting the user interfaces to work. No need for user authorization, databases, or API's for now. Feel free to make some fake users and fake checkin data.

  • Allow a user to create and name teams. Users own the teams they create.
  • Allow a user to check in with a specific team and answer each of the three scrum questions.
  • View the team status: A simple display of each user's most recent checkin.

Here's a simple mock-up of the checkin feature. Feel free to improve on the UI:

screen shot 2015-10-08 at 7 35 58 pm

Mid Level Requirements

  • Allow a user to join an existing team.
  • Store data on a remote server and let other users sign up. Consider trying Horizon.

Advanced Requirements

  • Integrate with Github and let users link updates to the current issue they're working on.
  • Automate checkin updates by adding assigned project issues from GitHub to the user's status.
  • Add realtime capability and update the status when another user checks in.

To Implement:

  1. Fork this repo
  2. Implement your solution.
  3. Open an issue with a link to your fork.

To get credit, you must open an issue with a link to your fork.

checkin's People

Contributors

ericelliott avatar

Watchers

 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.