I wrote a short book about human and social aspects of software engineering

Andy J. Ko
· 2 min read

Scientists like myself don’t often disseminate our work very well to the public. We slave away at producing new knowledge, new theories, and new ideas, but we rarely synthesize all of those ideas into things like books, textbooks, classes, and other learning materials. And that means most people don’t learn the discoveries we worked so hard to find.

Last year, I decided to do something about that, at least within one corner of academia I spend time in. While preparing for my class INFO 461 Cooperative Software Development, I decided to write a book to support the class. I scoured the software engineering literature, reading hundreds of papers more than a dozen journals and conferences and tried to organize everything we know about the human and social aspects of software engineering. The result was fourteen blog-length chapters that give a simple introduction to over 40 years of research, as well as a survey of many of the questions we don’t yet have answers to. I also include an extensive bibliography of research papers, plus podcasts and other media from the broader world of software engineering practice.

Note that it’s not printed, bound, or priced. It’s free, it’s Creative Commons, and it’s responsive, mobile-friendly content that students or other developers can easily read in small spurts. It’s also just basic HTML and CSS, so it should be accessible, cross-platform, and easy to link to.

Moreover, because the book lives on the web, it’s a living document. Every time I find an interesting new paper, I find a place to cite it. In fact, if you find something missing (as I’m sure many will), just submit an issue or a pull request to the book’s GitHub repository. If you contribute text, I’ll attribute you on the front page. With your help, we can ensure it’s more complete and more correct.

I encourage you to read it. And if you teach software engineering or related topics, I encourage you to have your students read it. It’s concise, and covers an area of software engineering that we rarely teach.

I hope that other researchers will make the time to write similar types of publicly available synthesis of research. Thanks to the National Science Foundation for funding my CAREER grant, which provided me time to put this together.

The book

The GitHub repository for the book

Bits and Behavior

This is the blog for the Code & Cognition lab, directed by professor Andy Ko, Ph.D. at the University of Washington. Here we reflect on what software is, what effects it's having on the world, and our role as public intellectuals in help civilization make sense of code.

Andy J. Ko

Written by

Associate Professor @UW_iSchool, Chief Scientist+Co-Founder @answerdash. Parent, feminist, scientist, teacher, inventor, programmer, human.

Bits and Behavior

This is the blog for the Code & Cognition lab, directed by professor Andy Ko, Ph.D. at the University of Washington. Here we reflect on what software is, what effects it's having on the world, and our role as public intellectuals in help civilization make sense of code.

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade