№ 04
Stuff I Said
Short writing on software, Apple platforms, and adjacent obsessions.
...·······:::::;;;;;++*##*+;;;+++++;;;;::::::········:··
·.····:::::::;;;;+++*;;::#%#*+++++++++++++++;:::::·::::·
··:::::::;:;+++****::. .+##%%%%##***++++++++;;;;;;:::::
:::::::::::+*###%%%%%#+:. .:+*#%@@%%%#******++++++++;;
::;;;;;;;;;+*#%%@%@@%%@@@@#+: .·;*#%@@@@%%%%%##**++++
;;;;;;;;;+#%@@@@@@@@*+*++++%#+:·.· ·;*#%@@@@@@@%%*+;
;;;;;;;;#@@@@@@@@@@@@@@%*;·+%@@#**+##+:. .;;+#%%%###·:
;;++++;**;%%@@@@@@@@@@@@@@@@%@@@#*#%@@@@@%*;·. .:;;+:;*
+++++*#%. ·.;+%@@@@@@@@@@@@@@@@@@%*+;#@@@@@@@@%#:·#: +#
++++*;+·.: . ..++@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#;; :*%
++**+ . : . : . ··**%@@@@@@@@@@@@@@@@@@@@@@%#**++++*#%
*#+. ··..·· . .· ·... ·:+%%@@@@@@@@@@@@@@@@@%##******#%@
##::···:.·.·..: · .:··· ...:;*%@@@@@@@@@@@%###******#@@@
+*#*: .::.;.:.·:·;·.···+··.. .;;+%@@@@@%####*+;++*#%@@@
+;+*%#+: .·;;::.·::;:.:..::·:·..::;*@@%###**++*###@@@@@
**++++#%%*:. .:;;+;····:·: .··.:·.·:+@@###*++*#@@@@@@@@@
**###*+++#%%#;. .·;++:;··;;·:·;::+.*@%##*++*#@@@@@@@@@@@
##%%%%##*++*#%@#+· ··;#+;·::;++**#@%#*+++*#@@@@@@@%@@@@
**#%%########**#%@@*:. .+#:. :#*#@@#*+++*#%@@@@@@@@@%@@@
**####%%%%%@@@%%###%@@%**@%**##%@%##+;+*%@@@@@@@@@%%%@@%
###%%%%%%@@@%%@@@@%###%@@@@@@%@%#*#%#*#%%%@@@@@@@@@%#%%%
###%%%%%@@@%%%@@@@@@@%%#%%%@@%%###%@%%%%%%%%%@%@%%%%%###
-
A small love letter to `print(_:)`
Sometimes the right debugger is a print statement. Many times, actually.
-
Strict concurrency, one year in
A year of writing Swift 6 code under strict concurrency, in the trenches.
-
Why my README is longer than my main file
A short defense of treating documentation as a first-class part of a project.