outsourcing killed by django and ruby on rails
The absolute pinnacle of outsourcing madness peaked with the publication of “The 4 Hour Workweek” by Timothy Ferriss. The book was a Bible for starting your own sweat shop. Everyone from one man startups long forgotten to mega corporations like Ebay were looking to India, China, and eastern Europe to cut development costs. There is even a story, famous among cubicle dwellers, of an IBM engineer outsourcing his job to India, then using his free time to get and outsource another job at Motorola.
I guess if 80% of your job consists of writing many lines of code to achieve even the simplest task, like processing a login form, then 80% of it can be outsourced to lower skilled developers at a lower rate. A skilled and novice developer can churn out the 80% filler code almost at the same rate. Thats exactly why projects involving heavy C++, Java, Perl, and even PHP have been at the forefront of outsourcing. Those languages do not have a framework for rapid web development. When most of the work does not require creativity or great skill it will be outsourced. The math makes sense.
Take for example a project in Java requiring 100 hours at $80 an hour for a skilled US contractor. Thats an $8,000 price tag for 100 hours of Java code, not much considering the mundane complexity of getting anything accomplished in Java. Now take a developer from India, China, or Slovakia (formerly Czechoslovakia) for $20 an hour, you get 400 hours for the same price. Even the skill difference won’t be a risk. A low skill developer will be able to churn out 80% of the project in the same 100 hour time frame as a skilled one. Imagine all the basic for loops, form manipulation, and boring HTML boiler plate code written in any given project. That leaves another 300 hours to compensate for the skill gap. More than enough to mitigate risk in most cases. As a matter of fact you’ll probably be able to shave $4,000 off that price tag and still have a 100 hour buffer on a 100 hour project, 100% risk mitigation. Any bean counter will tell you, outsource, outsource, outsource…
Enter Django and Ruby On Rails….
I see it happening already, its subtle, both frameworks are a ripple on the non-corporate pond. In the coming months they will grow into tidal waves, forever changing the economics of outsourcing. The numbers are changing already. A local company, OpenRain using RoR, is able to complete monster projects for a few thousand dollars with a level of testing that would make aviation systems engineers salivate. Entrepreneurial developers at PayPal and Google are producing entire websites every other weekend. Its happening so it has to be possible, how you ask?
Frameworks like Django and Ruby On Rails have removed coding as a schedule bottle neck by removing mundane boiler plate code. That 80% is now gone, developers can focus on the 20% that delivers features for the project. No more assembling forms or creating database queries. The speed of development is now restricted purely by creativity. This works tremendously well for web applications because both frameworks were built with that space in mind. The 80% reduction in development costs shatters the economics of outsourcing!
The same 100 hour project with all the filler code obfuscated by Django or Ruby On Rails now takes 20 hours. A skilled developer at $80 will put the project costs at $1,600. Thats $2,400 cheaper than even the most optimistic $4,000 outsourcing estimates using Java plus outsourcing. That difference makes outsourcing a dinosaur compared to Dango and Ruby On Rails.
Some bean counters will be tempted to take it a step further. Why not outsource Django and Ruby On Rails work to low skilled low price developers?
Its not worth the risk. Outsourcing using Dajngo or Ruby On Rails using the sample 100 hour project, now reduced to 20 hours, will cost $400. Build in a buffer of 20 hours and the price tag is $800. Saving $800 over a higher skilled, more reliable, and more creative $80 an hour developer. That savings means you’ve effectively washed all creativity from your development team. Risk is through the roof, you have all the drawbacks of outsourcing concentrated in the most important 20% of your project development, the user facing features! Its not worth $800, be happy with the $6,400 saved.
This is already happening, its a fundamental shift in development. For corporations, once they catch on, it means huge savings even over outsourcing. For high skilled developers it means creativity and talent will be more important than ever. For low end outsourcing labor it means carving out a space in testing and data entry or being replaced. Oh yeah, Django and Ruby on Rails are exponentially speeding up all of the above!