openaustralia / jacaranda

a watchful tree and slack messenger to keep you informed of the use of PlanningAlerts


Jacaranda

A watchful tree and slack messenger to keep you informed of the use of PlanningAlerts.

Working on PlanningAlerts over the last year we’ve noticed that:

  • We don’t have an accurate idea of the impact of PlanningAlerts, how many people are using it, or the rate a which this is changing; and
  • We feel more energised in our work when we get feedback about it’s use and impact.

Jacaranda is an experiment to see the impact of regular feedback on the people developing PlanningAlerts. It aims to keep you more informed of the use and impact of PlanningAlerts; to remind you of the effort you’ve put in to achieve this; and to do this in an quick and unobtrusive way.

Jacaranda collects information about people using PlanningAlerts and the work we do to make it better for them. It then sends a short fortnightly message to our Slack channel to give us a sense of how things are going.

Image of slack message from Jacaranda

This is a very basic start. We’ve interested to see how getting these messages impacts us and what we do with the information.

Currently Jacaranda tells you about:

  • the number of people who signed up for PlanningAlerts in the last fortnight;
  • the difference between this number and the figure for the previous fortnight;
  • the number of people who have unsubscribed in the last fortnight;
  • the difference between this number and the figure for the previous fortnight;
  • the number of commits pushed to the project in the last fortnight; and,
  • the total number of people now signed up to PlanningAlerts.

While the number of users isn’t a great measure of PlanningAlerts’ impact, it’s a start to see how the feedback works for us. Feel free to change the text or the information in presents to what you think will have a better impact.

Caveats

The time frames that this claims to show subscribers for aren’t accurate because they're displayed as it they were recorded in local time, but they're actually counted in UTC.

Usage

This program depends on three environment variables:

  • GitHub OAuth token for your github account
  • Slack channel webhook url to post the message to
  • Live mode to make it actually post to the Slack channel #townsquare and save to the database

In local development you can add these to a .env file and use dotenv to load them as the scraper runs:

MORPH_SLACK_CHANNEL_WEBHOOK_URL="https://hooks.slack.com/services/XXXXXXXXXXXXX" MORPH_GITHUB_OAUTH_ACCESS_TOKEN=XXXXXXXXXXXXXXXXXXXXXXXXXXXXX MORPH_LIVE_MODE=false

Create a .env file using the example provided by running cp .env.example .env.

Running this on morph.io

You can also run this as a scraper on Morph. To get started see the documentation

Image credit

The Jacaranda Slack avatar is cropped from a photograph of the Jacaranda trees on Gowrie St, Newtown, Sydney by Flickr user murry. Thanks murry for making it available under a creative commons license.

Contributors equivalentideas

Last run completed successfully .

Console output of last run

Injecting configuration and compiling...  -----> Ruby app detected -----> Compiling Ruby -----> Using Ruby version: ruby-2.0.0 -----> Installing dependencies using bundler 1.11.2  Running: bundle install --without development:test --path vendor/bundle --binstubs vendor/bundle/bin -j4 --deployment  Warning: the running version of Bundler is older than the version that created the lockfile. We suggest you upgrade to the latest version of Bundler by running `gem install bundler`.  Fetching gem metadata from https://rubygems.org/.........  Fetching version metadata from https://rubygems.org/...  Fetching dependency metadata from https://rubygems.org/..  Fetching https://github.com/openaustralia/scraperwiki-ruby.git  Rubygems 2.0.14.1 is not threadsafe, so your gems will be installed one at a time. Upgrade to Rubygems 2.1.0 or higher to enable parallel gem installation.  Installing i18n 0.7.0  Installing json 1.8.3 with native extensions  Installing minitest 5.9.0  Installing thread_safe 0.3.5  Installing addressable 2.4.0  Installing unf_ext 0.0.7.1 with native extensions  Installing multipart-post 2.0.0  Installing httpclient 2.6.0.1  Installing mime-types 2.5  Installing net-http-digest_auth 1.4  Installing net-http-persistent 2.9.4  Installing mini_portile2 2.1.0  Installing pkg-config 1.1.7  Installing ntlm-http 0.1.1  Installing webrobots 0.1.1  Installing sqlite3 1.3.10 with native extensions  Using bundler 1.11.2  Installing tzinfo 1.2.2  Installing unf 0.1.4  Installing faraday 0.9.2  Installing rest-client 1.6.7  Installing nokogiri 1.6.8 with native extensions  Installing sqlite_magic 0.0.3  Installing activesupport 4.2.7.1  Installing domain_name 0.5.24  Installing sawyer 0.7.0  Using scraperwiki 3.0.1 from https://github.com/openaustralia/scraperwiki-ruby.git (at morph_defaults@fc50176)  Installing http-cookie 1.0.2  Installing octokit 4.3.0  Installing mechanize 2.7.3  Bundle complete! 8 Gemfile dependencies, 30 gems now installed.  Gems in the groups development and test were not installed.  Bundled gems are installed into ./vendor/bundle.  Bundle completed (29.58s)  Cleaning up the bundler cache.  Warning: the running version of Bundler is older than the version that created the lockfile. We suggest you upgrade to the latest version of Bundler by running `gem install bundler`.   -----> Discovering process types  Procfile declares types -> scraper Injecting scraper and running... In live mode, this will post to Slack and save to the db Check if it has collected data in the last fortnight "I’ve already spoken to the team this fortnight"

