Skip to content

Instantly share code, notes, and snippets.

Simple Made Easy: A Study Guide I. Summary and Key Concepts Rich Hickey's "Simple Made Easy" argues for a fundamental distinction between "simple" and "easy" in software development, asserting that true simplicity (un-braided, un-interleaved) is a prerequisite for reliability and long-term maintainability, whereas "easy" (familiar, near at hand) often leads to hidden complexity. The talk delves into the etymology of these words to highlight their precise meanings and then applies them to software constructs and design principles. Hickey advocates for a focus on objective simplicity, even if it initially feels less "easy," as it ultimately leads to more robust, understandable, and adaptable systems over time.

Key Concepts:

Simple vs. Easy: The core distinction, with "simple" meaning "one fold/braid" (objective, structural) and "easy" meaning "near" (subjective, based on familiarity or proximity). Complexity (Complecting): The act of braiding or intertwining disparate concepts or concerns, leading to systems

@rusak47
rusak47 / install.sh
Last active July 18, 2025 08:04 — forked from aabele/install.sh
Instalēt Latvijas digitālo parakstu uz ArchLinux
#sudo wget -qO - https://www.eparaksts.lv/files/ep3updates/debian/public.key | sudo apt-key add -
#sudo apt-add-repository "deb https://www.eparaksts.lv/files/ep3updates/debian focal eparaksts"
#sudo apt-get install eparakstitajs3
#sudo apt-get install awp
#sudo apt-get install latvia-eid-middleware
#sudo apt-get install eparaksts-token-signing
# core packages available from aur
yay eparakstitajs3
yay latvia-eid-middleware
@rusak47
rusak47 / xrandr.bash
Created May 9, 2024 15:03 — forked from ymollard/xrandr.bash
Set the screen to a custom resolution with xrandr
# 1. Select first the resolution you would like to get the modeline (preferably the screen native resolution)
$ cvt 1920 1080
# 1920x1080 59.96 Hz (CVT 2.07M9) hsync: 67.16 kHz; pclk: 173.00 MHz
Modeline "1920x1080_60.00" 173.00 1920 2048 2248 2576 1080 1083 1088 1120 -hsync +vsync
# 2. Identify your screen name (here VGA-0 with a low res)
$ xrandr
Screen 0: minimum 8 x 8, current 2560 x 1080, maximum 16384 x 16384
VGA-0 connected 640x480+1920+0 (normal left inverted right x axis y axis) 0mm x 0mm
640x480 59.9*+
@rusak47
rusak47 / recording_application_and_microphone.md
Created November 15, 2023 13:57 — forked from varqox/recording_application_and_microphone.md
How to record multiple applications and microphone into one audio file on Linux using PulseAudio

How to record multiple applications and microphone into one audio file on Linux

Step 0. Terminology

Sinks are for output, sources are for input. To stream source to sink a loopback must be created. More shall you find there.

Step 1. Create output sink that will be recorded

Our output sink will be named recording.

pacmd load-module module-null-sink sink_name=recording sink_properties=device.description=recording
@rusak47
rusak47 / README.md
Last active October 21, 2022 14:30 — forked from zebarnabe/old_python_install.sh
Build and install an old python

Some steps to install EOL python2.7 from unmaintained AUR repo via yay.

I've done that in existing LXD container, so most of dependencies were already installed.

*) Check installed package list below

*) See yay python2.7 config.log

*) and the most important Python2.7 install log with some workarounds

@rusak47
rusak47 / Xvfb.service
Created May 25, 2022 21:25 — forked from ypandit/Xvfb.service
Xvfb as a systemd service
[Unit]
Description=X Virtual Frame Buffer Service
After=network.target
[Service]
ExecStart=/usr/bin/Xvfb :99 -screen 0 1024x768x24
[Install]
WantedBy=multi-user.target