• Tuesday

    • 314th day without snowfall. 4th largest snow drought in nyc history.
    • Tons of private work today.
    • SEC declared that Gemini Earn violated securities law. You’re lending your assets (crypto) for interest payments (yield), which is technically the offering of an unregistered security (according to the SEC).
      • “The investment of money in a common enterprise with a reasonable expectation of profits to be derived from the efforts of others” = security. Everything is a security.
    • Cold weather makes our noses run. This is because cold air is dryer. Lower temp means more moisture condenses out of the air, leaving less moisture in the air. Dryer air means our nose produces more mucus to keep it moist.
    • 3AC founders Su Zhu and Kyle Davies are starting a new venture: an exchange (called GTX) for crypto bankruptcy claims (lol).
    • Got the Fidelity 401k check, sent to MS to rollover in their prepaid fedex envelope.
    • SBSC. Finished the backfill, 2014-2017. https://gitlab.com/bmahlstedt/supercontest/-/issues/172.
      • One migration for backfills to the seasons and weeks table.
      • One migration for backfills to the lines and scores table.
      • One migration to add old users.
      • One migration for backfills to the picks table.
  • Monday

    • Did a little bit of this yesterday too, but focused mostly on house stuff (plants, aquarium, mealprep, smoothies, bacon, gym, clean, laundry, etc).
    • Adult neurogenesis is real. We create new neurons. Neuroplasticity is great. We can learn, remember, change, whatever.
    • Considering SXSW for horror this year, Mar 10-19, Austin.
    • Little deepdive in generated columns for postgres.
      • Came out in postgres 12 (2019).
      • You can have one column be completely dependent on others. Calculates when the depended columns are written (on insert) and recalculates every time the depended columns are updated.
      • You can think manifest this in two ways.
        • Stored. You can have the generated column written to disk (on every insert and update, as mentioned), just like a normal column. This is the same as a materialized view, but for cols instead of tables.
        • Virtual. You can have the generated column only be calculated when it is read (during a query). This is the same a regular view, but for cols instead of tables.
      • Right now for SBSC, I do this in python. Calculations of coverer (from other scores cols) and points (from other picks cols) are done in the app. This is very inefficient. And it’s not deterministic. They’re only written and read on app events, rather than direct write/read operations on the dependent data. Created ticket to fix: https://gitlab.com/bmahlstedt/supercontest/-/issues/174
    • SBSC.
      • Added some fake dates to the seasons and weeks tables to simulate offseason, preseason, and regseason (I had already tested yesterday’s changes against postseason).
      • Created a gdrive folder for all sbsc content (not source, not in repo – this is some old gsheets and gdocs).
      • https://gitlab.com/bmahlstedt/supercontest/-/issues/172
        • Backfilled all the missing 2019 data. Finally.
        • Basically a long manual ETL. Grabbed data from some public sources, butchered it in excel to match the format expect by my commit() functions, then created an alembic migration to load everything.
        • Had to add a ton of functions. All details on ticket.
        • Everything stored in alembic migrations.