Book reviews, reading lists, writing craft, fiction announcements, publishing process, “not on the shelves”, book recommendations, and writing tools.
| 2026-05-26 | Summer Projects |
| 2026-03-27 | Another Modest Proposal |
| 2026-03-26 | Classifying Research Software |
| 2026-03-25 | A Modest Proposal |
| 2026-03-15 | Distributed Systems Design by Example |
| 2026-03-08 | Cognitive Pollution |
| 2026-02-08 | 104 Days |
| 2025-12-30 | Discrete Events |
| 2025-10-18 | One Small Command |
| 2025-09-18 | Time Spent on Hardening |
| 2025-09-12 | Searching for Closure |
| 2025-09-05 | Mastodon and Webbly |
| 2025-09-04 | If I Retired |
| 2025-05-19 | Some Testing Answers |
| 2025-04-20 | A Testing Question |
| 2025-04-14 | No More Encyclopedias |
| 2025-03-29 | Tooling for Snailz |
| 2025-01-26 | Human Connection |
| 2025-01-15 | Charlie Brown |
| 2025-01-08 | Division of Labor |
| 2025-01-02 | Crunch Mode |
| 2024-12-30 | Cross One Off My List |
| 2024-12-28 | Engagement |
| 2024-12-14 | Snailz |
| 2024-12-03 | Software Engineering Management Books |
| 2024-11-30 | Another Static Site Generator for Lessons |
| 2024-11-18 | Milner on Invention |
| 2024-11-10 | What Worked Last Time? |
| 2024-10-14 | Case Studies in Open X |
| 2024-09-12 | Labels for Technical Writing Projects |
| 2024-08-21 | Teaching Workshop in September 2024 |
| 2024-08-12 | Tutorials I Would Like to Attend |
| 2024-06-14 | Human-Scale Software |
| 2024-06-14 | Narconomics and Big Tech |
| 2024-06-02 | Micro NWIT |
| 2024-05-11 | Volume Two |
| 2024-05-07 | Code for Thought Interview |
| 2024-04-26 | Software Design by Example in Python 26: A Debugger |
| 2024-04-25 | Software Design by Example in Python 25: A Virtual Machine |
| 2024-04-22 | Software Design by Example in Python 22: Serving Web Pages |
| 2024-04-22 | Background Knowledge |
| 2024-04-18 | Software Design by Example in Python 18: A Database |
| 2024-04-16 | Software Design by Example in Python 16: Object Persistence |
| 2024-04-14 | Software Design by Example in Python 14: Page Layout |
| 2024-04-13 | Software Design by Example in Python 13: A Code Linter |
| 2024-04-12 | Software Design by Example in Python 12: A Template Expander |
| 2024-04-11 | Software Design by Example in Python 11: An HTML Validator |
| 2024-04-11 | What I Need in a Static Site Generator |
| 2024-04-10 | Software Design by Example in Python 10: A File Archiver |
| 2024-04-05 | Software Design by Example in Python 5: Parsing Text |
| 2024-04-04 | Software Design by Example in Python 4: Matching Patterns |
| 2024-04-01 | Software Design by Example in Python 1: Introduction |
| 2024-03-30 | Governance Revisited |
| 2024-03-21 | NWIT Retrospective |
| 2024-03-17 | Governing a Book |
| 2024-03-15 | Thinking About Lessons |
| 2024-03-03 | Current Projects |
| 2024-01-24 | Working Backwards |
| 2024-01-23 | The Votes Are In |
| 2024-01-20 | Including Boilerplate Files in Jekyll |
| 2024-01-13 | What's the Scratch of the Social Sciences? |
| 2024-01-05 | What Features of Python Do I Use? |
| 2024-01-03 | The Other Examples |
| 2023-12-29 | Reading List |
| 2023-12-24 | Wrapping Up the Year |
| 2023-11-25 | LLMs and Institutional Knowledge |
| 2023-11-21 | One Damned Thing After Another |
| 2023-11-01 | How to Reach the Unconverted? |
| 2023-09-13 | Adventures in Publishing |
| 2023-08-27 | The Weizenbaum Test |
| 2023-08-20 | Ad Astra Simul |
| 2023-08-13 | The BS in 'Leadership BS' |
| 2023-08-10 | Language and Library Features for Teaching |
| 2023-08-10 | Writing a Technical Book |
| 2023-07-21 | Resurrecting the Tidynomicon |
| 2023-07-20 | Explaining Code |
| 2023-07-16 | Tooling a Book |
| 2023-06-13 | Making a Book |
| 2023-06-12 | Chapter Dependencies |
| 2023-06-12 | Book Extensions |
| 2023-04-11 | Fundraising Talks |
| 2023-04-10 | Dressed in Hand-Me-Down Clothes |
| 2023-03-24 | Code Complexity |
| 2023-03-22 | Workshop Proposal: Organizational Change |
| 2023-03-12 | Building a Book |
| 2023-02-23 | It Will Never Work in Theory: April 2023 Lightning Talks |
| 2023-02-13 | Soup, Then Prayers |
| 2023-02-06 | A Book I Overlooked |
| 2023-01-29 | Software Design by Example Summary |
| 2023-01-29 | Styling Diagrams for Software Design by Example |
| 2023-01-29 | Would You Take This Class? |
| 2023-01-26 | Software Design by Example 20: Debugger |
| 2023-01-25 | Software Design by Example 19: Virtual Machine |
| 2023-01-24 | Commands I Use |
| 2023-01-18 | Software Design by Example 14: Style Checker |
| 2023-01-18 | Another Standard Model |
| 2023-01-17 | Software Design by Example 13: Module Loader |
| 2023-01-14 | Do These Tools Exist? |
| 2023-01-13 | Software Design by Example 11: Layout Engine |
| 2023-01-12 | Software Design by Example 10: Build Manager |
| 2023-01-11 | Software Design by Example 9: Page Templates |
| 2023-01-10 | Software Design by Example 8: Parsing Expressions |
| 2023-01-09 | Software Design by Example 7: Pattern Matching |
| 2023-01-07 | Two Picture Books |
| 2023-01-06 | Software Design by Example 6: Data Tables |
| 2023-01-05 | Software Design by Example 5: File Backup |
| 2023-01-04 | Software Design by Example 4: Unit Testing |
| 2023-01-03 | Software Design by Example 3: Asynchronous Programming |
| 2023-01-01 | Plans for the Year |
| 2023-01-01 | Software Design by Example 1: Introduction |
| 2022-12-28 | Reading List |
| 2022-12-27 | Stories |
| 2022-12-24 | Comes Round Again |
| 2022-12-17 | The Compassionate Programmer |
| 2022-12-14 | Teaching in the Third Dimension |
| 2022-12-10 | This Year's Books |
| 2022-12-04 | I Want a Memory Diagram Generator |
| 2022-11-30 | What I Want for Code in Textbooks |
| 2022-11-20 | Journal of Comprehensible Explanations |
| 2022-11-18 | Debuggable Explanations |
| 2022-11-13 | The Notebook Not Taken |
| 2022-11-01 | Listening Means Changing Your Mind |
| 2022-10-24 | Software Design by Example |
| 2022-06-20 | How to Write a Technical Book (Part 2) |
| 2022-06-20 | Dev Ed Book Club |
| 2022-06-19 | How to Write a Technical Book |
| 2022-05-08 | A Language for Teaching |
| 2022-04-21 | Software Design by Example |
| 2022-02-25 | 12 Quick Tips for Software Design |
| 2022-02-01 | What I Would Change in Lox for Teaching |
| 2021-12-31 | Comes Round Again |
| 2021-11-14 | Maddy Roo |
| 2021-09-23 | More Thoughts on Document Compilers |
| 2021-08-24 | Textbooks (Alone) Are Not Enough |
| 2021-08-18 | Software Design Webinar |
| 2021-06-25 | A Proficiency Test for Research Software Engineers |
| 2021-06-19 | A Magic USB Drive |
| 2021-04-17 | Nine Weeks Off |
| 2021-04-17 | Choose Your Own Adventure |
| 2021-04-17 | You Say Dumbing Down, I Say Inviting In |
| 2021-04-17 | Building a Book (Part 3) |
| 2021-03-27 | The Ghosts in the Debugging |
| 2021-03-25 | Paying for Drinks |
| 2021-03-10 | Building a Book (Part 2) |
| 2021-03-09 | Books for Africa |
| 2021-03-04 | Staying Safe Online |
| 2021-02-19 | Blinkered Visions |
| 2021-02-15 | On Spec |
| 2021-02-12 | Last Day at RStudio |
| 2021-02-10 | Building a Book |
| 2021-01-27 | JoVE But Not For Me |
| 2021-01-27 | The Essence of Teaching |
| 2021-01-25 | How I Write a Technical Book |
| 2021-01-19 | Data Dictionaries |
| 2021-01-18 | How to Write a Memo |
| 2021-01-17 | Punchcards Considered Harmful |
| 2021-01-09 | Pickled Carrots |
| 2021-01-06 | And Should I Fall Behind |
| 2020-12-04 | Productivity and Collective Action |
| 2020-10-21 | Tools |
| 2020-09-14 | We're Creating the Future |
| 2020-09-10 | Ten Quick Tips for Teaching with Participatory Live Coding |
| 2020-08-16 | Give It All Away |
| 2020-08-07 | Hi Greg, It's Your Conscience Speaking |
| 2020-07-19 | Slither.io, the Two Sigmas, and Customer Support |
| 2020-06-20 | June 2020 Papers |
| 2020-02-06 | JavaScript for Data Science |
| 2019-12-31 | Correlations |
| 2019-11-05 | Power is Always Suspicious of Fun |
| 2019-11-03 | Ten Simple Rules That Are Missing |
| 2019-08-06 | RIP Toni Morrison |
| 2019-07-05 | A Modest Proposal |
| 2019-06-24 | Chapter Summaries |
| 2019-06-20 | Typography |
| 2019-06-16 | Chunks versus Functions |
| 2019-05-28 | Checking-Driven Development |
| 2019-05-23 | Bottle of Light |
| 2019-05-13 | Buzzfeed on DataCamp |
| 2019-05-11 | Positive and Negative Openness |
| 2019-04-22 | Already Mostly There |
| 2019-04-22 | DataCamp Clarifications |
| 2019-04-21 | Contrarians |
| 2019-04-14 | The People You Have |
| 2019-03-31 | What I Didn't Tweet in March |
| 2019-03-27 | You Should Talk to HR |
| 2019-03-12 | Reviewing Lessons |
| 2019-03-10 | The Tool I Want |
| 2019-02-25 | Making It Work in Practice |
| 2019-02-16 | Late Binding |
| 2019-02-11 | Examples Wanted for Code Review |
| 2019-01-31 | Things I Didn't Tweet This Month |
| 2019-01-26 | The Elements of Programming Writing Style |
| 2018-12-31 | How Feasible is a Harassment Canary? |
| 2018-12-30 | Harper: Lesson Discovery and Aggregation |
| 2018-12-29 | Data Wrangling with JavaScript |
| 2018-12-27 | Use Case Maps Revisited |
| 2018-12-20 | PETE, PRIMM, and Monsters |
| 2018-12-17 | Thirteen Percent and Counting |
| 2018-12-08 | The Third Wall |
| 2018-12-02 | One Last Step |
| 2018-11-29 | Teaching as a Telenovela |
| 2018-11-28 | My To-Don't List |
| 2018-11-16 | Non-Standard Evaluation in R |
| 2018-11-09 | Building Powerful Community Organizations |
| 2018-10-31 | Credit and Respect |
| 2018-10-26 | Formatting Functions |
| 2018-10-25 | Amazon Makes Me Sad |
| 2018-09-18 | Teaching Ethics |
| 2018-09-16 | What Works for Women at Work |
| 2018-08-31 | High and Low, One by One or All Together |
| 2018-07-17 | Link Rot |
| 2018-07-15 | Teaching Tech Together |
| 2018-04-12 | Is This a Notional Machine for Python? |
| 2018-03-26 | The Senior Professor's Handbook |
| 2018-03-24 | Grand Unified Editor Theory |
| 2018-03-09 | Tables |
| 2018-02-18 | Teaching Programming in the Wild |
| 2018-01-07 | Book Club |
| 2017-12-27 | Data Visualization as Industrial Design |
| 2017-12-27 | Explanation-Oriented Programming |
| 2017-12-24 | Petzold's Rules Revisited |
| 2017-12-23 | Holiday Reads |
| 2017-12-21 | Ten Simple Rules for Talking People Into Things |
| 2017-12-17 | Teaching for Learning |
| 2017-11-24 | Common Misconceptions |
| 2017-11-22 | Diff and Merge for ProseMirror |
| 2017-11-17 | Freakonomics, But For Good |
| 2017-11-11 | Not on the Shelves: 20th Anniversary Edition |
| 2017-11-04 | Books for Programmers |
| 2017-09-13 | Long Thoughts |
| 2017-09-08 | Bridge and Evolution |
| 2017-05-22 | Numerical JavaScript |
| 2017-04-30 | Still Waiting |
| 2016-11-13 | Stuff That Actually Matters |
| 2016-11-01 | A Reproducibility Reading List |
| 2016-10-29 | The Rest Is Yet To Come |
| 2016-10-19 | Given Infinite Minions |
| 2016-10-04 | And Now There Are Three |
| 2016-09-27 | The Markov Test |
| 2016-09-18 | Show Me Your Model |
| 2016-09-12 | Collaborative Choral Software Exegesis |
| 2016-09-10 | The Discussion Book |
| 2016-09-05 | We Still Can't Have Nice Things Together |
| 2016-08-26 | What I Didn't Learn in a CS Degree |
| 2016-08-04 | Etsy for Teaching |
| 2016-08-04 | Not Much of a Conversation |
| 2016-08-02 | Heuristic Evaluation for Novice Programming Systems |
| 2016-07-19 | Publishing Our Lessons, Version 2016.06 |
| 2016-07-17 | Commonization |
| 2016-07-12 | 500 Lines |
| 2016-05-19 | Get Better But Not Change |
| 2016-03-21 | Registers |
| 2016-02-24 | Books Away |
| 2016-02-19 | More of a Difference Than You Realize |
| 2016-02-16 | A Counterpoint to Collaborative Lesson Design |
| 2016-02-15 | Designing Lessons Collaboratively |
| 2016-01-21 | Our Introduction to Git Has Been Published |
| 2016-01-13 | A New Book from Mark Guzdial |
| 2015-12-28 | Plans for 2016 |
| 2015-12-26 | New Words Needed |
| 2015-12-20 | Pushing Ahead in Puget Sound |
| 2015-12-06 | My Literature Problems |
| 2015-11-15 | CourseSource: A(nother) New Hope |
| 2015-09-30 | Citation Format |
| 2015-09-26 | Plus Ça Change |
| 2015-09-16 | Software Engineering Practices in Science |
| 2015-09-13 | How Teaching Knowledge Is Transferred |
| 2015-09-06 | Unwritten and Undone |
| 2015-08-14 | Checking What We Teach |
| 2015-08-12 | Publishing, Metadata, and Being Ahead of the Curve |
| 2015-07-01 | Pushing Back |
| 2015-06-24 | Using Jekyll for Lessons |
| 2015-04-17 | Publishing Our Lessons |
| 2015-04-13 | The Future Then and Now |
| 2015-04-13 | Good Enough Practices in Scientific Computing |
| 2015-01-17 | Orwell, Dickens, and How We'll Know We're Done |
| 2015-01-14 | Practical Computing for Biologists (and Other Scientists) |
| 2015-01-05 | Cathedrals, Bazaars, and In Between |
| 2015-01-02 | Books You May Enjoy |
| 2015-01-01 | Things I Won't Do This Year |
| 2014-12-18 | All I Want for Christmas is a Pull Request… |
| 2014-12-03 | Plans for 2015: Lessons |
| 2014-10-30 | Why We Don't Teach Testing (Even Though We'd Like To) |
| 2014-10-29 | Pandoc and Building Pages |
| 2014-10-27 | Lost in Space |
| 2014-10-27 | British Library Courses |
| 2014-10-23 | A New Lesson Template, Version 2 |
| 2014-10-20 | Beautiful Lessons |
| 2014-09-18 | A Proposal for Topic Maintainers |
| 2014-09-16 | Mentioned in the Paris Review |
| 2014-09-15 | Stray Thoughts |
| 2014-06-05 | Collected Links |
| 2014-05-05 | A Multi-Site Sprint in July |
| 2014-04-23 | Import Lesson |
| 2014-04-06 | Bridging the Writing Gap |
| 2014-04-05 | Does Continuous Publication Require Continuous Attention? |
| 2014-03-27 | Building a Minimal Online Presence |
| 2014-03-27 | One of Our Inspirations |
| 2014-03-23 | Not on the Shelves |
| 2014-03-19 | Empirical Software Engineering Papers |
| 2014-03-14 | You and Jimi Hendrix |
| 2014-03-14 | A Letter from John von Neumann |
| 2014-01-15 | Publishing on the Web |
| 2014-01-07 | 'Best Practices' Has Been Published |
| 2014-01-07 | We Need More of These |
| 2013-09-05 | Still |
| 2013-09-02 | Introducing Citation Files |
| 2013-08-30 | Open Access Button Hackathon is Sept 7-8 |
| 2013-08-23 | Two Cheers for GitHub |
| 2013-08-12 | Offering a New Order |
| 2013-07-26 | Report on the Indiana Bootcamp |
| 2013-07-18 | Data Science Workflows |
| 2013-07-05 | Sloan Foundation Proposal Round 2 |
| 2013-06-17 | Salk Institute Feedback |
| 2013-06-13 | Problems with Pandoc |
| 2013-05-24 | Browsercast |
| 2013-05-02 | A Rational Computing Process: How and Why to Fake It |
| 2013-04-19 | Spreadsheets, Retractions, and Bias |
| 2013-03-24 | Using the IPython Notebook as a Teaching Tool |
| 2013-02-09 | The Larch Environment |
| 2013-02-01 | A Bunch of Bootcamps |
| 2013-01-22 | Record and Playback in the IPython Notebook |
| 2013-01-09 | The Last Policeman |
| 2013-01-07 | Citation, Please |
| 2013-01-04 | Advice From a Newbie No More |
| 2012-12-16 | You've Shown Me the C, Now Where's the Python? |
| 2012-12-08 | ElmCity Reaches Toronto |
| 2012-12-06 | Two Solitudes Illustrated |
| 2012-11-27 | Alpha Testing Ideas for the IPython Notebook |
| 2012-11-19 | Who Wants To Build a Faded Example Tool for the IPython Notebook? |
| 2012-11-17 | Updating Our Reading List |
| 2012-11-16 | Who Wants To Write a Little Code? |
| 2012-11-05 | Who Decides? |
| 2012-11-02 | I'd Like an Argument, Please |
| 2012-10-28 | Usability Testing and Instructional Design |
| 2012-10-25 | Prime Numbers, Biologists, and Data Visualization |
| 2012-10-01 | What Would You Like in an Instructor's Guide? |
| 2012-09-30 | The Real Hard Work |
| 2012-09-09 | A Few Books I've Enjoyed Recently |
| 2012-09-04 | Final Results of Demographic Survey |
| 2012-08-14 | Interview about Software Carpentry (and Education) |
| 2012-08-14 | Cover Stories |
| 2012-07-22 | IPython Notebook + Towtruck + Etherpad + Slide Drive = Win |
| 2012-07-18 | Eyes, Brains, and Fingers |
| 2012-06-15 | This Week's Tutorials |
| 2012-06-07 | Ten Simple Rules |
| 2012-06-04 | What Skills Are Required to Implement Open Access? |
| 2012-05-18 | The Most Important Scientific Result Published in the Last Year |
| 2012-05-15 | Fooling the Internet |
| 2012-05-14 | Why We Built It |
| 2012-05-12 | Feedback from Michigan State |
| 2012-05-10 | Fish and Bugs |
| 2012-05-08 | Architecture of Open Source Applications: Volume 2 |
| 2012-04-28 | Stop Me If You've Heard This One |
| 2012-04-14 | We're Neutral (but Not Really) |
| 2012-04-06 | Greener Grass |
| 2012-04-03 | A Four-Day Curriculum |
| 2012-04-03 | Seventy Years After |
| 2012-03-18 | Informed Choice and the Audrey Test |
| 2012-03-15 | The Audrey Test |
| 2012-03-09 | What's the Model, Kenneth? |
| 2012-03-01 | ULP (or, This is tricky and perhaps profound) |
| 2012-03-01 | Why I Think 'YouTube for Textbooks' is a Bad Idea |
| 2012-02-22 | What Deep Thoughts Look Like |
| 2012-02-19 | A Flash (well, MP4) from the Past |
| 2012-02-14 | New Kinds of Content |
| 2012-02-13 | Formatting Revisited |
| 2012-02-02 | Bullshit, Appropriation, and Technology in Education |
| 2012-01-23 | A Better Solution to the Final Problem |
| 2011-12-30 | Fork, Merge, and Share |
| 2011-11-30 | The Greatest Story Never Told |
| 2011-11-30 | Where's My Shell? |
| 2011-11-29 | Rewind |
| 2011-11-14 | Two Steps Forward, Two Steps Back? |
| 2011-11-08 | The Ladder of Abstraction and the Future of Online Teaching |
| 2011-11-02 | The 1970s Called… |
| 2011-10-31 | D is for Digital |
| 2011-10-24 | Demand Fair Play for Fauja Singh |
| 2011-10-21 | What I Like Doing |
| 2011-10-05 | D Is For Digital |
| 2011-09-22 | And Then… |
| 2011-09-17 | The Simplest Web That Could Possibly Work |
| 2011-08-25 | AOSA Volume 2 Roster |
| 2011-08-06 | Muriel (Jo) Campbell: 1930-2011 |
| 2011-06-29 | It Will Never Work in Theory |
| 2011-06-12 | If You're Going to Teach an Undergrad Intro to Software Engineering… |
| 2011-06-07 | Practical Computing for Everyone (not just biologists) |
| 2011-06-07 | Blueprints Are Not Architecture |
| 2011-05-28 | You Doesn't Exist |
| 2011-05-28 | So What's It Like Publishing a Book Yourself? |
| 2011-05-26 | How We Got Here, and Where We're Going |
| 2011-05-23 | The Architecture of Open Source Applications is Now Available |
| 2011-05-19 | Beta Book |
| 2011-05-18 | Catalog Models Like Views and Controllers |
| 2011-05-06 | The Architecture of Open Source Applications |
| 2011-04-26 | Competence |
| 2011-04-08 | Table of Contents |
| 2011-02-24 | An Easy Place to Start: Systems Programming |
| 2011-02-09 | Let's Talk |
| 2011-01-10 | McConnell Responds to Bossavit |
| 2011-01-05 | We Are the Frogs |
| 2010-12-30 | In the Home Stretch |
| 2010-12-29 | Tagging and Debugging |
| 2010-12-27 | You're Never Too Old for Space Camp |
| 2010-12-27 | Elimination |
| 2010-12-20 | I Still Read |
| 2010-12-14 | Presents for the Holidays |
| 2010-11-30 | We're Number Six! |
| 2010-11-22 | Michael Feathers on 'Making Software' |
| 2010-11-16 | Ratios and Rework |
| 2010-10-28 | An Uncertain Thing |
| 2010-10-20 | Give The Patrons What They Want |
| 2010-10-19 | Peter Norvig on Python |
| 2010-10-18 | They're All Small Devices Now |
| 2010-10-14 | Nature Article on Scientific Programming |
| 2010-09-18 | The Stupid, It Still Burns |
| 2010-09-05 | Games I'll Never Make |
| 2010-08-16 | 'Still' in On Spec |
| 2010-07-19 | BP Buying Up Scientists |
| 2010-07-18 | An Interview with Hans Petter Langtangen |
| 2010-07-10 | HPC and Programmability |
| 2010-06-24 | SIAM News Article About Software Carpentry |
| 2010-06-20 | A Damn Good Book |
| 2010-05-27 | A Few Things You May Not Have Known About Andrew Wakefield |
| 2010-05-23 | Word Is Spreading |
| 2010-05-20 | The Architecture of Open Source Applications |
| 2010-04-21 | Ill-Informed Commentary Considered Harmful |
| 2010-04-12 | Professors *Can* Teach Open Source |
| 2010-03-31 | This is History? This is Science? |
| 2010-03-29 | What's Not on the Reading List |
| 2010-03-26 | Instructional Design |
| 2010-03-18 | Testing With Random Data |
| 2010-03-17 | Natural Language Wins (Kind Of) |
| 2010-03-15 | Master of Science in Applied Computing |
| 2010-03-11 | How Much Of This Should Scientists Understand? |
| 2010-03-11 | Don't Ask, Don't Tell—Really |
| 2010-03-11 | The Past Is Still Here Too, and It Too Is Unevenly Distributed |
| 2010-03-02 | What We've Learned |
| 2010-03-01 | Universe of Stone |
| 2010-02-28 | Panton Principles |
| 2010-02-24 | Twitter Makes Rhinos Of Us All |
| 2010-02-09 | TestDrive |
| 2010-02-03 | Dumber Is Productiver |
| 2010-01-20 | We Can Only Interview the Survivors |
| 2010-01-19 | How Are The Mighty Fallen |
| 2010-01-12 | Quiet Time |
| 2010-01-10 | Code vs. Messages |
| 2009-12-30 | Holiday Reading |
| 2009-12-11 | Peter Watts Needs Your Help |
| 2009-12-11 | Reflectus |
| 2009-11-26 | Feedback on the Python Book |
| 2009-11-13 | The Definition of 'Exotic' |
| 2009-11-13 | WWTD? |
| 2009-11-13 | Packaging |
| 2009-11-05 | The Greatest Failing of High School Science |
| 2009-10-23 | Pictures in Pages |
| 2009-10-21 | Creating New Niches |
| 2009-10-17 | My Lack of Artistic Ability is a Real Handicap |
| 2009-10-13 | A Less Frequent World |
| 2009-10-05 | Portals Paper Online |
| 2009-09-21 | Another Reason to Care About Provenance |
| 2009-09-10 | New Book Project |
| 2009-09-07 | Upgrading Their Plots |
| 2009-08-31 | Different Weights, Different Answers |
| 2009-08-30 | Discussing the Balance |
| 2009-08-25 | Our Experiences Switching to Python |
| 2009-08-24 | Science and JoVE |
| 2009-08-15 | It's Like Not Wearing Your Cleats in the House |
| 2009-08-06 | American Scientist Article on How Scientists Use Computers |
| 2009-07-27 | A Challenge for Modellers |
| 2009-07-26 | Martin Fenner on SciBarCamp |
| 2009-07-22 | Day 7: Lots More Objects |
| 2009-07-21 | Elsevier's Future, Version 0.1 |
| 2009-07-16 | Data Collaboration |
| 2009-07-15 | Science 2.0 talks in Toronto July 29 |
| 2009-07-09 | Goodbye, Pages |
| 2009-06-21 | Cathedrals and Limits |
| 2009-06-17 | Subsistence Farmers With Cellphones |
| 2009-06-15 | Crunch Mode and Burnout |
| 2009-06-01 | Guido van Rossum reviews 'Practical Programming' |
| 2009-05-14 | OCR for Line Drawings? |
| 2009-05-13 | A Package Just Arrived |
| 2009-05-12 | Error Handling |
| 2009-05-12 | Beautiful Testing |
| 2009-05-05 | 'Practical Programming' Is Available |
| 2009-04-23 | The Penalty For Dishonesty Is Often Borne By Others |
| 2009-04-16 | Current Reading Queue |
| 2009-03-31 | Reassurance Cuddles for CEOs |
| 2009-03-30 | User Stories |
| 2009-03-25 | A Short History of Software Engineering |
| 2009-03-25 | Umm… Remind Me How We Do This? |
| 2009-03-25 | Recent Reading |
| 2009-03-22 | Why I Read Less Science Fiction Than I Used To |
| 2009-03-10 | Things I'd Like to Accomplish (Version 2) |
| 2009-03-08 | I Wish I'd Thought of That |
| 2009-03-06 | Good Talk by Charles Petzold |
| 2009-03-02 | Open Science and Autism's False Prophets |
| 2009-02-18 | Papers |
| 2009-02-18 | Computer Supported Collaborative Science |
| 2009-02-15 | Reading Update |
| 2009-02-12 | Jason Cohen Thinks Aloud |
| 2009-02-11 | History Is Written By The Victors |
| 2009-02-05 | A Story's Not Really Over… |
| 2009-01-28 | Congratulations to Samira, Jeremy, and Carolyn |
| 2009-01-26 | Where My Time Is Going |
| 2009-01-21 | Text Is Still King |
| 2009-01-21 | 2008 Smiley Award |
| 2009-01-21 | Intellectual Infidelity |
| 2009-01-14 | Making Up Grading Schemes |
| 2009-01-13 | When Is A Book Finished? |
| 2009-01-11 | Where My Time Goes |
| 2008-12-29 | Profs on Facebook |
| 2008-12-26 | Things I'd Like To Finish In the Next 489 Days |
| 2008-12-18 | Carl Zimmer, Faces, and Letter Writing Campaigns |
| 2008-12-08 | Monkeys, Bananas, and a Fire Hose |
| 2008-12-07 | Sold Another Story |
| 2008-12-04 | Python 3.0 is Out (But We're Not Using It Yet) |
| 2008-12-03 | Advertising for 'Bottle of Light' |
| 2008-11-30 | Igor, Connect the Electrodes! |
| 2008-10-31 | It's Not You, It's Me |
| 2008-10-19 | Two Others |
| 2008-10-10 | So Far Behind |
| 2008-09-15 | How do I enlarge a fizzbar without overwriting the user's snibbit? |
| 2008-09-04 | Science 2.0: the Future of Online Tools for Scientists |
| 2008-08-26 | Summer's End |
| 2008-08-07 | Putting a Face to a Name |
| 2008-08-06 | Tony, Dan, LanSchool, and Doing the Right Thing |
| 2008-07-25 | Name This Book! |
| 2008-07-17 | Up On Stage |
| 2008-07-09 | Yes, Our Students Are Still Busy |
| 2008-07-09 | Portrait of the Author |
| 2008-06-27 | As We Head Into the Holiday Weekend… |
| 2008-06-23 | Navigating IRC Logs, Nested Forms, Et Cetera |
| 2008-06-14 | CBC Podcasts |
| 2008-06-13 | Another Week of Progress |
| 2008-06-12 | Where the Time Goes |
| 2008-06-10 | Deleting Roles |
| 2008-06-06 | Faking Results |
| 2008-06-01 | Three Weeks In |
| 2008-05-27 | Reminded of the Difference Once Again |
| 2008-05-12 | Aaaand They're Off! |
| 2008-05-05 | Those Who Will Not Learn From History… |
| 2008-05-04 | Programming for Historians |
| 2008-05-01 | MathWorks Visit |
| 2008-04-29 | An Interview with Donald Knuth |
| 2008-04-18 | Consulting Course Videos |
| 2008-04-17 | Introducing Stack Overflow |
| 2008-04-12 | A Rare Triple |
| 2008-04-09 | Morning Routine |
| 2008-04-07 | Always Outnumbered, Always Outgunned |
| 2008-04-03 | Real World Data Causes Perl |
| 2008-03-27 | Reality Tree |
| 2008-03-21 | For The Record |
| 2008-03-15 | SIGCSE Day 3 |
| 2008-03-15 | Streetknit + Spins & Needles |
| 2008-03-13 | SIGCSE Day 1 |
| 2008-03-12 | On My Way To SIGCSE'08 |
| 2008-03-08 | Why Developers Don't Do Code Reviews |
| 2008-03-07 | Controlled Release |
| 2008-03-06 | Avenir vs. Ryerson |
| 2008-03-04 | Beautiful Code Panel at SD West |
| 2008-03-04 | Writing Is a Drug |
| 2008-02-20 | Today's Politicians Lead Boring Lives |
| 2008-02-19 | Six Books for a Canadian Winter |
| 2008-02-19 | February Code Sprint: Day 1 |
| 2008-02-06 | Another Reminder |
| 2008-02-06 | The First Check |
| 2008-02-04 | You're Not Allowed To Use What You Learn In This Book |
| 2008-01-08 | Apparently We're Doing Well |
| 2008-01-08 | Where the Puck Is, Part 5 |
| 2008-01-04 | Code Sprint Day 1 |
| 2008-01-02 | One, Two, Three |
| 2008-01-01 | Bubbles |
| 2008-01-01 | Best of 2007 |
| 2007-12-27 | Cover for 'A Bottle of Light' |
| 2007-12-16 | Count 'Em |
| 2007-12-15 | Prepping for Next Term |
| 2007-12-13 | The Other Kind of 'Cycles' |
| 2007-12-09 | Switching to Zep |
| 2007-12-09 | Python Supercomputing Statistics |
| 2007-12-02 | Knitting a Home |
| 2007-11-23 | Really Scary |
| 2007-11-10 | We're Number Ten! |
| 2007-10-26 | The Burning Man of HPC |
| 2007-10-22 | But Not For Me |
| 2007-10-10 | Citizen Lab Guide to Bypassing Censorship |
| 2007-10-02 | On Spec Again |
| 2007-09-23 | Two and a Half Books |
| 2007-09-18 | DrProject's First Review |
| 2007-09-12 | Jon Udell has the Best Job in the World |
| 2007-09-10 | Russian and Korean |
| 2007-09-02 | Managing, Reviewing, and RESTing |
| 2007-09-01 | Short Stories Are a Form of Their Own |
| 2007-08-29 | More Beautiful Code News |
| 2007-08-09 | Late Night Thoughts on Re-Reading Terry Pratchett |
| 2007-08-07 | A Review and an Explanation |
| 2007-08-01 | JBoss vs. Django and What IronRuby Really Means |
| 2007-07-30 | Udell on Beautiful Code (and 'narrating the work') |
| 2007-07-24 | You Can Never Start Recruiting Too Early |
| 2007-07-18 | Number One in Programming |
| 2007-07-11 | Matt Doar Likes Beautiful Code |
| 2007-06-28 | Today |
| 2007-06-18 | Lack of Female Authors in Beautiful Code |
| 2007-06-18 | Beatrice Worsley |
| 2007-06-17 | Two Books of a Different Kind |
| 2007-06-16 | Thanks, Jay |
| 2007-06-09 | Home Stretch for Beautiful Code |
| 2007-06-06 | Java Ecosystems for Python Programmers |
| 2007-06-05 | Asimov's Other Law |
| 2007-05-22 | Teaching Software Architecture |
| 2007-05-12 | Holding Steady |
| 2007-05-02 | Chronicle-Recorder and Debugging |
| 2007-04-25 | Code Review Tools |
| 2007-03-27 | Beautiful Code: Chapter by Chapter |
| 2007-03-19 | Sign Error => Five Papers Retracted |
| 2007-03-12 | What I Missed Most by Not Going to SIGCSE |
| 2007-03-11 | Internet Self-Publishing as a Mirror for our Species |
| 2007-03-10 | Beautiful Code |
| 2007-02-27 | A Book That Should Be Read More Widely |
| 2007-02-19 | Bitten Again |
| 2007-02-10 | Tomorrow is Evolution Sunday |
| 2007-01-31 | Why Ethics Matter |
| 2007-01-21 | Debugging Trick |
| 2007-01-21 | Udell on use experience vs. user experience |
| 2007-01-18 | Structured Online Laboratory Notebooks |
| 2007-01-13 | Pervasive Computing, Horror, and the Double Chin Effect |
| 2007-01-12 | Abstraction, Compression, and Errors |
| 2006-12-18 | Further Thoughts on Filing Bugs |
| 2006-12-07 | Writing a Book |
| 2006-11-30 | Not on the Shelves (Version 3) |
| 2006-11-09 | Can't Get (Directly) There From Here |
| 2006-11-05 | Small Scale Real-World Requirements |
| 2006-10-28 | DrProject Internals: Security Part 2 |
| 2006-10-27 | DrProject Internals: Security Part 1 |
| 2006-10-23 | DrProject Internals: Setting the Stage |
| 2006-10-17 | The Last of September's Reading |
| 2006-10-04 | It's Spreading |
| 2006-09-27 | An Unrepresentative DemoCamp |
| 2006-09-14 | CASCON Workshops |
| 2006-09-07 | Superficially Plausible Business Plan #31 |
| 2006-09-07 | Step 4: Respect |
| 2006-08-30 | CSC49X: Figuring Out Where the Goalposts Are |
| 2006-08-23 | Python Web Frameworks (Yet Again) |
| 2006-08-07 | Naive SQL(ite) Question |
| 2006-07-19 | Evidence-Based Software Engineering |
| 2006-07-19 | Books I Want Someone to Write #23 |
| 2006-07-15 | Another Database Design Question |
| 2006-06-27 | Next… Design by Contract? (Please) |
| 2006-06-27 | Why DrProject Is Slow |
| 2006-06-23 | The ACM's Top 25 |
| 2006-05-05 | Book Review: Code Quality |
| 2006-04-16 | Bobet on Tushingham |
| 2006-04-13 | Strong Typing, Unit Testing, and Science |
| 2006-03-31 | Where Next for DrProject? |
| 2006-03-30 | Head Rush Black Belt Secret Hacks of the [buzzword] Zen Masters! |
| 2006-03-30 | The Next Phase New Wave Tool Craze |
| 2006-03-27 | The Real Convergence |
| 2006-03-26 | 2020 Hype |
| 2006-03-05 | Monad and Greasemonkey |
| 2006-02-21 | State of DrProject |
| 2006-02-11 | Of DocFests, Marketing Hype, and DrProject |
| 2006-02-04 | Project Assets |
| 2006-01-17 | George Cukor, Hugo Weaving, and Gene Kelly |
| 2006-01-03 | Petzold's Rules for Writing a Technical Book |
| 2006-01-03 | DrProject kickoff |
| 2005-12-23 | Procrastination: One of the Few Things in Life Nicer Than Toast |
| 2005-12-21 | Choosing Sides |
| 2005-12-11 | Maintaining Correctness |
| 2005-12-08 | Ruby Book Sales Surpass Python |
| 2005-12-05 | Guidance on Running Undergraduate Software Projects |
| 2005-11-24 | Fogel's Producing Open Source Software |
| 2005-10-27 | You Need a Debugger to Change the World |
| 2005-10-18 | Next Steps |
| 2005-08-22 | Slow Imports |
| 2005-06-20 | Another DDJ Editorial |
| 2005-04-25 | Data Crunching |
| 2005-04-13 | Mapping Human History |
| 2005-03-25 | Fasten Your Seatbelts |
| 2005-03-15 | Pythoneers at SIGSCSE |
| 2005-03-13 | Reading the Fine Print |
| 2005-03-11 | Code reviews |
| 2005-02-09 | Good Writing vs. Bad Writing |
| 2005-01-08 | Managing Student Projects Using Blogging: First Impressions |
| 2004-10-06 | Ten Big Ones |
| 2004-09-13 | Guards! Guards! |
| 2004-09-13 | Subversion Grief and Usability Testing |
| 2004-09-02 | Book Review: Joel on Software |
| 2004-06-25 | Getting Balls Rolling in the Real World |
| 2004-06-22 | The New Standard Model |