Content deleted Content added
fixed "History of Linux" link (now uses https) |
m Date maintenance tags and general fixes: build 490: |
||
Line 1:
{{
'''Cowboy coding''' is a term used to describe software development where the developers have [[autonomy]] over the development process. This includes control of the project's schedule, algorithms, tools, and coding style.
Line 14:
==== Inexperienced developers ====
Cowboy coding is common at the hobbyist or student level where developers may initially be unfamiliar with the technologies, such as the [[build tool
==== Uncertain design requirements ====
Custom software applications, even when using a proven development cycle, can experience problems with the client concerning requirements. Cowboy coding can accentuate this problem by not scaling the requirements to a reasonable timeline, and may result in unused or unusable components being created before the project is finished. Similarly, projects with less tangible clients (often experimental projects, see [[independent game development]]) may begin with code and never a formal analysis of the design requirements. Lack of design analysis may lead to incorrect or insufficient technology choices, possibly requiring the developer to [[porting|port]] or rewrite their software in order for the project to be completed.
Line 31:
== Examples of cowboy coding ==
{{POV-section|date=September 2009}}
* [http://web.archive.org/web/20070717193315/http://siliconuser.com/?q=node/10 How Adobe's Photoshop Was Born]
* [http://httpd.apache.org/ABOUT_APACHE.html About Apache HTTP Server]
Line 49 ⟶ 48:
<references/>
{{DEFAULTSORT:Cowboy Coding}}
[[Category:Software development philosophies]]
|