A property wrapper in Swift is a simple and clean way to mix behaviors with properties via syntactic sugar. Simple means that to wrap a property you just declare it with an @ sign and the name of wrapper. Clean means that all the code for the injected behavior lives in one place. You could… Continue reading Swift Property Wrappers
Category: Uncategorized
Learning by Doing
The Wrong Way When I learned to code, I thought I was learning the wrong way. The 1980s were the Bronze Age of the personal computer with the Apple II, Commodore 64, Atari 800, and the TRS-80 competing for mind and market share. I had gotten it into my head that every home, school, and… Continue reading Learning by Doing
Learning from First Principles
A Troublesome Student I was a poor student in elementary school. I was unable to focus for more than a few minutes at a time. Bored and restless I treated the classroom as a kind of one-man show to entertain myself and earn the admiration of my peers. I remember bringing our familyâ€s fancy silverware… Continue reading Learning from First Principles
Success Means Learning
Much of my success in life I attribute not to the fortunes or misfortunes of my birth (genetics, socioeconomics) but to my ability to learn and act on what Iâ€ve learned. I could be totally wrong. As an experiment of one all my success could be due to luck and happenstance. I have learned that… Continue reading Success Means Learning
Hidden Bluetooth Menus in macOS Big Sur
Last night my magic keyboard developed a bad case of typing lag. As I was coding in Xcode I observed a huge delay (in seconds!) between pressing a key and its corresponding character appearing on the the screen. IT Skills Activate To diagnose and narrow down the problem (Xcode keyboard processing? A rogue process running… Continue reading Hidden Bluetooth Menus in macOS Big Sur
Virus and Science
Like many, my life has been disrupted by this virus. Honestly, I don’t want to even acknowledge this virus. The only virtue of the Coronavirus is that should be widely apparent that we, humanity, are all in the same boat and that boat is fragile. In the The World of the Worlds, written in 1872,… Continue reading Virus and Science
XML and Immortal Docments
I just read Jeff Haung’s A Manifesto for Preserving Content on the Web. He made some good suggestions (seven of them) to help keep web content available as technical progress works hard to erase everything digital that has gone before. I don’t know if everything published to the web deserves to be saved but much… Continue reading XML and Immortal Docments
Mac Terminal App and Special Key Mapping
For fun I like to write command line applications in C using VIM. It’s like rolling back the calendar to a golden age before mice and OOP ruined everything. The discipline of writing and debugging a C99 program without a modern IDE’s firehose of autocompletion suggestions is like zen meditation for me. I have to… Continue reading Mac Terminal App and Special Key Mapping
Introduction to Scrum and Management (Part 1 of 3 or 4)
I just finished reading Scrum: the Art of Doing Twice the Work in Half the Time by Jeff and JJ Sutherland . Jeff Sutherland co-created Scrum in the 90s. JJ Sutherland is the CEO of Scrum Inc and works closely with his father. Prior to this, Iâ€ve read the big thick technical tomes on Scrum,… Continue reading Introduction to Scrum and Management (Part 1 of 3 or 4)
Big O Primer
Introduction Big O is all about saving time and saving space, two resources that computer algorithms consume to do repetitive jobs (like sorting strings, calculating sums, or finding primes in haystacks). Big O analysis is required when data points grow very numerous. If you need to sort thousands, millions, billions, or trillions of data points… Continue reading Big O Primer