Kent Beck
Kent Beck is an American software engineer and the creator of extreme programming,
Beck pioneered software design patterns, as well as the commercial application of Smalltalk. He wrote the SUnit unit testing framework for Smalltalk, which spawned the xUnit series of frameworks, notably JUnit for Java, which Beck wrote with Erich Gamma. Beck popularized CRC cards with Ward Cunningham, the inventor of the wiki.
He lives in San Francisco, California and previously worked at Facebook. In 2019, Beck joined Gusto as a software fellow and coach, where he coaches engineering teams as they build out payroll systems for small businesses.
History
Beck attended the University of Oregon between 1979 and 1987, receiving B.S. and M.S. degrees in computer and information science.In 1996 Beck was hired to work on the Chrysler Comprehensive Compensation System. The Chrysler contract was signed by collaborators Adele Goldberg, president of Parc Place Systems and, president of Arbor Intelligent Systems. Beck in turn brought in Ron Jeffries. In March 1996 the development team estimated the system would be ready to go into production around one year later. In 1997 the development team adopted a way of working which is now formalized as extreme programming. The one-year delivery target was nearly achieved, with actual delivery being only a couple of months late.
Publications
Books
- 1996. Kent Beck's Guide to Better Smalltalk: A Sorted Collection. Cambridge University Press.
- 1997. Smalltalk Best Practice Patterns. Prentice Hall.
- 1999. Refactoring: Improving the Design of Existing Code. Addison-Wesley. With Martin Fowler, John Brant, William Opdyke, Don Roberts.
- 1999. Extreme Programming Explained: Embrace Change. Addison-Wesley. Winner of the Jolt Productivity Award.
- 2000. Planning Extreme Programming. With Martin Fowler. Addison-Wesley.
- 2002. Test-Driven Development by Example. Addison-Wesley. Winner of the Jolt Productivity Award.
- : Beck's concept of test-driven development centers on two basic rules:
- :# Never write a single line of code unless you have a failing automated test.
- :# Eliminate duplication.
- 2003. Contributing to Eclipse: Principles, Patterns, and Plugins. With Erich Gamma. Addison-Wesley.
- 2004. JUnit Pocket Guide. O'Reilly.
- 2004. Extreme Programming Explained: Embrace Change, 2nd Edition. With Cynthia Andres. Addison-Wesley. Completely rewritten.
- 2007. Implementation Patterns. Addison-Wesley.
- 2023. Tidy First?: A Personal Exercise in Empirical Software Design. O'Reilly.
Selected papers
- 1987. "". With Ward Cunningham. OOPSLA'87.
- 1989. "". With Ward Cunningham. OOPSLA'89.
- 1989. "". SUnit framework, origin of xUnit frameworks.