Bio
Dave is a semi-retired software development consultant (writing code and giving advice about it), with about 38 years of professional experience in a wide variety of languages, systems, frameworks, techniques, domains, etc. He is the T. Rex of Codosaurus, LLC (his one-person consulting firm, which explains how he can get such a cool title, at https://www.Codosaur.us/) near Washington, DC, USA. His main focus in software is to spread the gospel of quality, including defining what that even means. In his spare time, he makes mead, teaches others how, and speaks at conferences.
My Talks
ACRUMEN: What IS Software Quality Anyway?!
Without a good definition of software quality, you'll have a tough time achieving it! ACRUMEN is my definition, based on six one-word aspects. I’ll explain why we need a definition, what this one...
Drink like a [...] Viking: The History and Making of MEAD!
Mead is enjoying a resurgence, thanks in part to online games. People have heard of it, and want to know more. They would be entertained to know where it came from (not what most think!), some v...
How the Veloci-Ractor Lost its GILs
You know what a pain in the proverbial posterior Ruby's GIL (Global Interpreter Lock) is. Ruby 3.0 added Ractors, which deftly sidestep the GIL to allow true parallelism. This talk goes into what...
Kill All Mutants! (Intro to Mutation Testing)
Is all your code meaningful, or is some redundant or unreachable? Are your tests strict, or do they let code get away with undesired behavior? Mutation Testing helps root out these problems. This t...
Ruby Gotchas!
One reason we love Ruby is the "Principle of Least Surprise". But there are still many ways Ruby can surprise us. Some are good, some not so much. This talk warns you about Ruby's lurking "gotch...
TDD like a Viking: Brewing Mead with JavaScript!
You’ve probably heard of TDD (Test Driven Development), but do you do it? Do you know how? This talk will explain TDD and show you how to do it in JavaScript, as I make some mead-brewing calculator...
Test your Docs, and Doc your Tests
Do the examples in your documentation get out of date? Are the examples in your tests hard to understand? Do you wish you could combine them? In some languages, you can! This talk is about doct...
Tight Genes: Intro to Genetic Algorithms
Genetic algorithms are a way to "evolve" solutions to a problem, similar to biological evolution. This often reveals solutions that humans would never have thought of, like the NASA ST5 spacecraft...
Whose Line of Code Is It Anyway?
This talk is a hands-on demo of Ping-Pong Pair Programming, a technique that combines TDD and pairing, in a fun way. The audience has some opportunities to participate, but the shy ones don't need...
Why We Prepend
Did you switch from an object-oriented or imperative language, to a functional one, and find it hard to adjust to prepending to lists instead of appending? And wonder why? It all makes sense when...
You Wanna Say Somethin'?
Many of the audience would love to come up on stage and give a talk of their own - but they don't know how to find openings and submit a talk, or how to give a speech, or they're scared, or they do...