Skip to content

Instantly share code, notes, and snippets.

View terabyte's full-sized avatar

Carl Myers terabyte

View GitHub Profile
@terabyte
terabyte / electronics-repair-starter-guide.md
Last active June 18, 2026 17:40
Getting Started in Electronics Repair — a starter kit & buying guide (soldering, hot air, scopes, consumables, where to buy)

Getting Started in Electronics Repair — A Starter Kit & Buying Guide

People keep asking me what to buy to get into electronics repair as a hobby. Here's everything, collected in one place. This is all hard-learned over ~3 years of hobby work — I'm on my 3rd hot air station and 4th soldering station because I didn't do the research and didn't know what to look for. Don't be me. Buy the nice one up front if you can swing it; the good gear holds its value extremely well anyway.

One channel to watch before you spend a dime: NanoFix on YouTube. He reviews most of the stuff I suggest here (and the alternatives), and his workflow is worth

@terabyte
terabyte / 1-source-marketing-copy.md
Created June 12, 2026 23:50
Fact-check: 'Aurivita Capsaicin Power' Type 2 diabetes supplement marketing copy — claim-by-claim evaluation with primary sources

Source: "Aurivita Capsaicin Power" direct-response marketing copy

Reproduced verbatim for fact-checking purposes. This is advertising copy for a dietary supplement; it is not medical advice and several of its claims are distorted or unsupported (see the companion analysis). The text cuts off mid-sentence at the end exactly as received.


When a diabetic man dies, the coroner doesn't write "diabetes" on the death certificate. He writes heart attack. Or stroke. Or kidney failure. Or sepsis from an infected foot. Diabetes is almost never the official cause of death — even though it's almost always the actual one.

@terabyte
terabyte / merge-and-push.sh
Created March 25, 2022 03:41
Script to fetch any updates and merge it into any currently unincorporated work, then push it.
#!/bin/bash
set -e
GIT_DIR=$HOME/projects/private_notes
# only do it if we have network
if ping -c1 -w5 -n 8.8.8.8 | grep -q '1 received'; then
# first fetch updates
@terabyte
terabyte / commit-update.sh
Created March 25, 2022 03:36
Script to fetch any updates and merge it into any currently unincorporated work, then push it.
#!/bin/bash
set -e
GIT_DIR=$HOME/projects/private_notes
# first fetch updates
git -C $GIT_DIR fetch -q origin > /dev/null
if [[ "x$(git -C $GIT_DIR status --porcelain)" == "x" ]]; then
@terabyte
terabyte / autocommit.sh
Created March 25, 2022 03:31
Autocommit script runs in a cron job every few minutes
#!/bin/bash
set -e
GIT_DIR=$HOME/projects/private_notes
git -C $GIT_DIR add -A
git -C $GIT_DIR commit -q -am "update from '$(hostname)' on $(date '+%Y%m%d %H:%M %Z')" > /dev/null || exit 0
@terabyte
terabyte / Dockerfile
Created December 8, 2021 19:05
Example dockerfile that sets up pyenv and a virtualenv
FROM debian:11
RUN apt-get update && apt-get install --no-install-recommends -y \
curl jq tzdata coreutils bash git build-essential ca-certificates \
stress-ng \
zlib1g-dev libffi-dev libssl-dev libbz2-dev libncursesw5-dev libgdbm-dev liblzma-dev libsqlite3-dev tk-dev uuid-dev libreadline-dev \
&& apt-get clean && rm -rf /var/lib/apt/lists/*
# install and set up pyenv
def default_serialize_func(o):
"""
Use like this: logging.debug(f"print this object: {json.dumps(myobject, indent=4, sort_keys=True, default=default_serialize_func)}")
"""
if hasattr(o, '__dict__'):
return o.__dict__
return f"<could not serialize {o.__class__}>"
#!/usr/bin/env bash
set -ex
SSI_DIR="$HOME/projects/ssi"
"$HOME/bin/bat-status-changed.sh"
source "$SSI_DIR/.ve/bin/activate"
#!/usr/bin/env python
import io
import json
import random
import sh
import time
import smtplib, ssl
# these are servers that are both close by and in my testing were able to
#!/usr/bin/env bash
# Copyright (c) 2017 Cloudera, Inc. All rights reserved.
set -exo pipefail
# Usage: ./docker.sh
# Usage: ./docker.sh test/test.sh
# Usage: INTERACTIVE=1 ./docker.sh
# This script invokes the docker container, does the necessary contortions to