2018-12-09 Notes

home / log / 2018-12-09-notes


Containerized travis builds


terraform commit history


vinyl stickers for putting somewhere physically at a track denoting slow/neutral/fast

color pallette i like: https://www.colorcombos.com/color-schemes/375/ColorCombo375.html

stickermule looks nice. 100 stickers x 3 designs. 1x1” circles. $118 total.

quantity per 3 designs total per unit 50 $105.00 $0.70 100 $118.00 $0.39

rectangle geometry type

beverly hills high school is an interesting one. is there a way i can get a better geometry label? And is there a way i can get an accurate straights vs. turns measurements?


37.84m x 2 = 75.68

68.43m x 2 = 136.86

straights 212.54

turns 187.46

a’ 48.095

b’ 32.000

yields: - turn distance: 302.19 - straight distance: 97.81


misc links

track race ledger

on data.tomhummel.com

Then table of all 1500m races with columns.

  1. Date
  2. Time
  3. Finish time
  4. 400m split
  5. 800m split
  6. 1200m split
  7. 1500m split
  8. Weather
  9. Official Results link
  10. Meet name
  11. Venue name w/ link
  12. Speed badge with link to page
  13. Elevation badge
  14. Heat size
  15. Finish position
  16. Notes

Enhancements, structured data

Schema.org metadata

track notes

ops website incept notes


Leave a build payload in main website as is ci.json

Record build payload and deploy payload. Push to s3 bucket before finish. Very final step

Trigger secondary job which rebuilds ops website based on contents of s3 bucket

Travis pipeline, triggered job

Or lambda job triggered by s3 event. Concurrency 1 based on arrival of new build or deploy in the s3 bucket.

This looks promising: https://docs.travis-ci.com/user/build-stages

Ops site will contain build history, deploy history, and review apps

Would be good to get the build sha into the review app url, which I tried to do before. Which I think I can do I just have to script a deploy in the Pr build. Remove the existing deploy block. Do the deploy in the same script where I add the Pr comment. Needs an install of aws cli. This has to happen in the Pr build otherwise I don’t have the Pr number to build the url of the pr to comment on. The sha isn’t meaningful since it is a transient Pr sha but it will result in distinct urls and meaningful Pr comments which will continue to be usable after a subsequent Pr build happens. In case you want to review the previous iterations. Is there really no link between branch sha and Pr sha?

My ops dashboard needs to render everything as absolutes. No reference to the current date the page is being viewed. Relative dates could be a future enhancement with JavaScript. Just state the facts

The ops build will pull down all of the build/deploy/review data in the s3 bucket. Then a hugo config will build the site off of that data.

Single and list templates * Build * Review apps * Review app deploys (nested) if no sha in review app url * Deploy

Index * Recent builds * Recent review apps * Recent deploys

Analytics * Activity summary by week, month, year * Duration trends * Success/failure trends

Current build produces all data, and prod, staging deployments. Into a new bucket. Laps run ops data bucket. Turn bucket versioning on.

Secondary Travis stage build consumes from this bucket, builds ops site, pushes ops site to s3 bucket website. Eventually, remove ci.json from main website. Footer sha on home page links to ops website

Uptime robot public widget. Or pingdom, https://stats.uptimerobot.com/68ZQYuzAx Status.laps.run cname record Ssl https://blog.uptimerobot.com/tag/status-page/

Ops.laps.run for my data Status and ops links on footer

Status updates rss auto tweet? Deployments rss to twitter


Get a basic site skeleton in place with a few of each data files pulled down. Sync down the data bucket to data dir See site locally Create bucket, website Create policy Create dns Deploy site manually See a few iterations go

Stretch create time series data datasource for grafana https://grafana.com/plugins/grafana-simple-json-datasource The simple json api needs to be able to respond to queries defined in a post body. That will be tough or impossible to do. Querystring might be possible If you can precompile queries based on common boundaries like days. Then limit the filtering you can do, it might be possible if you can get grafana to query with querystring or path. Holding for now

What cloudwatch metrics could be pulled in?

Csv load to google sheet. Pull in google sheet data via grafana or another dashboarding tool.

page speed

report. When will I need to paginate? Hopefully not for a while. Key off my page sizes.


Time to revisit. What candidate categories?

Can we derive taxonomies? Like bucket groups by elevation range based on an elevation value?

Most of the fields I’ve seen involve a single specific value be framed as part of a list of values

Glossary copy



Probably the best way I can grow viewership is to engage on social

Follow track teams, athletes, brands

Reply to tweets referencing venues with a link to my speed page

I want to have the physics component done by the start of next outdoor track season. Speed ratings by lane for 200/400m.

Setup insta Setup Facebook

Follow teams. Reply after meet results

Reply to flotrack.

Setup a calendar of meets to cover. Saturdays run down my checklist

latest: post to instagram with a screenshot of the new track, post to twitter, and facebook page via instagram app.

other misc notes


I think my goal would be to maintain translations for key vocabulary, glossary terms. Journals would not be translated. glossary definitions could be translated be me or others


laps.run as a testbed for a11y

Specification https://www.w3.org/TR/WCAG21/

How to do an accessibility review

Lighthouse chrome dev tools audits gives a decent scan

Chrome Extensions, which give even more detail: - axe - wave

interesting, structural things to fix on the page

a11y facets


Minimal static theme

General values


https://teespring.com/about Sticker mule

Sticker mule links for fast/neutral/slow could link to top-level pages for those.

A definition followed by a table of tracks in that category


This track Is ranked

Fast/neutral/slow is a fixed quality based on speed rating tiers/ranges, not on the percentile they happen to fall into currently.

How to handle tracks shorter than 400 (franklin field)?

this feels similar to how we build speed rating for list views. we build a slice of tracks enriched with speed rating. then order by.

and this is related to how i can get country lists, which i still havent solved.

the key is that i want the ranking data available on the single.html view.

my first attempt will be to do the ranking for a single track in the single.html layout.




My hunch is coefficient of friction on an all weather track in metal spikes is 1

dec 8 notes

things to track on all builds:

find public/ -name '*.html' | xargs wc -l | grep total
  329716 total

compare line count to count on current production. shouldn’t be greater than x percent.