Wherein I Move a Lot of Words Around

Every Developer's Nightmare

State: Answers were erased on 14,220 STAAR tests |

State officials are threatening to reconsider a $280 million contract with its testing vendor after answers to 14,220 state standardized tests were erased because of a computer glitch last week.

Programming Sucks

Also, the bridge was designed as a suspension bridge, but nobody actually knew how to build a suspension bridge, so they got halfway through it and then just added extra support columns to keep the thing standing, but they left the suspension cables because they're still sort of holding up parts of the bridge. Nobody knows which parts, but everybody's pretty sure they're important parts.

Programming Sucks

Every project I've ever worked on has this smell somewhere.

I Can Text You A Pile of Poo, But I Can’t Write My Name

I Can Text You A Pile of Poo, But I Can’t Write My Name by Aditya Mukerjee | Model View Culture:

We have an unambiguous, cross-platform way to represent “PILE OF POO” (💩), while we’re still debating which of the 1.2 billion native Chinese speakers deserve to spell their own names correctly.

Doxygen and NS_ENUM

If you're having trouble getting Doxygen to parse NS_ENUM statements, here's the config file magic:

PREDEFINED = "NS_ENUM(_type, _name)=enum _name : _type"

You may or may not want to enable EXPAND_ONLY_PREDEF to only expand that one macro.

Hacker Mythologies and Mismanagement

Hacker Mythologies and Mismanagement by Betsy Haibel | Model View Culture:

But these beliefs about who we are are actually about what makes us feel special.

In other words, software engineers are humans.

As humans, we lie to ourselves. We lie to ourselves about who we are. (We’re smarter than you.) We lie to ourselves about what we do. (We are changing the world, one photo-sharing app at a time.) We lie to ourselves about how best to do it. (In caves.)

These lies pile atop each other and twine into intractable knots. At best, this hampers our ability to do work well. At worst, it creates destructive or abusive work environments.

Swizzling Swift

Swift & the Objective-C Runtime:

Even when written without a single line of Objective-C code, every Swift app executes inside the Objective-C runtime, opening up a world of dynamic dispatch and associated runtime manipulation

With an opener like that, how can you not read (and be both slightly horrified and optimistic)?

Carbon is Apparently Not Dated

High Caffeine Content — MPW, Carbon and building Classic Mac OS apps in OS...:

What interested me the most is how so much of the API remained identical - I was still using only functions that existed on System 1.0 in my app, but they were working just the same as ever in a Carbonized version. The single built binary ran on OS 8.1 all the way to 10.6 (care of Rosetta).

My mind wandered to Carbon as it exists in 10.10. While Apple decided not to port it to 64-bit (for all the right reasons), the 32-bit version of Carbon is still here in the latest release of OS X - I wondered how much of it was intact.

Turns out the answer is: all of it.

A Stanford Education at a NaN of the cost

Developing iOS 8 Apps with Swift - Download Free Content from Stanford on iTunes:

Updated for iOS 8 and Swift. Tools and APIs required to build applications for the iPhone and iPad platforms using the iOS SDK. User interface design for mobile devices and unique user interactions using multi-touch technologies. Object-oriented design using model-view-controller paradigm, memory management, Swift programming language. Other topics include: animation, mobile device power management, multi-threading, networking and performance considerations.

You're Welcome


Note that's a "pretty" ellipsis at the end -- one you make with Option-;.

On Useful Error Messages

CoreData: error: (522) I/O error for database at /var/mobile/Containers/Data/Application/012CEF58-D497-451E-9256-CDD266930AF4/Library/Application Support/APPNAME/APPNAME. SQLite error code:522, 'not an error'

My favorite kind of errors are errors that aren't errors but fail like errors because they're really errors that don't know they're errors.