Skip to content

Instantly share code, notes, and snippets.

@vdavez
Last active March 11, 2016 13:50
Show Gist options
  • Save vdavez/5dde40ce07d4c8ce7aa0 to your computer and use it in GitHub Desktop.
Save vdavez/5dde40ce07d4c8ce7aa0 to your computer and use it in GitHub Desktop.
mp-timing
# import libraries
import json
import statistics
import datetime
def convert_time(timeStr):
""" convert_time
A helper function to convert a ISO datetime string into a datetime object
@params timeStr - a datetime string in isoformat
@returns datetime object
"""
return datetime.datetime.strptime(timeStr, "%Y-%m-%dT%H:%M:%S+00:00")
# get the auctions
with open('auctions.json', 'r') as fp:
auctions = json.load(fp)["auctions"]
results = []
medians = []
# loop through auctions
auctions = [auction for auction in auctions if auction["id"] <= 16]
for auction in auctions:
# get the opening and closing times
opening_time = convert_time(auction["start_datetime"])
closing_time = convert_time(auction["end_datetime"])
auction_list = []
normalized_list = []
# for each bid
for bid in auction["bids"]:
# get the bid time
bid_time = convert_time(bid["created_at"])
# normalize to the range of opening and closing
normalized = (bid_time - opening_time).total_seconds() / (closing_time - opening_time).total_seconds()
auction_list.append(auction["id"])
normalized_list.append(normalized)
results.append((auction_list, normalized_list))
medians.append((auction["id"], statistics.median(normalized_list)))
for median in medians:
print(median)
{"auctions":[{"issue_url":"https://github.com/18F/tock/issues/328","github_repo":"https://github.com/18F/tock","start_price":3500,"start_datetime":"2016-03-10T18:00:00+00:00","end_datetime":"2016-03-14T18:00:00+00:00","title":"Set up docker-compose for Tock Django app","description":"## Description\r\n\r\nWe want setting up a development environment for the Tock Django app to be as easy as possible. To accomplish this, we want to use [`docker-compose`](https://docs.docker.com/compose/). This issue seeks to make it easy for anyone to get up running with a local instance of the Tock Django app.\r\n\r\n## Auction rules\r\n\r\nRegistered users on micropurchase.18f.gov may bid to deliver the requirements in this auction. The lowest bidder at the time the auction closes shall receive the award. The awarded bidder shall have five business days to deliver the requirements. Upon successful completion of the requirements, 18F shall pay the winning bidder.\r\n\r\nAlso see our [policies and guidelines page](https://micropurchase.18f.gov/faq).\r\n\r\n## Acceptance Criteria\r\n\r\nGiven a clone of the 18F/tock git repository\r\n\r\nWhen the developer runs `docker-compose up`\r\n\r\nThen the developer has access to a complete development environment for the Tock Django app\r\n\r\nTo test acceptance, we're going to:\r\n\r\n- Clone the https://github.com/18f/tock and checkout the delivered Pull Request\r\n- Edit the `.env` file (read [this page](https://docs.docker.com/v1.8/compose/yml/#env-file) for more information on how docker-compose handles environment variables)\r\n- Run `docker-compose up`\r\n- Visit the homepage on localhost (or similar)\r\n- Click on the \"Users\" link (CSS selector: `body \u003e div \u003e header \u003e ul \u003e li:nth-child(2) \u003e a`) (ensure that `docker-compose up` loads the data using `python manage.py loaddata test_data/data-update.json \r\n`)\r\n- Run the test suite from within the Docker container (the command for this must be documented in the README.)\r\n\r\nWe'll accept the delivery if each of these steps is successful.\r\n\r\n## General acceptance criteria\r\n\r\n- B or better Code Climate grade and 90% or higher test coverage for all modifications.\r\n- Tests run on Travis-CI and do not break the build.\r\n- New features do not degrade accessibility (use [pa11y](http://pa11y.org/)/[HTML Code Sniffer](https://squizlabs.github.io/HTML_CodeSniffer/)).\r\n- New functionality is adequately documented.\r\n\r\n## Resources\r\n\r\n- https://github.com/18F/tock\r\n- https://docs.docker.com/compose/\r\n- https://docs.docker.com/v1.8/compose/yml/#env-file\r\n\r\n## Deliverables\r\n\r\nA single pull request submitted to https://github.com/18F/tock with clear, descriptive commits that satisfy all of the above acceptance criteria.\r\n","id":23,"bids":[],"created_at":"2016-03-08T23:54:11+00:00","updated_at":"2016-03-08T23:54:11+00:00","summary":"We want setting up a development environment for the Tock Django app to be as easy as possible. To accomplish this, we want to use [`docker-compose`](https://docs.docker.com/compose/). This issue seeks to make it easy for anyone to get up running with a local instance of the Tock Django app."},{"issue_url":"https://github.com/18F/micropurchase/issues/332","github_repo":"https://github.com/18F/micropurchase","start_price":3500,"start_datetime":"2016-03-10T18:00:00+00:00","end_datetime":"2016-03-14T18:00:00+00:00","title":"Set up docker-compose for Micropurchase Rails app","description":"## Description\r\n\r\nWe want setting up a development environment for the micro-purchase Rails app to be as easy as possible. To accomplish this, we want to use [`docker-compose`](https://docs.docker.com/compose/). This issue seeks to make it easy for anyone to get up running with a local instance of the micro-purchase Rails app.\r\n\r\n## Auction rules\r\n\r\nRegistered users on micropurchase.18f.gov may bid to deliver the requirements in this auction. The lowest bidder at the time the auction closes shall receive the award. The awarded bidder shall have five business days to deliver the requirements. Upon successful completion of the requirements, 18F shall pay the winning bidder.\r\n\r\nAlso see our [policies and guidelines page](https://micropurchase.18f.gov/faq).\r\n\r\n## Acceptance Criteria\r\n\r\nGiven a clone of the 18F/micropurchase git repository\r\n\r\nWhen the developer obtains and adds the appropriate GitHub API keys\r\n\r\nAnd the developer runs `docker-compose up`\r\n\r\nThen the developer has access to a complete development environment for the micro-purchase Rails app\r\n\r\nTo test acceptance, we're going to:\r\n\r\n- Clone the https://github.com/18f/micropurchase and checkout the delivered Pull Request\r\n- Edit the `.env` file (read [this page](https://docs.docker.com/v1.8/compose/yml/#env-file) for more information on how docker-compose handles environment variables)\r\n- Run `docker-compose up`\r\n- Visit the homepage on localhost (or similar)\r\n- Click on the first auction listed (ensure that `docker-compose up` loads the data from `db/seeds.rb`)\r\n- Login using GitHub OAuth.\r\n- Run the test suite from within the Docker container (the command for this must be documented in the README.)\r\n\r\nWe'll accept the delivery if each of these steps is successful.\r\n\r\n## General acceptance criteria\r\n\r\n- B or better Code Climate grade and 90% or higher test coverage for all modifications.\r\n- Tests run on Travis-CI and do not break the build.\r\n- New features do not degrade accessibility (use [pa11y](http://pa11y.org/)/[HTML Code Sniffer](https://squizlabs.github.io/HTML_CodeSniffer/)).\r\n- New functionality is adequately documented.\r\n\r\n## Resources\r\n\r\n- https://github.com/18F/micropurchase\r\n- https://docs.docker.com/compose/\r\n- http://blog.carbonfive.com/2015/03/17/docker-rails-docker-compose-together-in-your-development-workflow/\r\n- https://docs.docker.com/v1.8/compose/yml/#env-file\r\n\r\n## Deliverables\r\n\r\nA single pull request submitted to https://github.com/18F/micropurchase with clear, descriptive commits that satisfy all of the above acceptance criteria.\r\n","id":22,"bids":[{"bidder_id":null,"auction_id":22,"amount":3499,"created_at":"2016-03-10T18:33:41+00:00","updated_at":"2016-03-10T18:33:41+00:00","id":180,"bidder":{"github_id":null,"duns_number":null,"name":null,"sam_account":null,"created_at":null,"updated_at":null,"id":null}}],"created_at":"2016-03-08T23:23:31+00:00","updated_at":"2016-03-08T23:23:31+00:00","summary":"We want setting up a development environment for the micro-purchase Rails app to be as easy as possible. To accomplish this, we want to use [`docker-compose`](https://docs.docker.com/compose/). This issue seeks to make it easy for anyone to get up running with a local instance of the micro-purchase Rails app."},{"issue_url":"https://github.com/18F/openopps-platform/issues/1229","github_repo":"https://github.com/18F/openopps-platform","start_price":3500,"start_datetime":"2016-03-10T18:00:00+00:00","end_datetime":"2016-03-14T18:00:00+00:00","title":"Open Opportunities: Create Agency Admin User Role","description":"# Description\r\nOpen Opportunities uses the open source [sails.js](http://sailsjs.org/) MVC framework (Node.js / Express). This issue seeks to create a user role of \"Agency Admin\" that gives the user access to all of the admin pages in that agency. For this micro-purchase to be complete, the vendor will create an `isAgencyAdmin` property on the user, create a policy to regulate agency admin access, and create the ability for admins to promote users to an agency admin.\r\n\r\nThis will be used for future functionality on the agency data tag.\r\n\r\nFor more information please see the [Github Issue](https://github.com/18F/openopps-platform/issues/1229)\r\n\r\n## Auction rules\r\n\r\nRegistered users on micropurchase.18f.gov may bid to deliver the requirements in this auction. The lowest bidder at the time the auction closes shall receive the award. The awarded bidder shall have five business days to deliver the requirements. Upon successful completion of the requirements, 18F shall pay the winning bidder.\r\n\r\nAlso see our [policies and guidelines page](https://micropurchase.18f.gov/faq).\r\n\r\n## Acceptance Criteria\r\n\r\n### 1.) Add “agency admin” property to user\r\n\r\nA migration script to add `isAgencyAdmin` to the midas_user table\r\n\r\n\r\n\r\n### 2.) Develop an “agency admin” policy\r\n\r\nGiven a user is an `agency admin`,\r\n\r\nWhen they try to access admin pages,\r\n\r\nThen they would only be able to access admin pages within their own agency. When an `admin user` visits the `/adminadmin user management page`, then browser should redirect to their agency admin page at `admin/agencies/:agencyid` with a placeholder page\r\n\r\n\r\n(Looking at the isAdmin policy would provide an example of the updated policy)\r\n\r\n\u003chr /\u003e\r\n\r\n### 3.) Enable an admin to create an “agency admin”\r\n\r\nWhen an `admin user` visits the `admin user management page`,\r\n\r\nThen they should be able to at any user to be an agency admin via a UI control\r\n\r\n## General acceptance criteria\r\n\r\nB or better Code Climate grade and 90% or higher test coverage for all modifications.\r\nTests adequately cover any new functionality.\r\nTests run on Travis-CI and do not break the build.\r\nNew features do not degrade accessibility (use pa11y/HTML Code Sniffer).\r\n\r\n## Resources\r\n\r\n- https://github.com/18F/openopps-platform/issues/1229\r\n- [Use of the isAdmin policy](https://github.com/18F/openopps-platform/blob/14283ade4c5725e2e28403b5e367bddde8139c7f/api/policies/user.js)\r\n- http://sailsjs.org/\r\n\r\n## Deliverables\r\n\r\nA single pull request submitted to https://github.com/18F/openopps-platform with clear, descriptive commits that satisfy all of the above acceptance criteria.","id":20,"bids":[],"created_at":"2016-03-08T16:52:38+00:00","updated_at":"2016-03-08T16:52:38+00:00","summary":"The Open Opportunities is a node.js-based platform to foster collaboration on government projects. This issue seeks to create a new user role for \"Agency Admins\" that will (in the future) give those users admin privileges to see data for users from their agency."},{"issue_url":"https://github.com/18F/fedramp-micropurchase/issues/1","github_repo":"https://github.com/18F/openopps-platform/","start_price":3500,"start_datetime":"2016-03-10T18:00:00+00:00","end_datetime":"2016-03-14T18:00:00+00:00","title":"Open Opportunities: Task Creation Helper-Text","description":"# Description\r\n\r\nOpen Opportunities uses the open source [sails.js](http://sailsjs.org/) MVC framework (Node.js / Express). The platform helps government workers foster collaboration on their projects. This issue seeks to add sample description text to the Task Creation Form, when the \"Full Time Detail\" Option is selected as well as modify a few other parts of the form behavior.\r\n\r\nFor the full description, please see the [GitHub Issue](https://github.com/18F/openopps-platform/issues/1230)\r\n\r\n## Auction rules\r\n\r\nRegistered users on micropurchase.18f.gov may bid to deliver the requirements in this auction. The lowest bidder at the time the auction closes shall receive the award. The awarded bidder shall have five business days to deliver the requirements. Upon successful completion of the requirements, 18F shall pay the winning bidder.\r\n\r\nAlso see our [policies and guidelines page](https://micropurchase.18f.gov/faq).\r\n\r\n## Acceptance Criteria\r\n\r\n### 1.) Move the “What Type of Effort is Needed to Step 1”\r\n\r\nGiven that the user is an authenticated agency user,\r\n\r\nWhen the user creates or edits a task, (using the `TaskFromCreationView` and the `TaskFormEditView`),\r\n\r\nThen they should see that the \"What Type of Effort is Needed\" as Step 1. (Moved from step 3).\r\n\r\n\u003chr /\u003e\r\n\r\n\r\n\r\n### 2.) Given that the user is an authenticated agency user and is creating or editing a task,\r\n\r\nWhen the user selects \"Full Time Detail\" in Step 1 (What type of effort is needed?),\r\n\r\nThen agency specific sample text should be added to the \"description\" field, if there was no previous description text.\r\n\r\n\u003chr /\u003e\r\n\r\n### 3.) Add a button to reveal the sample text if the user has updated the description field\r\n\r\nGiven that the user is authenticated and has full-time detail agency and is creating or editing a task,\r\n\r\nThen a button stating \"Show Default Description\" will appear, and when clicked that button will reveal the default description for a full-time detail.\r\n\r\n\u003chr /\u003e\r\n\r\n### 4.) Make the sample text configurable in `assets/js/backbone/config/ui.json` and update CONFIG.md. \r\n\r\nIf configuration is not present, the [Show Default Description] button should not appear.\r\n\r\nThe configuration must support markdown with links and formatting that can be entered in the description area of this page. Newlines should be allowed, and if any special escaping is required, it needs to be documented.\r\n\r\nFor example:\r\n\r\n```\r\n{\r\n \"full-time-detail\": {\r\n \"description\": \"this is some text\"\r\n }\r\n}\r\n```\r\n\r\n## General acceptance criteria\r\n\r\nB or better code climate grade and 90% or higher test coverage for all modifications.\r\nTests adequately cover any new functionality.\r\nTests run on Travis-CI and do not break the build.\r\nNew features do not degrade accessibility (use pa11y/HTML Code Sniffer).\r\n\r\n## Resources\r\n\r\n- https://github.com/18F/openopps-platform/issues/1230\r\n- http://sailsjs.org/\r\n\r\n## Deliverables\r\n\r\nA single pull request submitted to https://github.com/18F/openopps-platform with clear, descriptive commits that satisfy all of the above acceptance criteria.\r\n","id":19,"bids":[{"bidder_id":null,"auction_id":19,"amount":3498,"created_at":"2016-03-10T21:23:11+00:00","updated_at":"2016-03-10T21:23:11+00:00","id":182,"bidder":{"github_id":null,"duns_number":null,"name":null,"sam_account":null,"created_at":null,"updated_at":null,"id":null}},{"bidder_id":null,"auction_id":19,"amount":3499,"created_at":"2016-03-10T18:05:02+00:00","updated_at":"2016-03-10T18:05:02+00:00","id":177,"bidder":{"github_id":null,"duns_number":null,"name":null,"sam_account":null,"created_at":null,"updated_at":null,"id":null}}],"created_at":"2016-03-08T16:11:17+00:00","updated_at":"2016-03-08T16:11:17+00:00","summary":"Open Opportunities uses the open source [sails.js](http://sailsjs.org/) MVC framework (Node.js / Express). The platform helps government workers foster collaboration on their projects. This issue seeks to add sample description text to the Task Creation Form, when the \"Full Time Detail\" Option is selected."},{"issue_url":"https://github.com/18F/openopps-platform/issues/1248","github_repo":"https://github.com/18F/openopps-platform","start_price":3500,"start_datetime":"2016-03-10T18:00:00+00:00","end_datetime":"2016-03-14T18:00:00+00:00","title":"Open Opportunities: Add Sails-DB-Migrations","description":"## Description\r\n\r\nOpen Opportunities uses the open source [sails.js](http://sailsjs.org/) MVC framework (Node.js / Express). We want to use the [sails-db-migrate](https://github.com/building5/sails-db-migrate) package so deployments can be executed in Javascript, and developers can easily manage migrations.\r\n\r\nWe need to support new developers starting with no prior database, as well as future migrations for people at the current version. (It's ok for people who have code from several versions ago to need to run the current scripts with `psql`).\r\n\r\n## Auction rules\r\n\r\nRegistered users on micropurchase.18f.gov may bid to deliver the requirements in this auction. The lowest bidder at the time the auction closes shall receive the award. The awarded bidder shall have five business days to deliver the requirements. Upon successful completion of the requirements, 18F shall pay the winning bidder.\r\n\r\nAlso see our [policies and guidelines page](https://micropurchase.18f.gov/faq).\r\n\r\n## Acceptance Criteria\r\n\r\n### Ensuring the migrations run\r\n\r\nWhen a developer runs either `npm run init`, `npm run install`, or `npm run demo` from the command-line,\r\n\r\nThen all the database migrations should be run before the app loads.\r\n\r\n\u003chr /\u003e\r\n\r\n### Warning about pending migrations\r\n\r\nWhen a developer runs `npm run start` or `npm run watch` from the command-line,\r\n\r\nThen they should receive a warning if there are pending migrations. The warning should that state which migrations are pending.\r\n\r\n\u003chr /\u003e\r\n\r\n### Documentation\r\n\r\nThe pull request must include new documentation that describes how to create a migration in the following files:\r\n\r\n- INSTALL.md\r\n- CONTRIBUTING.md\r\n\r\n- When the instructions in the documentation are followed for writing a new migration, the database should be modified as described, and the app should run and be able to access the new model or attribute.\r\n\r\n## General acceptance criteria\r\n\r\n- All new functionality does not degrade code climate rating\r\n- Tests run on Travis-CI and do not break the build.\r\n- New features do not degrade accessibility (use pa11y/HTML Code Sniffer).\r\n\r\n## Resources\r\n\r\n- https://github.com/18F/openopps-platform/issues/1248\r\n- https://pages.18f.gov/openopps-platform/\r\n- https://github.com/building5/sails-db-migrate\r\n- http://sailsjs.org/\r\n\r\n## Deliverables\r\n\r\nA single pull request submitted to https://github.com/18F/openopps-platform with clear, descriptive commits that satisfy all of the above acceptance criteria.\r\n","id":17,"bids":[],"created_at":"2016-03-07T20:55:34+00:00","updated_at":"2016-03-07T20:55:34+00:00","summary":"Open Opportunities uses the open source [sails.js](http://sailsjs.org/) MVC framework (Node.js / Express). We want to use the [sails-db-migrate](https://github.com/building5/sails-db-migrate) package so deployments can be executed in Javascript, and developers can easily manage migrations."},{"issue_url":"https://github.com/18F/openopps-platform/issues/1236","github_repo":"https://github.com/18F/openopps-platform","start_price":3500,"start_datetime":"2016-03-10T18:00:00+00:00","end_datetime":"2016-03-14T18:00:00+00:00","title":"Open Opportunities: Create Failing Test for Missing Notification","description":"## Description\r\n\r\nOpen Opportunities uses the open source [sails.js](http://sailsjs.org/) MVC framework (Node.js / Express). Currently, a task creator should receive the following notification if a task they created receives a comment. However, this functionality has broken, without breaking the build's test suite. This issue sees the creation of a failing test (or tests) that will only pass when the notification functionality is restored, along with the fix to make those tests pass.\r\n\r\n## Auction rules\r\n\r\nRegistered users on micropurchase.18f.gov may bid to deliver the requirements in this auction. The lowest bidder at the time the auction closes shall receive the award. The awarded bidder shall have five business days to deliver the requirements. Upon successful completion of the requirements, 18F shall pay the winning bidder.\r\n\r\nAlso see our [policies and guidelines page](https://micropurchase.18f.gov/faq).\r\n\r\n## Acceptance criteria\r\n\r\n### 1.) Conditions for the test to fail\r\n\r\nWhen the bug is present, and a user who is not the task creator comments on the task, and no email is generated, \r\n\r\nThen test(s) written as part of this micro-purchase will fail.\r\n\r\n\u003chr /\u003e\r\n\r\n### 2.) Fixing the bug, making the failing tests pass\r\n\r\n\r\nGiven the failing tests (defined above)\r\n\r\nWhen the bug has been fixed,\r\n\r\nAnd a task creator receives a notification when a task receives a comment,\r\n\r\nThen test(s) written as part of this micro-purchase will pass.\r\n\r\n## General acceptance criteria\r\n\r\n- All new functionality does not degrade code climate rating\r\n- The failing test(s) should be marked as pending (with xit) and all other tests should pass\r\n- Any additional tests will not interfere with existing tests.\r\n- New features do not degrade accessibility (use pa11y/HTML Code Sniffer).\r\n\r\n## Resources\r\n\r\n- https://github.com/18F/openopps-platform\r\n\r\n## Deliverables\r\n\r\nA single pull request submitted to https://github.com/18F/openopps-platform with clear, descriptive commits that satisfy all of the above acceptance criteria.","id":18,"bids":[{"bidder_id":null,"auction_id":18,"amount":3499,"created_at":"2016-03-10T18:33:25+00:00","updated_at":"2016-03-10T18:33:25+00:00","id":179,"bidder":{"github_id":null,"duns_number":null,"name":null,"sam_account":null,"created_at":null,"updated_at":null,"id":null}}],"created_at":"2016-03-07T22:22:58+00:00","updated_at":"2016-03-07T22:22:58+00:00","summary":"Open Opportunities uses the open source [sails.js](http://sailsjs.org/) MVC framework (Node.js / Express) and the [Mocha](https://mochajs.org/) and [Chai](http://chaijs.com/) test frameworks. Currently, a task creator should receive the following notification if a task they created receives a comment. This issue sees the creation of a failing test that will only pass when the notification functionality is restored."},{"issue_url":"https://github.com/18F/fedramp-micropurchase/issues","github_repo":"https://github.com/18F/fedramp-micropurchase","start_price":3500,"start_datetime":"2016-03-10T18:00:00+00:00","end_datetime":"2016-03-14T18:00:00+00:00","title":"Create a Google Script to convert Google Sheet data into JSON","description":"## Description\r\n\r\nThe Federal Risk and Authorization Management Program, or [FedRAMP](https://www.fedramp.gov/), is a government-wide program that provides a standardized approach to security assessment, authorization, and continuous monitoring for cloud products and services. This issue seeks a [Google Apps Script](https://developers.google.com/apps-script/) that will convert a Google Sheet into JSON which adheres to a given schema file. This script will allow future front-end applications to use the FedRamp data.\r\n\r\nWe use a non-public Google Sheet. Because we cannot make this sheet fully public, we have made available a CSV which has the same fields as the Google Sheet. However, the winner of the auction will be given access to the Google Sheet. It's worth noting that this Google Sheet contains only fake data (and no sensitive data).\r\n\r\nOnce given access to the Google Sheet, the winner of the auction can begin writing the script.\r\nOnce the JSON is created by the Google script, the script should post the resulting file onto Github using the Github API.\r\n\r\nThe [mapping](https://github.com/18F/fedramp-micropurchase/blob/master/mapping.json) file indicates how fields from the Google Sheet should be mapped to fields in the JSON.\r\nThe [schema](https://github.com/18F/fedramp-micropurchase/blob/master/schema.json) file indicates how packages should be aggregated based on Package ID and displayed in the resulting JSON file produced by the Google Script.\r\n\r\n## Auction rules\r\n\r\nRegistered users on micropurchase.18f.gov may bid to deliver the requirements in this auction. The lowest bidder at the time the auction closes shall receive the award. The awarded bidder shall have five business days after notice of award to deliver the requirements. Upon successful completion of the requirements, 18F shall pay the winning bidder.\r\n\r\nAlso see our [policies and guidelines page](https://micropurchase.18f.gov/faq).\r\n\r\n## Acceptance criteria\r\n\r\n### Creating the Google Script\r\n\r\nGiven the [P-ATO CSV](https://github.com/18F/fedramp-micropurchase/blob/master/P-ATO.csv) of the data, the [mapping](https://github.com/18F/fedramp-micropurchase/blob/master/mapping.json), and the [schema](https://github.com/18F/fedramp-micropurchase/blob/master/schema.json) JSON files which are available in the repository,\r\n\r\nWhen the Google Script runs,\r\n\r\nThen the script will produce a JSON file of the data in a Google Sheet in format delineated by the schema.json\r\n\r\nAnd the name of the resulting file will follow the naming scheme: MM-DD-YYYY.json\r\n\r\n\u003chr /\u003e\r\n\r\n### Publishing the data to GitHub\r\n\r\nGiven GitHub API credentials,\r\n\r\nAnd the Google Script (defined above),\r\n\r\nWhen the script produces the JSON in the schema provided,\r\n\r\nThen the script will publish the resulting JSON to the [`data` directory](https://github.com/18F/fedramp-micropurchase/tree/master/data) of the GitHub repository via the GitHub API.\r\n\r\n## General Acceptance Criteria\r\n\r\n- B or better Code Climate grade and 90% or higher test coverage for all modifications.\r\n- Tests run on Travis-CI and do not break the build\r\n\r\n## Resources\r\n\r\n- https://developers.google.com/apps-script/\r\n- https://developers.google.com/apps-script/reference/url-fetch/url-fetch-app\r\n- https://developer.github.com/v3/repos/contents/#create-a-file\r\n\r\n## Deliverables\r\n\r\nA single pull request submitted to https://www.github.com/18F/fedramp-micropurchase (inside the `scripts` folder) with clear, descriptive commits that satisfy all of the above acceptance criteria.\r\n","id":21,"bids":[],"created_at":"2016-03-08T17:16:04+00:00","updated_at":"2016-03-08T17:16:04+00:00","summary":"The Federal Risk and Authorization Management Program, or [FedRAMP](https://www.fedramp.gov/), is a government-wide program that provides a standardized approach to security assessment, authorization, and continuous monitoring for cloud products and services. This issue seeks a [Google Apps Script](https://developers.google.com/apps-script/) that will convert a Google Sheet into JSON which adheres to a given schema file."},{"issue_url":"https://github.com/18F/playbook-in-action/issues/81","github_repo":"https://github.com/18F/playbook-in-action","start_price":3500,"start_datetime":"2016-02-24T18:00:00+00:00","end_datetime":"2016-02-26T18:00:00+00:00","title":"Playbook in Action - UI Fixes to Implement US Web Design Standards","description":"## Description\r\n\r\nThe [Playbook in Action](https://playbook-in-action.apps.cloud.gov) is a Python Flask application that simplifies the process of creating agile RFQs and RFPs for digital services for government Contracting Officers and Program Managers. In the application, the user creates a new document by providing the agency, document type, etc. and answers a series of questions about their objectives for the project. The result is a word document version of the RFQ/RFP that can be downloaded onto the user’s computer. \r\n\r\nThis issue seeks to migrate the front-end design and user-interface from Bootstrap to the US Web Design Standards. The issue will also require that certain CSS classes of text will have distinct styling to distinguish text that will be in the final document and text that is asking questions and providing additional information to the user.\r\n\r\nThe current styling can be overwritten as is necessary.\r\n\r\n## Auction rules \r\n\r\nRegistered users on micropurchase.18f.gov may bid to deliver the requirements in this auction. The lowest bidder at the time the auction closes shall receive the award. The awarded bidder shall have seven business days after notice of award to deliver the requirements. Upon successful completion of the requirements, 18F shall pay the winning bidder.\r\n\r\n## Application-Specific Acceptance criteria\r\n\r\nWhen a user visits any of the pages in the Playbook in Action site,\r\n\r\nThen the user will see that the assets and elements of the the [U.S. Web Design Standards](https://playbook.cio.gov/designstandards/), have been incorporated. All of the following elements should follow the styling guidelines and use the Design \r\nStandards CSS:\r\n- Font\r\n- Color scheme\r\n- Button styling\r\n- Tables\r\n- Alerts\r\n- Side navigation\r\n- Margins\r\n\r\nAdditional CSS text formatting has been implemented for the CSS classes listed in the following github issue: https://github.com/18F/playbook-in-action/issues/81\r\n\r\n\r\n### General acceptance criteria\r\n\r\nNew features do not degrade accessibility (use pa11y/HTML Code Sniffer).\r\n\r\n### Resources\r\n\r\n- U.S. Government Web Design Standards\r\n- Github Repository\r\n- https://github.com/18F/playbook-in-action/issues/81\r\n- Live Site - https://playbook-in-action.apps.cloud.gov\r\n\r\n### Deliverables\r\n\r\nA single pull request submitted to https://github.com/18F/playbook-in-action with clear, descriptive commits that satisfy all of the above acceptance criteria.\r\n","id":13,"bids":[{"bidder_id":161,"auction_id":13,"amount":2500,"created_at":"2016-02-26T17:52:57+00:00","updated_at":"2016-02-26T17:52:57+00:00","id":154,"bidder":{"github_id":"833570","duns_number":"07-944-1444","name":"Evan Rose","sam_account":true,"created_at":"2016-02-25T01:14:16+00:00","updated_at":"2016-02-25T15:09:02+00:00","id":161}},{"bidder_id":36,"auction_id":13,"amount":1538,"created_at":"2016-02-26T17:33:22+00:00","updated_at":"2016-02-26T17:33:22+00:00","id":151,"bidder":{"github_id":"1060893","duns_number":"080037478","name":"brendan sudol","sam_account":true,"created_at":"2015-12-29T17:39:36+00:00","updated_at":"2016-01-11T00:44:39+00:00","id":36}},{"bidder_id":44,"auction_id":13,"amount":400,"created_at":"2016-02-26T17:07:11+00:00","updated_at":"2016-02-26T17:07:11+00:00","id":146,"bidder":{"github_id":"1451399","duns_number":"080014807","name":"Dan Siddoway","sam_account":true,"created_at":"2015-12-29T23:22:12+00:00","updated_at":"2016-01-29T18:07:33+00:00","id":44}},{"bidder_id":90,"auction_id":13,"amount":550,"created_at":"2016-02-25T23:33:21+00:00","updated_at":"2016-02-25T23:33:21+00:00","id":134,"bidder":{"github_id":"684965","duns_number":"080126095","name":"Joe Hand","sam_account":true,"created_at":"2016-01-11T18:33:42+00:00","updated_at":"2016-02-24T18:04:37+00:00","id":90}},{"bidder_id":69,"auction_id":13,"amount":2000,"created_at":"2016-02-25T15:52:47+00:00","updated_at":"2016-02-25T15:52:47+00:00","id":130,"bidder":{"github_id":"15251877","duns_number":"079859219","name":"Daniel Connery","sam_account":true,"created_at":"2016-01-05T18:43:53+00:00","updated_at":"2016-01-11T03:15:51+00:00","id":69}},{"bidder_id":37,"auction_id":13,"amount":720,"created_at":"2016-02-24T22:28:04+00:00","updated_at":"2016-02-24T22:28:04+00:00","id":127,"bidder":{"github_id":"461046","duns_number":"080039148","name":"Justin Duke","sam_account":true,"created_at":"2015-12-29T18:02:46+00:00","updated_at":"2016-01-19T14:02:38+00:00","id":37}}],"created_at":"2016-02-19T20:53:12+00:00","updated_at":"2016-02-19T20:53:12+00:00","summary":"The Playbook in Action is a python Flask application that simplifies the process of creating agile RFQs and RFPs for digital services for government Contracting Officers and Program Managers. This issue seeks to migrate the front-end design and user-interface from Bootstrap to the US Web Design Standards."},{"issue_url":"https://github.com/18F/deduplicate-tock-float/issues/1","github_repo":"https://github.com/18F/deduplicate-tock-float","start_price":3500,"start_datetime":"2016-02-24T18:00:00+00:00","end_datetime":"2016-02-26T18:00:00+00:00","title":"De-duplicate data from Tock and Float","description":"## Description \r\n\r\n18F uses Tock to track past staff project allocations and uses Float to predict future staff project allocations. Both systems contain very similar information but with very different temporal aspects: Tock contains historical data, while Float contains projected future data. However, the data elements are very similar.\r\n\r\nSince both applications are used for managing the business of 18F, it is critical that the common data elements between the two are regularly reconciled. For instance, analysis quickly breaks down if a project in Float has a `name` attribute that varies from the project `name` attribute in Tock.\r\n\r\nThis issue seeks to provide a command-line script that pulls data from Tock and Float and returns a list of possibly-duplicate project names.\r\nThe primary user of this application is 18F's internal manager of Tock and Float. The primary use case is running the on-demand via command line that checks for inconsistencies between Tock and Float across the following fields: \r\n\r\n(1) person names; \r\n\r\n(2) project names;\r\n\r\n(3) client names; and \r\n\r\n(4) project --\u003e client associations.\r\n\r\nBoth applications have straightforward APIs.\r\n\r\n\r\n## Auction rules \r\n\r\nRegistered users on micropurchase.18f.gov may bid to deliver the requirements in this auction. The lowest bidder at the time the auction closes shall receive the award. The awarded bidder shall have five business days after notice of award to deliver the requirements. Upon successful completion of the requirements, 18F shall pay the winning bidder.\r\n\r\nAlso see our [policies and guidelines page](https://micropurchase.18f.gov/faq). \r\n\r\n## Acceptance criteria \r\n\r\nGiven the [Float](https://www.float.com/) API and the Tock API, https://tock.18f.gov/api/,\r\nWhen a user runs a Ruby command line script,\r\n\r\nThen it should return a list of project names\r\n that appear in both Tock and Float in any of the following portions of the \r\nTock/Float\r\n\t\r\n1) person names;\r\n\r\n2) project names;\r\n\r\n3) client names;\r\n\r\n(4) project --\u003e client\r\n\t\r\nand that the project names must be similar but not exact matches. \r\n\r\nThe fuzziness of the similar matches should be able to be set by a command line parameter.\r\n\r\n\r\n## General acceptance criteria \r\n\r\n- B or better Code Climate grade and 90% or higher test coverage for all modifications.\r\n- Tests adequately cover any new functionality.\r\n- Tests run on Travis-CI and do not break the build.\r\n\r\n## Resources\r\n\r\n- https://github.com/floatschedule/api\r\n- https://github.com/18F/tock#api\r\n\r\n\r\n## Deliverables\r\n\r\nA single pull request submitted to https://github.com/18F/tock with clear, descriptive commits that satisfy all of the above acceptance criteria.","id":11,"bids":[{"bidder_id":30,"auction_id":11,"amount":1649,"created_at":"2016-02-26T17:59:47+00:00","updated_at":"2016-02-26T17:59:47+00:00","id":173,"bidder":{"github_id":"387035","duns_number":"080033077","name":"Christian G. Warden","sam_account":true,"created_at":"2015-12-29T16:14:47+00:00","updated_at":"2016-01-11T03:15:25+00:00","id":30}},{"bidder_id":44,"auction_id":11,"amount":1650,"created_at":"2016-02-26T17:59:46+00:00","updated_at":"2016-02-26T17:59:46+00:00","id":172,"bidder":{"github_id":"1451399","duns_number":"080014807","name":"Dan Siddoway","sam_account":true,"created_at":"2015-12-29T23:22:12+00:00","updated_at":"2016-01-29T18:07:33+00:00","id":44}},{"bidder_id":161,"auction_id":11,"amount":1700,"created_at":"2016-02-26T17:59:29+00:00","updated_at":"2016-02-26T17:59:29+00:00","id":170,"bidder":{"github_id":"833570","duns_number":"07-944-1444","name":"Evan Rose","sam_account":true,"created_at":"2016-02-25T01:14:16+00:00","updated_at":"2016-02-25T15:09:02+00:00","id":161}},{"bidder_id":30,"auction_id":11,"amount":1749,"created_at":"2016-02-26T17:59:25+00:00","updated_at":"2016-02-26T17:59:25+00:00","id":168,"bidder":{"github_id":"387035","duns_number":"080033077","name":"Christian G. Warden","sam_account":true,"created_at":"2015-12-29T16:14:47+00:00","updated_at":"2016-01-11T03:15:25+00:00","id":30}},{"bidder_id":44,"auction_id":11,"amount":1750,"created_at":"2016-02-26T17:59:08+00:00","updated_at":"2016-02-26T17:59:08+00:00","id":166,"bidder":{"github_id":"1451399","duns_number":"080014807","name":"Dan Siddoway","sam_account":true,"created_at":"2015-12-29T23:22:12+00:00","updated_at":"2016-01-29T18:07:33+00:00","id":44}},{"bidder_id":30,"auction_id":11,"amount":1895,"created_at":"2016-02-26T17:57:59+00:00","updated_at":"2016-02-26T17:57:59+00:00","id":161,"bidder":{"github_id":"387035","duns_number":"080033077","name":"Christian G. Warden","sam_account":true,"created_at":"2015-12-29T16:14:47+00:00","updated_at":"2016-01-11T03:15:25+00:00","id":30}},{"bidder_id":161,"auction_id":11,"amount":1896,"created_at":"2016-02-26T17:57:57+00:00","updated_at":"2016-02-26T17:57:57+00:00","id":160,"bidder":{"github_id":"833570","duns_number":"07-944-1444","name":"Evan Rose","sam_account":true,"created_at":"2016-02-25T01:14:16+00:00","updated_at":"2016-02-25T15:09:02+00:00","id":161}},{"bidder_id":30,"auction_id":11,"amount":1897,"created_at":"2016-02-26T17:57:18+00:00","updated_at":"2016-02-26T17:57:18+00:00","id":158,"bidder":{"github_id":"387035","duns_number":"080033077","name":"Christian G. Warden","sam_account":true,"created_at":"2015-12-29T16:14:47+00:00","updated_at":"2016-01-11T03:15:25+00:00","id":30}},{"bidder_id":161,"auction_id":11,"amount":1898,"created_at":"2016-02-26T17:57:04+00:00","updated_at":"2016-02-26T17:57:04+00:00","id":157,"bidder":{"github_id":"833570","duns_number":"07-944-1444","name":"Evan Rose","sam_account":true,"created_at":"2016-02-25T01:14:16+00:00","updated_at":"2016-02-25T15:09:02+00:00","id":161}},{"bidder_id":30,"auction_id":11,"amount":1899,"created_at":"2016-02-26T01:22:22+00:00","updated_at":"2016-02-26T01:22:22+00:00","id":138,"bidder":{"github_id":"387035","duns_number":"080033077","name":"Christian G. Warden","sam_account":true,"created_at":"2015-12-29T16:14:47+00:00","updated_at":"2016-01-11T03:15:25+00:00","id":30}},{"bidder_id":65,"auction_id":11,"amount":1900,"created_at":"2016-02-26T00:20:59+00:00","updated_at":"2016-02-26T00:20:59+00:00","id":136,"bidder":{"github_id":"11858095","duns_number":"080024708","name":"Ry Bobko","sam_account":true,"created_at":"2016-01-04T20:57:17+00:00","updated_at":"2016-01-11T03:15:36+00:00","id":65}},{"bidder_id":30,"auction_id":11,"amount":1999,"created_at":"2016-02-24T23:21:33+00:00","updated_at":"2016-02-24T23:21:33+00:00","id":128,"bidder":{"github_id":"387035","duns_number":"080033077","name":"Christian G. Warden","sam_account":true,"created_at":"2015-12-29T16:14:47+00:00","updated_at":"2016-01-11T03:15:25+00:00","id":30}},{"bidder_id":65,"auction_id":11,"amount":2000,"created_at":"2016-02-24T18:52:37+00:00","updated_at":"2016-02-24T18:52:37+00:00","id":124,"bidder":{"github_id":"11858095","duns_number":"080024708","name":"Ry Bobko","sam_account":true,"created_at":"2016-01-04T20:57:17+00:00","updated_at":"2016-01-11T03:15:36+00:00","id":65}}],"created_at":"2016-02-19T20:46:57+00:00","updated_at":"2016-02-19T20:46:57+00:00","summary":"This issue seeks to provide a command-line script that pulls data from Tock and Float and returns a list of possibly-duplicate project names."},{"issue_url":"https://github.com/18F/tock/issues/287","github_repo":"https://github.com/18F/tock","start_price":3500,"start_datetime":"2016-02-24T18:00:00+00:00","end_datetime":"2016-02-26T18:00:00+00:00","title":"Tock superusers should be able to enter 0-60 hour week","description":"### Description\r\n\r\nTock is a simple time tracking app that 18F employees use to report their time on a weekly basis. Currently, no user may enter more than 40 hours per week. This issue seeks to allow certain specified users of Tock to enter anywhere between 0 and 60 hours.\r\n\r\n### Auction rules\r\n\r\nRegistered users on micropurchase.18f.gov may bid to deliver the requirements in this auction. The lowest bidder at the time the auction closes shall receive the award. The awarded bidder shall have five business days to deliver the requirements. Upon successful completion of the requirements, 18F shall pay the winning bidder.\r\n\r\nAlso see our [policies and guidelines page](https://micropurchase.18f.gov/faq).\r\n\r\nNote: This auction is being re-run because the previous winner did not submit acceptable code. \r\n\r\nYou can view the previous auction [here](https://micropurchase.18f.gov/auctions/10).\r\n\r\n### Application-specific acceptance criteria\r\n\r\n- Given superuser privileges in Tock,\r\n\r\nWhen a superuser views in the admin panel a time card for any other user,\r\n\r\nThen the superuser would be able to select an option (e.g. check a box) which would allow any superuser to enter anywhere between 0 and 60 hours for a given week.\r\n\r\n- Given superuser privileges in Tock, \r\n\r\nWhen a superuser creates or edits a reporting period in the admin panel,\r\n\r\nThen the superuser can give access to users to users who may enter between 0 and 60 hours for that reporting period.\r\n\r\n### General acceptance criteria\r\n\r\n- B or better Code Climate grade and 90% or higher test coverage for all modifications.\r\n- Tests adequately cover any new functionality. Tests run on Travis-CI and do not break the build. \r\n- New features do not degrade accessibility (use pa11y/HTML Code Sniffer).\r\n\r\n### Resources\r\n\r\nInstructions for installing Tock locally and loading sample data:[https://github.com/18F/tock/blob/master/README.md#getting-started](https://github.com/18F/tock/blob/master/README.md#getting-started)\r\n\r\n### Deliverables\r\n\r\nA single pull request submitted to [https://github.com/18F/tock](https://github.com/18F/tock) with clear, descriptive commits that satisfy all of the above acceptance criteria.","id":12,"bids":[{"bidder_id":161,"auction_id":12,"amount":1500,"created_at":"2016-02-26T17:52:12+00:00","updated_at":"2016-02-26T17:52:12+00:00","id":152,"bidder":{"github_id":"833570","duns_number":"07-944-1444","name":"Evan Rose","sam_account":true,"created_at":"2016-02-25T01:14:16+00:00","updated_at":"2016-02-25T15:09:02+00:00","id":161}},{"bidder_id":44,"auction_id":12,"amount":500,"created_at":"2016-02-26T17:07:41+00:00","updated_at":"2016-02-26T17:07:41+00:00","id":147,"bidder":{"github_id":"1451399","duns_number":"080014807","name":"Dan Siddoway","sam_account":true,"created_at":"2015-12-29T23:22:12+00:00","updated_at":"2016-01-29T18:07:33+00:00","id":44}},{"bidder_id":90,"auction_id":12,"amount":2699,"created_at":"2016-02-25T23:34:38+00:00","updated_at":"2016-02-25T23:34:38+00:00","id":135,"bidder":{"github_id":"684965","duns_number":"080126095","name":"Joe Hand","sam_account":true,"created_at":"2016-01-11T18:33:42+00:00","updated_at":"2016-02-24T18:04:37+00:00","id":90}},{"bidder_id":69,"auction_id":12,"amount":2000,"created_at":"2016-02-25T15:55:43+00:00","updated_at":"2016-02-25T15:55:43+00:00","id":131,"bidder":{"github_id":"15251877","duns_number":"079859219","name":"Daniel Connery","sam_account":true,"created_at":"2016-01-05T18:43:53+00:00","updated_at":"2016-01-11T03:15:51+00:00","id":69}},{"bidder_id":37,"auction_id":12,"amount":580,"created_at":"2016-02-24T22:25:16+00:00","updated_at":"2016-02-24T22:25:16+00:00","id":126,"bidder":{"github_id":"461046","duns_number":"080039148","name":"Justin Duke","sam_account":true,"created_at":"2015-12-29T18:02:46+00:00","updated_at":"2016-01-19T14:02:38+00:00","id":37}},{"bidder_id":158,"auction_id":12,"amount":299,"created_at":"2016-02-24T18:15:14+00:00","updated_at":"2016-02-24T18:15:14+00:00","id":121,"bidder":{"github_id":"14097154","duns_number":"08-003-3961","name":"Thought Object","sam_account":true,"created_at":"2016-02-24T18:03:07+00:00","updated_at":"2016-02-24T18:07:39+00:00","id":158}}],"created_at":"2016-02-19T20:49:27+00:00","updated_at":"2016-02-19T20:49:27+00:00","summary":"Tock is a simple time tracking app that 18F employees use to report their time on a weekly basis. Currently, no user may enter more than 40 hours per week. This issue seeks to allow certain specified users of Tock to enter anywhere between 0 and 60 hours."},{"issue_url":"https://github.com/18F/tock/issues/308","github_repo":"https://github.com/18F/tock","start_price":3500,"start_datetime":"2016-02-24T18:00:00+00:00","end_datetime":"2016-02-26T18:00:00+00:00","title":"Reload Tock Projects in new reporting period","description":"## Description\r\nIn our project tracking software Tock, from week to week, chances are the projects a user is logging to changes very little. However, currently when a new timesheet is opened, it starts out blank. To save time, this issue seeks to auto-populate the project rows for a new reporting period with project rows that were logged from the previous week.\r\n\r\n## Auction rules \r\n\r\nRegistered users on micropurchase.18f.gov may bid to deliver the requirements in this auction. The lowest bidder at the time the auction closes shall receive the award. The awarded bidder shall have five business days after the conclusion of the auction period to deliver the requirements. Upon successful completion of the requirements, 18F shall pay the winning bidder.\r\n\r\nAlso see our [policies and guidelines page](https://micropurchase.18f.gov/faq) for more information. \r\n\r\n## Acceptance Criteria\r\n\r\n- When the user opens a **new** reporting period timesheet is pre-populated with the users’ previous week's projects.\r\n- Only the projects are carried over, the hours are blank.\r\n- When the user opens a **saved** reporting period timesheet, the timesheet does not pre-populate with the previous week's projects (i.e. the saved timesheet is not overwritten with last week's projects when re-opened)\r\n- A user can remove line items from an **unsubmitted** (i.e a new or saved) timesheet.\r\n- Once the old lines have been added, a user should still be able to add additional line items to an **unsubmitted** timesheet.\r\n\r\n## General acceptance criteria \r\n\r\n- B or better Code Climate grade and 90% or higher test coverage for all modifications.\r\n- Tests adequately cover any new functionality.\r\n- Tests run on Travis-CI and do not break the build.\r\n\r\n## Resources\r\n\r\n- https://github.com/18F/tock/issues/308\r\n\r\n## Deliverables\r\n\r\nA single pull request submitted to https://github.com/18F/tock with clear, descriptive commits that satisfy all of the above acceptance criteria.\r\n","id":15,"bids":[{"bidder_id":36,"auction_id":15,"amount":1543,"created_at":"2016-02-26T17:59:56+00:00","updated_at":"2016-02-26T17:59:56+00:00","id":176,"bidder":{"github_id":"1060893","duns_number":"080037478","name":"brendan sudol","sam_account":true,"created_at":"2015-12-29T17:39:36+00:00","updated_at":"2016-01-11T00:44:39+00:00","id":36}},{"bidder_id":44,"auction_id":15,"amount":1600,"created_at":"2016-02-26T17:59:55+00:00","updated_at":"2016-02-26T17:59:55+00:00","id":175,"bidder":{"github_id":"1451399","duns_number":"080014807","name":"Dan Siddoway","sam_account":true,"created_at":"2015-12-29T23:22:12+00:00","updated_at":"2016-01-29T18:07:33+00:00","id":44}},{"bidder_id":161,"auction_id":15,"amount":1700,"created_at":"2016-02-26T17:59:47+00:00","updated_at":"2016-02-26T17:59:47+00:00","id":174,"bidder":{"github_id":"833570","duns_number":"07-944-1444","name":"Evan Rose","sam_account":true,"created_at":"2016-02-25T01:14:16+00:00","updated_at":"2016-02-25T15:09:02+00:00","id":161}},{"bidder_id":69,"auction_id":15,"amount":1825,"created_at":"2016-02-26T17:59:41+00:00","updated_at":"2016-02-26T17:59:41+00:00","id":171,"bidder":{"github_id":"15251877","duns_number":"079859219","name":"Daniel Connery","sam_account":true,"created_at":"2016-01-05T18:43:53+00:00","updated_at":"2016-01-11T03:15:51+00:00","id":69}},{"bidder_id":37,"auction_id":15,"amount":1850,"created_at":"2016-02-26T17:59:25+00:00","updated_at":"2016-02-26T17:59:25+00:00","id":169,"bidder":{"github_id":"461046","duns_number":"080039148","name":"Justin Duke","sam_account":true,"created_at":"2015-12-29T18:02:46+00:00","updated_at":"2016-01-19T14:02:38+00:00","id":37}},{"bidder_id":44,"auction_id":15,"amount":1900,"created_at":"2016-02-26T17:59:10+00:00","updated_at":"2016-02-26T17:59:10+00:00","id":167,"bidder":{"github_id":"1451399","duns_number":"080014807","name":"Dan Siddoway","sam_account":true,"created_at":"2015-12-29T23:22:12+00:00","updated_at":"2016-01-29T18:07:33+00:00","id":44}},{"bidder_id":69,"auction_id":15,"amount":1950,"created_at":"2016-02-26T17:59:04+00:00","updated_at":"2016-02-26T17:59:04+00:00","id":164,"bidder":{"github_id":"15251877","duns_number":"079859219","name":"Daniel Connery","sam_account":true,"created_at":"2016-01-05T18:43:53+00:00","updated_at":"2016-01-11T03:15:51+00:00","id":69}},{"bidder_id":161,"auction_id":15,"amount":1997,"created_at":"2016-02-26T17:58:38+00:00","updated_at":"2016-02-26T17:58:38+00:00","id":163,"bidder":{"github_id":"833570","duns_number":"07-944-1444","name":"Evan Rose","sam_account":true,"created_at":"2016-02-25T01:14:16+00:00","updated_at":"2016-02-25T15:09:02+00:00","id":161}},{"bidder_id":161,"auction_id":15,"amount":1998,"created_at":"2016-02-26T17:58:25+00:00","updated_at":"2016-02-26T17:58:25+00:00","id":162,"bidder":{"github_id":"833570","duns_number":"07-944-1444","name":"Evan Rose","sam_account":true,"created_at":"2016-02-25T01:14:16+00:00","updated_at":"2016-02-25T15:09:02+00:00","id":161}},{"bidder_id":69,"auction_id":15,"amount":1999,"created_at":"2016-02-26T17:57:23+00:00","updated_at":"2016-02-26T17:57:23+00:00","id":159,"bidder":{"github_id":"15251877","duns_number":"079859219","name":"Daniel Connery","sam_account":true,"created_at":"2016-01-05T18:43:53+00:00","updated_at":"2016-01-11T03:15:51+00:00","id":69}},{"bidder_id":37,"auction_id":15,"amount":2100,"created_at":"2016-02-26T17:56:47+00:00","updated_at":"2016-02-26T17:56:47+00:00","id":156,"bidder":{"github_id":"461046","duns_number":"080039148","name":"Justin Duke","sam_account":true,"created_at":"2015-12-29T18:02:46+00:00","updated_at":"2016-01-19T14:02:38+00:00","id":37}},{"bidder_id":34,"auction_id":15,"amount":2200,"created_at":"2016-02-26T17:23:01+00:00","updated_at":"2016-02-26T17:23:01+00:00","id":150,"bidder":{"github_id":"6887045","duns_number":"078327018","name":null,"sam_account":true,"created_at":"2015-12-29T17:29:09+00:00","updated_at":"2016-01-11T00:44:39+00:00","id":34}},{"bidder_id":37,"auction_id":15,"amount":2475,"created_at":"2016-02-26T17:14:20+00:00","updated_at":"2016-02-26T17:14:20+00:00","id":149,"bidder":{"github_id":"461046","duns_number":"080039148","name":"Justin Duke","sam_account":true,"created_at":"2015-12-29T18:02:46+00:00","updated_at":"2016-01-19T14:02:38+00:00","id":37}},{"bidder_id":34,"auction_id":15,"amount":2488,"created_at":"2016-02-26T16:34:09+00:00","updated_at":"2016-02-26T16:34:09+00:00","id":145,"bidder":{"github_id":"6887045","duns_number":"078327018","name":null,"sam_account":true,"created_at":"2015-12-29T17:29:09+00:00","updated_at":"2016-01-11T00:44:39+00:00","id":34}},{"bidder_id":90,"auction_id":15,"amount":2694,"created_at":"2016-02-26T15:49:51+00:00","updated_at":"2016-02-26T15:49:51+00:00","id":142,"bidder":{"github_id":"684965","duns_number":"080126095","name":"Joe Hand","sam_account":true,"created_at":"2016-01-11T18:33:42+00:00","updated_at":"2016-02-24T18:04:37+00:00","id":90}},{"bidder_id":34,"auction_id":15,"amount":2695,"created_at":"2016-02-26T15:06:43+00:00","updated_at":"2016-02-26T15:06:43+00:00","id":141,"bidder":{"github_id":"6887045","duns_number":"078327018","name":null,"sam_account":true,"created_at":"2015-12-29T17:29:09+00:00","updated_at":"2016-01-11T00:44:39+00:00","id":34}},{"bidder_id":37,"auction_id":15,"amount":2750,"created_at":"2016-02-26T06:20:53+00:00","updated_at":"2016-02-26T06:20:53+00:00","id":139,"bidder":{"github_id":"461046","duns_number":"080039148","name":"Justin Duke","sam_account":true,"created_at":"2015-12-29T18:02:46+00:00","updated_at":"2016-01-19T14:02:38+00:00","id":37}},{"bidder_id":34,"auction_id":15,"amount":2900,"created_at":"2016-02-26T00:58:58+00:00","updated_at":"2016-02-26T00:58:58+00:00","id":137,"bidder":{"github_id":"6887045","duns_number":"078327018","name":null,"sam_account":true,"created_at":"2015-12-29T17:29:09+00:00","updated_at":"2016-01-11T00:44:39+00:00","id":34}},{"bidder_id":36,"auction_id":15,"amount":3200,"created_at":"2016-02-25T19:13:25+00:00","updated_at":"2016-02-25T19:13:25+00:00","id":133,"bidder":{"github_id":"1060893","duns_number":"080037478","name":"brendan sudol","sam_account":true,"created_at":"2015-12-29T17:39:36+00:00","updated_at":"2016-01-11T00:44:39+00:00","id":36}}],"created_at":"2016-02-19T21:02:37+00:00","updated_at":"2016-02-19T21:02:37+00:00","summary":"In our project tracking software Tock, from week to week, chances are the projects a user is logging to changes very little. However, currently when a new timesheet is opened, it starts out blank. To save time, this issue seeks to auto-populate the project rows for a new reporting period with project rows that were logged from the previous week."},{"issue_url":"https://github.com/18F/micropurchase/issues/319","github_repo":"https://github.com/18F/micropurchase/","start_price":3500,"start_datetime":"2016-02-24T18:00:00+00:00","end_datetime":"2016-02-26T18:00:00+00:00","title":"Specify micro-purchase delivery deadline as a number of business days","description":"## Description \r\n\r\nCurrently when creating auctions in the micro-purchase admin panel, the admin must enter a delivery deadline. This is the deadline that the winning bidder has to deliver the requirements. This issue seeks to make it easier for site admins to enter this time.\r\n\r\n\u003cimg src=\"https://cloud.githubusercontent.com/assets/86790/13293972/e8fa37b0-daef-11e5-837a-9187b8fa56d2.png\" alt=\"screenshot of micro-purchase admin panel\" /\u003e\r\n\r\nInstead of entering the string \"March 4, 2016 5:00PM\", the admin should be able to enter an integer representing a number of business days after the auction end time. In this case, if the auction end time is February 26, 1:00PM, then March 4 is five business days afterwards.\r\n\r\n## Auction rules \r\n\r\nRegistered users on micropurchase.18f.gov may bid to deliver the requirements in this auction. The lowest bidder at the time the auction closes shall receive the award. The awarded bidder shall have five business days after notice of award to deliver the requirements. Upon successful completion of the requirements, 18F shall pay the winning bidder.\r\n\r\n## Application-specific acceptance criteria\r\n\r\n- In `/admin/auctions/new`, the \"Delivery deadline\" field should be a text box that accepts an integer (number of business days).\r\n- Upon submitting the form on `/admin/auctions/new`, the `delivery_deadline` attribute on the newly-created auction should be a date time representing the number of business days entered in the previous form.\r\n\r\n## General acceptance criteria \r\n\r\n- B or better code climate grade and 90% or higher test coverage for all modifications.\r\n- Tests adequately cover any new functionality.\r\n- Tests run on Travis-CI and do not break the build.\r\n- New features do not degrade accessibility (use pa11y/HTML Code Sniffer).\r\n\r\n## Resources\r\n\r\n- https://github.com/18F/micropurchase/issues/319\r\n- Look at `app/controllers/admin/auctions_controller.rb` to understand how auction models are created. Notice the use of the `CreateAuction` auction class.\r\n- It is recommended, but not required, to use [this gem](https://github.com/bokmann/business_time) for calculating business days.\r\n\r\n## Deliverables\r\n\r\nA single pull request submitted to https://github.com/18F/micropurchase with clear, descriptive commits that satisfy all of the above acceptance criteria.\r\n","id":16,"bids":[{"bidder_id":161,"auction_id":16,"amount":1000,"created_at":"2016-02-26T17:52:35+00:00","updated_at":"2016-02-26T17:52:35+00:00","id":153,"bidder":{"github_id":"833570","duns_number":"07-944-1444","name":"Evan Rose","sam_account":true,"created_at":"2016-02-25T01:14:16+00:00","updated_at":"2016-02-25T15:09:02+00:00","id":161}},{"bidder_id":44,"auction_id":16,"amount":200,"created_at":"2016-02-26T17:08:03+00:00","updated_at":"2016-02-26T17:08:03+00:00","id":148,"bidder":{"github_id":"1451399","duns_number":"080014807","name":"Dan Siddoway","sam_account":true,"created_at":"2015-12-29T23:22:12+00:00","updated_at":"2016-01-29T18:07:33+00:00","id":44}},{"bidder_id":49,"auction_id":16,"amount":640,"created_at":"2016-02-26T15:52:24+00:00","updated_at":"2016-02-26T15:52:24+00:00","id":144,"bidder":{"github_id":"688980","duns_number":"313210696","name":"Mila Frerichs","sam_account":true,"created_at":"2015-12-30T06:05:37+00:00","updated_at":"2016-01-11T03:15:33+00:00","id":49}},{"bidder_id":69,"auction_id":16,"amount":2000,"created_at":"2016-02-25T15:56:53+00:00","updated_at":"2016-02-25T15:56:53+00:00","id":132,"bidder":{"github_id":"15251877","duns_number":"079859219","name":"Daniel Connery","sam_account":true,"created_at":"2016-01-05T18:43:53+00:00","updated_at":"2016-01-11T03:15:51+00:00","id":69}},{"bidder_id":62,"auction_id":16,"amount":1,"created_at":"2016-02-25T14:56:02+00:00","updated_at":"2016-02-25T14:56:02+00:00","id":129,"bidder":{"github_id":"16545190","duns_number":"130477032","name":"NuAxis Admin","sam_account":true,"created_at":"2016-01-04T18:34:39+00:00","updated_at":"2016-01-11T03:15:02+00:00","id":62}},{"bidder_id":37,"auction_id":16,"amount":590,"created_at":"2016-02-24T22:22:08+00:00","updated_at":"2016-02-24T22:22:08+00:00","id":125,"bidder":{"github_id":"461046","duns_number":"080039148","name":"Justin Duke","sam_account":true,"created_at":"2015-12-29T18:02:46+00:00","updated_at":"2016-01-19T14:02:38+00:00","id":37}},{"bidder_id":65,"auction_id":16,"amount":650,"created_at":"2016-02-24T18:49:39+00:00","updated_at":"2016-02-24T18:49:39+00:00","id":123,"bidder":{"github_id":"11858095","duns_number":"080024708","name":"Ry Bobko","sam_account":true,"created_at":"2016-01-04T20:57:17+00:00","updated_at":"2016-01-11T03:15:36+00:00","id":65}},{"bidder_id":30,"auction_id":16,"amount":3200,"created_at":"2016-02-24T18:23:46+00:00","updated_at":"2016-02-24T18:23:46+00:00","id":122,"bidder":{"github_id":"387035","duns_number":"080033077","name":"Christian G. Warden","sam_account":true,"created_at":"2015-12-29T16:14:47+00:00","updated_at":"2016-01-11T03:15:25+00:00","id":30}},{"bidder_id":158,"auction_id":16,"amount":399,"created_at":"2016-02-24T18:09:45+00:00","updated_at":"2016-02-24T18:09:45+00:00","id":119,"bidder":{"github_id":"14097154","duns_number":"08-003-3961","name":"Thought Object","sam_account":true,"created_at":"2016-02-24T18:03:07+00:00","updated_at":"2016-02-24T18:07:39+00:00","id":158}}],"created_at":"2016-02-24T17:18:10+00:00","updated_at":"2016-02-24T17:18:10+00:00","summary":"Currently when creating auctions in the micro-purchase admin panel, the admin must enter a delivery deadline. This is the deadline that the winning bidder has to deliver the requirements. This issue seeks to make it easier for site admins to enter this time."},{"issue_url":"https://github.com/18F/travel-form/issues/1","github_repo":"https://github.com/18F/travel-form","start_price":3500,"start_datetime":"2016-02-24T18:00:00+00:00","end_datetime":"2016-02-26T18:00:00+00:00","title":"Travel Form and Email Request Automation","description":"## Description \r\n\r\n18F travel requests must be authorized by supervisors, which is currently done via email. Certain information is required for the supervisor in order to approve or deny the request and the email is currently templated, but entered manually by the requester. This issue seeks the creation of a web form to collect the information required in the web form and generates an email to send to the supervisor. An email must be generated in order to confirm travel dates. \r\n\r\n\r\n## Auction rules \r\n\r\nRegistered users on micropurchase.18f.gov may bid to deliver the requirements in this auction. The lowest bidder at the time the auction closes shall receive the award. The awarded bidder shall have five business days after notice of award to deliver the requirements. Upon successful completion of the requirements, 18F shall pay the winning bidder.\r\n\r\nAlso see our [policies and guidelines page](https://micropurchase.18f.gov/faq). \r\n\r\n## Acceptance criteria \r\n\r\nGiven an 18F employee needs to send a travel request,\r\n\r\nWhen they log on to the webform pages,\r\n\r\nThen they will see the following fields, all of which will be required:\r\n\r\n- Requestor Name [Text]\r\n- Requestor Email [Email]\r\n- Billability [Dropdown]\r\n --Two Options: \r\n --BILLABLE \r\n --NONBILLABLE \r\n- Tock Project Name [Text] [Help text: - Exact Name of the Tock Project]\r\n- Tock Project ID. [Text] [Help Text: - Please lookup tock project here: https://tock.18f.gov/projects/]\r\n- Client Email [Email] [Help Text: Or supervisor if nonbillable]\r\n- Home Location [Text] [Help Text: - Where you are usually located]\r\n- Work Location [Text] [Help Text: Where you will be travelling to]\r\n- Work to be done [Text] [Help Text: What you will be working on ]\r\n- Departure Date [Date]\r\n- Return Date [Date]\r\n- First Day of Travel Work Date [Date]\r\n- When a user submits the information\r\n- Then the web form will validate the entries to ensure they are of appropriate length and do not contain illegal characters.\r\n\r\nGiven that the entered form information meets the validation criteria\r\n\r\nWhen the form is submitted\r\nThen an email is sent to the Client Email\r\n\r\nAnd a reply-to field including the “Requestor Email” and “18fTravelAuths@gsa.gov”\r\n\r\nAnd contains a subject in the Following Format using the information from the form inputs:\r\n\r\n \"{Billability} - {Tock Project Name} - #{Tock Project ID} -- {Departure_Date} - {Return Date}\"\r\n \r\n \r\n\r\n**Subsequently, the body of the email will be generated using the information from the form inputs:**\r\n \r\n\r\n--\r\n\r\nHello,\r\n\t\r\nI request approval to travel from {Home Location} to {Work Location}. The dates of travel are {Departure Date} - {Return Date}. I will depart the {Departure Date}, to arrive in time for {Work to be done} scheduled for {First Day of Travel Work Date}. I will return to {Home Location} on {Return Date}. \r\n\r\nPlease reply with your approval, or with any subsequent clarifications you may have.\r\n\r\n Many thanks,\r\n\r\n {Requestor Name}\r\n\r\n\r\n----\r\n\r\n \r\n \r\n\r\n## Deliverables\r\n\r\nA single pull request submitted to https://github.com/18F/tock with clear, descriptive commits that satisfy all of the above acceptance criteria.","id":14,"bids":[{"bidder_id":44,"auction_id":14,"amount":400,"created_at":"2016-02-26T17:59:06+00:00","updated_at":"2016-02-26T17:59:06+00:00","id":165,"bidder":{"github_id":"1451399","duns_number":"080014807","name":"Dan Siddoway","sam_account":true,"created_at":"2015-12-29T23:22:12+00:00","updated_at":"2016-01-29T18:07:33+00:00","id":44}},{"bidder_id":161,"auction_id":14,"amount":449,"created_at":"2016-02-26T17:55:22+00:00","updated_at":"2016-02-26T17:55:22+00:00","id":155,"bidder":{"github_id":"833570","duns_number":"07-944-1444","name":"Evan Rose","sam_account":true,"created_at":"2016-02-25T01:14:16+00:00","updated_at":"2016-02-25T15:09:02+00:00","id":161}},{"bidder_id":90,"auction_id":14,"amount":450,"created_at":"2016-02-26T15:50:31+00:00","updated_at":"2016-02-26T15:50:31+00:00","id":143,"bidder":{"github_id":"684965","duns_number":"080126095","name":"Joe Hand","sam_account":true,"created_at":"2016-01-11T18:33:42+00:00","updated_at":"2016-02-24T18:04:37+00:00","id":90}},{"bidder_id":37,"auction_id":14,"amount":475,"created_at":"2016-02-26T06:21:31+00:00","updated_at":"2016-02-26T06:21:31+00:00","id":140,"bidder":{"github_id":"461046","duns_number":"080039148","name":"Justin Duke","sam_account":true,"created_at":"2015-12-29T18:02:46+00:00","updated_at":"2016-01-19T14:02:38+00:00","id":37}},{"bidder_id":158,"auction_id":14,"amount":500,"created_at":"2016-02-24T18:11:16+00:00","updated_at":"2016-02-24T18:11:16+00:00","id":120,"bidder":{"github_id":"14097154","duns_number":"08-003-3961","name":"Thought Object","sam_account":true,"created_at":"2016-02-24T18:03:07+00:00","updated_at":"2016-02-24T18:07:39+00:00","id":158}}],"created_at":"2016-02-19T21:00:08+00:00","updated_at":"2016-02-19T21:00:08+00:00","summary":"Travel requests must be authorized by supervisors, which is currently done via email. Certain information is required for the supervisor in order to approve or deny the request and the email is currently templated, but entered manually by the requester. This issue seeks a web form to collect the information required in the web form and generates an email to send to the supervisor. An email must be generated in order to confirm travel dates. "},{"issue_url":"https://github.com/18F/tock/issues/288","github_repo":"https://github.com/18f/tock","start_price":3500,"start_datetime":"2016-01-25T18:00:00+00:00","end_datetime":"2016-01-26T18:00:00+00:00","title":"Save hours in Tock throughout the week ","description":"## Description\r\n\r\nTock is a simple time tracking app that 18F employees use to report their time on a weekly basis. The application also provides some light data visualization tools that allow users to look at what users have logged time to a project, as well as what projects to which a user has logged time. This issue seeks to allow users to update their time cards throughout the week.\r\n\r\n## Auction rules \r\n\r\nRegistered users on micropurchase.18f.gov may bid to deliver the requirements in this auction. The lowest bidder at the time the auction closes shall receive the award. The awarded bidder shall have five business days to deliver the requirements. Upon successful completion of the requirements, 18F shall pay the winning bidder.\r\n\r\nAlso see our [policies and guidelines page](https://micropurchase.18f.gov/faq). \r\n\r\nNote: This auction is being re-run because the original winning vendor was not able to deliver the requirements within the required time frame. You can view the previous auction [here](https://micropurchase.18f.gov/auctions/4).\r\n\r\n## Application-specific acceptance criteria\r\n\r\n- A user may save a partially completed time sheet.\r\n- The user has the option to save a time card without submitting (e.g. via a “save time card” button).\r\n- The user has the option to submit a time card (e.g. through the existing “submit time card” button).\r\n- Time cards should have a status flag (e.g. a column added to the hours table/model) which indicates the following states:\r\n- time card has not been submitted\r\n- time card has been submitted\r\n- The API endpoints that publish time card data exclude time cards that have not been submitted.\r\n- Other parts of the application that rely on time card data only reference submitted time card data.\r\n- Create a new API endpoint for time cards that have not been submitted.\r\n\r\n## General acceptance criteria\r\n\r\n- B or better code climate grade and 90% or higher test coverage for all modifications.\r\n- Tests adequately cover any new functionality.\r\n- Tests run on Travis-CI and do not break the build.\r\n- New features do not degrade accessibility (use pa11y/HTML Code Sniffer).\r\n\r\n## Resources\r\n\r\nInstructions for installing Tock locally and loading sample data: https://github.com/18F/tock/blob/master/README.md#getting-started\r\n\r\n## Deliverables\r\n\r\nA single pull request submitted to https://github.com/18F/tock with clear, descriptive commits that satisfy all of the above acceptance criteria.\r\n","id":9,"bids":[{"bidder_id":36,"auction_id":9,"amount":492,"created_at":"2016-01-26T17:59:52+00:00","updated_at":"2016-01-26T17:59:52+00:00","id":118,"bidder":{"github_id":"1060893","duns_number":"080037478","name":"brendan sudol","sam_account":true,"created_at":"2015-12-29T17:39:36+00:00","updated_at":"2016-01-11T00:44:39+00:00","id":36}},{"bidder_id":34,"auction_id":9,"amount":600,"created_at":"2016-01-26T15:39:17+00:00","updated_at":"2016-01-26T15:39:17+00:00","id":117,"bidder":{"github_id":"6887045","duns_number":"078327018","name":null,"sam_account":true,"created_at":"2015-12-29T17:29:09+00:00","updated_at":"2016-01-11T00:44:39+00:00","id":34}},{"bidder_id":52,"auction_id":9,"amount":650,"created_at":"2016-01-26T15:32:23+00:00","updated_at":"2016-01-26T15:32:23+00:00","id":116,"bidder":{"github_id":"445875","duns_number":"08-011-5718","name":"Joshua Tauberer","sam_account":true,"created_at":"2015-12-30T13:59:52+00:00","updated_at":"2016-01-11T17:52:30+00:00","id":52}},{"bidder_id":34,"auction_id":9,"amount":700,"created_at":"2016-01-26T15:03:22+00:00","updated_at":"2016-01-26T15:03:22+00:00","id":114,"bidder":{"github_id":"6887045","duns_number":"078327018","name":null,"sam_account":true,"created_at":"2015-12-29T17:29:09+00:00","updated_at":"2016-01-11T00:44:39+00:00","id":34}},{"bidder_id":37,"auction_id":9,"amount":750,"created_at":"2016-01-26T04:47:33+00:00","updated_at":"2016-01-26T04:47:33+00:00","id":113,"bidder":{"github_id":"461046","duns_number":"080039148","name":"Justin Duke","sam_account":true,"created_at":"2015-12-29T18:02:46+00:00","updated_at":"2016-01-19T14:02:38+00:00","id":37}},{"bidder_id":34,"auction_id":9,"amount":800,"created_at":"2016-01-26T03:02:15+00:00","updated_at":"2016-01-26T03:02:15+00:00","id":111,"bidder":{"github_id":"6887045","duns_number":"078327018","name":null,"sam_account":true,"created_at":"2015-12-29T17:29:09+00:00","updated_at":"2016-01-11T00:44:39+00:00","id":34}},{"bidder_id":52,"auction_id":9,"amount":860,"created_at":"2016-01-25T19:56:25+00:00","updated_at":"2016-01-25T19:56:25+00:00","id":110,"bidder":{"github_id":"445875","duns_number":"08-011-5718","name":"Joshua Tauberer","sam_account":true,"created_at":"2015-12-30T13:59:52+00:00","updated_at":"2016-01-11T17:52:30+00:00","id":52}},{"bidder_id":34,"auction_id":9,"amount":940,"created_at":"2016-01-25T19:46:32+00:00","updated_at":"2016-01-25T19:46:32+00:00","id":109,"bidder":{"github_id":"6887045","duns_number":"078327018","name":null,"sam_account":true,"created_at":"2015-12-29T17:29:09+00:00","updated_at":"2016-01-11T00:44:39+00:00","id":34}},{"bidder_id":52,"auction_id":9,"amount":1101,"created_at":"2016-01-25T19:44:17+00:00","updated_at":"2016-01-25T19:44:17+00:00","id":107,"bidder":{"github_id":"445875","duns_number":"08-011-5718","name":"Joshua Tauberer","sam_account":true,"created_at":"2015-12-30T13:59:52+00:00","updated_at":"2016-01-11T17:52:30+00:00","id":52}},{"bidder_id":34,"auction_id":9,"amount":1800,"created_at":"2016-01-25T19:28:40+00:00","updated_at":"2016-01-25T19:28:40+00:00","id":105,"bidder":{"github_id":"6887045","duns_number":"078327018","name":null,"sam_account":true,"created_at":"2015-12-29T17:29:09+00:00","updated_at":"2016-01-11T00:44:39+00:00","id":34}},{"bidder_id":52,"auction_id":9,"amount":3250,"created_at":"2016-01-25T19:18:09+00:00","updated_at":"2016-01-25T19:18:09+00:00","id":100,"bidder":{"github_id":"445875","duns_number":"08-011-5718","name":"Joshua Tauberer","sam_account":true,"created_at":"2015-12-30T13:59:52+00:00","updated_at":"2016-01-11T17:52:30+00:00","id":52}}],"created_at":"2016-01-25T13:42:40+00:00","updated_at":"2016-01-25T13:42:40+00:00","summary":"Tock is a simple time tracking app that 18F employees use to report their time on a weekly basis. The application also provides some light data visualization tools that allow users to look at what users have logged time to a project, as well as what projects to which a user has logged time. This issue seeks to allow users to update their time cards throughout the week."},{"issue_url":"https://github.com/18F/tock/issues/287","github_repo":"https://github.com/18f/tock","start_price":3500,"start_datetime":"2016-01-25T18:00:00+00:00","end_datetime":"2016-01-26T18:00:00+00:00","title":"Tock superusers should be able to enter 0-60 hour weeks","description":"## Description\r\n\r\nTock is a simple time tracking app that 18F employees use to report their time on a weekly \r\nbasis. Currently, no user may enter more than 40 hours per week. This issue seeks to allow certain specified users of Tock to enter anywhere between 0 and 60 hours.\r\n\r\n## Auction rules \r\n\r\nRegistered users on micropurchase.18f.gov may bid to deliver the requirements in this auction. The lowest bidder at the time the auction closes shall receive the award. The awarded bidder shall have five business days to deliver the requirements. Upon successful completion of the requirements, 18F shall pay the winning bidder.\r\n\r\nAlso see our [policies and guidelines page](https://micropurchase.18f.gov/faq). \r\n\r\n\r\nNote: This auction is being re-run because the original winning vendor was not able to deliver the requirements within the required time frame. You can view the previous auction [here](https://micropurchase.18f.gov/auctions/5).\r\n\r\n## Application-specific acceptance criteria\r\n\r\nA superuser can view in the admin panel a time card for any other user and select an option (e.g. check a box) which would allow any superuser to enter anywhere between 0 and 60 hours for a given week.\r\nA superuser, when creating or editing a reporting period in the admin panel, can select users who may enter between 0 and 60 hours for that reporting period.\r\n\r\n## General acceptance criteria\r\n\r\nB or better code climate grade and 90% or higher test coverage for all modifications.\r\nTests adequately cover any new functionality.\r\nTests run on Travis-CI and do not break the build.\r\nNew features do not degrade accessibility (use pa11y/HTML Code Sniffer).\r\n\r\n## Resources\r\n\r\nInstructions for installing Tock locally and loading sample data: https://github.com/18F/tock/blob/master/README.md#getting-started\r\n\r\n## Deliverables\r\n\r\nA single pull request submitted to https://github.com/18F/tock with clear, descriptive commits that satisfy all of the above acceptance criteria.","id":10,"bids":[{"bidder_id":34,"auction_id":10,"amount":600,"created_at":"2016-01-26T15:03:42+00:00","updated_at":"2016-01-26T15:03:42+00:00","id":115,"bidder":{"github_id":"6887045","duns_number":"078327018","name":null,"sam_account":true,"created_at":"2015-12-29T17:29:09+00:00","updated_at":"2016-01-11T00:44:39+00:00","id":34}},{"bidder_id":37,"auction_id":10,"amount":675,"created_at":"2016-01-26T04:46:52+00:00","updated_at":"2016-01-26T04:46:52+00:00","id":112,"bidder":{"github_id":"461046","duns_number":"080039148","name":"Justin Duke","sam_account":true,"created_at":"2015-12-29T18:02:46+00:00","updated_at":"2016-01-19T14:02:38+00:00","id":37}},{"bidder_id":34,"auction_id":10,"amount":700,"created_at":"2016-01-25T19:46:06+00:00","updated_at":"2016-01-25T19:46:06+00:00","id":108,"bidder":{"github_id":"6887045","duns_number":"078327018","name":null,"sam_account":true,"created_at":"2015-12-29T17:29:09+00:00","updated_at":"2016-01-11T00:44:39+00:00","id":34}},{"bidder_id":52,"auction_id":10,"amount":1001,"created_at":"2016-01-25T19:43:04+00:00","updated_at":"2016-01-25T19:43:04+00:00","id":106,"bidder":{"github_id":"445875","duns_number":"08-011-5718","name":"Joshua Tauberer","sam_account":true,"created_at":"2015-12-30T13:59:52+00:00","updated_at":"2016-01-11T17:52:30+00:00","id":52}},{"bidder_id":110,"auction_id":10,"amount":1800,"created_at":"2016-01-25T19:27:07+00:00","updated_at":"2016-01-25T19:27:07+00:00","id":104,"bidder":{"github_id":"13643929","duns_number":"079699512","name":"Cntient","sam_account":true,"created_at":"2016-01-17T05:37:46+00:00","updated_at":"2016-02-02T21:15:34+00:00","id":110}},{"bidder_id":34,"auction_id":10,"amount":1850,"created_at":"2016-01-25T19:24:58+00:00","updated_at":"2016-01-25T19:24:58+00:00","id":103,"bidder":{"github_id":"6887045","duns_number":"078327018","name":null,"sam_account":true,"created_at":"2015-12-29T17:29:09+00:00","updated_at":"2016-01-11T00:44:39+00:00","id":34}},{"bidder_id":30,"auction_id":10,"amount":2500,"created_at":"2016-01-25T19:18:40+00:00","updated_at":"2016-01-25T19:18:40+00:00","id":101,"bidder":{"github_id":"387035","duns_number":"080033077","name":"Christian G. Warden","sam_account":true,"created_at":"2015-12-29T16:14:47+00:00","updated_at":"2016-01-11T03:15:25+00:00","id":30}},{"bidder_id":52,"auction_id":10,"amount":2501,"created_at":"2016-01-25T19:12:29+00:00","updated_at":"2016-01-25T19:12:29+00:00","id":98,"bidder":{"github_id":"445875","duns_number":"08-011-5718","name":"Joshua Tauberer","sam_account":true,"created_at":"2015-12-30T13:59:52+00:00","updated_at":"2016-01-11T17:52:30+00:00","id":52}},{"bidder_id":30,"auction_id":10,"amount":3499,"created_at":"2016-01-25T18:01:38+00:00","updated_at":"2016-01-25T18:01:38+00:00","id":92,"bidder":{"github_id":"387035","duns_number":"080033077","name":"Christian G. Warden","sam_account":true,"created_at":"2015-12-29T16:14:47+00:00","updated_at":"2016-01-11T03:15:25+00:00","id":30}}],"created_at":"2016-01-25T13:46:31+00:00","updated_at":"2016-01-25T13:46:31+00:00","summary":"Tock is a simple time tracking app that 18F employees use to report their time on a weekly \r\nbasis. Currently, no user may enter more than 40 hours per week. This issue seeks to allow certain specified users of Tock to enter anywhere between 0 and 60 hours."},{"issue_url":"https://github.com/18F/procurement-glossary/issues/5","github_repo":"https://github.com/18F/procurement-glossary","start_price":3500,"start_datetime":"2016-01-25T18:00:00+00:00","end_datetime":"2016-01-26T18:00:00+00:00","title":"Convert FAI Glossary PDF into YAML data","description":"## Description \r\n\r\nThe Federal Acquisition Institute has a [“master glossary\"](https://www.fai.gov/drupal/sites/default/files/FAI_Acquisition_Glossary_021913%20Master%20Glossary.pdf). The master glossary currently has many definitions in a tabular form (and in PDF), but 18F has a need to convert these definitions into a yaml file. \r\n\r\n\r\nAmong other use cases, 18F uses these definitions to allow for quick reference of defined terms in slack (see screenshot).\r\n\r\nThis issue seeks to create a YAML file of the table contained within FAI Acquisition Glossary PDF.\r\n\r\n\u003cimg alt=\"Screen shot of slack usage of `charlie define PWS`\" src=\"https://cloud.githubusercontent.com/assets/4153048/12520133/c312e2d4-c110-11e5-8aab-574bdf0b6b15.png\"\u003e\r\n\r\n## Auction rules \r\n\r\nRegistered users on micropurchase.18f.gov may bid to deliver the requirements in this auction. The lowest bidder at the time the auction closes shall receive the award. The awarded bidder shall have five business days to deliver the requirements. Upon successful completion of the requirements, 18F shall pay the winning bidder.\r\n\r\nAlso see our [policies and guidelines page](https://micropurchase.18f.gov/faq). \r\n\r\n## Application-specific acceptance criteria \r\n\r\n- A separate `fai.yml` file formatted substantially similar to the yaml file currently in the https://github.com/18F/procurement-glossary/blob/master/abbreviations.yml\r\n- Where the glossary has a cross-reference (see screenshot below), the full definition should be included in the `description` field and the longform of the definition should be included in the `longform` field. \r\n- A brief narrative of the methodology (including any custom scripts) used to create the yaml file. \r\n\r\n\u003cimg alt=\"Screen shot of FAI glossary including BPA\" src=\"https://cloud.githubusercontent.com/assets/4153048/12520134/c3147b94-c110-11e5-8b49-739e572d17ee.png\"\u003e\r\n\r\n## General acceptance criteria\r\n\r\n- B or better code climate grade and 90% or higher test coverage for all modifications.\r\n- Tests adequately cover any new functionality.\r\n- Tests run on Travis-CI and do not break the build.\r\nNew features do not degrade accessibility (use pa11y/HTML Code Sniffer).\r\n\r\n\r\n## Resources\r\n\r\n- https://github.com/18F/procurement-glossary/issues/5\r\n\r\n## Deliverables\r\n\r\nA single pull request submitted to https://github.com/18F/procurement-glossary with clear, descriptive commits that satisfy all of the above acceptance criteria.\r\n","id":8,"bids":[{"bidder_id":110,"auction_id":8,"amount":1,"created_at":"2016-01-25T19:22:10+00:00","updated_at":"2016-01-25T19:22:10+00:00","id":102,"bidder":{"github_id":"13643929","duns_number":"079699512","name":"Cntient","sam_account":true,"created_at":"2016-01-17T05:37:46+00:00","updated_at":"2016-02-02T21:15:34+00:00","id":110}},{"bidder_id":30,"auction_id":8,"amount":1500,"created_at":"2016-01-25T19:14:02+00:00","updated_at":"2016-01-25T19:14:02+00:00","id":99,"bidder":{"github_id":"387035","duns_number":"080033077","name":"Christian G. Warden","sam_account":true,"created_at":"2015-12-29T16:14:47+00:00","updated_at":"2016-01-11T03:15:25+00:00","id":30}},{"bidder_id":52,"auction_id":8,"amount":1501,"created_at":"2016-01-25T19:08:45+00:00","updated_at":"2016-01-25T19:08:45+00:00","id":97,"bidder":{"github_id":"445875","duns_number":"08-011-5718","name":"Joshua Tauberer","sam_account":true,"created_at":"2015-12-30T13:59:52+00:00","updated_at":"2016-01-11T17:52:30+00:00","id":52}},{"bidder_id":30,"auction_id":8,"amount":1999,"created_at":"2016-01-25T18:39:55+00:00","updated_at":"2016-01-25T18:39:55+00:00","id":96,"bidder":{"github_id":"387035","duns_number":"080033077","name":"Christian G. Warden","sam_account":true,"created_at":"2015-12-29T16:14:47+00:00","updated_at":"2016-01-11T03:15:25+00:00","id":30}},{"bidder_id":65,"auction_id":8,"amount":2000,"created_at":"2016-01-25T18:36:47+00:00","updated_at":"2016-01-25T18:36:47+00:00","id":95,"bidder":{"github_id":"11858095","duns_number":"080024708","name":"Ry Bobko","sam_account":true,"created_at":"2016-01-04T20:57:17+00:00","updated_at":"2016-01-11T03:15:36+00:00","id":65}},{"bidder_id":30,"auction_id":8,"amount":2249,"created_at":"2016-01-25T18:12:01+00:00","updated_at":"2016-01-25T18:12:01+00:00","id":94,"bidder":{"github_id":"387035","duns_number":"080033077","name":"Christian G. Warden","sam_account":true,"created_at":"2015-12-29T16:14:47+00:00","updated_at":"2016-01-11T03:15:25+00:00","id":30}},{"bidder_id":110,"auction_id":8,"amount":2250,"created_at":"2016-01-25T18:10:28+00:00","updated_at":"2016-01-25T18:10:28+00:00","id":93,"bidder":{"github_id":"13643929","duns_number":"079699512","name":"Cntient","sam_account":true,"created_at":"2016-01-17T05:37:46+00:00","updated_at":"2016-02-02T21:15:34+00:00","id":110}},{"bidder_id":30,"auction_id":8,"amount":3499,"created_at":"2016-01-25T18:01:15+00:00","updated_at":"2016-01-25T18:01:15+00:00","id":91,"bidder":{"github_id":"387035","duns_number":"080033077","name":"Christian G. Warden","sam_account":true,"created_at":"2015-12-29T16:14:47+00:00","updated_at":"2016-01-11T03:15:25+00:00","id":30}}],"created_at":"2016-01-25T13:12:45+00:00","updated_at":"2016-01-25T13:12:45+00:00","summary":"The Federal Acquisition Institute has a [“master glossary\"](https://www.fai.gov/drupal/sites/default/files/FAI_Acquisition_Glossary_021913%20Master%20Glossary.pdf). The master glossary currently has many definitions in a tabular form (and in PDF), but 18F has a need to convert these definitions into a yaml file. \r\n\r\n"},{"issue_url":"https://github.com/18F/tock/issues/287","github_repo":"https://github.com/18f/tock","start_price":3500,"start_datetime":"2016-01-11T18:00:00+00:00","end_datetime":"2016-01-12T22:00:00+00:00","title":"Tock superusers should be able to enter 0-60 hour weeks","description":"## Description\r\n\r\nTock is a simple time tracking app that 18F employees use to report their time on a weekly \r\nbasis. Currently, no user may enter more than 40 hours per week. This issue seeks to allow certain specified users of Tock to enter anywhere between 0 and 60 hours.\r\n\r\n## Auction rules \r\n\r\nRegistered users on micropurchase.18f.gov may bid to deliver the requirements in this auction. The lowest bidder at the time the auction closes shall receive the award. The awarded bidder shall have five business days after notice of award to deliver the requirements. Upon successful completion of the requirements, 18F shall pay the winning bidder.\r\n\r\n## Application-specific acceptance criteria\r\n\r\nA superuser can view in the admin panel a time card for any other user and select an option (e.g. check a box) which would allow any superuser to enter anywhere between 0 and 60 hours for a given week.\r\nA superuser, when creating or editing a reporting period in the admin panel, can select users who may enter between 0 and 60 hours for that reporting period.\r\n\r\n## General acceptance criteria\r\n\r\nB or better code climate grade and 90% or higher test coverage for all modifications.\r\nTests adequately cover any new functionality.\r\nTests run on Travis-CI and do not break the build.\r\nNew features do not degrade accessibility (use pa11y/HTML Code Sniffer).\r\n\r\n## Resources\r\n\r\nInstructions for installing Tock locally and loading sample data: https://github.com/18F/tock/blob/master/README.md#getting-started\r\n\r\n## Deliverables\r\n\r\nA single pull request submitted to https://github.com/18F/tock with clear, descriptive commits that satisfy all of the above acceptance criteria.","id":5,"bids":[{"bidder_id":69,"auction_id":5,"amount":249,"created_at":"2016-01-12T14:46:27+00:00","updated_at":"2016-01-12T14:46:27+00:00","id":79,"bidder":{"github_id":"15251877","duns_number":"079859219","name":"Daniel Connery","sam_account":true,"created_at":"2016-01-05T18:43:53+00:00","updated_at":"2016-01-11T03:15:51+00:00","id":69}},{"bidder_id":52,"auction_id":5,"amount":250,"created_at":"2016-01-12T13:13:13+00:00","updated_at":"2016-01-12T13:13:13+00:00","id":75,"bidder":{"github_id":"445875","duns_number":"08-011-5718","name":"Joshua Tauberer","sam_account":true,"created_at":"2015-12-30T13:59:52+00:00","updated_at":"2016-01-11T17:52:30+00:00","id":52}},{"bidder_id":69,"auction_id":5,"amount":399,"created_at":"2016-01-11T21:32:20+00:00","updated_at":"2016-01-11T21:32:20+00:00","id":59,"bidder":{"github_id":"15251877","duns_number":"079859219","name":"Daniel Connery","sam_account":true,"created_at":"2016-01-05T18:43:53+00:00","updated_at":"2016-01-11T03:15:51+00:00","id":69}},{"bidder_id":52,"auction_id":5,"amount":400,"created_at":"2016-01-11T19:13:18+00:00","updated_at":"2016-01-11T19:13:18+00:00","id":54,"bidder":{"github_id":"445875","duns_number":"08-011-5718","name":"Joshua Tauberer","sam_account":true,"created_at":"2015-12-30T13:59:52+00:00","updated_at":"2016-01-11T17:52:30+00:00","id":52}},{"bidder_id":69,"auction_id":5,"amount":500,"created_at":"2016-01-11T19:07:17+00:00","updated_at":"2016-01-11T19:07:17+00:00","id":53,"bidder":{"github_id":"15251877","duns_number":"079859219","name":"Daniel Connery","sam_account":true,"created_at":"2016-01-05T18:43:53+00:00","updated_at":"2016-01-11T03:15:51+00:00","id":69}},{"bidder_id":60,"auction_id":5,"amount":1775,"created_at":"2016-01-11T18:57:47+00:00","updated_at":"2016-01-11T18:57:47+00:00","id":52,"bidder":{"github_id":"319471","duns_number":"148361251","name":"Geoff Harcourt","sam_account":true,"created_at":"2016-01-04T13:35:21+00:00","updated_at":"2016-01-11T03:15:47+00:00","id":60}},{"bidder_id":52,"auction_id":5,"amount":1998,"created_at":"2016-01-11T18:57:11+00:00","updated_at":"2016-01-11T18:57:11+00:00","id":51,"bidder":{"github_id":"445875","duns_number":"08-011-5718","name":"Joshua Tauberer","sam_account":true,"created_at":"2015-12-30T13:59:52+00:00","updated_at":"2016-01-11T17:52:30+00:00","id":52}},{"bidder_id":69,"auction_id":5,"amount":1999,"created_at":"2016-01-11T18:10:59+00:00","updated_at":"2016-01-11T18:10:59+00:00","id":40,"bidder":{"github_id":"15251877","duns_number":"079859219","name":"Daniel Connery","sam_account":true,"created_at":"2016-01-05T18:43:53+00:00","updated_at":"2016-01-11T03:15:51+00:00","id":69}},{"bidder_id":52,"auction_id":5,"amount":2000,"created_at":"2016-01-11T18:08:48+00:00","updated_at":"2016-01-11T18:08:48+00:00","id":36,"bidder":{"github_id":"445875","duns_number":"08-011-5718","name":"Joshua Tauberer","sam_account":true,"created_at":"2015-12-30T13:59:52+00:00","updated_at":"2016-01-11T17:52:30+00:00","id":52}}],"created_at":"2016-01-11T16:29:43+00:00","updated_at":"2016-01-11T16:29:43+00:00","summary":"Tock is a simple time tracking app that 18F employees use to report their time on a weekly \r\nbasis. Currently, no user may enter more than 40 hours per week. This issue seeks to allow certain specified users of Tock to enter anywhere between 0 and 60 hours."},{"issue_url":"https://github.com/18F/tock/issues/288","github_repo":"https://github.com/18f/tock","start_price":3500,"start_datetime":"2016-01-11T18:00:00+00:00","end_datetime":"2016-01-12T22:00:00+00:00","title":"Save hours in Tock throughout the week ","description":"## Description\r\n\r\nTock is a simple time tracking app that 18F employees use to report their time on a weekly basis. The application also provides some light data visualization tools that allow users to look at what users have logged time to a project, as well as what projects to which a user has logged time. This issue seeks to allow users to update their time cards throughout the week.\r\n\r\n## Auction rules \r\n\r\nRegistered users on micropurchase.18f.gov may bid to deliver the requirements in this auction. The lowest bidder at the time the auction closes shall receive the award. The awarded bidder shall have five business days after notice of award to deliver the requirements. Upon successful completion of the requirements, 18F shall pay the winning bidder.\r\n\r\n## Application-specific acceptance criteria\r\n\r\n- A user may save a partially completed time sheet.\r\n- The user has the option to save a time card without submitting (e.g. via a “save time card” button).\r\n- The user has the option to submit a time card (e.g. through the existing “submit time card” button).\r\n- Time cards should have a status flag (e.g. a column added to the hours table/model) which indicates the following states:\r\n- time card has not been submitted\r\n- time card has been submitted\r\n- The API endpoints that publish time card data exclude time cards that have not been submitted.\r\n- Other parts of the application that rely on time card data only reference submitted time card data.\r\n- Create a new API endpoint for time cards that have not been submitted.\r\n\r\n## General acceptance criteria\r\n\r\n- B or better code climate grade and 90% or higher test coverage for all modifications.\r\n- Tests adequately cover any new functionality.\r\n- Tests run on Travis-CI and do not break the build.\r\n- New features do not degrade accessibility (use pa11y/HTML Code Sniffer).\r\n\r\n## Resources\r\n\r\nInstructions for installing Tock locally and loading sample data: https://github.com/18F/tock/blob/master/README.md#getting-started\r\n\r\n## Deliverables\r\n\r\nA single pull request submitted to https://github.com/18F/tock with clear, descriptive commits that satisfy all of the above acceptance criteria.\r\n","id":4,"bids":[{"bidder_id":69,"auction_id":4,"amount":374,"created_at":"2016-01-11T21:32:49+00:00","updated_at":"2016-01-11T21:32:49+00:00","id":60,"bidder":{"github_id":"15251877","duns_number":"079859219","name":"Daniel Connery","sam_account":true,"created_at":"2016-01-05T18:43:53+00:00","updated_at":"2016-01-11T03:15:51+00:00","id":69}},{"bidder_id":52,"auction_id":4,"amount":375,"created_at":"2016-01-11T18:56:01+00:00","updated_at":"2016-01-11T18:56:01+00:00","id":48,"bidder":{"github_id":"445875","duns_number":"08-011-5718","name":"Joshua Tauberer","sam_account":true,"created_at":"2015-12-30T13:59:52+00:00","updated_at":"2016-01-11T17:52:30+00:00","id":52}},{"bidder_id":69,"auction_id":4,"amount":400,"created_at":"2016-01-11T18:52:34+00:00","updated_at":"2016-01-11T18:52:34+00:00","id":47,"bidder":{"github_id":"15251877","duns_number":"079859219","name":"Daniel Connery","sam_account":true,"created_at":"2016-01-05T18:43:53+00:00","updated_at":"2016-01-11T03:15:51+00:00","id":69}},{"bidder_id":34,"auction_id":4,"amount":2248,"created_at":"2016-01-11T18:42:47+00:00","updated_at":"2016-01-11T18:42:47+00:00","id":44,"bidder":{"github_id":"6887045","duns_number":"078327018","name":null,"sam_account":true,"created_at":"2015-12-29T17:29:09+00:00","updated_at":"2016-01-11T00:44:39+00:00","id":34}},{"bidder_id":60,"auction_id":4,"amount":2500,"created_at":"2016-01-11T18:26:42+00:00","updated_at":"2016-01-11T18:26:42+00:00","id":43,"bidder":{"github_id":"319471","duns_number":"148361251","name":"Geoff Harcourt","sam_account":true,"created_at":"2016-01-04T13:35:21+00:00","updated_at":"2016-01-11T03:15:47+00:00","id":60}},{"bidder_id":34,"auction_id":4,"amount":2775,"created_at":"2016-01-11T18:12:52+00:00","updated_at":"2016-01-11T18:12:52+00:00","id":42,"bidder":{"github_id":"6887045","duns_number":"078327018","name":null,"sam_account":true,"created_at":"2015-12-29T17:29:09+00:00","updated_at":"2016-01-11T00:44:39+00:00","id":34}},{"bidder_id":69,"auction_id":4,"amount":3049,"created_at":"2016-01-11T18:09:42+00:00","updated_at":"2016-01-11T18:09:42+00:00","id":37,"bidder":{"github_id":"15251877","duns_number":"079859219","name":"Daniel Connery","sam_account":true,"created_at":"2016-01-05T18:43:53+00:00","updated_at":"2016-01-11T03:15:51+00:00","id":69}},{"bidder_id":34,"auction_id":4,"amount":3050,"created_at":"2016-01-11T18:04:44+00:00","updated_at":"2016-01-11T18:04:44+00:00","id":32,"bidder":{"github_id":"6887045","duns_number":"078327018","name":null,"sam_account":true,"created_at":"2015-12-29T17:29:09+00:00","updated_at":"2016-01-11T00:44:39+00:00","id":34}}],"created_at":"2016-01-11T16:28:02+00:00","updated_at":"2016-01-11T16:28:02+00:00","summary":"Tock is a simple time tracking app that 18F employees use to report their time on a weekly basis. The application also provides some light data visualization tools that allow users to look at what users have logged time to a project, as well as what projects to which a user has logged time. This issue seeks to allow users to update their time cards throughout the week."},{"issue_url":"https://github.com/18F/tock/issues/289","github_repo":"https://github.com/18f/tock","start_price":3500,"start_datetime":"2016-01-11T18:00:00+00:00","end_datetime":"2016-01-12T22:00:00+00:00","title":"Fix data visualization in Tock user interface","description":"## Description\r\n\r\nTock is a simple time tracking app that 18F employees use to report their time on a weekly basis. The application also provides some light data visualization tools that allow users to look at what users have logged time to a project, as well as what projects to which a user has logged time. This issue seeks to fix the current visualization layout, which has become [unreadable](https://github.com/18F/tock/blob/master/tock/tock/static/img/project_mess.jpg), by limiting the number of reporting periods that are displayed to the most-recent five time periods.\r\n\r\n## Auction rules \r\n\r\nRegistered users on micropurchase.18f.gov may bid to deliver the requirements in this auction. The lowest bidder at the time the auction closes shall receive the award. The awarded bidder shall have five business days after notice of award to deliver the requirements. Upon successful completion of the requirements, 18F shall pay the winning bidder.\r\n\r\n## Application-specific acceptance criteria\r\n\r\n- Limit the number of time periods displayed in the table in the project detail page (`/projects/:id`) to the most-recent five time periods.\r\n\r\n## General acceptance criteria\r\n\r\n- B or better code climate grade and 90% or higher test coverage for all modifications.\r\n- Tests adequately cover any new functionality.\r\n- Tests run on Travis-CI and do not break the build.\r\n- New features do not degrade accessibility (use pa11y/HTML Code Sniffer).\r\n\r\n## Resources\r\n\r\nInstructions for installing Tock locally and loading sample data: https://github.com/18F/tock/blob/master/README.md#getting-started\r\n\r\n## Deliverables\r\n\r\nA single pull request submitted to https://github.com/18F/tock with clear, descriptive commits that satisfy all of the above acceptance criteria.\r\n","id":3,"bids":[{"bidder_id":36,"auction_id":3,"amount":347,"created_at":"2016-01-12T21:59:03+00:00","updated_at":"2016-01-12T21:59:03+00:00","id":87,"bidder":{"github_id":"1060893","duns_number":"080037478","name":"brendan sudol","sam_account":true,"created_at":"2015-12-29T17:39:36+00:00","updated_at":"2016-01-11T00:44:39+00:00","id":36}},{"bidder_id":52,"auction_id":3,"amount":401,"created_at":"2016-01-12T20:02:55+00:00","updated_at":"2016-01-12T20:02:55+00:00","id":84,"bidder":{"github_id":"445875","duns_number":"08-011-5718","name":"Joshua Tauberer","sam_account":true,"created_at":"2015-12-30T13:59:52+00:00","updated_at":"2016-01-11T17:52:30+00:00","id":52}},{"bidder_id":69,"auction_id":3,"amount":474,"created_at":"2016-01-11T21:32:01+00:00","updated_at":"2016-01-11T21:32:01+00:00","id":58,"bidder":{"github_id":"15251877","duns_number":"079859219","name":"Daniel Connery","sam_account":true,"created_at":"2016-01-05T18:43:53+00:00","updated_at":"2016-01-11T03:15:51+00:00","id":69}},{"bidder_id":52,"auction_id":3,"amount":475,"created_at":"2016-01-11T18:56:17+00:00","updated_at":"2016-01-11T18:56:17+00:00","id":49,"bidder":{"github_id":"445875","duns_number":"08-011-5718","name":"Joshua Tauberer","sam_account":true,"created_at":"2015-12-30T13:59:52+00:00","updated_at":"2016-01-11T17:52:30+00:00","id":52}},{"bidder_id":36,"auction_id":3,"amount":499,"created_at":"2016-01-11T18:47:19+00:00","updated_at":"2016-01-11T18:47:19+00:00","id":45,"bidder":{"github_id":"1060893","duns_number":"080037478","name":"brendan sudol","sam_account":true,"created_at":"2015-12-29T17:39:36+00:00","updated_at":"2016-01-11T00:44:39+00:00","id":36}},{"bidder_id":69,"auction_id":3,"amount":999,"created_at":"2016-01-11T18:10:23+00:00","updated_at":"2016-01-11T18:10:23+00:00","id":39,"bidder":{"github_id":"15251877","duns_number":"079859219","name":"Daniel Connery","sam_account":true,"created_at":"2016-01-05T18:43:53+00:00","updated_at":"2016-01-11T03:15:51+00:00","id":69}},{"bidder_id":52,"auction_id":3,"amount":1000,"created_at":"2016-01-11T18:09:51+00:00","updated_at":"2016-01-11T18:09:51+00:00","id":38,"bidder":{"github_id":"445875","duns_number":"08-011-5718","name":"Joshua Tauberer","sam_account":true,"created_at":"2015-12-30T13:59:52+00:00","updated_at":"2016-01-11T17:52:30+00:00","id":52}}],"created_at":"2016-01-11T16:21:23+00:00","updated_at":"2016-01-11T16:21:23+00:00","summary":"Tock is a simple time tracking app that 18F employees use to report their time on a weekly basis. The application also provides some light data visualization tools that allow users to look at what users have logged time to a project, as well as what projects to which a user has logged time. This issue seeks to fix the current visualization layout, which has become [unreadable](https://github.com/18F/tock/blob/master/tock/tock/static/img/project_mess.jpg), by limiting the number of reporting periods that are displayed to the most-recent five time periods."},{"issue_url":"https://github.com/18F/micropurchase/issues/216","github_repo":"https://github.com/18F/micropurchase/","start_price":3500,"start_datetime":"2016-01-11T18:00:00+00:00","end_datetime":"2016-01-12T22:00:00+00:00","title":"Fix spacing in micro-purchase auction details page","description":"## Description \r\n\r\nmicropurchase.18f.gov is the site you are using right now to view and bid on micro-purchase opportunities with 18F. This issue seeks to improve the UI by fixing vertical spacing on the auction details page.\r\n\r\n## Auction rules \r\n\r\nRegistered users on micropurchase.18f.gov may bid to deliver the requirements in this auction. The lowest bidder at the time the auction closes shall receive the award. The awarded bidder shall have five business days after notice of award to deliver the requirements. Upon successful completion of the requirements, 18F shall pay the winning bidder.\r\n\r\n## Application-specific acceptance criteria\r\n\r\n- The vertical spacing between elements in the auction description of the auction details page (controller: AuctionsController, action: index) is significantly reduced (e.g. the spacing should be no greater than 30px).\r\n\r\n## General acceptance criteria \r\n\r\n- B or better code climate grade and 90% or higher test coverage for all modifications.\r\n- Tests adequately cover any new functionality.\r\n- Tests run on Travis-CI and do not break the build.\r\n- New features do not degrade accessibility (use pa11y/HTML Code Sniffer).\r\n\r\n## Resources\r\n\r\n- https://github.com/18F/micropurchase/issues/216\r\n\r\n## Deliverables\r\n\r\nA single pull request submitted to https://github.com/18F/micropurchase with clear, descriptive commits that satisfy all of the above acceptance criteria.\r\n","id":6,"bids":[{"bidder_id":30,"auction_id":6,"amount":350,"created_at":"2016-01-12T21:59:53+00:00","updated_at":"2016-01-12T21:59:53+00:00","id":90,"bidder":{"github_id":"387035","duns_number":"080033077","name":"Christian G. Warden","sam_account":true,"created_at":"2015-12-29T16:14:47+00:00","updated_at":"2016-01-11T03:15:25+00:00","id":30}},{"bidder_id":36,"auction_id":6,"amount":352,"created_at":"2016-01-12T21:59:27+00:00","updated_at":"2016-01-12T21:59:27+00:00","id":89,"bidder":{"github_id":"1060893","duns_number":"080037478","name":"brendan sudol","sam_account":true,"created_at":"2015-12-29T17:39:36+00:00","updated_at":"2016-01-11T00:44:39+00:00","id":36}},{"bidder_id":30,"auction_id":6,"amount":400,"created_at":"2016-01-12T21:47:02+00:00","updated_at":"2016-01-12T21:47:02+00:00","id":86,"bidder":{"github_id":"387035","duns_number":"080033077","name":"Christian G. Warden","sam_account":true,"created_at":"2015-12-29T16:14:47+00:00","updated_at":"2016-01-11T03:15:25+00:00","id":30}},{"bidder_id":52,"auction_id":6,"amount":401,"created_at":"2016-01-12T20:01:53+00:00","updated_at":"2016-01-12T20:01:53+00:00","id":83,"bidder":{"github_id":"445875","duns_number":"08-011-5718","name":"Joshua Tauberer","sam_account":true,"created_at":"2015-12-30T13:59:52+00:00","updated_at":"2016-01-11T17:52:30+00:00","id":52}},{"bidder_id":30,"auction_id":6,"amount":495,"created_at":"2016-01-12T15:44:10+00:00","updated_at":"2016-01-12T15:44:10+00:00","id":80,"bidder":{"github_id":"387035","duns_number":"080033077","name":"Christian G. Warden","sam_account":true,"created_at":"2015-12-29T16:14:47+00:00","updated_at":"2016-01-11T03:15:25+00:00","id":30}},{"bidder_id":69,"auction_id":6,"amount":500,"created_at":"2016-01-12T14:45:27+00:00","updated_at":"2016-01-12T14:45:27+00:00","id":77,"bidder":{"github_id":"15251877","duns_number":"079859219","name":"Daniel Connery","sam_account":true,"created_at":"2016-01-05T18:43:53+00:00","updated_at":"2016-01-11T03:15:51+00:00","id":69}},{"bidder_id":52,"auction_id":6,"amount":501,"created_at":"2016-01-12T13:12:34+00:00","updated_at":"2016-01-12T13:12:34+00:00","id":74,"bidder":{"github_id":"445875","duns_number":"08-011-5718","name":"Joshua Tauberer","sam_account":true,"created_at":"2015-12-30T13:59:52+00:00","updated_at":"2016-01-11T17:52:30+00:00","id":52}},{"bidder_id":30,"auction_id":6,"amount":799,"created_at":"2016-01-12T00:25:39+00:00","updated_at":"2016-01-12T00:25:39+00:00","id":73,"bidder":{"github_id":"387035","duns_number":"080033077","name":"Christian G. Warden","sam_account":true,"created_at":"2015-12-29T16:14:47+00:00","updated_at":"2016-01-11T03:15:25+00:00","id":30}},{"bidder_id":52,"auction_id":6,"amount":800,"created_at":"2016-01-11T22:16:44+00:00","updated_at":"2016-01-11T22:16:44+00:00","id":71,"bidder":{"github_id":"445875","duns_number":"08-011-5718","name":"Joshua Tauberer","sam_account":true,"created_at":"2015-12-30T13:59:52+00:00","updated_at":"2016-01-11T17:52:30+00:00","id":52}},{"bidder_id":69,"auction_id":6,"amount":1000,"created_at":"2016-01-11T22:15:32+00:00","updated_at":"2016-01-11T22:15:32+00:00","id":70,"bidder":{"github_id":"15251877","duns_number":"079859219","name":"Daniel Connery","sam_account":true,"created_at":"2016-01-05T18:43:53+00:00","updated_at":"2016-01-11T03:15:51+00:00","id":69}},{"bidder_id":52,"auction_id":6,"amount":1200,"created_at":"2016-01-11T22:14:13+00:00","updated_at":"2016-01-11T22:14:13+00:00","id":68,"bidder":{"github_id":"445875","duns_number":"08-011-5718","name":"Joshua Tauberer","sam_account":true,"created_at":"2015-12-30T13:59:52+00:00","updated_at":"2016-01-11T17:52:30+00:00","id":52}},{"bidder_id":69,"auction_id":6,"amount":1499,"created_at":"2016-01-11T22:12:16+00:00","updated_at":"2016-01-11T22:12:16+00:00","id":66,"bidder":{"github_id":"15251877","duns_number":"079859219","name":"Daniel Connery","sam_account":true,"created_at":"2016-01-05T18:43:53+00:00","updated_at":"2016-01-11T03:15:51+00:00","id":69}},{"bidder_id":30,"auction_id":6,"amount":1500,"created_at":"2016-01-11T22:11:18+00:00","updated_at":"2016-01-11T22:11:18+00:00","id":65,"bidder":{"github_id":"387035","duns_number":"080033077","name":"Christian G. Warden","sam_account":true,"created_at":"2015-12-29T16:14:47+00:00","updated_at":"2016-01-11T03:15:25+00:00","id":30}},{"bidder_id":52,"auction_id":6,"amount":1501,"created_at":"2016-01-11T22:06:11+00:00","updated_at":"2016-01-11T22:06:11+00:00","id":64,"bidder":{"github_id":"445875","duns_number":"08-011-5718","name":"Joshua Tauberer","sam_account":true,"created_at":"2015-12-30T13:59:52+00:00","updated_at":"2016-01-11T17:52:30+00:00","id":52}},{"bidder_id":30,"auction_id":6,"amount":1998,"created_at":"2016-01-11T22:02:59+00:00","updated_at":"2016-01-11T22:02:59+00:00","id":62,"bidder":{"github_id":"387035","duns_number":"080033077","name":"Christian G. Warden","sam_account":true,"created_at":"2015-12-29T16:14:47+00:00","updated_at":"2016-01-11T03:15:25+00:00","id":30}},{"bidder_id":69,"auction_id":6,"amount":1999,"created_at":"2016-01-11T21:22:33+00:00","updated_at":"2016-01-11T21:22:33+00:00","id":56,"bidder":{"github_id":"15251877","duns_number":"079859219","name":"Daniel Connery","sam_account":true,"created_at":"2016-01-05T18:43:53+00:00","updated_at":"2016-01-11T03:15:51+00:00","id":69}},{"bidder_id":52,"auction_id":6,"amount":2000,"created_at":"2016-01-11T18:06:52+00:00","updated_at":"2016-01-11T18:06:52+00:00","id":33,"bidder":{"github_id":"445875","duns_number":"08-011-5718","name":"Joshua Tauberer","sam_account":true,"created_at":"2015-12-30T13:59:52+00:00","updated_at":"2016-01-11T17:52:30+00:00","id":52}}],"created_at":"2016-01-11T16:44:34+00:00","updated_at":"2016-01-11T16:44:34+00:00","summary":"micropurchase.18f.gov is the site you are using right now to view and bid on micro-purchase opportunities with 18F. This issue seeks to improve the UI by fixing vertical spacing on the auction details page."},{"issue_url":"https://github.com/18F/micropurchase/issues/217","github_repo":"https://github.com/18F/micropurchase/","start_price":3500,"start_datetime":"2016-01-11T18:00:00+00:00","end_datetime":"2016-01-12T22:00:00+00:00","title":"Display upcoming auction start time in micro-purchase","description":"## Description \r\n\r\nmicropurchase.18f.gov is the site you are using right now to view and bid on micro-purchase opportunities with 18F. This issue seeks to improve the UI by displaying the auction start time on several pages of the site.\r\n\r\n## Auction rules \r\n\r\nRegistered users on micropurchase.18f.gov may bid to deliver the requirements in this auction. The lowest bidder at the time the auction closes shall receive the award. The awarded bidder shall have five business days after notice of award to deliver the requirements. Upon successful completion of the requirements, 18F shall pay the winning bidder.\r\n\r\n## Application-specific acceptance criteria\r\n\r\n- In the auctions#index view, the auction start time is displayed next to the auction end time\r\n- In the auctions#show view, the auction start time is displayed next to the auction end time in the bid info box.\r\n\r\n## General acceptance criteria \r\n\r\n- B or better code climate grade and 90% or higher test coverage for all modifications.\r\n- Tests adequately cover any new functionality.\r\n- Tests run on Travis-CI and do not break the build.\r\n- New features do not degrade accessibility (use pa11y/HTML Code Sniffer).\r\n\r\n## Resources\r\n\r\n- https://github.com/18F/micropurchase/issues/217\r\n\r\n## Deliverables\r\n\r\nA single pull request submitted to https://github.com/18F/micropurchase with clear, descriptive commits that satisfy all of the above acceptance criteria.","id":7,"bids":[{"bidder_id":49,"auction_id":7,"amount":399,"created_at":"2016-01-12T21:59:14+00:00","updated_at":"2016-01-12T21:59:14+00:00","id":88,"bidder":{"github_id":"688980","duns_number":"313210696","name":"Mila Frerichs","sam_account":true,"created_at":"2015-12-30T06:05:37+00:00","updated_at":"2016-01-11T03:15:33+00:00","id":49}},{"bidder_id":30,"auction_id":7,"amount":400,"created_at":"2016-01-12T21:46:36+00:00","updated_at":"2016-01-12T21:46:36+00:00","id":85,"bidder":{"github_id":"387035","duns_number":"080033077","name":"Christian G. Warden","sam_account":true,"created_at":"2015-12-29T16:14:47+00:00","updated_at":"2016-01-11T03:15:25+00:00","id":30}},{"bidder_id":52,"auction_id":7,"amount":401,"created_at":"2016-01-12T19:58:19+00:00","updated_at":"2016-01-12T19:58:19+00:00","id":82,"bidder":{"github_id":"445875","duns_number":"08-011-5718","name":"Joshua Tauberer","sam_account":true,"created_at":"2015-12-30T13:59:52+00:00","updated_at":"2016-01-11T17:52:30+00:00","id":52}},{"bidder_id":30,"auction_id":7,"amount":495,"created_at":"2016-01-12T15:44:44+00:00","updated_at":"2016-01-12T15:44:44+00:00","id":81,"bidder":{"github_id":"387035","duns_number":"080033077","name":"Christian G. Warden","sam_account":true,"created_at":"2015-12-29T16:14:47+00:00","updated_at":"2016-01-11T03:15:25+00:00","id":30}},{"bidder_id":69,"auction_id":7,"amount":500,"created_at":"2016-01-12T14:45:47+00:00","updated_at":"2016-01-12T14:45:47+00:00","id":78,"bidder":{"github_id":"15251877","duns_number":"079859219","name":"Daniel Connery","sam_account":true,"created_at":"2016-01-05T18:43:53+00:00","updated_at":"2016-01-11T03:15:51+00:00","id":69}},{"bidder_id":52,"auction_id":7,"amount":501,"created_at":"2016-01-12T13:13:33+00:00","updated_at":"2016-01-12T13:13:33+00:00","id":76,"bidder":{"github_id":"445875","duns_number":"08-011-5718","name":"Joshua Tauberer","sam_account":true,"created_at":"2015-12-30T13:59:52+00:00","updated_at":"2016-01-11T17:52:30+00:00","id":52}},{"bidder_id":30,"auction_id":7,"amount":600,"created_at":"2016-01-12T00:25:25+00:00","updated_at":"2016-01-12T00:25:25+00:00","id":72,"bidder":{"github_id":"387035","duns_number":"080033077","name":"Christian G. Warden","sam_account":true,"created_at":"2015-12-29T16:14:47+00:00","updated_at":"2016-01-11T03:15:25+00:00","id":30}},{"bidder_id":52,"auction_id":7,"amount":602,"created_at":"2016-01-11T22:15:14+00:00","updated_at":"2016-01-11T22:15:14+00:00","id":69,"bidder":{"github_id":"445875","duns_number":"08-011-5718","name":"Joshua Tauberer","sam_account":true,"created_at":"2015-12-30T13:59:52+00:00","updated_at":"2016-01-11T17:52:30+00:00","id":52}},{"bidder_id":69,"auction_id":7,"amount":684,"created_at":"2016-01-11T22:13:04+00:00","updated_at":"2016-01-11T22:13:04+00:00","id":67,"bidder":{"github_id":"15251877","duns_number":"079859219","name":"Daniel Connery","sam_account":true,"created_at":"2016-01-05T18:43:53+00:00","updated_at":"2016-01-11T03:15:51+00:00","id":69}},{"bidder_id":30,"auction_id":7,"amount":685,"created_at":"2016-01-11T22:04:54+00:00","updated_at":"2016-01-11T22:04:54+00:00","id":63,"bidder":{"github_id":"387035","duns_number":"080033077","name":"Christian G. Warden","sam_account":true,"created_at":"2015-12-29T16:14:47+00:00","updated_at":"2016-01-11T03:15:25+00:00","id":30}},{"bidder_id":49,"auction_id":7,"amount":698,"created_at":"2016-01-11T21:59:45+00:00","updated_at":"2016-01-11T21:59:45+00:00","id":61,"bidder":{"github_id":"688980","duns_number":"313210696","name":"Mila Frerichs","sam_account":true,"created_at":"2015-12-30T06:05:37+00:00","updated_at":"2016-01-11T03:15:33+00:00","id":49}},{"bidder_id":69,"auction_id":7,"amount":699,"created_at":"2016-01-11T21:30:49+00:00","updated_at":"2016-01-11T21:30:49+00:00","id":57,"bidder":{"github_id":"15251877","duns_number":"079859219","name":"Daniel Connery","sam_account":true,"created_at":"2016-01-05T18:43:53+00:00","updated_at":"2016-01-11T03:15:51+00:00","id":69}},{"bidder_id":60,"auction_id":7,"amount":700,"created_at":"2016-01-11T19:59:30+00:00","updated_at":"2016-01-11T19:59:30+00:00","id":55,"bidder":{"github_id":"319471","duns_number":"148361251","name":"Geoff Harcourt","sam_account":true,"created_at":"2016-01-04T13:35:21+00:00","updated_at":"2016-01-11T03:15:47+00:00","id":60}},{"bidder_id":52,"auction_id":7,"amount":701,"created_at":"2016-01-11T18:56:57+00:00","updated_at":"2016-01-11T18:56:57+00:00","id":50,"bidder":{"github_id":"445875","duns_number":"08-011-5718","name":"Joshua Tauberer","sam_account":true,"created_at":"2015-12-30T13:59:52+00:00","updated_at":"2016-01-11T17:52:30+00:00","id":52}},{"bidder_id":36,"auction_id":7,"amount":799,"created_at":"2016-01-11T18:49:33+00:00","updated_at":"2016-01-11T18:49:33+00:00","id":46,"bidder":{"github_id":"1060893","duns_number":"080037478","name":"brendan sudol","sam_account":true,"created_at":"2015-12-29T17:39:36+00:00","updated_at":"2016-01-11T00:44:39+00:00","id":36}},{"bidder_id":69,"auction_id":7,"amount":1499,"created_at":"2016-01-11T18:11:58+00:00","updated_at":"2016-01-11T18:11:58+00:00","id":41,"bidder":{"github_id":"15251877","duns_number":"079859219","name":"Daniel Connery","sam_account":true,"created_at":"2016-01-05T18:43:53+00:00","updated_at":"2016-01-11T03:15:51+00:00","id":69}},{"bidder_id":52,"auction_id":7,"amount":1500,"created_at":"2016-01-11T18:08:23+00:00","updated_at":"2016-01-11T18:08:23+00:00","id":35,"bidder":{"github_id":"445875","duns_number":"08-011-5718","name":"Joshua Tauberer","sam_account":true,"created_at":"2015-12-30T13:59:52+00:00","updated_at":"2016-01-11T17:52:30+00:00","id":52}},{"bidder_id":49,"auction_id":7,"amount":2000,"created_at":"2016-01-11T18:03:50+00:00","updated_at":"2016-01-11T18:03:50+00:00","id":31,"bidder":{"github_id":"688980","duns_number":"313210696","name":"Mila Frerichs","sam_account":true,"created_at":"2015-12-30T06:05:37+00:00","updated_at":"2016-01-11T03:15:33+00:00","id":49}}],"created_at":"2016-01-11T17:08:53+00:00","updated_at":"2016-01-11T17:08:53+00:00","summary":"micropurchase.18f.gov is the site you are using right now to view and bid on micro-purchase opportunities with 18F. This issue seeks to improve the UI by displaying the auction start time on several pages of the site."}]}
# import libraries
import json
import statistics
import datetime
def convert_time(timeStr):
""" convert_time
A helper function to convert a ISO datetime string into a datetime object
@params timeStr - a datetime string in isoformat
@returns datetime object
"""
return datetime.datetime.strptime(timeStr, "%Y-%m-%dT%H:%M:%S+00:00")
# get the auctions
with open('auctions.json', 'r') as fp:
auctions = json.load(fp)["auctions"]
results = []
medians = []
# loop through auctions
auctions = [auction for auction in auctions if auction["id"] <= 16]
for auction in auctions:
# get the opening and closing times
opening_time = convert_time(auction["start_datetime"])
closing_time = convert_time(auction["end_datetime"])
auction_list = []
normalized_list = []
# for each bid
for bid in auction["bids"]:
# get the bid time
bid_time = convert_time(bid["created_at"])
# normalize to the range of opening and closing
normalized = (bid_time - opening_time).total_seconds() / (closing_time - opening_time).total_seconds()
auction_list.append(auction["id"])
normalized_list.append(normalized)
results.append((auction_list, normalized_list))
medians.append((auction["id"], statistics.median(normalized_list)))
for median in medians:
print(median)
auction_id normalized_bid_time
13 0.7987037037037037
11 0.9992881944444445
12 0.5365190972222222
15 0.9990914351851852
16 0.4361226851851852
14 0.9550405092592592
9 0.3765625
10 0.06049768518518518
8 0.026631944444444444
5 0.040049603174603175
4 0.020679563492063492
3 0.03350198412698413
6 0.15281746031746032
7 0.14820436507936507
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment