Blog

17 Oct 2023
The name "Minor"
About my name
24 Sep 2023
Horseshoes, hand grenades, and the sunk cost fallacy
Describing a common pattern in software projects
04 Jun 2023
Paying it forward
Guiding my personal projects and other efforts
04 Oct 2023
Frontend development
My journey to frontend development
28 May 2023
Prelinger Library
Passage about the Prelinger Library
04 Mar 2023
Generous interfaces
Learning about Mitchell Whitelaw's work
11 Jan 2023
The noetic prism
Puzzling over the DIKW pyramid
18 Dec 2022
Mathematical consultant
Quote from Bret Victor's foreword to Richard Hamming's The Art of Doing Science and Engineering: Learning to Learn
24 Jun 2022
Interactionist models
Reading about interactionist models in human-computer interaction
15 Jun 2022
Slow technology
Impressions of the paper "Slow Technology - Designing for Reflection"
09 May 2022
Knowledge Graph Conference
Interesting talks from the Knowledge Graph Conference
18 Apr 2022
Tools
Thoughts on tool-building
29 Mar 2022
Long Now
The Long Now Foundation and John Markoff's new biography of Stewart Brand
12 Jan 2022
Turing lectures
Favorite Turing lectures
12 Jan 2022
Lessons from the Turing lectures
Passages from the Turing lectures
12 Dec 2021
Learning spiral
The way I approach learning new subjects
12 Dec 2021
Erasmatazz
Exploring Chris Crawford's web site
15 Oct 2021
Designing data-intensive applications
Impressions of Martin Kleppmann's Designing Data-Intensive Applications and projects at Ink & Switch
28 Sep 2021
Antiques code show
Alumni event at the Department of Computer Science and Technology in Cambridge
17 Sep 2021
McLuhanish feeling
Quote from Alan Kay's essay on "The Early History of Smalltalk"
03 Sep 2021
Library research serendipity
Reading a paper from 1992, from 1992, "Chance in the midst of design: approaches to library research serendipity"
03 Sep 2021
The future of programming
Thoughts on Bret Victor's talk on "The Future of Programming"
19 Aug 2021
Standing desk
How I got started using a standing desk
18 Aug 2021
Dvorak
How I got started with the Dvorak keyboard
09 Aug 2021
Personal mastery
Quote from Dan Ingalls's essay "Design Principles Behind Smalltalk"
05 Aug 2021
Warburg Library
Passage about the Warburg Library
30 Jul 2021
Mike Gordon
Rediscovering Professor Gordon's web site
23 Jul 2021
Text and object
Quote from Smith and Ungar's essay "Programming as an Experience: The Inspiration for Self"
16 Jun 2021
Humming
Guardian excerpt from a new book, Anthro-Vision: How Anthropology Can Explain Business and Life
24 Apr 2021
MuseWeb 2021
Interesting papers from the MuseWeb 2021 conference
28 Mar 2021
Computers for Cynics
Ted Nelson's "Computers for Cynics" video series
21 Mar 2021
Incongruity
Passage from Thomas Kuhn's The Structure of Scientific Revolutions
13 Mar 2021
Forgotten ideas in computer science
References from a Joe Armstrong talk on "The Forgotten Ideas in Computer Science"
27 Feb 2021
Primary sources
Understanding computer science through seminal papers
06 Feb 2021
Writing to learn
Reading Zinsser's Writing to Learn: How to Write - and Think - Clearly About Any Subject at All
06 Feb 2021
WCIT
Learning about Dame Stephanie Shirley and the Worshipful Company of Information Technologies
16 Jan 2021
Seshat
Discovering the Seshat project and the study of cliodynamics
02 Dec 2020
The virtue of boring
Passage from the Google Site Reliability Engineering book
01 Dec 2020
Commonsense psychology
Notes on Andrew Gordon and Jerry Hobbs's series of papers on commonsense psychology
01 Dec 2020
Commonsense estimation
Notes on "Optimal Choice of Granularity In Commonsense Estimation" by Jerry Hobbs
28 Oct 2020
Material culture
Notes on Jules David Prown's "Mind in Matter: An Introduction to Material Culture Theory and Method"
10 Oct 2020
Two logicians and a poet
Amusing slide from a John Sowa keynote on "Language, Ontology, and the Semantic Web"
29 Aug 2020
Speichertechnik
Remembering a class I took at the TU Berlin
11 Jul 2020
Under the sun
Why I study the history of science and technology
11 Jul 2020
Collective intelligence in groups
Two articles about collective intelligence in groups
20 Jun 2020
Ideas
Buckminster Fuller and the importance of building prototypes
13 Jun 2020
Andrew Odlyzko
One of my intellectual heroes
06 Jun 2020
Explainability
Reflecting on Robert Hoffman's talk about explainable artificial intelligence
23 May 2020
Personal projects
Using personal projects to learn and experiment
10 May 2020
W. Richard Stevens
The author of my favorite technical book
10 May 2020
David MacKay
A professional role model
06 May 2020
How to write a great research paper
Simon Peyton-Jones's talks for new researchers
05 May 2020
Bill Joy interview
Passages from a 2003 Wired interview with Bill Joy
04 May 2020
Wheeler lectures
Enjoying computer science war stories
04 May 2020
Jean Bacon interview
Video interview with my doctoral advisor
05 Apr 2020
Adjacent possible
Reading Steven Johnson's How We Got to Now: Six Innovations That Made the Modern World
19 Mar 2020
Computational creativity
Reading papers from the International Conference on Computational Creativity
07 Mar 2020
A clean architecture for semantic web applications
A talk about recent work I've done on user-facing applications of semantic technologies
26 Feb 2020
Learning to Listen for Design
Leading a discussion group on a paper from Onward! 2019, "Learning to Listen for Design" by Baniassad, et al.
28 Nov 2019
Strange Loop 2019
Interesting talks from The Strange Loop conference
28 Nov 2019
History as a giant data set
Discovering cliodynamics and the Seshat global history databank
11 May 2019
The CEO as Salesman
Passage from "Portrait of the CEO as Salesman"
14 Apr 2019
Midwest Junto for the History of Science
Attending the Midwest Junto for the History of Science
15 Sep 2018
Strange Loop 2018
Interesting talks from The Strange Loop conference
30 Sep 2023
Resisting the impersonal
Focusing on the personal and relational
27 Sep 2023
Good ideas vs. good execution
Ruminating on the relative abundance of good ideas compared to good execution
02 Jun 2023
Interviewing
Lessons learned from years of professional interviews
23 Jan 2022
T-shaped
The concept of T-shaped skills
08 Jan 2022
Tulsa BBS scene
Reminisces of the Tulsa BBS scene in the early 1990s
23 Oct 2021
What makes a job good?
Priorities
14 Feb 2021
Optimal experience
The changing nature of optimal experiences in my work
30 May 2020
Good enough
The space between "good enough" and gold-plating
02 May 2020
Code is for other people to read
Thoughts on consistency in software engineering
13 Apr 2024
Paradicms retrospective
Reflecting on a personal project
13 Apr 2024
Notablist retrospective
Reflecting on a startup experience
08 Jan 2024
Awesome Software Engineering History
An Awesome List of books, videos, and other resources for learning about the history of software engineering
04 Jan 2024
Dive Into Schema.org
Dive Into Schema.org project
30 Dec 2021
Bildungsroman
Exploring digital exhibitions with curated content
16 Jan 2021
Sharing Historic Costume Collections Online
Reflecting on "Sharing Historic Costume Collections Online" and how it's shaped my direction since 2015
03 Dec 2020
Sampo model
Semantic portals for digital humanities
16 Sep 2020
Events
Reflections on modeling historical events
10 Sep 2020
Value of curation
Curation as a process of discovering, understanding, contextualizing, and synthesizing knowledge about the world
10 Sep 2020
CIDOC CRM
Exploring the CIDOC Conceptual Reference Model (CRM)
23 Aug 2020
Paradicms
New personal project: Paradicms, a multi-paradigm Collections Management System (CMS) for small museums and archives
06 Jun 2020
Costume Core 0.4
New release of the Costume Core ontology for describing artifacts of historic clothing
22 Dec 2019
DressDiscover
Revisiting one of my personal projects, DressDiscover, a suite of open source web applications for digital collections of historic clothing
01 Sep 2019
NerdSwipe
NerdSwipe personal project
19 Mar 2019
ThingsWorth
Outline of an ongoing personal project, ThingsWorth
09 Feb 2023
Teaching Machine Learning
Experiences teaching Machine Learning classes at RPI
05 Jun 2021
Mentorship
Experiences mentoring and being mentored
04 Sep 2019
Test early, test often, and keep your master branch stable
Talk on software testing
09 Oct 2024
SPARQL CONSTRUCT queries over RDF lists
With examples
21 Jun 2024
RDF text compression experiment
Summary of the experiment and key results
16 Jul 2023
Integrating Getty Linked Art
Paradicms blog post
12 Jul 2023
Paradicms at LD4 2023
Paradicms blog post
07 Jun 2023
RDF-backed models in TypeScript
Paradicms blog post
05 Jun 2023
Techniques for handling RDF in JavaScript
Paradicms blog post
20 May 2023
Digital collections: data first or interface first?
Paradicms blog post
11 May 2023
Data model fever and the case of the missing applications
Paradicms blog post
11 Apr 2022
Improving the faceted search interface in the Paradicms work search app
Paradicms blog post