/mobster

Pair and mob programming timer for Mac, Windows, and Linux.

Primary LanguageElmMIT LicenseMIT

Ideas tracked on

Mobster Build Status

A mob/pair programming timer, inspired by the MobProgramming/MobTimer.Python. Runs great on Mac, Windows, and Linux. Learn all about mobbing at the MobTimer.Python github page, and at mobprogramming.org.

Mobster was built with delight in Elm and Electron

RPG Mode

You can play through the mob programming RPG to practice mobbing skills with your team. This is a port of Willem Larsen's excellent Mob Programming RPG. This is a fantastic way to learn about some of the subtleties that are essential to effective mobbing, such as the Driver/Navigator Pattern (also known as Strong-Style).

RPG Mode

Recommended Structure

  • Pick a familiar exercise in a familiar language if possible so you can focus on learning mobbing skills, not a new language, etc.

Using Active Mobsters for Git Commit Authors/Shell Scripts

The active mobsters will always be up-to-date in the active-mobsters file.

The location of this file for the different platforms is:

  • %APPDATA%\mobster\active-mobsters on Windows
  • $XDG_CONFIG_HOME/mobster/active-mobsters or ~/.config/mobster/active-mobsters on Linux
  • ~/Library/Application Support/mobster/active-mobsters on macOS

(As described in appData section of the Electron docs](https://electron.atom.io/docs/api/app/#appgetpathname)).

The names in the active-mobsters file are separated by ,s with spaces like so: Jim Kirk, Spock, McCoy.

You can set the author field in a commit to the list of active mobsters. See mobster-commit.sh for a working example. After committing with this script, your git log will look something like:

$ git log
commit 39d59e7e4c9acb021988b3040f9b7ace5f539b78
Author: James Kirk, Leonard McCoy, Spock <example@example.com>
Date:   Fri Mar 3 21:00:25 2017 -0500

    Set phasers to stun.

Workaround for Windows 10 Transparency Issues

There is a known Electron bug for transparency in Windows 10 (see also dillonkearns#49). If you have this issue on your machine, you can disable transparency with these steps:

  • Create a file called NO_TRANSPARENCY in the directory %APPDATA%/mobster (make sure it doesn't have a .txt or any other extension). You can type the [Windows]+[R] command and paste in %APPDATA%/mobster to get directly to the directory where this file should go.
  • Restart Mobster

Thanks @steverb1 for reporting the issue and testing workarounds!

Contributors

  • A big thanks to Eric Heikkila (ehei) for figuring out the autoUpdater (which I couldn't for the life of me get to work)!
  • Thanks to Gedward Gonzalez (gedward) for stepping me through the Mac app signing and autoUpdater with his Apple dev expertise!
  • Thanks for contributing some sweet quotes Nayan Hajratwala (nhajratw)

Contributing

To clone and run this repository you'll need Git and Node.js (which comes with npm) installed on your computer. From your command line:

# Clone this repository
git clone https://github.com/dillonkearns/mobster
# Go into the repository
cd mobster
# Install dependencies
npm install
# Run the app
npm start