- Version history protects against AI accusation November 22, 2024
- Thoughts on AI art October 4, 2024
- Copyright will not save us from AI May 15, 2024
- Hardware is for Services August 2, 2024
- Thoughts on the new CarPlay June 12, 2024
- So long, Apple October 24, 2022
- My latest project: Swift Playgrounds 4.1 May 17, 2022
- 10 Years at Apple January 17, 2020
- Apple Campus 2 November 7, 2013
- Thoughts on AI art October 4, 2024
- #inadvertently February 13, 2017
- RIAA Music Revenue Share Over Time August 24, 2014
- Animated Artwork by Rebecca Mock April 8, 2014
- Stuff — shmorky February 25, 2014
- Your Desk Turtle — sketchamagowza February 24, 2014
- Thoughts on the new CarPlay June 12, 2024
- A ranking system for vanity plate inscrutability February 3, 2024
- How to never miss a shift when driving a manual car July 14, 2023
- Photos from ISSIMI Meccanica open house April 23, 2022
- Made in the Shade August 1, 2019
- Chevy Fleetline March 23, 2014
- Ridin’ Purrty March 9, 2014
- Locust Songs Van February 21, 2014
- A Great Deal With the Devil March 2, 2014
- Stuff — shmorky February 25, 2014
- Your Desk Turtle — sketchamagowza February 24, 2014
- Makin’ Comics December 26, 2013
- Simple Answers — nevver November 11, 2013
- No Comment Necessary — Joy of Tech September 27, 2013
- Memento Mori: A million dead of COVID-19 May 6, 2022
- COVID-19: The New Normal December 21, 2021
- Irrational Exuberance During COVID-19 July 12, 2020
- Sun Times Front Pages — suntimesdarktimes June 27, 2013
- Look, and Feel — venomousporridge June 26, 2013
- “Innovation” June 18, 2013
- Robots should not look like people October 11, 2024
- The proof of passion is time October 5, 2024
- “Quiet Quitting” Doesn’t Exist September 17, 2024
- Bet on human trust March 3, 2024
- Always be making January 13, 2024
- Go small to go big November 29, 2023
- Dealing with a veiled emotional rejection September 17, 2023
- Do not overwork yourself September 9, 2023
- Believe in magic while you’re learning July 9, 2023
- How to Survive a Crisis June 16, 2023
- Embrace Hyrum’s Law May 26, 2023
- Streaks are bad for you April 13, 2023
- Make Prototypes Entirely Out of Tracer Bullets March 10, 2023
- Keep personal data off of work devices March 3, 2023
- Make time to get good February 17, 2023
- Section Your Day and Contain Your Failures November 11, 2022
- The Three Programmers August 6, 2022
- Embracing Remote Work December 18, 2021
- Seek Independent Evaluation of Your Work May 27, 2021
- The Quiet Ones October 30, 2020
- Designing for Accessibility October 1, 2020
- Do, or Do Not January 31, 2020
- In Praise of Brute Force January 19, 2020
- Shipping API Under Time Pressure March 23, 2019
- Get to Prototype February 8, 2019
- The Difficulty of Short Term Software Estimation December 29, 2018
- Keep Your Eyes on the Horizon December 14, 2018
- Hold Your Standards November 16, 2018
- Doing Better With Technical Terms November 10, 2018
- Don’t Hire a Smart Asshole November 8, 2018
- Call Out Risks Up Front October 11, 2018
- Good Side Projects August 26, 2018
- Assume Good Faith July 26, 2018
- Embrace Language Idioms July 12, 2018
- Cannibalize Yourself June 28, 2018
- Incomprehensible Code June 21, 2018
- Pick Up a Scripting Language May 17, 2018
- Software Engineers are Craftspeople, not Scientists May 4, 2018
- Protect Your Flow April 20, 2018
- Separating Business Logic April 13, 2018
- Writing Multiplatform Code April 6, 2018
- Personal Values March 30, 2018
- UI Testing March 23, 2018
- Tinker March 9, 2018
- Take Care of Relationships March 2, 2018
- Hidden Costs of Refactoring February 16, 2018
- Tips for Introverts February 9, 2018
- Keep Your Commits Clean January 26, 2018
- Embrace Conway’s Law January 19, 2018
- Fun With Multigig Ethernet June 11, 2022
- Secure your iPhone with a Long Numeric Passcode September 28, 2014
- A ranking system for vanity plate inscrutability February 3, 2024
- Lego George Lucas and $4.05B July 4, 2023
- Section Your Day and Contain Your Failures November 11, 2022
- The Three Programmers August 6, 2022
- #inadvertently February 13, 2017
- The Amazing iPhone Home Button October 2, 2014
- You know what’s best? September 20, 2014
- A Great Deal With the Devil March 2, 2014
- I Too Have Made My Own Chart To Help — parislemon January 28, 2014
- Makin’ Comics December 26, 2013
- Simple Answers — nevver November 11, 2013
- Apple Campus 2 November 7, 2013
- No Comment Necessary — Joy of Tech September 27, 2013
- Clearly Doomed — stevekovach September 24, 2013
- How to Piss Off your Designer Friends June 18, 2013
- US Smartphone Market Share November 8, 2014
- RIAA Music Revenue Share Over Time August 24, 2014
- A Tale of Two Obsoletives October 9, 2013
- Clearly Doomed — stevekovach September 24, 2013
- Dealing with Objective-C Protocol types in Swift September 19, 2024
- Thoughts on the new CarPlay June 12, 2024
- Measuring the performance of mergeable libraries in iOS apps January 2, 2024
- All about mergeable libraries January 2, 2024
- Exposing Swift implementations to Objective-C August 9, 2023
- All about Item Providers July 8, 2023
- All about xcframeworks May 19, 2023
- Keeping Things Straight with GCD June 14, 2016
- The Amazing iPhone Home Button October 2, 2014
- Secure your iPhone with a Long Numeric Passcode September 28, 2014
- Writing Thread-Safe Classes with GCD September 13, 2014
- GCD Target Queues August 14, 2014
- GCD Concurrent Queues August 6, 2014
- Using GCD Queues For Synchronization August 2, 2014
- Why GCD? July 31, 2014
- An Introduction to Grand Central Dispatch July 28, 2014
- Block APIs are NOT harmful July 17, 2014
- Block APIs are NOT harmful November 21, 2013
- Keeping Things Straight with GCD June 14, 2016
- Writing Thread-Safe Classes with GCD September 13, 2014
- GCD Target Queues August 14, 2014
- GCD Concurrent Queues August 6, 2014
- Using GCD Queues For Synchronization August 2, 2014
- Why GCD? July 31, 2014
- An Introduction to Grand Central Dispatch July 28, 2014
- Mac@30 Panel 3 January 27, 2014
- Mac@30 Panel 2 January 27, 2014
- Mac@30 Panel 1 January 27, 2014
- A Letter to the Mac January 27, 2014
- Dealing with Objective-C Protocol types in Swift September 19, 2024
- Exposing Swift implementations to Objective-C August 9, 2023
- All about Item Providers July 8, 2023
- All about xcframeworks May 19, 2023
- Keeping Things Straight with GCD June 14, 2016
- Writing Thread-Safe Classes with GCD September 13, 2014
- GCD Target Queues August 14, 2014
- GCD Concurrent Queues August 6, 2014
- Using GCD Queues For Synchronization August 2, 2014
- Why GCD? July 31, 2014
- An Introduction to Grand Central Dispatch July 28, 2014
- Block APIs are NOT harmful July 17, 2014
- Dealing with Objective-C Protocol types in Swift September 19, 2024
- GCD Concurrent Queues August 6, 2014
- Using GCD Queues For Synchronization August 2, 2014
- Why GCD? July 31, 2014
- An Introduction to Grand Central Dispatch July 28, 2014
- Block APIs are NOT harmful July 17, 2014
- Block APIs are NOT harmful November 21, 2013
- Version history protects against AI accusation November 22, 2024
- Stop scolding November 6, 2024
- They don’t have my back November 6, 2024
- Dave’s tenets of software engineering October 24, 2024
- No technology is inevitable October 22, 2024
- Robots should not look like people October 11, 2024
- The proof of passion is time October 5, 2024
- Thoughts on AI art October 4, 2024
- Open Source Software is the Pastime of the Rich September 18, 2024
- “Quiet Quitting” Doesn’t Exist September 17, 2024
- The real reason for Return To Office September 16, 2024
- Hardware is for Services August 2, 2024
- Thoughts on the new CarPlay June 12, 2024
- Copyright will not save us from AI May 15, 2024
- The Relentless Monetization of Everything April 12, 2024
- Thoughts on generative AI and responsibility January 8, 2024
- Welcome progress, no matter how small December 22, 2023
- More thoughts on remote work August 28, 2023
- Lego George Lucas and $4.05B July 4, 2023
- On Conservatism and the Persecuted Class April 15, 2023
- Dealing with Bad News March 29, 2023
- You cannot separate art from artist February 26, 2023
- Withholding user security behind a paywall is unethical February 18, 2023
- Don’t upload your passwords to the cloud December 23, 2022
- Get the hell out of twitter November 3, 2022
- A License Plate Sent Me Down a Coffee-Flavored Rabbit Hole September 18, 2022
- Funding Secured July 9, 2022
- The Intolerance Attractor June 28, 2022
- Memento Mori: A million dead of COVID-19 May 6, 2022
- Video: Theory of Stupidity April 27, 2022
- Netflix is Blockbuster from 2012 April 22, 2022
- The Man Who Harmed Every Living Organism On Earth…Twice March 9, 2022
- COVID-19: The New Normal December 21, 2021
- Embracing Remote Work December 18, 2021
- Think Probabilistically August 11, 2021
- Don’t say it’s crazy May 24, 2021
- Luck and Striking it Rich February 14, 2021
- It’s Apparent November 4, 2020
- Musings on Software Complexity June 18, 2020
- Facts vs Cultural Identity February 11, 2020
- Doing Better With Technical Terms November 10, 2018
- What I Learned From My Hospital Stay February 8, 2015
- Show up December 10, 2013
- A Tale of Two Obsoletives October 9, 2013
- So long, Apple October 24, 2022
- A License Plate Sent Me Down a Coffee-Flavored Rabbit Hole September 18, 2022
- Nerd Cred Time May 20, 2022
- My latest project: Swift Playgrounds 4.1 May 17, 2022
- My 2001 Mobile Computing Rig December 3, 2013
- Photos from ISSIMI Meccanica open house April 23, 2022
- Liza Loop and the Apple 1, Serial Number One August 8, 2021
- 10 Years at Apple January 17, 2020
- Made in the Shade August 1, 2019
- The Midway November 12, 2018
- Seven Seas Park at Night February 24, 2016
- Red Dress April 16, 2015
- Rafë October 21, 2014
- Stargazers October 11, 2014
- Full Moon October 7, 2014
- You know what’s best? September 20, 2014
- Not Yet July 9, 2014
- Carousel Detail July 9, 2014
- Girl Brushing Goat July 9, 2014
- The Grotto April 18, 2014
- Memorial Soldier April 17, 2014
- Blood Moon April 15, 2014
- Easter Loot April 8, 2014
- Shy April 8, 2014
- A Wise Friend April 8, 2014
- Bliss April 6, 2014
- Chevy Fleetline March 23, 2014
- Ridin’ Purrty March 9, 2014
- The Oath February 22, 2014
- Naturalization Ceremony February 21, 2014
- Locust Songs Van February 21, 2014
- Salvation in Suburbia February 18, 2014
- Snow in the Valley February 2, 2014
- Mac@30 Panel 3 January 27, 2014
- Mac@30 Panel 2 January 27, 2014
- Mac@30 Panel 1 January 27, 2014
- Butterfly December 9, 2013
- Giant Indoor Snowman December 9, 2013
- Lantern Advertising Ōzeki Sake November 30, 2013
- Kahoo Ramen November 30, 2013
- Boing! November 28, 2013
- Denizen October 20, 2013
- Bokeh and Butterfly October 20, 2013
- Porsche 911 GT3 Has a Cute Smile October 20, 2013
- Musical Stairs September 23, 2013
- Leni September 17, 2013
- The Old and the New September 11, 2013
- IL4 is looking more festive than usual today September 9, 2013
- My 12 year old Bichon Frise Chloe being a space worm September 8, 2013
- My 3 year old Havanese Sophie September 8, 2013
- Damn Straight September 7, 2013
- Ganesh Statues September 7, 2013
- PUSH September 7, 2013
- I love my 335i August 20, 2013
- Sprout June 26, 2013
- Stop scolding November 6, 2024
- They don’t have my back November 6, 2024
- On Conservatism and the Persecuted Class April 15, 2023
- It’s Apparent November 4, 2020
- Dave’s tenets of software engineering October 24, 2024
- Dealing with Objective-C Protocol types in Swift September 19, 2024
- Open Source Software is the Pastime of the Rich September 18, 2024
- Measuring the performance of mergeable libraries in iOS apps January 2, 2024
- All about mergeable libraries January 2, 2024
- Go small to go big November 29, 2023
- Exposing Swift implementations to Objective-C August 9, 2023
- All about Item Providers July 8, 2023
- Embrace Hyrum’s Law May 26, 2023
- All about xcframeworks May 19, 2023
- Enabling Dagger in IntelliJ December 1, 2022
- Keeping Things Straight with GCD June 14, 2016
- Writing Thread-Safe Classes with GCD September 13, 2014
- GCD Target Queues August 14, 2014
- GCD Concurrent Queues August 6, 2014
- Using GCD Queues For Synchronization August 2, 2014
- Why GCD? July 31, 2014
- An Introduction to Grand Central Dispatch July 28, 2014
- Block APIs are NOT harmful July 17, 2014
- Block APIs are NOT harmful November 21, 2013
- Experience is a difficult teacher March 1, 2014
- Networking is my Hammer February 25, 2014
- Remember, if you need a helping hand, it’s at the end of your arm. December 16, 2013
- Money is like gas in the car December 7, 2013
- I know not with what weapons World War III will be fought December 4, 2013
- Rules create a structure November 28, 2013
- He who joyfully marches to music rank and file November 21, 2013
- You’re a ghost driving a meat coated skeleton November 11, 2013
- Ignore the boos October 13, 2013
- We are what we repeatedly do October 13, 2013
- Everything around you that you call life August 12, 2013
- The only thing you really have in your life is time July 27, 2013
- The real reason for Return To Office September 16, 2024
- More thoughts on remote work August 28, 2023
- Embracing Remote Work December 18, 2021
- The real reason for Return To Office September 16, 2024
- More thoughts on remote work August 28, 2023
- Embracing Remote Work December 18, 2021
- Dealing with Objective-C Protocol types in Swift September 19, 2024
- Exposing Swift implementations to Objective-C August 9, 2023
- No technology is inevitable October 22, 2024
- Thoughts on the new CarPlay June 12, 2024
- Copyright will not save us from AI May 15, 2024
- The Relentless Monetization of Everything April 12, 2024
- Thoughts on generative AI and responsibility January 8, 2024
- All about libraries January 3, 2024
- Phase-detection autofocus is a bit sloppy May 13, 2023
- Withholding user security behind a paywall is unethical February 18, 2023
- A minivan full of magnetic tape is still fast February 3, 2023
- LG C2 OLED TV Settings January 29, 2023
- Don’t upload your passwords to the cloud December 23, 2022
- Get the hell out of twitter November 3, 2022
- Fun With Multigig Ethernet June 11, 2022
- The Man Who Harmed Every Living Organism On Earth…Twice March 9, 2022
- Configuring Forza Horizon 5 (Steam) to work with Sim Racing Studio January 13, 2022
- Liza Loop and the Apple 1, Serial Number One August 8, 2021
- Luck and Striking it Rich February 14, 2021
- Musings on Software Complexity June 18, 2020
- Doing Better With Technical Terms November 10, 2018
- US Smartphone Market Share November 8, 2014
- My 2001 Mobile Computing Rig December 3, 2013
- A Tale of Two Obsoletives October 9, 2013
- “Innovation” June 18, 2013