Google Driven Development (GDD)* is a term I recently coined** that describes the process by which some engineers create, refine and improve software by punching related terms into Google's search engine. GDD is a process I personally use to search for .NET concepts and ideas and even code snippets, that I intend to include in products I am actively working on.

Google Drive Development

One of the issues I have heard voiced is that GDD promotes a certain level guilt, and I assume that is because some developers associate getting code via Google with cheating. To be perfectly honest I do understand the sentiment, but I am also old enough to remember when crafting software was an entirely different process, where most ideas and patterns were shared via books, magazines and via direct mentorship from senior engineers. Strangely enough we rarely considered looking in a text book for definitive answers to be cheating,

GDD has just become another source for me, it helps determine which algorithms or concepts are most applicable to what I am doing. However, GDD can become toxic and counterproductive if you do not understand what you are copying and pasting. Simply copying code from the internet without fully understanding the ramifications or in fact whether it is necessary can lead to a practice referred to as Cargo cult programming. This is a style of programming that includes the ritual inclusion of code structures that actually serve no purpose.

Generally if you find yourself modifying random bits of code in an attempt to resolve or debug an issue you are using the practice of Google Driven Development wholly incorrectly.

 

* Bing Driven Development (BDD) should be considered a variation of GDD, lol

** I am pretty sure at least one other person has used the term GDD before :)