• Twitch is the external chat client you can embed. I always forget the name so I’m typing it here again.
    • Gbro pooped on the carpet again. The standard pace was too fast, so about 6 weeks ago I slowed it down considerably. I duct taped the center hole fully, then opened it up about half a centimeter every week. Even this proved too much – we’re in the 1% here! Holes make cats forget years of bathroom recognition. Giving up and going back to the dome.
    • Did some research in Traeger and Yoder smokers.
    • Went to Bludso’s bbq in Hollywood, only a few blocks from Allie’s house. Supposedly has some of the best BBQ in LA. I got 1/4lb brisket point, a chicken quarter of dark meat, and 3 spare pork ribs. Overall, I give it a 7. The chicken was the best. The brisket wasn’t tender enough for a point, and the bark was underformed. Very small smoke ring. The ribs had great flavor but could have been silkier off the bone. They probably didn’t crutch.
    • Filled out two march madness brackets, one for a blake street league and one with the spacex dudes.
    • You can use the <label for=”id” … to make the text on an input checkbox clickable. You can also do it with javascript click events, obviously.
    • SELinux is security-enhanced linux. It’s an add-on suite of tools to add security, like disabling network access, etc. It’s disabled by default.
    • Besides nginx logs and other app targets, you can always check /var/log/syslog. I forget the obvious sometimes.
    • UFW BLOCK in your syslog is ufw blocking a connection, as it’s supposed to. UFW is uncomplicated firewall, ubuntu’s built-in.
    • Remember that journalctl also has logs, different from the ones in /var/log.
    • If you type `curl icanhazip.com` you can get your ipv6 address at the command line. Pass -4 for ipv4.
    • If you want to empty a file but keep its location and permissions, run `cat /dev/null > /file/you/want/to/wipe-out`.
    • SC
      • Added winner col to the matchup table and points col to the pick table. Migrated and upgraded.
      • Added leaderboard view! Updated layout, etc.
      • Created a ticket to make the matchups and picks views piggyback on the serverside calculation of winners, rather than doing it clientside: https://github.com/brianmahlstedt/supercontest/issues/33.
      • Wrote Python functions to parse Petty’s excel master. One adds (registers) all the users to the User table. The other scrapes all the sheets for each week and adds the picks.
      • Deleted myself and the example users before adding all the 2018 players.
      • Remember, bad transactions will require a rollback() before the same session can be used properly again.
      • Had to do some reverse engineering to figure out how Petty handled duplicate submissions (eg. 5 picks twice) and >5 pick single submissions (he chose the last five, not the first five). This won’t be a problem for the app since I enforce it properly, but in order to be accurate in backreference, I made them match.
      • PR, merged, closed ticket #30. Closed the MVP milestone! Moving on to some final items in the next milestone before sending it out for beta.
      • Researched and closed most of the remaining tickets in the “before 2019 season” milestone.
      • Got familiar with flask-assets and flask-cache, for bundling static files and for making expensive routes only run once every N time periods.
      • Spent HOURS trying to resolve issues on the production server. ERR_CONNECTION_REFUSED, site can’t be reached. Thought it was nginx, uwsgi, some of my source changes, DNS, digitalocean, reboot, the chrome cache clientside, much more. Checked all logs and many other attempted solutions. Ultimately was certs. Ugh. Just run `sudo certbot –nginx -d southbaysupercontest.com -d www.southbaysupercontest.com` and request/renew new certs (choosing 2 for the https redirect as usual).
      • Some other changes on the production server: Installed xlrd into the venv (which you still have to do with any env changes -_-) and symlinked the service files (which you don’t have to do anymore, the links will stay up to date now). Docker will make all this a lot easier.
      • Sent the app to the guys in whatsapp for limited beta testing before forwarding to the whole sbsc email chain.