- Download the script to your local machine
- Create a credentials JSON file on your local machine:
- If you do not have an API token for Jira, generate one by going here
- Create a JSON file on your local machine like
{"subdomain": "<your_domain>", "username": "<your_login_email>", "api_token": "<your_api_token>"}
. Name it anything you want.
- Run an export in Jira to get the issues you want. You only need the columns that the script requires
- Run
compute-jira-cycle-times.py <path_to_credential_file> <path_to_export>
- You can take the new CSV generated and put it in Google Sheets, Excel, or Pages to create some charts and work with the data.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/python | |
import os | |
import sys | |
import http.client | |
from collections import defaultdict | |
if len(sys.argv) < 2: | |
print('You need to provide a URL') | |
exit() |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/** @OnlyCurrentDoc */ | |
function ReformatandBold() { | |
var spreadsheet = SpreadsheetApp.getActive(); | |
var cellText = spreadsheet.getCurrentCell().getValue(); | |
var newCellText = ''; | |
var subCompetencies = []; | |
cellText.split('[').forEach((element) => { | |
if (!element){ | |
return; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#-*- coding: utf-8 -*- | |
import csv | |
import sys | |
from pathlib import PurePath | |
if len(sys.argv) < 3: | |
print('Must specify <path_to_csv_with_file_names> <path_to_codeowners>') | |
sys.exit(1) |
This doc outlines how to setup a remote pairing session using SSH and GNU Screen. These instructions were adapted from https://www.agileventures.org/remote-pair-programming/gnu-screen-pairing-notes
Prerequisit: The person on the guest machine needs a user account created on the host that they can connect to via SSH.
- Install Screen
- Mac: Should already be installed, but you can also find it on homebrew
- Ubuntu:
sudo apt-get install screen
- (Platform dependent) Add the set-uid bit to screen chmod 4755 /usr/bin/screen
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/python | |
# Given a distance and time, computes your pace-per-mile: | |
# <distance in mi> - Total milage, in a format like `3.1` or `0.25` | |
# <time> - Total time. Allowed formats are `M:SS` or `H:MM:SS` | |
import sys | |
if len(sys.argv) == 1: | |
print 'Usage: <distance in mi> <time>' | |
sys.exit() |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
if [ ! -z $1 ]; then | |
MATCHER=$1 | |
else | |
# Try to guess the project based on directory name | |
MATCHER=`pwd | sed 's/\/.*\///'` | |
fi | |
echo "Looking for web container named '$MATCHER'..." |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
class Contact < ActiveRecord::Base | |
... | |
def after_create | |
if Hook.hooks_exist?('new_contact', self) | |
Resque.enqueue(Hook, self.class.name, self.id) | |
# To trigger directly without Resque: Hook.trigger('new_contact', self) | |
end | |
end |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
class Hook < ActiveRecord::Base | |
attr_accessible :event, :account_id, :subscription_url, :target_url | |
validates_presence_of :event, :account_id, :subscription_url, :target_url | |
# Looks for an appropriate REST hook that matches the record, and triggers the hook if one exists. | |
def self.trigger(event, record) | |
hooks = Hook.find(:all, :conditions => { | |
:event => event, | |
:account_id => record.account_id, | |
}) |