• Appraisal. Also spoke with the Redondo PD.
    • Sololearn. Refresher on details of Lambda, Map (apply func to iterable), Filter (pass args in iterable to function, return item if func returns true), itertools, etc.
    • Remember, the three main MUTABLE datatypes in Python are list, set, dict. The others are immutable (str, int, float, tuple, etc). You can mirror another variable to a string, but it actually just copies the value, it doesn’t point to the same id underneath. Better for efficiency, hashing, etc.
    • Generators are obviously more efficient. Lower memory footprint. Use when you want to iteratively return from a function.
    • PPA = personal package archive. You can add these as repositories and apt-get from them.
    • Certs
      • Apt updated on the supercontest server because Google changed its Origin.
      • TLS-SNI-01 is reaching end of life (at least for Let’s Encrypt support). I updated the Certbot version on the supercontest server (0.28.0 now) and renewed the certs.
    • SSH
      • AddKeysToAgent yes in .ssh/config means that every key you use will be added to the agent. Very convenient to avoid -i all the time.
      • You can also ssh into a hostname, like ssh southbaysupercontest.com.
      • You can also create an alias in .ssh/config. Now you can just do `ssh sc`.
    • Ran through a whole tutorial of graphql: https://medium.freecodecamp.org/how-to-set-up-a-graphql-server-using-node-js-express-mongodb-52421b73f474.
      • Registered with mLab (db-as-a-service for mongo) and created a db.
      • Npm for the javascript package.
      • Mongoose to connect to the mongo db I created with mLabGr.
      • Express as the web framework (like flask).
      • Nodemon to start the app in restart-after-changes-mode (debug=True).
      • GraphQL allows you to define queries (reads) and mutations (writes). Then the user can add rows, change cols, fetch data, etc! All from the browser.
      • GraphiQL is an interactive IDE that runs in the browser, allowing users to explore the db.
    • COBRA is basically 439/42/11/7 for Health/Dental/Lyra/Vision. Lyra is mental health stuff.
    • Given my current situation, I’d only get Health, so COBRA is $440/month.
    • Searching healthcare.gov and discoverymarketplace, there are a few other plans: Kaiser, Blue Shield, other big ones, as well as smaller ones like Oscar and Health net.
    • The cheapest private plan is $240/month. The deductible is very high (6k).
    • My last day to elect COBRA is 4/2/2019.
    • Given all the above, the best option is probably to not elect anything unless something happens, then get retro COBRA. You’ll get a new job before 4/2.
    • Wrote my statement for the Ducati hit-and-run yesterday. Submitted the insurance claim. An officer will meet me to investigate the footage onsite Monday and file the police report, if need be.
    • Got the suspect’s insurance information! Full statement in my Google drive.
    • HN/PW/NoSQL/FW/M:
    • Chiro and acu. Still think it’s kinda pseudoscience, but I’ve been happy with results so far.
    • Cleaned the entire garage in preparation for the 4th motorcycle. The “bench” is much more organized now too, which means I can perform work more easily.
    • Cat potty training is going well. The tray is now on the toilet, it’s just increasing the hole from here on out!
    • Converted the supercontest github repo to private (now free).
    • HN/M:
    • Transactive energy. Software that balances production and consumption. Devices are smart and can allocate power based on supply. Clouds over solar panels? Large office space building can reduce heating to compensate. There’s also a trading aspect — the market price for energy will fluctuate as production/consumption (supply/demand) change. Most are basing the market aspect on blockchain technology.
    • Series A in about 8–9 months.
    • Wrapped around Hyperledger: open source blockchains. Backed by Linux and IBM.
    • Distributed ledger. Everyone can check of everyone. Think like a Google spreadsheet.
    • Middleware between OS and DB.
    • Remember CouchDB and Cassandra from Apache. The former supports mobile.
    • Researched some blockchains and the Ethereum model.
    • Popularity ranks for backends: https://db-engines.com/en/ranking. Oracle #1.
    • BEA was an enterprise software company that got acquired by Oracle.
    • B-B and B-C are marketing models: business to business and business to consumer.
    • GCP, Google Cloud Platform, storage + analytics + ML.
    • IBM Cloud is a huuuuge suite of tools: https://www.ibm.com/cloud/products.
    • UDP is faster and doesn’t perform error handling. You could miss datagrams. TCP is heavier but provides all that handshaking.
    • HTTP is stateless. Each request is entirely encapsulated and does not depend on other information. Cookies and server-side sessions kinda kinda violate this, but are usually disregarded. On the whole, an HTTP request is self-sufficient and depends on no other state.
    • Application layer faces the user: HTTP, SSH, SMTP, etc.
    • Transport layer then provides node-to-node: TCP, UDP, etc.
    • Internet layer then provides network-to-network: IPv4, IPv6.
    • You’ve got SOLID principles under the belt already, but summarized for memory: each thing should only do one thing, lower level utilities should be abstracted, and code should be written to be extended not modified (no concrete specifics in general places).
    • Can make the supercontest frontend mobile-friendly at some point in the future, although it’s so simple that it already looks fine.
    • Chiro.
    • If you ever miss conflict lock with apt (or anything, really), don’t just delete the lock. ps aux | grep apt then kill the process using it.
    • Uwsgi is a big app. apt install build-essential and python-dev to get the necessary headers.
    • .idea is the Pycharm folder (ala jetbrains).
    • Messed with nginx, systemd, systemctl, and various service configurations again. Tomorrow I’ll set up the dev env and finish the picks.