Skip to content

Instantly share code, notes, and snippets.

View colindean's full-sized avatar
🏆
Helping others find happiness and serenity

Colin Dean colindean

🏆
Helping others find happiness and serenity
View GitHub Profile
@colindean
colindean / brew-lowbandwidthmode.md
Created June 4, 2024 15:51
Notes on adding low-bandwidth mode detection to Homebrew

Low-bandwidth mode

Goal: Find a way to make Homebrew conscious of when a user is on a low-bandwidth mode WiFi when running brew commands that may download large files.

Inspiration: I burned ~25% of my monthly LTE plan bandwidth in one day in May 2024 on installing a package that unbeknownst to me had multiple gigabytes of dependencies.

Testing

@colindean
colindean / README.md
Last active December 24, 2022 20:28
Colin Dean's programming language history

Colin Dean's programming language history

This is a fun Gantt chart showing when I was exposed to various programming languages or domain-specific languages. It is of course no indicator of my ability to be productive in them, only when I can remember an approximation of the first time I used them for any purpose.

This was a fun exercise in remembering when I picked up various things for various reasons. You can see some patterns, like when I was first learning in high school, then college, then my first jobs, then my second, etc.

[Gantt chart showing dates that Colin Dean learned various programming languages](https://www.plantuml.com/plantuml/svg/HSv13e8m443HFQVG2r10cQ0hRaAcqw5jKgQadSPuUuqRzpy_RwsAHJsAQdUDGgavlWJLipwDyR5gxwE6PblbGbcKHNlAXw6SeZX6CVTn7lR7ROB1mcGTZR3mRAS1260PTsSAllxvbb1yGyzR-CvpUVTdEr

@colindean
colindean / lvm_expansion.md
Created August 13, 2022 22:17
How to expand an Linux Logical Volume Management (LVM) volume to use a resized virtual disk

How to expand an Linux Logical Volume Management (LVM) volume to use a resized virtual disk

Backstory

A Linux virtual machine I use for hosting containerized services in my home lab recently ran out of disk space. I decided to allocate more disk space to it since I had plenty to spare. It turns out that when I'd created the VM, I'd given the virtual hard drive only 200 GB but sometime between then and now, I'd increased the allocation to 1 TB. Strangely, I never checked to see if the VM was using the full terabyte! Frustrated that it wasn't, I set about rectifying the situation.

The source for https://install.python-poetry.org is not in https://github.com/python-poetry/poetry

TL;DR There are two different versions of install-poetry.py out there. Make sure you're using the right one!

The recommended path to install Poetry is this:

curl -sSL https://install.python-poetry.org | python3 -
@colindean
colindean / .gitignore
Last active July 2, 2021 18:25
MOVED TO https://github.com/colindean/wilkinsburg_pittsburgh_merger_analysis! -> Heat Map Chart reflecting percent change in municipal and school tax if Wilkinsburg and Pittsburgh merge (WORK IN PROGRESS)
*.png
*.svg
*.idx
wilkinsburg*.csv
assessments.csv
@colindean
colindean / interviews2019.rb
Created June 14, 2021 02:16
Some things I did for an interview once
# require "rspec/autorun"
# require "minitest/autorun"
# You're running a pool of servers where the servers are numbered sequentially starting from 1. Over time, any given server might explode, in which case its server number is made available for reuse. When a new server is launched, it should be given the lowest available number.
# Write a function which, given the list of currently allocated server numbers, returns the number of the next server to allocate.
# For example:
# >> next_server_number([5, 3, 1])
@colindean
colindean / Brewfile
Created April 1, 2021 23:47
A Pythonic Makefile, Brewfile, and Poetry config
# basic build tool, get the latest version
# if you want to ensure use, use 'gmake' instead on macOS
# or follow caveats in `brew info make` to make make brew's make
brew 'make'
# python version and environment management
brew 'pyenv'
# python dependency manager
# a version from pypi instead of homebrew may be installed when running make deps
brew 'poetry'
@colindean
colindean / README.md
Last active December 10, 2020 03:34 — forked from patik/osx-special-chars.ahk
AutoHotKey stuff

macOS-like Hotkeys for Windows

See fork history for where this came from and note that I have no idea what I'm doing.

@colindean
colindean / CirceMapDecoder.scala
Created August 25, 2020 20:10
A Map[String, String] decoder for Circe
// warning: barely tested
import io.circe.Decoder.Result
import io.circe._
import io.circe.generic.extras._
object CirceMapDecoder {
type KeyVal = Map[String, String]
// using the expansion may be necessary for Circe to detect it correctly
@colindean
colindean / functional_fizzbuzz.sc
Created June 9, 2020 16:57
A functional, rules-based Fizzbuzz in Scala
// functional, rules-based fizzbuzz
// inspired heavily by http://boston.conman.org/2020/06/08.1
def fizzbuzz(num: Int): String = {
def ifElse(matchNum: Int, ifMatch: String, otherwise: String => String): String => String = {
if (num % matchNum == 0) {
_ => ifMatch + otherwise("")
} else {
otherwise
}
}