The 3 most popular (Web) Development Methods
What are the most popular developement methods? Is it Agile Development, Test-Driven-Design, Domain-Driven-Design or CASE? I have my own theory. Some methods are not hyped, more spit upon, but nevertheless very popular since ages:
- Copy-and-Paste
- Try-and-Error
- Quick-and-Dirty
This is not pure irony. Just ask yourself how HTML, Javascript and CSS could get so important for the IT developement and even everyday life. At the time they were invented there existed far superior products, tools and frameworks for hypermedia and multimedia systems. The web was called the MS-DOS of Hypermedia. How did it get so successful?
My answer: It supports the most popular development methods:
Copy-and-Paste
HTML and later CSS and Javascript were inheritently Open Source in the meaning of the word. So everyone could copy and paste some fragments into their own software without understanding in the hope it would magically do what it should do. Most web learning careers started by assembling copied parts, not always fully understood. But when it failed, the second method came into play:
Try-and-Error
The interpreted nature of the Web allowed for an edit-save-reload development cycle. Developers don't fully grok what they write, if they may try out which variant works. And the differences between browser rendering engines even made it impossible to foresee what code was to display what. So Try-and-Error was the only possible method to develop anyways. And routine sticks.
And then there is the effect of a super sexy web design with no business logic at all which brings us up to:
Quick-and-Dirty
Customers and users are so easily impressed with front end eye candy and aren't interested in the hard work behind the scenes. So if the Web GUI design is stylish and finished then the app or business logic is almost finished too, isn't it? If you don't came with an up to date web design you wont win a pitch, but the expectations will be finish the product in short time. This produces the pressure to develop in a quick-and-dirty manner. But if you are honest and only show a bread-and-butter interface for a core software which works in principal chances are you won't get the contract.
And again the differences in browser implementations made it necessary to use dirty tricks galore to cover differences and make it look the same. Some programmers started their career in the web nowadays and bad habits are hard to shake off.
