Skip to content

Instantly share code, notes, and snippets.

View booty's full-sized avatar

John Booty booty

  • Upstart
  • Near Philadelphia, PA
  • 00:08 (UTC -04:00)
View GitHub Profile
@booty
booty / queue2.py
Created August 21, 2025 21:43
Queue simulation (heterogenuous job sizes)
from __future__ import annotations
import random
from dataclasses import dataclass
from typing import List, Tuple, Dict, Optional
import numpy as np
from collections import deque
import math
@dataclass
@booty
booty / ruby-1brc.rb
Last active January 11, 2024 08:31
Current version of my Ruby "One Billion Row Challenge"
# frozen_string_literal: true
# WIP, obviously! This does not actually merge the histograms yet (however, that should not take more than 1s)
# Execution time on my MBP M1 Max (10 cores, 64GB RAM):
# Ruby 3.3 with YJIT: ~36sec
# Ruby 3.3 without YJIT: ~52sec
require "etc"
if defined?(RubyVM::YJIT.enable)
@booty
booty / john_meatlover.md
Last active October 3, 2023 03:52
Stories about John Meatlover

"write me a police report about a guy who was caught going absolutely wild on a pile of beef at Arby's"

Metropolitan Police Department Incident Report

Date: 10/01/2023

Basic:

brew install sox
play -n synth brown

https://www.cloudacm.com/?p=3145

play -n synth 60:00 whitenoise
play -n synth 60:00 pinknoise

play -n synth 60:00 brownnoise

Mechanical vs. Quartz

Quartz is lighter, cheaper, more durable, vastly more accurate, and more convenient. You can easily change the batteries yourself with a $20 set of case opening tools from Amazon.

Solar powered models are quartz, with tiny rechargable batteries, so "quartz" includes them as well.

Nearly all mechanical watches are automatic; i.e. they are automatically wound by the motion of your wrist so you'll see "mechanical" and "automatic" used interchangably. After you take an automatic watch off, it will keep ticking for about 40 hours. It's almost like a pet you have to take care of occasionally.

Why the fuck would anybody bother with mechanical watches, then?

@booty
booty / ross.md
Last active September 29, 2019 02:50

Intelligence and ability-wise, I have no doubts you can do it! You are smart and writing code is almost never any sort of rocket science.

The only question is if you'll enjoy it enough to do 40+ hours a week, which you'll find out soon enough if you pour time and energy into classes and stuff.

One thing I'd say is that most coders don't code all day. Most coders have to spend a fair amount of time w/ clients figuring out requirements, working w/ testers, etc. So don't feel like it will be just you and a keyboard forever and ever.

@booty
booty / nitro-memory-string-profile.txt
Created February 19, 2018 06:01
Nitro String Duplication / Memory Profile Output
This file has been truncated, but you can view the full file.
Total allocated: 969059729 bytes (9465072 objects)
Total retained: 109427418 bytes (1120052 objects)
allocated memory by gem
-----------------------------------
243317834 bootsnap-1.1.2
224728804 activesupport-5.1.4
162793390 activemodel-5.1.4
82936263 activerecord-5.1.4
52278985 actionpack-5.1.4
What Went Well
==============
- Very satisfying to help users and see stories from Create move into production!
- Eagles won Super Bowl
- Continued to be responsive to uTu
- While waiting on uTu is frustrating, the silver lining is that we tend to "outperform" partners
-
What Still Puzzles Us
@booty
booty / JARVIS Retro Notes February 2nd 2017.txt
Created February 2, 2018 18:52
JARVIS Retro Notes February 2nd 2017
What Went Well This Week?
=========================
- Build notificationss in Nitro are super effective
- Healthy point total from Garett and David!
- Garett enjoyed working on user facing stories! (The stories carried over from Create)
- Great pairing with David, who helped Garett understand Bullet!
What Didn't Go Well This Week?
What Well This Week?
====================
- Robust point total
- Talkbox lessons were learned
- Celery. Man, how good is celery? *Celery.*
- Beginning of a long and beautiful relationship with Docker
- Beginning of a long and beautiful relationship with Juypter notebooks
- We made great strides learning about uTu's workflow (Nitro -> uTu API -> BigTable -> Jupyter)
- Understanding this workflow is part of our mandate when dealing w/ uTu