Skip to content

Instantly share code, notes, and snippets.

View lupin4's full-sized avatar
⚜️
Writing

David Clabaugh lupin4

⚜️
Writing
  • The Fantatstic Planet
  • Seattle
  • 13:59 (UTC -12:00)
View GitHub Profile

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

@lupin4
lupin4 / .gitattributes
Created April 21, 2025 18:31
Unreal Engine 5 .gitignore and .gitattributes
* text=auto
*.3DS filter=lfs diff=lfs merge=lfs -text
*.3ds filter=lfs diff=lfs merge=lfs -text
*.ABC filter=lfs diff=lfs merge=lfs -text
*.AEP filter=lfs diff=lfs merge=lfs -text
*.AFDESIGN filter=lfs diff=lfs merge=lfs -text
*.AFPHOTO filter=lfs diff=lfs merge=lfs -text
*.AI filter=lfs diff=lfs merge=lfs -text
*.AIF filter=lfs diff=lfs merge=lfs -text
@lupin4
lupin4 / array.verse
Created December 5, 2024 03:24 — forked from stueccles/array.verse
A Verse module that adds useful functions to Verse Arrays including Map, Reduce etc.
using { /Verse.org/Random }
Array<public> := module:
# Makes an `array` with only unique elements
(Input:[]t where t:subtype(comparable)).Unique<public>()<transacts>:[]t =
var UniqueArray : []t = array{}
for (Value : Input):
if (UniqueArray.Find[Value] > -1) {}
else:
@lupin4
lupin4 / RenameMidi.ps1
Created October 30, 2024 11:18 — forked from Psychlist1972/RenameMidi.ps1
Renames MIDI ports as displayed by the Windows 10 / WinRT MIDI API. Requires your customization to work correctly. Only impacts apps using the WinRT MIDI API, not the Win32 MIDI API.
# This will rename ports for use with the Windows 10 MIDI API (does not impact the Win32 port names)
#
# Created by Pete Brown : Twitter @pete_brown
#
# Unofficial and not supported by Microsoft. This is a workaround, not a proper solution.
#
# This must be run from administrator PowerShell on the target PC
#
# You must re-run this any time devices or drivers change, or they are re-enumerated. At a minimum, this
# tends to be on each reboot or system update. This is basically updating a name cache, not making changes
import os
import shutil
def restore_files_from_bak(root_dir):
for subdir, dirs, files in os.walk(root_dir):
# Check if the current folder is a 'bak' folder
if os.path.basename(subdir) == 'bak':
# Check if the 'bak' folder exists
if os.path.exists(subdir):
for file in files:
@lupin4
lupin4 / bug_blaster.verse
Created April 16, 2023 07:06 — forked from WahlbeckUEFN/bug_blaster.verse
The full code for the Bug Blaster UEFN YouTube Tutorial by Wahlbeck Warforge
using { /Fortnite.com/Devices }
using { /Verse.org/Simulation }
game_manager := class(creative_device):
@editable var Enemies : []creative_prop = array{}
@editable var Granter : item_granter_device = item_granter_device{}
@editable var PropManipulator : prop_manipulator_device = prop_manipulator_device{}
@editable var EndDevice : end_game_device = end_game_device{}
@lupin4
lupin4 / game_manager.verse
Created April 9, 2023 07:19 — forked from spentak/game_manager.verse
This code is a UEFN Fortnite "Device" for managing a Gun Game feature where players fight online and get a new weapon after each elimination
using { /Fortnite.com/Devices }
using { /Verse.org/Simulation }
using { /Fortnite.com/Teams }
using { /Fortnite.com/Game }
using { /Fortnite.com/Characters }
using { /UnrealEngine.com/Temporary/Diagnostics }
# This code is a UEFN Fortnite "Device" for managing a Gun Game feature
# where players fight online and get a new weapon after each elimination
@lupin4
lupin4 / maya_external_client.py
Created March 31, 2023 19:05 — forked from Meatplowz/maya_external_client.py
Maya Threaded Server example with Client
"""
External Maya Client
This can be run outside of Maya
Use in idle or an IDE that can accept input.
"""
import socket
import logging
"""
A simple example pyside app that demonstrates dragging and dropping
of files onto a GUI.
- This app allows dragging and dropping of an image file
that this then displayed in the GUI
- Alternatively an image can be loaded using the button
- This app includes a workaround for using pyside for dragging and dropping
@lupin4
lupin4 / with_classes_example_3.py
Created February 21, 2023 21:39 — forked from CGArtPython/with_classes_example_3.py
Beginner Blender Python Tutorial: Python Classes example 3 (used in tutorial: https://youtu.be/t2KEolkhIoA)
import bpy
class Shape:
"""
a class to represent a mesh object
"""
# example of a class variable
instance_count = 0