Data

Downloaded 1 time by lukepint

To download data sign in with GitHub

Download table (as CSV) Download SQLite database (5 KB) Use the API

rows 7 / 7

date_posted text
2016-08-29
700 people signed up for PlanningAlerts last fortnight :revolving_hearts: That’s 6% down from the fortnight before. You shipped 26 commits in the same period. There are now 36.8 thousand PlanningAlerts subscribers! :star2:
2016-09-12
705 people signed up for PlanningAlerts last fortnight :revolving_hearts: That’s 3% up from the fortnight before. You shipped 1 commits in the same period. There are now 37.4 thousand PlanningAlerts subscribers! :star2:
2016-09-26
746 people signed up for PlanningAlerts last fortnight :revolving_hearts: That’s 6% up from the fortnight before. You shipped 13 commits in the same period. There are now 38 thousand PlanningAlerts subscribers! :star2:
2016-10-10
728 people signed up for PlanningAlerts last fortnight :revolving_hearts: That’s 0% down from the fortnight before. There are now 38.6 thousand PlanningAlerts subscribers! :star2:
2016-10-25
745 people signed up for PlanningAlerts last fortnight :revolving_hearts: That’s 5% up from the fortnight before. There are now 39.3 thousand PlanningAlerts subscribers! :star2:
2016-11-09
743 people signed up for PlanningAlerts last fortnight :revolving_hearts: That’s 1% less than the fortnight before. 180 people left :scream_cat: That’s 4% more than the fortnight before. You shipped 27 commits in the same period. There are now 39.9 thousand PlanningAlerts subscribers! :star2:
2016-11-25
678 people signed up for PlanningAlerts last fortnight :revolving_hearts: That’s 10% less than the fortnight before. 177 people left :scream_cat: That’s 3% less than the fortnight before. There are now 40.5 thousand PlanningAlerts subscribers! :star2:

Statistics

Average successful run time: less than a minute

Total run time: about 2 hours

Total cpu time used: 2 minutes

Total disk space used: 177 KB

