Gifts of knowledge to humanity There are many commonalities we can admire in these endeavors: the dazzling leap of imagination, the broad scope of applicability, the founding of a new paradigm. But let’s focus here on their form of distribution. These are all things that are taught. To “use” them means to learn them, understand them, internalize them, perform them with one’s own hands. They are free to any open mind. In Hamming’s world, great achievements are gifts of knowledge to humanity. Bret Victor, The Art of Doing Science and Engineering: Learning to Learn knowledge
Hamming-greatness Hamming-greatness is tied, inseparably, with the conception of science and engineering as public service. This school of thought is not extinct today, but it is rare, and doing such work is not impossible, but fights a nearly overwhelming current. Bret Victor, The Art of Doing Science and Engineering: Learning to Learn
Up and Down the Ladder of Abstraction An Essay by Bret Victor worrydream.com The most powerful way to gain insight into a system is by moving between levels of abstraction. Many designers do this instinctively. But it's easy to get stuck on the ground, experiencing concrete systems with no higher-level view. It's also easy to get stuck in the clouds, working entirely with abstract equations or aggregate statistics. This interactive essay presents the ladder of abstraction, a technique for thinking explicitly about these levels, so a designer can move among them consciously and confidently. From a roving viewpoint abstractionunderstandinginteraction
The Ladder of Abstraction An Essay by Bret Victor worrydream.com Collaborative Information Architecture at Scale informationthinkingcommunicationabstraction
A Brief Rant An Essay by Bret Victor worrydream.com Like, just a post complaining that screens should be better designtechnologywwwinteractionbody
The Future of Programming A Talk by Bret Victor worrydream.com programmingcodetechnologyinteractionsoftware
Recognizing Constraints An Article by Jeremy Wagner css-tricks.com Super Nintendo games were the flavor of the decade when I was younger, and there’s no better example of building incredible things within comparably meager constraints. Developers on SNES titles were limited to, among other things: 16-bit color. 8 channel stereo output. Cartridges with storage capacities measured in megabits, not megabytes. Limited 3D rendering capabilities on select titles which embedded a special chip in the cartridge. Despite these constraints, game developers cranked out incredible and memorable titles that will endure beyond our lifetimes. Yet, the constraints SNES developers faced were static. You had a single platform with a single set of capabilities. If you could stay within those capabilities and maximize their potential, your game could be played—and adored—by anyone with an SNES console. PC games, on the other hand, had to be developed within a more flexible set of constraints. I remember one of my first PC games had its range of system requirements displayed on the side of the box: Have at least a 386 processor—but Pentium is preferred. Ad Lib or PC speaker supported—but Sound Blaster is best. Show up to the party with at least 4 megabytes of RAM—but more is better. constraints