Tue 20 Jun 2017
Having a weird and enjoyable mix of projects right now, hence the all-over-the-place scatter below.
- The Mother of All Demos, annotated - Doug Engelbart’s 1968 demo à la Maciej Ceglowski image-beside-text.
- Intersection Tests in 2D - The basics of hit testing.
- Isovist Challenge - Using Dynamo to create isovists (I have an interesting and weird project right now involving this kind of geometric analysis).
- Soane Museum: Real and Perceived Space - Another isovist analysis, but this time in a piece of architecture famous for its cleverness with mirrors to analyze the space that appears to but doesn’t really exist. Also, really nice looking diagrams.
- clojure.spec: a lisp-flavoured type system on Vimeo - Having high hopes for clojure.spec letting me stick with dynamic typing but not setting my hair on fire all the time.
- Variants are Not Unions - Tagged unions for when you don’t have OR types in your language. Something something deep about graphs versus trees for human affairs and classification problems.
- The A11Y Project - I’m experimenting with how much of this I can cram into a current project without really mentioning it. Trying out VoiceOver and my laptop’s screen screen brightness turned to zero a few times a week.
- Good Design is About Process, not Product - The bit about “giving yourself time” meaning not setting a limit on how long to work is highly profound, and not the only highly profound bit. Worth an annual re-read.
Wed 7 Sep 2016
The long hiatus in which I kind of forget I have a blog.
Thu 19 Feb 2015
I’m upset, so I’m taking apart my computers. If I were a poet, I’d get drunk and yell at the people I love. As it is, I’m gutting my machines.
Wed 21 Jan 2015
So, I watched the Microsoft HoloLens video. I’m diagnosing my relative lack
of excitement as having something to do with it showing an incomplete vision.
Depicting the idea that this technology is closer than ever before to
representing what it’s like to sculpt physical materials is a lazy trope.
Sculpting virtual rockets for your kid is just not a use for this that will
ever matter, even if it actually becomes possible as shown.
Why exactly are we so obsessed with faithful represention?
Another tidy analogy: in architectural design, orthographic representation
is fundamental to understanding element relationships well enough to inform the
judgments one needs to make to design well. It’s sufficiently fundamental that
more experienced architects can often make an accurate guess as to whether
someone designed entirely in digital model or have actually drawn plans,
sections and elevations. (The hint for me is that there are often these curiously
under-resolved areas that would have been immediately obvious on eg. an
And yet, these are representations that deliberately distort “reality.” There
is no place you could stand or eye you could have that could actually see this
view of the real building. They are amazingly useful once you learn to read
them. (That reading them is a skill means, of course, that there’s lots of room
for misinterpretation, which is why real and digital models are also
valuable. I’m just saying they don’t stand alone any better than an
orthographic does). A representation’s usefulness for providing design feedback
can come as much from how ingeniously poorly it matches reality as how
So, that’s a long way around to saying that what will knock my socks off in
one of these videos is when I see some thought given to even a guess at a new
distorted representations–one that we may not even yet be able to read–that
will become easy.
Sat 10 Jan 2015
I had a professor who would turn his students’s scale models around in his
hands, holding them about two inches from his nose, and very subtly wiggle
various bits of the model.
Fairly often, we’d hear a snap, a piece would come off in his fingers, and–rather
than apologize–our professor would shrug, say that that piece really wasn’t
in service of the design idea and didn’t need to be there anyway, toss it
aside, and resume his deconstructive criticism.
For the most part he was right: any piece that he can remove with a small
wiggle is quite likely to be poorly attached conceptually to the overall
design, and its actual physical attachment is a surprisingly accurate and
understandable-to-know-nothing-kids proxy judgment for the harder conceptual
one. (We did eventually start to grok the deeper idea, but mainly the
short-term result was that we started gluing the hell out of things).
I was remembering this, and jumped from it to a terrible idea for ruthlessly
helping people internalize what makes for a good automated test suite:
Imagine an automated testing tool that runs the entire test suite once per
method, removing that method and checking if at least one test fails. If the
tests still pass, the tool fails to apologize, shrugs, says it didn’t need to
be there anyway, deletes the method entirely, and resumes with the next pass.
Mon 29 Dec 2014
Some James Golick talks you should have already seen, but you can remedy that right now if you haven’t.
Mon 8 Dec 2014
“Education is the point at which we decide whether we love the world enough
to assume responsibility for it and by the same token save it from that ruin
which, except for renewal, except for the coming of the new and young, would
be inevitable. And education, too, is where we decide whether we love our
children enough not to expel them from our world and leave them to their own
devices, nor to strike from their hands their chance of undertaking something
new, something unforeseen by us, but to prepare them in advance for the task
of renewing a common world.”
- Transmit iOS 1.1.1 - Count me in with everyone else who’s completely mystified by Apple’s ability to generate bad blood with developers. I presume that this move was precipitated by the iOS user community’s enormous capacity for creative feature abuse, but the point of the story is that Apple can’t continue to beat up its best developers forever, can it?
- Caravan: Ruby API Versioning & Enforcement - The Interpol gem is an interesting idea.
- Ed-Tech’s Monsters - ‘But it is a slight-of-hand to maintain that technological changes are “what technology wants.” It’s an argument that obscures what industry, business, systems, power want. It is intellectually disingenuous. It is politically dangerous.’
Tue 19 Aug 2014
Things finally settling down to some semblance of normalcy.
Fri 28 Jun 2013
Today, I wind up eight years working as a project architect for Acton Ostry
Architects. As of tomorrow, 29 June 2013, my full-time employer is
The Office of Ryan McCuaig. We make software for architects, engineers
The provisional motto is “Computing for making better buildings.”
Like most fields right now, building design and construction has never before
had so much data available, and such an uneven distribution of skills and tools
that might let us make sense of it and free our thinking for higher-order
problems. Even if it were tenable now (i.e., it isn’t), is only becoming less
so to waste brainpower on tedium better handled by these infernal yet
stupendously amazing machines.
I’ve been an architect-in-training and then registered architect on the sharp
pointy end of getting buildings built since 1999, and–along with having earned
a degree in computer science–I’ve worked hard to become a skilled web, Mac/iOS
and CAD plugin developer alongside that. So, I’m thinking I know a thing or two
about the intersection of buildings and computers.
If you also care deeply about making buildings, know we could be doing it
better and want to talk about the possibility of working with ORM, please get
I want to end with a thank-you to Mark Ostry, Russell Acton and my talented
colleagues at AOA, and to my former employer Bruce Carscadden,
for the opportunities, support, trust, banter, mentorship, cameraderie, and for
showing me what relentlessness in pursuit of design excellence really looks