3 ms·
I think you're dead right on point number 2. The reusable components that are pouring out of today's "big data" boom make building simple-but-large services muc
by benjamincburns 13y ago
I think you're dead right on point number 2. The reusable components that are pouring out of today's "big data" boom make building simple-but-large services much, much more approachable than even just a few years ago.
But point number 1 is a bit like saying "of course you can factor a 2000 digit number into the two primes which created it, it would just take a while."
This is an awfully oversimplified way to put it, but without launching into a long diatribe wrought with lots of smaller generalizations, I'll just use one big one: it's been my experience that the average programmer is typically no better than a very buggy compiler for a fairly low-level subset of natural language.
I come to this perspective as someone who does a fair amount of hiring for a government contractor. Government contracting is the place where the average to sub-par programmers go to find work. The pay is "good enough" but crappy compared to private sector, and the people you work for range from disgruntled (if you're lucky) to incompetent. But it's a very stable and reliable way to earn a living, as cost-plus contracts have promoted an environment where anyone with a resume can get a job, and where your pay is dictated by how many years you've been in the business (correlated strongly to how old you are).
Very few people have the "dive in and solve the problem" mentality that it takes to build something like Twitter, even using bleeding-edge tools. Fortunately we live in a world where the number of people who do have that talent is quite large, it's just that the number of people who don't is much, much larger.