Skip to content

Instantly share code, notes, and snippets.

View 32teeth's full-sized avatar
:octocat:
Get it done. Right.

Eugene Yevhen Andruszczenko 32teeth

:octocat:
Get it done. Right.
View GitHub Profile
@32teeth
32teeth / Engineering Complexity Matrix.md
Created January 29, 2026 19:36
Engineering Complexity Matrix

Engineering Complexity Matrix: Easy/Difficult × Small/Large Radius

This framework helps teams classify, discuss, and de‑risk changes based on logical complexity (easy vs. difficult) and blast radius (small vs. large). Use it in grooming, architecture review, PR preparation, and onboarding.


1) Quadrant Matrix (Primary Framework)

Classify the work first; the rest of the guidance follows from the quadrant.

In innovation work, “What would happen if we don’t do this?” is one of the most powerful clarifying questions you can ask. It forces a shift from solution‑brain to consequence‑brain, which is where real prioritization lives.

What the Question Actually Surfaces

1. Problem Criticality

If nothing meaningfully degrades when the initiative is skipped, the initiative is likely:

  • a convenience
  • a “nice to have”
@32teeth
32teeth / youtube.sh
Last active October 23, 2025 18:10
YouTube Audio Downloader
# youtube.sh
#
# Description:
# Downloads a single YouTube (or supported site) video as a high-quality MP3 (320 kbps)
# using yt-dlp and ffmpeg. It:
# - Validates required commands (yt-dlp, ffmpeg)
# - Fetches video title and uploader
# - Sanitizes the title for a safe filename
# - Downloads best available audio
# - Extracts / converts to MP3 @ 320k
@32teeth
32teeth / Using Random Chance in GitHub Actions Workflows.md
Created June 25, 2025 20:23
Explores the strategic use of random chance in GitHub Actions workflows

Using Random Chance in GitHub Actions Workflows

Because... ...Why Not!

Introduction

This document explores the strategic use of random chance in GitHub Actions workflows. By introducing probabilistic execution paths, teams can simulate real-world unpredictability, optimize resource usage, and experiment with delivery strategies. This approach supports goals such as chaos engineering, canary releases, CI load management, A/B testing, observability validation, and developer engagement.

Stochastic Testing (Chaos Engineering Lite)

@32teeth
32teeth / DebouncedInputComponent.cpp
Created November 15, 2024 17:46
Debounced Input Component
#include "DebouncedInputComponent.h"
#include "TimerManager.h"
UDebouncedInputComponent::UDebouncedInputComponent()
{
PrimaryComponentTick.bCanEverTick = false;
DebounceDelay = 0.2f; // Default debounce delay in seconds
Threshold = 0.05f; // Default movement threshold
LastProcessedValue = 0.0f; // Initial value for comparison
@32teeth
32teeth / colors.sh
Created October 9, 2024 17:46
Color Generator
IndianRed=''
LightCoral=''
Salmon=''
DarkSalmon=''
LightSalmon=''
Crimson=''
Red=''
FireBrick=''
DarkRed=''
Pink=''
@32teeth
32teeth / console.js
Created October 2, 2024 18:18
Mynah-UI Console Test
const removeAllTabs = () => {
const tabs = mynahUI.getAllTabs();
Object.keys(tabs).forEach(key => mynahUI.removeTab(key, mynahUI.lastEventId));
};
const createTabs = (count) => {
const addTabButton = document.querySelector('.mynah-ui-icon.mynah-ui-icon-plus');
for (let i = 0; i < count; i++) {
addTabButton.click();
}
@32teeth
32teeth / convert_html_case.sh
Created September 27, 2024 11:53
HTML uppercase to lowercase
#!/bin/bash
# Check if directory is provided
if [ -z "$1" ]; then
echo "Usage: $0 <directory>"
exit 1
fi
DIRECTORY="$1"
/**
* Ask clarifying questions:
* - What types of input are we expecting (valid HTML strings)?
* - What should happen in the event of invalid or non-HTML inputs?
* - Should we focus solely on HTML or handle any generic XML/HTML-like string input?
*
* Analyze various solutions and tradeoffs:
* - We could use `DOMParser()` to parse the HTML and detect structural errors.
* - Alternative methods like regular expressions are not suitable for parsing HTML due to its complexity.
@32teeth
32teeth / mypy.ini
Created August 19, 2024 20:27
mypy ini file (generic)
# mypy.ini
[mypy]
python_version = 3.10
strict = True
warn_unused_ignores = True
warn_redundant_casts = True
warn_unused_configs = True
warn_unreachable = True
show_error_codes = True