History

  • Auto ran revision 1951df3a and completed successfully .
    nothing changed in the database
  • Auto ran revision 1951df3a and completed successfully .
    nothing changed in the database
  • Auto ran revision 1951df3a and completed successfully .
    nothing changed in the database
  • Auto ran revision 1951df3a and failed .
    nothing changed in the database
  • Auto ran revision 1951df3a and completed successfully .
    nothing changed in the database
  • Auto ran revision 1951df3a and completed successfully .
    nothing changed in the database
  • Auto ran revision 1951df3a and completed successfully .
    nothing changed in the database
  • Auto ran revision 6b9ef336 and completed successfully .
    nothing changed in the database
  • Auto ran revision 6b9ef336 and completed successfully .
    nothing changed in the database
  • Auto ran revision 6b9ef336 and completed successfully .
    1 record added in the database
    4 pages scraped
  • Auto ran revision 6b9ef336 and completed successfully .
    nothing changed in the database
  • Auto ran revision 6b9ef336 and completed successfully .
    nothing changed in the database
  • Auto ran revision 6b9ef336 and completed successfully .
    nothing changed in the database
  • Auto ran revision 6b9ef336 and completed successfully .
    nothing changed in the database
  • Auto ran revision 6b9ef336 and completed successfully .
    nothing changed in the database
  • Auto ran revision 6b9ef336 and completed successfully .
    nothing changed in the database
  • Auto ran revision 6b9ef336 and completed successfully .
    nothing changed in the database
  • Auto ran revision 6b9ef336 and completed successfully .
    nothing changed in the database
  • Auto ran revision 6b9ef336 and completed successfully .
    nothing changed in the database
  • Auto ran revision 6b9ef336 and completed successfully .
    nothing changed in the database
  • Auto ran revision 6b9ef336 and completed successfully .
    nothing changed in the database
  • Auto ran revision 6b9ef336 and completed successfully .
    nothing changed in the database
  • Auto ran revision 6b9ef336 and completed successfully .
    nothing changed in the database
  • Auto ran revision 6b9ef336 and completed successfully .
    1 record added in the database
    4 pages scraped
  • Auto ran revision 6b9ef336 and failed .
    nothing changed in the database
    4 pages scraped
  • Auto ran revision 6b9ef336 and completed successfully .
    nothing changed in the database
  • Auto ran revision 6b9ef336 and completed successfully .
    nothing changed in the database
  • Auto ran revision 6b9ef336 and completed successfully .
    nothing changed in the database
  • Auto ran revision 6b9ef336 and completed successfully .
    nothing changed in the database
  • Auto ran revision 6b9ef336 and completed successfully .
    nothing changed in the database
  • Auto ran revision 6b9ef336 and completed successfully .
    nothing changed in the database
  • Auto ran revision 49bda9c6 and completed successfully .
    nothing changed in the database
  • Auto ran revision 49bda9c6 and completed successfully .
    nothing changed in the database
    1 page scraped
  • Auto ran revision 49bda9c6 and completed successfully .
    nothing changed in the database
    80 pages scraped
  • Auto ran revision 49bda9c6 and completed successfully .
    nothing changed in the database
  • Auto ran revision 49bda9c6 and completed successfully .
    nothing changed in the database
  • Auto ran revision 49bda9c6 and completed successfully .
    nothing changed in the database
  • Auto ran revision 49bda9c6 and completed successfully .
    nothing changed in the database
  • Auto ran revision 49bda9c6 and completed successfully .
    1 record added in the database
  • Auto ran revision 49bda9c6 and completed successfully .
    nothing changed in the database
    5 pages scraped
  • Auto ran revision 49bda9c6 and completed successfully .
    nothing changed in the database
  • Auto ran revision 49bda9c6 and completed successfully .
    nothing changed in the database
    62 pages scraped
  • Auto ran revision 49bda9c6 and completed successfully .
    nothing changed in the database
  • Auto ran revision 49bda9c6 and completed successfully .
    nothing changed in the database
  • Auto ran revision 49bda9c6 and completed successfully .
    nothing changed in the database
  • Auto ran revision 49bda9c6 and completed successfully .
    nothing changed in the database
  • Auto ran revision 49bda9c6 and completed successfully .
    nothing changed in the database
  • Auto ran revision 49bda9c6 and completed successfully .
    nothing changed in the database
  • Auto ran revision 49bda9c6 and completed successfully .
    nothing changed in the database
  • Auto ran revision 49bda9c6 and completed successfully .
    nothing changed in the database
  • Auto ran revision 49bda9c6 and completed successfully .
    nothing changed in the database
  • Auto ran revision 49bda9c6 and completed successfully .
    nothing changed in the database
  • Auto ran revision 49bda9c6 and completed successfully .
    nothing changed in the database
  • Auto ran revision 49bda9c6 and completed successfully .
    1 record added in the database
  • Auto ran revision 49bda9c6 and completed successfully .
    nothing changed in the database
  • Auto ran revision 49bda9c6 and completed successfully .
    nothing changed in the database
  • Auto ran revision 49bda9c6 and completed successfully .
    nothing changed in the database
  • Auto ran revision 49bda9c6 and completed successfully .
    nothing changed in the database
  • Auto ran revision 49bda9c6 and completed successfully .
    nothing changed in the database
  • Auto ran revision 49bda9c6 and completed successfully .
    nothing changed in the database
  • Auto ran revision 49bda9c6 and completed successfully .
    nothing changed in the database
  • Auto ran revision 49bda9c6 and completed successfully .
    nothing changed in the database
  • Auto ran revision 49bda9c6 and completed successfully .
    nothing changed in the database
  • Auto ran revision 49bda9c6 and completed successfully .
    nothing changed in the database
  • Auto ran revision 49bda9c6 and completed successfully .
    nothing changed in the database
  • Auto ran revision 49bda9c6 and completed successfully .
    nothing changed in the database
  • Auto ran revision 49bda9c6 and completed successfully .
    nothing changed in the database
  • Auto ran revision 49bda9c6 and completed successfully .
    1 record added in the database
    5 pages scraped
  • Auto ran revision 49bda9c6 and completed successfully .
    nothing changed in the database
  • Auto ran revision 49bda9c6 and completed successfully .
    nothing changed in the database
  • Auto ran revision 49bda9c6 and completed successfully .
    nothing changed in the database
  • Auto ran revision 49bda9c6 and completed successfully .
    nothing changed in the database
  • Auto ran revision 49bda9c6 and completed successfully .
    nothing changed in the database
  • Auto ran revision 49bda9c6 and completed successfully .
    nothing changed in the database
    30 pages scraped
  • Auto ran revision 49bda9c6 and completed successfully .
    nothing changed in the database
  • Auto ran revision 49bda9c6 and completed successfully .
    nothing changed in the database
  • Auto ran revision 49bda9c6 and completed successfully .
    nothing changed in the database
  • Auto ran revision 49bda9c6 and completed successfully .
    nothing changed in the database
  • Auto ran revision 49bda9c6 and completed successfully .
    nothing changed in the database
  • Auto ran revision 49bda9c6 and completed successfully .
    nothing changed in the database
  • Auto ran revision 49bda9c6 and completed successfully .
    nothing changed in the database
  • Auto ran revision 49bda9c6 and completed successfully .
    1 record added in the database
    5 pages scraped
  • Auto ran revision 49bda9c6 and completed successfully .
    nothing changed in the database
    1 page scraped
  • Auto ran revision 49bda9c6 and completed successfully .
    nothing changed in the database
  • Auto ran revision 49bda9c6 and completed successfully .
    nothing changed in the database
  • Auto ran revision 49bda9c6 and completed successfully .
    nothing changed in the database
  • Auto ran revision 49bda9c6 and completed successfully .
    nothing changed in the database
  • Auto ran revision 49bda9c6 and completed successfully .
    nothing changed in the database
  • Auto ran revision 49bda9c6 and completed successfully .
    nothing changed in the database
  • Auto ran revision 49bda9c6 and completed successfully .
    nothing changed in the database
  • Auto ran revision 49bda9c6 and completed successfully .
    nothing changed in the database
  • Auto ran revision 49bda9c6 and completed successfully .
    nothing changed in the database
  • Auto ran revision 49bda9c6 and completed successfully .
    nothing changed in the database
  • Auto ran revision 49bda9c6 and completed successfully .
    nothing changed in the database
  • Auto ran revision 49bda9c6 and completed successfully .
    nothing changed in the database
  • Auto ran revision 49bda9c6 and completed successfully .
    nothing changed in the database
  • Manually ran revision 49bda9c6 and completed successfully .
    1 record added in the database
    5 pages scraped
  • Manually ran and failed .
  • Manually ran revision f422cfcb and completed successfully .
    1 record added in the database
    1300 pages scraped
  • Manually ran and failed .
  • Manually ran and failed .
  • Manually ran and failed .
  • Manually ran revision 0b9fcd74 and completed successfully .
    1 record added in the database
    5 pages scraped
  • Manually ran revision 0b9fcd74 and failed .
    nothing changed in the database
    4 pages scraped
  • Manually ran revision e2550979 and failed .
    nothing changed in the database
  • Manually ran revision eed3cf9e and failed .
    nothing changed in the database
  • Created on morph.io

Scraper code

Ruby

jacaranda / scraper.rb