I grew up in rural northern Michigan in a village of ~1,500 people. It's the largest municipality in its county, if you can believe it. My senior year of high school was the first year my high school ever offered calculus. The annual unemployment rate in Antrim county for the last three years has been between 12% and 15%.
I've now been in the SF Bay Area for six years and have co-founded three companies: Adonomics, Everlane, and Dev Bootcamp. I'm living on Fantasy Island, but there were plenty of people I went to high school with who would be equally or more capable of doing any of the things I did.
But when you're "inside" a place with a devastated economy, you're understandably myopic. You're asking yourself things like "What do I do if I get sick or get laid off and lose my health insurance? How am I going to afford next month's rent? How will I get my car's heater repaired before winter?" The world of technology is so far outside your realm of experience that the opportunity it might provide doesn't even register.
When people talk about the "bubble" in Silicon Valley, they usually mean a capital bubble. I think the more relevant one is the complete disconnect between how people in the SF Bay Area live (or "the tech industry" more broadly) and the reality experienced by most people outside.
This experience is one of the main things that drove me to help start Dev Bootcamp (http://devbootcamp.com).
Yes indeed, but it can be dangerous to intellectualize it. Encapsulating what people in that situation experience as "loss aversion" confuses reality for a model of reality, IMO.
I'm not saying you are, but most people I know who talk in those terms forget that. Ceci n'est pas une pipe, the map is not the terrain, etc. etc.
Every single one of these articles are missing an element that I believe will prevent US production from ever returning: the supply chain is way longer from US -> US than it is from China -> US. This sounds absolutely absurd, I know, but it is the truth. If you go to China, you can practically buy direct from many factories, or you can go through a broker who actually does know the source factory. This does not happen in America, at least in my brief experience.
I used to be responsible for finding US sources for certain products. If you aren't aware, you'd think that the price of a US-made product is 10x that of China, when in reality, it is just the supply chain that is 5 people deep, but only if you really work at getting it that low. The amount of "middle men" is absurd. I reversed engineered quite a few supply chains, and even managed to get in contact with the source, but there I was blocked. I had to go one person higher, but that person refused to speak to my company. I then had to go one person higher, and they refused to talk to me. I ultimately ended up going up 5 levels away from the source, but even that is not a chain, but more like a web. If I was able to buy from the source, or even two levels away, the price of the products would be cheaper than China.
The final slap was that the person I finally managed to get a "yes" from was not willing to work with me unless I worked specifically on their terms. I won't go into detail, but their term was 100% unreasonable. The fact is that the supply chain in the US is far to complex and it is based on protecting profits. US-made items are not inherently more expensive than Chinese products, but even those with clout have to deal with long response times and an ever-growing web of middle-men. Simply hiring a Mandarin speaker to call China is far quicker and easier.
I worked with a manufacturer back in 2005-2007, and kept in touch some with the next dev on their development efforts. The company spent a lot of time and money dicking around with developing some custom ecommerce stuff, tieing in an ordering system to their customer service dept, etc.
Then they'd show it, have meetings, make changes, etc. Did this for multiple years. And made a handful of sales. Why? Because they never promoted it (either under their own name or another). Why not? Because they didn't want to 'upset' their current channel partners. But they'd investigated direct sales for a few years because the channel wasn't delivering.
Absolutely ridiculous, and it would not surprise me one bit if I could call China and order the exact versions of what they made and have them shipped to my house faster than ordering from this company in Chicago.
I'm not suggesting all companies are like this by a long shot, but I've seen inside more than enough to understand just how inefficient many companies are, and this idea of 'protecting' the supply chain will be a pretty moot point as it becomes easier and easier to order direct from alibaba vendors and have things shipped over in days vs waiting for the appropriate field-sales-marketing-division-exec-vp-manager to fire up their outlook and hunt-and-peck a typo-laden form letter complete with out-of-date brochure/price-list.
I had to deal with the same issues as well. Protecting the supply-chain is priority one in the industry I used to work for, but the fact is that the internet exposed the entire industry for the BS protection mechanism it is.
What happened is that the distributors decided to go past the suppliers and order direct from China, which they couldn't do even 5 years ago, but the suppliers, if they ever went direct to the end-user, would get tarred by the entire industry. It didn't stop here. End-users would contact the suppliers, who would uphold the honor and refer them to distributors. The end-user would say screw that and order direct from China who couldn't care less about what American companies think.
I don't want to specify what industry I used to work in, but that fact is that this old-world ol'boy protectionism is destroying America's ability to re-enter manufacturing. The sick part is that there are entire regulatory bodies protecting the supply chain.
Unfortunately, politicians either don't know the truth, or really can't be expected to explain all of this to the general public. Of course, the politicians will be incorrectly blamed for not bringing jobs back to America, but the reality is that this all has to change from within the industries who are destroying themselves.
I'm pretty sure it doesn't even matter the industry you specify - if it involves manufacturing of any sort, I suspect there's a lot more of what you and I are describing going on.
The "refer to distributor" model can have its place, but I think those days are numbered for many industries. In many cases, it's just a different person you're ordering from, and an extra day to get your stuff - there's 0 value add. The fact that we can even talk about ordering direct from China - shipping stuff 15,000+ miles over several days, and still getting better value than buying from someone two states away says far more about the state of 'business' than anything else. It's felt to me that for most of my adult working life, 'business' has been far more about cost cutting and offshoring jobs than creating any sort of value - I'm not even sure most 'business' people (with the degrees and years of experience) even understand how to create or measure the value their customers want. Competing on price alone they've been doomed for a generation, and we're continuing to see the unravelling of American business (primarily manufacturing, but it'll happen to other industries too).
You hit the nail on the head: it is all about VAS and getting squeezed on price, especially in the supplier-distributor model. The end-user will price-shop, but unbeknownst the end-users, all the distributors get their stuff from the same few suppliers. The end-users squeeze the distributors, and the distributors squeeze the suppliers, and it ends up no one makes any money. This then gets compounded because China is raising their prices, and at times, choking off the supply chain completely. After the end-users can't find what they want, they just look online and order direct from China.
I've been convinced for quite a while that price-slashing is the ultimate killer. The only advantage US suppliers have at this point is keeping foreign-bought stock locally so that they can deliver in less than a week. End-users are learning very quick, especially with the price of software decreasing, that keeping things in-house is not only more convenient, but cost less too.
Happens everywhere. This sort of thing is exactly what is hurting (some would even say killing) the Australian retail sector. You can buy things on eBay from Hong Kong for far less than what you can buy it in shops here - because the shops have to go through several layers of distributors.
Even buying from the US can be drastically cheaper - I bought a professional condenser microphone, and even with $80 shipping, it was literally half the price of buying it in stores.
The retail industry is up in arms about it, and keep lobbying politicians to reduce the tax-free import threshold from $1000 (which will hardly make a difference), and saying it's the internet's fault - but all the Internet is doing is showing what BS the whole supply chain is.
If the shops could buy directly from the supplier, instead of buying from a distributor buying from a wholesaler buying from an importer buying from a US distributor, we wouldn't have this problem.
Would you mind elaborating and specifying which industries or resources you experienced these problems? This sounds like something that a startup could target.
I would say look up consumer-plastics, like high-quality cups and pens. I'm not talking about the use once and toss away stuff: think Tervis-style items or things made with tritan. It gets considerably more complex if you only target items that are eco-friendly, then add in imprinting and the world gets exceptionally complicated.
Another issue is mold-creation, which is separated from manufacturing in many cases and also very expensive. The piece-counts are usually tolerable. The fact is that China can do custom molding much cheaper and many US companies refuse to do it at all.
I've also discovered that many companies will straight-up lie to you about USA-made items as well. The company I worked for recently caught one person lying about this stuff, so there's that element as well.
The only reason salaries in SF are ridiculous is because they base hiring on which degree you have, compete for the new graduates so they can work them to death, and only look for people in the SF bay.
If you relax any of those criteria, you suddenly don't have a programmer shortage anymore.
In addition, programming is inherently not something you can have masses of blue-collar people doing. Once you program something once, there's zero cost to make a copy. That's why blue collar jobs are dying in all sorts of industries where things can be automated - they soon will be automated.
The idea of websites that are 'factory produced' is called facebook pages or any of a number of other as-a-service setups that give you a domain, some pages, and a form-based interface to fill them out.
There's again no need to go bringing a bunch of people into the equation - those sass businesses need virtually no human sales or support compared to a car dealership in every city over 10k people. You can sell your product everywhere on earth with a sales and support system of ~100 people, if you really want to hold a lot of hands.
Yes, there is still a developer shortage, at least for certain technologies.
I'm in Columbus, Ohio, and its near impossible still to find a local Rails & Backbone developer who is looking for work and does a good job. I'm not going to work them to death, and i'd be willing to pay a decent salary.
Friends in NY, Boston, Austin, Chicago and DC have reported similar findings in looking for qualified individuals. These people aren't looking for rockstars, but often just someone who will do the job well.
If you're willing to hire remote, it still isn't always easy to find someone, but it does get much easier comparatively.
> Yes, there is still a developer shortage, at least for certain technologies. (...) its near impossible still to find a local Rails & Backbone developer
I don't understand this. Why not hire a good programmer and give them few weeks to learn those technologies? Has anyone here hired a programmer who was good but failed at his job because they couldn't learn whatever language fast enough?
I mean, I can understand certain companies want people with very specific skills -- say, embedded programming -- that can hit the ground running. And some companies have enough candidates that they can afford to exclude the ones who don't have those skills. But if you talk about shortage then it seems you're not one of those companies.
So far as I am concerned, if people haven't at least tried out hiring remote, they have no room to complain about shortages.
Even if you want someone who speaks english as a first language, you're still closing the door on at least 90% of the population that could contain someone who would work for you and do a great job.
One of our summer Dev Bootcamp students moved back to Columbus, Ohio. Shoot me an email at jesse@devbootcamp.com and I'm happy to put you two in touch. :)
Can't promise he's what you or anyone you know is looking for in terms of a potential employee, but it might be nice from a community-building standpoint!
This may be true in small startups which cannot necessarily afford looking for candidates beyond the bay area or internationally. It's expensive flying a candidate in who has a 10% chance of becoming a potential hire. Then when you give them an offer, they've probably already decided to move to the bay area and are choosing between 10 different offers. If they're outside the country, you need legal help for immigration.
"Only look for people in the SF bay" is not true for any tech company larger than 400 people.
I love how you assume that hiring someone means them moving to your area. That's not how it should work - isn't that why we're building the internet at all?
>If you relax any of those criteria, you suddenly don't have a programmer shortage anymore.
This is absolutely not true. I am working in SF with a number of electrical engineers working as software developers. I have a degree from a small state college.
I've tried to get a few friends into development who aren't developers. These are people working at $8-10/hr, often upward of 50 hours a week. Even moving up to $25/hr would be a massive life change for them, and given hiring trends in tech I thought it would be a great move for them, even if they weren't great at it for a few years.
Its been a miserable failure. I've come to the conclusion that programming is hard, and I've been incredibly privileged by having a computer since I was 2 (C64!) and I have so much built in knowledge that I don't even realize I have.
Also, this stuff just isn't fun for a lot of people. Sometimes its downright painful for them and they just can't push themselves through the tough parts motivation-wise. I can imagine it being a bit like doing Crossfit (or any exercise). I know I'd be a lot healthier if I did it for a year. But the upfront expense, the pain, and being incredibly bad at it for the first few months just makes it so I don't even try- even though I know the benefits could be life changing.
I bought a copy of Agile Development on Rails and gave it to such a friend. He didn't know how to pull up a command prompt, and I realized that he didn't know what a text editor was. Or that you'd run things from the terminal, and type them in the text editor. I helped him get past that, but he never focused in on it and never saw the beautiful and amazing parts of it.
Another friend got a little farther. But I soon realized how much 'background' knowledge he was missing. I pointed him toward some free online CS courses, which helped. But life got in the way and it just wasn't the #1 thing for him, so he got distracted and quit when he moved to a new (small) city.
Another friend wanted help getting started. He was motivated, but we hit a major problem. He's a student with an older iBook. We had huge issues setting up Ruby due to various environmental problems. I didn't have the time to really redo his entire system, but I wasn't able to get Ruby installed easily since he was on 10.3 or something ancient.
Just telling people that there are boatloads of money to be had, and that there are tons of resources out there doesn't always work. They really have to love it to get through that first painful year or so.
Now perhaps having more jobs (these knowledge factories) that will give people an environment to work in, the tools, the training, etc... might help. But otherwise, I've just seen that I have personally been a complete and utter failure at helping friends get into programming. I'm thankful that I have a background that makes it easy for me to do and learn, but many just don't have that background and I don't know how to help them get past that.
You are absolutely right, and that's the point of my post. Programming is too hard. We can't make all these people become programmers. But a lot of what we are doing as programmers shouldn't really require programming.
When I'm building a website for a small business, I'm not breaking any new technical ground. They need an inventory database, product news, search, an ordering and fulfillment system. At the moment, there are a bunch of systems that promise to fill that niche, but they usually still need somebody who knows HTML and CSS if they're going to customize them to any degree. Why is that? There should be WYSIWYG editors for these things. You should be able to drag-and-drop drupal modules into place in an editor, not glue them together with configs and code.
Your friend shouldn't have to know about Ruby or Rails or Agile development. The fundamentals of computer science are as relevant to building a low-traffic website as the fundamentals of chemistry are to baking a cake. Sure, you do better if you know them, but 99% of people can get by just fine by trial and error.
What the people who have CS degrees should be doing is not building websites; they should be building the WYSIWYG editors.
Close, but not quite. Think of something only a little more complicated to configure than Wordpress, but far more powerful -- something that actually generates sales and provides immediate value. Software that does for other industries what Wordpress did for publishing -- one for each industry. Wordpress for restaurants, Wordpress for dentists, Wordpress for auto mechanics. And not just a website, but a full web-based system that replaces whatever crappy CRM system they're using. Software that fixes their problems, not just software that gives them a domain name.
I don't want the dentist and the mechanic to be configuring this software -- that's what I want the "blue collar programmer" to be doing, after a few weeks of training. But I want the dentist and the mechanic to use the software after it's configured.
(Also, to do much useful in Wordpress, you soon need to learn CSS and HTML, if not PHP. That's still too complicated. I want these tools to require no coding at all.)
I don't think the end result of those sorts of tools is going to go where you want it to go.
The trouble is that if it's sufficiently easy and painless that the "blue collar programmer" can do it in three hours, the guy who owns the auto shop or the restaurant who wants the website can probably figure out how to do it in twice that long and is liable to choose that over paying someone money.
Or, the smart people who are doing it today will then be able to use the new tools plus a trivial amount of code to do it in fifteen minutes instead of three hours, which won't create any new jobs, it will just make simple websites much cheaper because they can be "mass produced" by a subset of the same people who are making them now.
If you want to attack the problem of unskilled workers without somehow converting them into skilled workers, try going at it from the other end: Find ways to reduce the cost of living for those people (i.e. reduce the cost of food, housing and medical care). That better allows those people to make a living on the low wages incident to their skill level.
People always ignore that aspect of standard of living because the incentives to fix it are counter-intuitive or have strong lobbies against them. The way you make things less expensive is by reducing margins (and thus profits -- and thus tax revenue) or by increasing automation and eliminating even more unskilled jobs. But the net effect is to increase prospects for the average unskilled worker, because those with existing jobs in effect have more money in their pockets, and those with no jobs can now accept a lower paying job while achieving the same standard of living.
It already exists, and it's called Drupal. It's entire goal/purpose is to allow you to do everything through the user interface. There is a very large group of 'Drupal Developers' who build entire sites solely through the admin interface. It also has different install profiles/distributions for pre-built niches.
I used to be want the same things as you do, but it has taken me many many years to internalize the lesson that somewhere, somehow, you WILL need to write code to reach your goals. The more you try to dodge and dive around that core truth of all software, the harder the code that you will need to write ends up becoming.
It sounds like what you're describing is something like a cross between a pipe dream and what already exists.
Wordpress already exists and there are many folks, and many or most without CS degrees, who will happily develop and administer a site for you. The pipe dream comes in when you expect those sites to generate sales and provide immediate value. If every dentist in my community uses your magical Wordpress site, will sales and value magically increase for all of them?
Programming is one of those things some people just don't have the knack for, and no matter how long they stay with it and how hard they try they'll never be more than barely productive. The industry is already full of those kinds of people shuffling from one three month contracting gig to another.
We're not going to retrain blue collar workers to do IT as it's done now, and the factory model doesn't work - consulting companies have been trying to do this for decades with no success (well, aside from billing a whole lot of hours).
If we want to deal with high unemployment on the lower rungs of the job ladder we need to stop the flood of illegal immigrants. Any small gains we try to make by bringing people up the ladder will be washed away in short order.
The other element missing from the post you responded to is that self-learning is very effing hard. I would say that fewer than 1/50 people can teach themselves anything of value to the job market.
I also have to point out that, as an ex-blue-collar worker myself, that blue-collar workers in generally really don't care about education or any intellectual pursuits. Sorry, but the glove of doing programming doesn't fit everyone, and it shouldn't fit everyone. The world is interesting because we all have our unique abilities.
I work for a fairly large 20,000+ mostly non IT consulting firm that has a solid reputation for getting things done. Most programmers make on the lower end of ~60-110k and code quality tends to sit just above terrible. However, what works for us is simply focusing on solving problems not meeting specks which is the antithesis of the factory model.
Granted, if they knew who to higher and what problems they needed to solve they would get by at 1/3 of our what we charge. But, most people and organisations are unbelievably incompetent.
PS: As to immigration a lot of the work done by immigrants would simply disappear without immigrant labor because it's just not worth minimum wage and or could just as easily be done outside the country. However, when it comes to the upper ends of the work force we are far better off with them than without. Don't forget Sergey Brin was born in Russia and I don't think we would be better off without Google.
>As to immigration a lot of the work done by immigrants would simply disappear without immigrant labor because it's just not worth minimum wage and or could just as easily be done outside the country.
But a lot more of it would still need to be done, and people would get paid enough that going off public assistance made sense.
Also, don't conflate illegal immigrants with legal immigrants. Sergey Brin didn't slip over the border with a sixth grade education and no ability to speak English. What we lack is jobs for people on the left half of the bell curve. There's plenty of room on the right half.
I have a friend who is a ticketed carpenter. He found the construction industry boring, corrupt and decided to change careers into computers. My first training session went well, but there was only so much I could teach him in the time alotted.
We both came to the realization that he needed formal edication for both learning the concepts and gaining credibility. He just finished his first semester and is loving it!
Instead of being the teacher, point your friends to people that are trained to educate. If the person is serious about changing their life, school is the first place they should go.
>> Instead of being the teacher, point your friends to people that are trained to educate. If the person is serious about changing their life, school is the first place they should go.
I'm a terrible teacher for others but I teach myself amazingly well. Reasoning that if you're not a good teacher then the only alternative is a formal school; I'd say there are more options such as self-teaching. It doesn't work for as many people but does work very well for some.
Anecdotally, I went from working a part-time job making 11/hour a year ago to working full-time as a (very) junior Rails developer for double my old pay after a friend encouraged me to make the transition. I did have a lot of general computing experience from being a computer gaming nerd as a kid and in high school, but I had always stopped short of coding after a few abortive forays when I was in my early teens (though I did have some knowledge of late 1990s HTML and CSS).
I too had issues with hardware (my only computer was a $300 netbook) but I got around this by getting a Linode and using that to do all my development. This had the added benefit of forcing me to familiarize myself with the command line and Vim/tmux (though, I do admit I had some experience with basic commands from trying out linux a few times when I had been younger and too broke for Windows).
In my case, I was so hopelessly in debt and so upset with the aimless path my life had been taking that I threw myself into programming. It was extremely difficult at first since there were a ton of concepts that I had to learn even to be able to understand the official documentation. I found myself going through beginner tutorials and books over and over, each time picking up more details and each time coming away with more understanding. When I had trouble figuring out Rails, I went deeper and tried to understand Ruby first. When I felt I wasn't making any progress (it took me months to really wrap my head around blocks until one day it just dawned on me), I would explore Javascript or try to update my html/css knowledge to modern standards or explore the wonderful world of man pages. I even made an effort to make any procrastination beneficial by making sure it was "on-topic" by reading Hacker News, toying with project euler or studying math. In short, I tried to make thinking like a programmer my life. I felt like I had a lot of catching up to do with those who had been programming from their youth. I also wasn't sure if the current booming market would perpetuate forever and I didn't want to miss my chance to gain precious experience while the door was still open to me.
This was probably the first time in my life I had devoted myself so fully to anything. I had always been someone with one thousand differing interests and lacked in-depth knowledge in many subjects. It was hard giving up things like photography and probably-excessive reading (I would often spend entire weekends reading through piles of books) to focus on something that was often not as relaxing or easy, but I found the challenge incredibly stimulating (more stimulating than anything I had encountered in university for instance) and it wasn't long until I found my mind constantly wandering toward whatever concept I had been learning or working on.
While I originally was enticed by the financial benefit of programming, I find that to not be a large factor in why I work today. Once I got out of my financial hole, it was like being able to breath for the first time and in an instant I stopped caring about pushing my way to the top. The thing that gets me up in the morning now is the thrill of solving the problem and that wonderful feeling of accomplishment when you realize that what you worked on is succinct, beautiful and works. I have been trying to encourage some of my friends who are now stuck in dead-end low-paying jobs, surviving thanks to credit cards and on the verge of devastation by something as minor as needing new tires for their car, but I have yet to have any success in pushing anyone in this direction. Like you, anyone I've tried to encourage has usually fallen off the wagon pretty quickly. Maybe it was simply easier for me since I was never scared to tinker or play with the computer. Maybe I'm just a bit more obsessive.
Whatever the reason, I couldn't be happier where I am today. I get to build things and solve problems/troubleshoot everyday. I get to work with smart people who genuinely work hard at what they do. I look forward to expanding my knowledge and improving myself and my code for the foreseeable future and maybe, one day, building my own business and my own product to help change the world like so many of you guys have.
So, I know it can be discouraging when your friends don't stick with programming, but don't write off everybody because of a handful. Even if it is rare, there are a few of us out there who just need the right kind of push. As the old saying goes, "you can lead a horse to water, but you can't make them drink".
As I was reading your comment I couldn't stop vigorously nodding my head in agreement at nearly everything you said, especially the part about it being hard giving up photography and excessive reading in order to pursue programming. I feel like I'm exactly at the point you were when you began you journey into programming. Thanks for leaving this comment!
We keep looking at XIX century models and try to map them to the present day; that is just wrong. The fundamental shift in production models that full automation is bringing is still poorly understood. Even worse, we keep looking at percentages of growing populations, with no regard for absolute limits: we assume our models will grow forever, that we'll produce an infinite number of physical objects (houses, cars) in a finite space.
You cannot expect the construction sector to grow forever. You cannot expect factories to stop using better and better robots. You cannot expect developers to stop automating more and more processes, including their own job.
The only sectors were you can try to create "infinite employment growth" are social: healthcare, education, some creative industries. These sectors have hard dependencies on their customers/workers ratio, and are forced to grow and shrink in tune with actual population numbers.
Unfortunately, these are also sectors we undervalue and underfund, with very sensitive boundaries, and where classic capitalistic paradigms don't work well. There is a lot of work to do.
Humans don't like to think about the fact that everything will end for them someday. Most people can barely plan for a week, much less for a century from now. Humanity's downfall will almost certainly stem from the shortsightedness of the majority.
He makes some good points. In particular the idea that web sites and other common applications don't need to be hand-crafted at a low level for each individual customer and instead can be built by configuring and combining components with graphical interactive tools.
This type of component-based software development has been available for years. It just hasn't become popular with programmers, because configuring components isn't considered programming since it doesn't involve typing cryptic ASCII code. This is the main issue holding back software development.
Also, the idea that you shouldn't have to write code to position text and graphical elements on a page, I think would be obvious to more programmers if it weren't for the HTML+CSS tradition that has been built up and become ensconced.
You couldn't be more right. We're still working with such low level tools it's embarrassing. The worst part is, I think this is because of a sort of job security mentality. We had real working RAD tools in the 90's (NeXT/Apple enterprise object frameworks). Systems with databases built into the OS in the 80's (AS/400), and so on. But we've abandoned all of those.
>I think would be obvious to more programmers if it weren't for the HTML+CSS tradition that has been built up and become ensconced.
HTML/CSS and in fact the entire web stack is a horrible monster. It's essentially programming in assembly to put dialogs up on a screen. The only real saving grace is reach.
Here's an experiment, put up a modal dialog up in your GUI. One line. Now do the same in a webpage.
The cost of automating car construction is quite costly. The cost of automating website construction is near zero. That is the number 1 reason why you can't compare these apples and oranges.
One of the top reasons why blue collared labor is being phased out is not only due to outsourcing, but also from the installation of robotic workers (i.e. Amazon's warehouse infrastructure). One of the fundamentals of programming or software engineering is the ability to reuse code, modules, frameworks, you name it. With this level of automation already in place and still growing, there's absolutely zero need for this class of blue collared knowledge workers as you've described.
The graph in the post indicates that unemployment in all sectors went up after the financial crash, some were just hit by it more than others. Specifically, those who worked in construction suffered the worst from a collapse in real estate.
Also, that jobs that require "worthless" college degrees and/or oversaturated professional degrees (e.g. law grads) still have more job security than those with little to no post-secondary education.
It would be interesting to see a similar graph-by-occupation when the dot-com bubble burst. Would you see the exact opposite trend?
You can't increase the bandwidth of the programming industry by lowering salaries. If we're doing well right now, so be it. There's always another crash around the corner, and next time we may not be lucky.
There are two issues with this article. One, writing software is not like producing things on an assembly line. This is why we have come to realize that CMM is not effective, and Agile/Lean works.....Writing software is analogous to designing a product, not mass producing it.
In the same way that the economy went through a transition during the beginning of the industrial revolution, the same is happening today.......granted I would love to see things move towards a resource based economy ala the zeitgeist movement.....but that is another discussion.
It's possible to compare writing software to writing literature. In the end, it doesn't matter how huge the demand for good literature is; the number of people capable of writing a good novel will remain roughly the same.
If anything, smart software will put mediocre programmers (and novelists) out of work. It seems unlikely, however, that we'll ever see a significant number of unskilled workers in the tech sector.
The analogies and conclusions are based on false assumptions about the driving forces and consequences of the "machine revolution". You can expect fewer jobs and the accumulation of more wealth concentrated in the hands of fewer people as a result of increased automation and the creation of more efficient "digital production lines".
That is an interesting wide political vision of how the current society could change into something a lot better by following an idea. It also sounds a bit like Frederick Engels. Good read, anyways.
http://en.wikipedia.org/wiki/Elk_Rapids,_Michigan
http://en.wikipedia.org/wiki/Antrim_County,_Michigan
Unemployment stats: http://bit.ly/12HtfrM
I've now been in the SF Bay Area for six years and have co-founded three companies: Adonomics, Everlane, and Dev Bootcamp. I'm living on Fantasy Island, but there were plenty of people I went to high school with who would be equally or more capable of doing any of the things I did.
But when you're "inside" a place with a devastated economy, you're understandably myopic. You're asking yourself things like "What do I do if I get sick or get laid off and lose my health insurance? How am I going to afford next month's rent? How will I get my car's heater repaired before winter?" The world of technology is so far outside your realm of experience that the opportunity it might provide doesn't even register.
When people talk about the "bubble" in Silicon Valley, they usually mean a capital bubble. I think the more relevant one is the complete disconnect between how people in the SF Bay Area live (or "the tech industry" more broadly) and the reality experienced by most people outside.
This experience is one of the main things that drove me to help start Dev Bootcamp (http://devbootcamp.com).