Step 3: Launching jobs

Final code structure overview The code for this second part looks mostly similar to the second part with a new workflow, a new countdown subpackage, and a new batch.py util file. Sample code repo here. sample-streamlit-deploy .github/workflows/ custom-docker-push.yml docker-push.yml update-streamlit.yml .gitignore code_package/ countdown/ countdown.py streamlit/ pages/* util/ google_oauth.py Home.py requirements.txt start.sh util/ batch.py cloud.py Dockerfile Makefile docker-compose.yml environment.yml Overview One of the limitations of streamlit is that it doesn’t play well with longer running computations....

January 22, 2024

Step 2: Secure Deployment

Final code structure overview The code for this second part looks mostly similar to the first part with some added files in the streamlit directory. Sample code repo here. sample-streamlit-deploy .github/workflows/ docker-push.yml update-streamlit.yml .gitignore code_package/ streamlit/ pages/* util/ google_oauth.py Home.py requirements.txt start.sh util/ cloud.py Dockerfile Makefile docker-compose.yml environment.yml Overview In a company setting, we may want to build streamlit apps which deal with sensitive information. In that case, we have to think about the security of our app....

January 15, 2024

Step 1: Automated Deployment

Final code structure overview In this case, I wanted the streamlit deployment to be part of a larger repo with multiple tools/packages that use a common environment. As a result, the repo is structured with a top level package code_package under which we’ll make our streamlit directory. In the same repo as the code_package directory, we have our .github directory for workflows and a variety of other files such as the Dockerfile or Makefile....

January 12, 2024

Running: Marathon Training Weeks 9-Race

Week 9 Planned runs: 6 + 8 + 7 + 18 = 39 Completed runs: 6.06 + 8.01 + 7.21 + 18.17 = 39.45 Last week’s 16 mile run may have felt amazing, but I was quite tired coming into this week. I went quite fast on my first short run of the week (8:23/mile), but slowed down considerably on the next two as I started to feel some minor knee pain....

November 12, 2023

Running: All My Races

Lake Minnetonka Half Marathon Date: 2015-05-03 Pace: 2:22:40 - 10:54/mile When I reached spring of senior year, I found myself with a lot of free time. I had already gotten into college, and in doing so, most of my interests had been strictly academic. I liked the idea of running, so I decided it’d be a fun challenge to try running a half marathon. I had read the book Born to Run and gotten excited about the idea of barefoot running, so my training began in Vibram Five Fingers shoes....

October 16, 2023

Sweaters: All Ranked

Now that I’ve assembled a big collection of sweaters (all 100% wool or cashmere), it’s time to rank them: NOTE: not all sweaters below are present in the cover image 1. SNS Herning Stark Cardigan I bought the SNS Herning Stark Cardigan used on Grailed in 2020. I had known about this sweater for a while and wanted to buy it, but the price new was high enough to put me off....

September 18, 2023

Running: Marathon Training Weeks 1-8

Intro This year, my plan was to not necessarily sign up for any races and just to focus on building consistency. Last year, I ran around 340 miles total in the year, so my goal for this year was 400 with a stretch goal of 500 miles. This got off track pretty quickly when I hurt my ankle while bouldering around the end of January. While my ankle started to feel better within a couple weeks, when I started running again, I started to have shin splints....

August 30, 2023

Interactive Paint Wall Exhibit

July 20, 2023

Painting: the paint wall

See interactive version here! In January 2022, one of my cousins gave me some extra paints her kids weren’t using, which ended up spawning 15+ paint nights over the course of over a year. Things slowed down a bit in 2023, but even so, these paintings formed a giant mosiac paint wall in the living room of my apartment. Overall, I’m up to 57 total paintings (2 not pictured as they’re on the second wall) from 20+ people....

January 24, 2023

Author commentary (non spoiler)

The idea for this story was inspired by a spider mite infestation in my rubber tree. Upon removing the near microscopic mites (with neem spray and a brush), the plant grew more in 1 week than it had in the preceding 6 months. I was shocked by how much these tiny pests could impact the growth of such a larger organism, and this brought my attention to the numerous other examples in nature including biting flies bothering large mammals (and humans) or various parasitic crustaceans leeching off of whales....

June 16, 2022