Thursday, February 27, 2014

Cowboy Coding

Introduction

Today I learned about another interesting development technique called Cowboy Coding. This technique is a more free form way of going about developing software where-by the developer, not the manager controls many aspects of the design, things like language, algorithms, tools, framework and coding style are all decided by the developers and each developer, at least from what I gathered, may choose different combinations of these dimensions for a single project.

Pro

Developers have more control over many aspects of the project and don't have to look over their shoulder as much as a developer in a more traditional setting might have to.

Con

This technique is often used as a derogatory term for inexperienced developers that do not conform to the status quo of the software development methodologies community.

Reaction

My initial reaction when I first heard about this methodology (which was about two hours ago) was one of curiosity. It seemed interesting to me but sounded a lot like extreme programming or SCRUM. As I read the wiki, I began to find similarities to our projects at the beginning of the semester when we were all hashing out ideas for projects and choosing the technologies. However, I started realizing that, as time progressed, we started to solidify certain aspects of our projects which seems counter to what cowboy coding is all about. Because of this and because it doesn't seem to me like any substantial project could possibly get done with out some kind of organization, I have to agree that cowboy coding would definitely not be my choice for writing a large piece of software.

Conclusion

Don't be a cowboy coder. People will call you a n00b and make you cry :,(

No comments:

Post a Comment