Ward Cunningham
Ward Cunningham | |
|---|---|
| Portrait of Ward Cunningham, a middle-aged bearded man, wearing wire rim eyeglasses and an olive drab fleece jacket Cunningham in December 2011 | |
| Born | Howard G. Cunningham May 26, 1949 Michigan City, Indiana, U.S. |
| Alma mater | Purdue University |
| Occupation | Computer programmer |
| Years active | 1984–present |
| Known for |
|
| Call sign | K9OX |
Howard G. Cunningham (born May 26, 1949) is an American computer programmer, who developed the first wiki[1][2] and co-authored the Manifesto for Agile Software Development. Called a pioneer,[3] and innovator,[1][2] he also helped create both software design patterns and extreme programming. He began coding the WikiWikiWeb in 1994, and installed it on c2.com (the website of his software consulting firm) on March 25, 1995, as an add-on to the Portland Pattern Repository. He co-authored (with Bo Leuf) a book about wikis, entitled The Wiki Way, and invented the Framework for Integrated Test.
Cunningham was a keynote speaker at the first three instances of the WikiSym conference series on wiki research and practice, and also at the Wikimedia Developer Summit 2017.[4] He was a keynote speaker at the MediaWiki Users and Developers Conference, Spring 2024.[5]
Early life and career
[edit | edit source]Cunningham was born in Michigan City, Indiana, on May 26, 1949.[6] He grew up in Highland, Indiana, where he completed high school.[7]
Cunningham received his bachelor's degree in interdisciplinary engineering (electrical engineering and computer science) and his master's degree in computer science from Purdue University, graduating in 1978.[8] He is a co-founder of Cunningham & Cunningham, a software consultancy he started with his wife.[9]
Cunningham has also served as Director of R&D at Wyatt Software and as Principal Engineer in the Tektronix Computer Research Laboratory. He is founder of The Hillside Group and has served as program chair of the Pattern Languages of Programming conference which it sponsors.
Cunningham was part of the Smalltalk community.
From December 2003 until October 2005, Cunningham worked for Microsoft in the "Patterns & Practices" group. From October 2005 to May 2007, he held the position of Director of Committer Community Development at the Eclipse Foundation. In May 2009, he joined AboutUs as its chief technology officer.[3][10] On March 24, 2011 The Oregonian reported that Cunningham had departed AboutUs to join the Venice Beach-based CitizenGlobal, a startup working on crowd-sourced video content, as their chief technology officer and the Co-Creation Czar.[11] He remains "an adviser" with AboutUs.[12][13] In April 2013, Cunningham left CitizenGlobal to work as a programmer at New Relic.[14]
Ideas and inventions
[edit | edit source]Cunningham is well known for a few widely disseminated ideas which he originated and developed. The most famous among these are the wiki and many ideas in the field of software design patterns, made popular by the Gang of Four (GoF). He owns the company Cunningham & Cunningham Inc., a consultancy that has specialized in object-oriented programming. He coined the concept of technical debt and expanded on the idea in 1992.[15][16] He created the site (and software) WikiWikiWeb, the first internet wiki, in 1995.
In 2001, he signed the Manifesto for Agile Software Development as a co-author.[17][better source needed]
When asked in a 2006 interview with internetnews.com whether he considered patenting the wiki concept, he explained that he thought the idea "just sounded like something that no one would want to pay money for."[18]
Cunningham is interested in tracking the number and location of wiki page edits as a sociological experiment and may even consider the degradation of a wiki page as part of its process to stability. "There are those who give and those who take. You can tell by reading what they write."[19]
In 2011, Cunningham created Smallest Federated Wiki, a tool for wiki federation, which applies aspects of software development such as forking to wiki pages.
Cunningham has contributed to the practice of object-oriented programming, in particular the use of pattern languages and (with Kent Beck) the class-responsibility-collaboration cards. He also contributes to the extreme programming software development methodology. Much of this work was done collaboratively on the first wiki site.
"Cunningham's Law"
[edit | edit source]Cunningham is credited with the idea: "The best way to get the right answer on the Internet is not to ask a question; it's to post the wrong answer."[20][21] This refers to the observation that people are quicker to correct a wrong answer than to answer an unanswered question. According to Steven McGeady, Cunningham advised him of this on a whim in the early 1980s, and McGeady dubbed this Cunningham's Law.[22][23] Although originally referring to interactions on Usenet, the law has been used to describe how other online communities work, such as Wikipedia.[24] Cunningham relativises his ownership of the law, calling it a "misquote that disproves itself by propagating through the internet" and by saying that he "never suggested asking questions by posting wrong answers".[25]
Personal life
[edit | edit source]Cunningham lives in Beaverton, Oregon.[14] He holds an amateur radio extra class license issued by the Federal Communications Commission. His call sign is K9OX.[26][27][28][29]
Cunningham is Nike's first "Code for a Better World" Fellow.[30]
Publications
[edit | edit source]- Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
See also
[edit | edit source]- Christopher Alexander – Cunningham cites Alexander's work as directly influencing his own
- PatternShare
References
[edit | edit source]- ^ a b Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ a b Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value). Excerpt from 2014 book The Innovators.
- ^ a b Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ The Wikipedia Revolution - Andrew Lih, page 46
- ^ Lih, Andrew (2009). The Wikipedia Revolution, p. 58. Hyperion, New York. Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value)..
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ a b Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Cite_Q/config at line 10: attempt to index field 'wikibase' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Baeth MJ, Aktas MS. Detecting misinformation in social networks using provenance data. Concurrency Computat Pract Exper. 2019; 31:e4793. https://doi.org/10.1002/cpe.4793
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ LaBouche, M. (2020). Your Brain on Facts: Things You Didn't Know, Things You Thought You Knew, and Things You Never Knew You Never Knew. United States: Mango Media.
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
External links
[edit | edit source]Lua error in Module:Sister_project_links at line 396: attempt to index field 'wikibase' (a nil value).
- Lua error in Module:Official_website at line 94: attempt to index field 'wikibase' (a nil value). (WikiWikiWeb), includes his WikiHomePage
- 2012 Dr. Dobb's Interview
- EclipseCon 2006 interview with Ward Cunningham (MP3 audio podcast, running time 20:01)
Lua error in mw.title.lua at line 392: bad argument #2 to 'title.new' (unrecognized namespace name 'Portal'). Lua error in Module:Authority_control at line 153: attempt to index field 'wikibase' (a nil value).
- 1949 births
- Living people
- 21st-century American non-fiction writers
- Amateur radio people
- American computer programmers
- American technology writers
- Extreme programming
- People from Beaverton, Oregon
- Writers from Portland, Oregon
- Purdue University College of Engineering alumni
- Technology evangelists
- Tektronix people
- Wikimedia Foundation Advisory Board members
- People from Highland, Lake County, Indiana
- Microsoft employees
- Agile software development
- Software design patterns