Bread & Circuits
The blog of David Humphrey
- Posts
- 609 from 25 Apr 2008 to 26 Jun 2025
- Posting
- now and then
- Kind
- personal blog
- Feed
- https://blog.humphd.org/rss/
2025 1
2024 1
2023 24
- In 2023
- Teaching ChatCraft to do Citations
- Releasing ACTION
- A month with AudioMoth
- Teaching ChatCraft to use Tools
- Time vs Size
- What Edit Unlocks
- My Spring with ChatCraft.org
- Thinking about Context
- ChatCraft.org
- Starchart 1.0.0: My.Custom.Domain
- Unnecessarily Hard
- A Week with ChatGPT
- Starchart 0.7
- On Tedium
- AI Emerging Technologies Committee
- CheatGPT
- Starchart 0.3
- DevelopingSpace
- Starchart 0.2
- Starchart 0.1!
- Multipass VMs on macOS
- GPT and Pouring Language Through Shape
- Teaching, Winter 2023
2022 11
- Planning Starchart
- Building an Understanding
- On the value of small contributions
- Learning to live with failure
- HTTP Testing with Hurl in node.js
- Teaching AWS and Cloud Computing for Programmers
- Shipping Telescope 2.8.x
- Shipping Telescope 2.7.0
- From Telescope 2.5.0 to 2.6.1
- What it is and isn't doing
- Toward Telescope 3.0
2021 15
- Teaching Open Source, Fall 2021
- If you liked it then you shoulda put a link on it
- Yours to Discover
- Learning to not fear the unknown
- Why newer isn't always better
- Learning to Review Code
- Starting Open Source Fall 2021
- There isn't an app for that
- Telescope 2.0
- Shipping Telescope 1.9.5
- Content
- Observations on Telescope 1.8
- Planning for Telescope 1.7 and beyond
- What you see vs. What's there
- Toward Telescope 2.0
2020 17
- SnowyOwls.ca
- Telescope 1.4.0
- The Owl Box
- On Owls
- Teaching and Thinking Globally
- On Boring Paths
- Experimenting with Twilio
- Telescope 1.0, or "Dave is once again asking for a blog"
- Online, Week 3
- Git and Preparing for a 1.0
- On Teaching Online, Week 2
- NSSSSSSO: Not So Simple Seneca SAML SSO
- Teaching in the time of Corona
- Older, but not wiser
- Shipping Telescope 0.6, Planning 0.7
- How to do design reviews
- On Telescope 0.5 and Dogfooding
2019 11
2018 9
2017 17
- Reading Other People's Books
- The limits of my language are the limits of my world
- "What are you struggling with?"
- Service Workers and a Promise to Catch
- Space Git
- Remembering Jordan
- When the music's over, turn out the lights
- On URLs
- Fixing a bug in TensorBoard
- Why Good-First-Bugs often aren't
- Service Workers and Cache Storage in Thimble
- "When in doubt, WebIDL"
- Git does what you tell it
- What Happens when you Contribute
- git, with abandon
- Fixing a Bug in Mozilla Thimble
- Your First Github PR - A Guided Tour
2016 3
2015 9
2014 6
2013 18
- An Hour of Code spawns hours of coding
- Concept for a Shared Web File System
- Experiments with audio, part XI: RIP Audio Data API (2009 to 2013)
- The Web is the Platform: File System Edition
- Webmaker Localization Beta
- "The Internet:" re-reading the Mozilla Manifesto
- Reading "Words"
- Webmaker.org after 9 weeks, in 9 weeks
- Localizing Webmaker
- Thought experiment: letting git normalize whitespace
- Toward Webmaker Custom Elements, Web Components
- Watching people use Media Clips
- 'Pattern Recognition' pattern recognition
- HTML5 time and data elements in Firefox
- Webmaker - Sequencing Web Media
- On Code Review
- A prayer for Aaron
- Visual Studio considered Harmful
2012 37
- In 2013: letters, encouragement, edification
- The first view into Literature
- Code for Christmas
- Of dogfood and web making
- WEBVTT Update, Google Test, debugging unit tests
- TravisCI builds for the webvtt parser
- Web App JavaScript Crash Reporting
- Popcorn Maker 1.0 Beta - TED Launch
- Implementing WebVTT in Firefox at Seneca
- On bunkum: a word with Le Carré
- Processing.js 1.4.0
- Gitter: Toward Twitter on Git(hub)
- On Tools and Tools()
- HTML5 media and non-HTML5 media
- Fixing subpixel rendering on OS X secondary monitors
- Focus and Select: a cross-browser bed time story
- End of Semester
- Sadness for North Korea
- On the long game: a 20 year web page
- You can
- Elsewhere and Otherwise
- Two notes on books
- Required Reading
- Next-Next Generation Web Making
- International Women's Day 2012
- "Dad, tell them we made a game!"
- Compelled
- Future in the Past
- One needs models: on being dad
- How to crash like you mean it
- Beyond Reality TV: The New Acting
- A Harvest Table
- Learning to type
- What I'd do: software teams as indie bands
- Return early, return often
- Occasionals
- Holiday Reading
2011 47
- The Canadian Apple TV Experience
- Using LaTeX to publish a novel on Lulu
- Reading Hitchens, Remembering Chesterton
- Implementing Mouse Lock, conclusion
- Level Up: Mouse Lock + Gamepad builds
- Implementing Mouse Lock, part IV
- Implementing Mouse Lock, part III
- Implementing Mouse Lock, part II
- Mixing Processing, Processing.js, JavaScript
- Reflections on the Mozilla Media Festival
- Git and Github for Educators and Students
- Implementing Mouse Lock, part I
- A+ for Failure
- On the joys of 1.0
- The Open Web Index
- Elderberry Pie
- Why "All Tests Pass" is not "It Works"
- On the Ethics of Virtual Endings
- An afternoon with pdf.js and CubicVR.js
- What is 0.1?
- The third way
- Command-line SpiderMonkey
- Nature vs. Nurture
- The Killdeer Nest
- Popcorn.js and Khan Academy
- Spring means welcoming new CDOT researchers
- Dynamic Processing.js Sketches in a Tweet
- No Comply Documentary
- At the tomb, on Easter
- "Do it on the web"
- The joys of same origin file access
- Painting with Tape
- Assessing the familiar by means of the unfamiliar
- Election 2011 Issue: Rural Broadband
- No Comply
- Dear Twitter,
- Firefox 4, bring the noise!
- Being Online
- a still small voice
- The question of loss online
- #prayforjapan
- A moment for Japan
- JavaScript Typed Arrays
- PBS, Popcorn.js, POTUS
- Chinese Cherry Blossoms
- On the web as soundscape
- Credibility
2010 87
- In 2010
- Just like that
- The humble bee
- Of passion and suffering
- Flight of the Navigator
- The Storyteller
- Seneca's Open Source Approach in Globe and Mail
- "You can bump into anybody on Twitter."
- “As many of you know, one of my hobbies is catching cheaters”
- Processing.js 1.0 Released
- Beavers in the corn
- Iterating over Objects in JavaScript Quickly
- Tending the Fire
- Filed under "Cuisine : American"
- Mozilla Drumbeat Festival: Open Video Lab
- 50 visualizations of Life's Things
- Visualizing Source Repos with gource
- Processing, Mozilla, and Seneca a year later
- What real political engagement looks like
- "God is love"
- Exposing the Professional
- The Book of the Web
- "First, I'd like to make a forest"
- sfxr.js: sound for open web games
- Sustenance
- Introversion, a definition by negation
- Flash vs. HTML5 dance-off
- On the letter from a friend
- How much does a song cost?
- On the small gathering
- The paradox of good decision making
- Experiments with audio, conclusion
- On working with instead of on
- Vocamus 1140
- Update on DXR work
- "What we say no to"
- On the possibility of expressing love online
- Restarting DXR Development
- Two Experiences with the Local
- On the Reading of Books
- Great Horned Owl
- Your homework
- Questions about books after dinner
- Open Source Research at Seneca
- On Distinction
- Experiments with audio, part X
- 1to100.js -- a first computer program
- View Source as Musical Innovation
- Experiments with audio, part IX
- "Tomorrow will be like today, only more so"
- We make stuff
- On Lying
- One for the road
- This page intentionally left blank.
- Thoughts on the death notice
- Rereading Girard on Good Friday
- Rihanna covers René
- Watching the open web play with Processing.js
- Processing.js 0.7, plus ref tests with canvas
- Understanding the cost of arrays with canvas
- On the need for an around which
- Walking through Arrivals at YYZ
- A bird in the hand and two in the field
- Processing.js 0.6 Released
- Processing.js 0.5 Released
- HOWTO: turn a student into a software developer
- Family Day
- On the need for an ethical online existence
- Don't use the R-word unless you mean it
- Things then and now, part II
- Things then and now
- Writing Automated Tests for Processing.js
- The case of the open file handle
- Another road
- Bad Gr@mm3r?
- Flatbreads
- Giving the parser a B-
- On the joys of the test harness
- San Francisco goes Open Source
- Experiments with audio, part VIII
- Committed to memory
- Experiments with audio, part VII
- Snow Buntings
- The Web vs. Canada
- Experiments with audio, part VI
- Brown Eggs
- A room of one's own
2009 195
- Winter Music
- Getting the tree
- Experiments with audio, part V
- Why I don't develop in .NET anymore
- Experiments with audio, part IV
- Experiments with audio, part III
- Experiments with audio, part II.I
- Experiments with audio, part II
- Why I'm not a CEO
- Awake to the possibility of sleep
- Experiments with audio, part I
- Christmas and childhood
- My First FUDCon
- The other side of search
- Dealing with rejection
- Update on the Processing for the Web Project
- Vocamus 901
- Vocamus 898
- // comments considered harmful
- circa 1994
- "I want your love"
- Morning Coffee, blogs, and XPCOM
- The Essentialism of Materialism and Immaterialism
- Gamercamp, Nov 21
- Encouragement
- Doing without
- text-decoration: underline
- Rich client
- The Sacred
- Mozilla Jetpack for Learning Design Challenge
- Running Treehydra and Dehydra scripts
- Student Contribution Opportunity
- Failure as contribution
- I'm hopeful, too--PatchCulture.org
- "Who are your peers?" A response to Joel Spolsky
- How to go to a tech event (as a student)
- Disentangling what, when, and how
- Catching up on DXR blogging
- FSOSS 2009 is next Friday Oct 30
- "Could you explain to the students what you are proposing?"
- Unboxing the 2410: apples, cables, welding, seed, and books
- New Friends
- Classified Ad
- The hardest edge
- If you build it, they will build more
- Two thoughts from class
- JavaScript regex and exec()
- Writing off Technical Debt
- Shared Milestones
- Letters on the ground
- "For all the details, please visit our website"
- Thanksgiving weekend, somewhere in Canada
- In praise of the library
- Prophecy
- On being with
- A moment of reading
- Real World = Real People
- On being playful
- Taking it to the next dimension
- Break it real good
- "that's what I'm planning to do"
- Reading Against and Reading Up Against
- Vocamus 760
- Here's a tip
- Responding to the web
- Defining Open Data
- Machinations
- Vocamus 724
- Learning Thinking
- Getting what we paid for as Canadians
- Quiet civility
- Rereading Chesterton
- Inane babble, because the world is inane and insane
- On the way to thinking
- Graffiti
- Extra Curricular
- Mozilla and Education, Fall 2009 edition
- A bridge
- Vignette of Home School
- Home Birth
- How to grade open source work
- Seeing the common uncommon
- search?q=book
- Good Books Don't Have to Be Hard Work, But Lots Are
- Not in the credits, but...
- TD Canada Trust and Greentec rock
- How to teach children about computers
- Of Birds' Nests
- Not by sight
- "end of story"
- Looking for the 'Old' link
- Blogging and Friendship
- On the call, and the invitation to friendship
- The Mimetic Theory: Listening to Madonna with Girard
- Peaches two ways
- On seeing a Moose
- Twitter is broken.
- On being watched
- Taking other ways
- How to love gcc
- Encouraging Students to Blog
- Patching the web: on the uses of "View Source"
- Summer School - POSSE 2009
- Walk it off
- Laughing at myself
- "So when does home school end for the summer?"
- Wild Raspberries
- Bats, Nagel, and Kafka
- "Science does not think."
- Open Web Style Lectures: A response to Luis von Ahn
- "I am never here only"
- Bats, the question, and Heidegger
- Proud to be a part of Firefox 3.5
- Introducing DXR - Bringing Static Analysis to the Web
- @humphd (with a 'd', like "Didn't sign-up soon enough to get humph")
- "students want to produce meaningful output"
- "You may need to apply force"
- FSOSS 2009 accepting Presentation Proposals
- Mozilla Education Goal: 100 Student Projects by June 30
- George Mason University sued over Zotero
- Field Stone: "The threshold is always stony"
- Mozilla Education: what getting involved looks like
- On seeing the Common Loon
- Daytime Nighthawk
- Behold, I make all things new
- DXR pre-alpha: Source Code Lexicography
- "Practical Programming" arrives
- Mozilla, Education...Hybrid
- Growing the Mozilla Education community
- Vocamus 509
- "Is spatial ability the 'Geek Gene'?"
- Bad timing!
- A conversation with old friends
- Two lessons before bed
- Halting
- I wonder who will get tired first...
- Another one in the can
- Just a note that I'm looking forward to your projects...
- Quick glance
- Straight to the source
- Yo dojo!
- What it's like to have daughters
- On accepting the role and playing the part
- Faster builds, smaller footprint, zero functionality!
- Peer Review and absence as presence
- Why is programming fun?
- Thought on Easter
- Is Not
- Don't call it the Internet if it's just for the US
- Something out of nothing
- "Where did you get that output?"
- Longing for design
- How to avoid April 1 on the web
- Fine print
- Counting the cost
- "HTML is not an output format. HTML is The Format."
- Vernacular
- Mozilla and Creative Commons teach practical open education skills
- Mozilla and Education version 0.4: Projects, Resources, Mailing List
- Inevitable, but unforeseen
- Field Guides
- JS Getter Lazy Init Pattern
- Vocamus 430
- TeachingOpenSource.org
- Keepin' it real
- Mozilla and Education version 0.3: [student-project] open for business
- You can't go back
- "Related Videos"
- to wit
- Tinkering with DXR
- Watching pymake get built
- When worlds collide
- Mozilla and Education version 0.2: Potential Projects
- Vocamus 391
- What does open source look like?
- Mozilla and Education, version 0.1
- Porcupine
- Surman in the Globe
- Why blother?
- "mozconfig" -- a play in two acts
- "You have 15 new messages from 000-000-0000"
- I've picked my Mac project
- Canvas3D and C3DL hit Ars
- We could do this
- I wondered how long this would take
- Seneca partnership with Eclipse WTP project
- Happy Mac is Happy
- Searching for Q on Wikipedia
- C3DL 0.6
- Seven Things (accidentally deleted, now restored)
- Mobile embedded development conference - Waterloo, Canada
- New crew
- Milking the sacred cow
- nostosalgos
- VncSharp 1.0 Released
2008 101
- Merry Worlde
- You can spot Big Media because it's not spelled with an '<a>'
- Stroustrup on the state of CS Education
- Taking it over the line
- That's what I'm talking about
- Gladwell on CBC
- Some more emacs love
- Mike Rutzen swims with Great White Sharks
- Toward an understanding of failure and coping
- Free as in 'Hairy'
- Big Dog
- nsString dave=fail;
- Unexpected guests
- On teaching students how to blog
- Chapter 41, "Moby Dick"
- Parkour
- "Every stage is better than the one before"
- RFC2060
- Quality Time with Mercurial
- On JavaScript
- 10K Hours
- Doesn't everyone do it like this?
- Fire Tweet
- Make it go zOOom
- Sayings
- I Remember - Dulce Et Decorum Est
- Return of the White Whale
- Change might need to change
- Context and Correction
- "Canada's open source school"
- It's free
- FSOSS 2008 Wrap-up: Toward Open Source Education
- The tyranny of presence
- FSOSS, teaching open source, and golf
- Vocamus 249
- Northern Shrike
- FSOSS Online Registration Closes TODAY!
- Apple recognizes homeschool
- There's a simple fix to this
- What is a release?
- Toward a Philosophy of the Table
- Working at scale
- Best quote from class today
- James Morrison
- Big wins come from thinking small
- VMWare Fusion 2 not ready
- On the problem of software tools
- Desiring your tools
- For my wife...
- Free Software and Open Source Symposium (FSOSS)
- Hey, Gmail, what's up with you?
- Vocamus 207
- I give up
- Mozilla DevDays Toronto -- TOMORROW (Sept 15)!
- Handling multiple browsers
- Reduce, Reuse, Recycle
- New troops!
- On the wall
- Linux Club
- TED, meet, TERRY
- Vocamus 183
- In the style of
- Mozilla Toronto DevDays and FSOSS
- Mozilla Summit 2008, IMHO
- Vocamus 175
- Give these guys a hand
- On Seeing
- Killer Whale vs. Great White Shark
- I don't have a camera, but I couldn't capture this anyway
- Vocamus 170
- Open Source killed the Video Star
- The Big Tree
- "Please don't leave a message after the tone."
- Explaining the web by cooking
- Mike Shaver, graduate
- Chris Tyler appointed to the Fedora Board
- Grrr...you have new mail!
- Vocamus 161
- Open Source Flash Server?
- My favourite new feature in Firefox 3
- As Michael Geist says
- What's there if you know how to look
- Not-so-secret Sauce
- Who mourns the mourning dove?
- Firefox 3 where it belongs, in the NYT
- dehydra-xref 0.1
- "Hey, what if it did this..."
- An ever expanding family
- GeekDad ftw
- Toward a Dehydra-MXR love child
- C-a'ing emacs and screen
- Clear cutting
- Building boats
- sqlite and dehydra are friends
- Dehydration
- Army of One
- One Big Library Unconference
- VNC# in Algeria; VNC# needs a maintainer
- Vocamus 139
- Same great taste
- Hacking Mozilla Flickr Style