The next big blue collar job is coding
wired.com
wired.com
Unless we are going to start referring to or reclassifying typing on a keyboard for 8 hours a day as strenuous physical activity (which it is not), coding will never be a blue collar job. Blue collar jobs by definition are classed so by the large amounts and types of physical exertion required to perform them along with the location in which that job is undertaken (mostly outside or in workshops). White collar jobs on the other hand refers to work that is generally of a cognitive nature and doesn't require much in the way of physical labor and are generally done in offices(don't get me wrong blue collar jobs require cognitive processes too but they also involve PHYSICAL LABOR as a KEY component).
The article would be better if it had said "blue collar work is going to be replaced by white collar work as the pillar of civil middle-class society". The title of the article currently is just plain wrong unless they are incorrectly referring to white and blue collar as some form of reference to a class system/exclusivity system based upon how many workers perform a certain type of task (e.g white collar jobs only employ a small high earning portion of the population whilst blue collar jobs employs the masses on average incomes).
Additional note: I remember a 'blue collar' robotics technician at an aluminum casting foundry that knew the actual machine code instructions for programming a legacy robot. Not assembly, binary op codes. He performed this type of work daily, while also turning a wrench, driving forklifts, sweeping the floor, etc. Id say there are 100s of hardcore, real blue collar programmers out there, but few white collars realize it.
We stratify working class into different sub groups (blue collar, white collar, professional, middle class, working poor, etc) to develop a sense of hierarchy, and it really rubs people the wrong way to be told that they're no better (or worse!) than the guy sweeping the floors.
We don't do heavy lifting (or laundry).
Maybe wrinkled-collar?
(I'm so going to get downvoted for this, I know.)
Heck, most of the developers I know rarely even wear a collared shirt to begin with.
Wikipedia link has good references, if you care to look them up. I agree that you can be a "professional" who does a lot of manual labor, but the blue/white collar dichotomy is rather established in definition. https://en.wikipedia.org/wiki/Designation_of_workers_by_coll...
> A "white-collar worker" is a salaried professional...
"If you want an average successful life, it doesn’t take much planning. Just stay out of trouble, go to school, and apply for jobs you might like. But if you want something extraordinary, you have two paths:
1. Become the best at one specific thing. 2. Become very good (top 25%) at two or more things.
The first strategy is difficult to the point of near impossibility. Few people will ever play in the NBA or make a platinum album. I don’t recommend anyone even try.
The second strategy is fairly easy. Everyone has at least a few areas in which they could be in the top 25% with some effort. In my case, I can draw better than most people, but I’m hardly an artist. And I’m not any funnier than the average standup comedian who never makes it big, but I’m funnier than most people. The magic is that few people can draw well and write jokes. It’s the combination of the two that makes what I do so rare. And when you add in my business background, suddenly I had a topic that few cartoonists could hope to understand without living it.
I always advise young people to become good public speakers (top 25%). Anyone can do it with practice. If you add that talent to any other, suddenly you’re the boss of the people who have only one skill. Or get a degree in business on top of your engineering degree, law degree, medical degree, science degree, or whatever. Suddenly you’re in charge, or maybe you’re starting your own company using your combined knowledge."
http://dilbertblog.typepad.com/the_dilbert_blog/2007/07/care...
The lack of opportunity to flex my creative muscles actually drives me to create my own startups because it's the only type of project where I feel I can utilize all of my strengths instead of being pigeonholed into a developer role.
One third strategy I've seen but unfortunately don't quite have the temperament for is:
3. Become the best at one very specific thing. Unlike becoming the best at something hugely popular, there's a lot less competition once you niche down far enough. I've seen people do this with as youtuber analysts of a specific video game, as creators of art using an unusual medium, as bloggers with freemium content focused on a specific niche and with marketers who specialize in both an acquisition channel and an industry.
What's appealing about this is that after becoming #1 in a niche, it's often possible to use the success there to springboard into a larger territory, learn new skills and then enter either path #1 or path #2 with a significant advantage.
I wonder why so few manage it then? Perhaps it was easy for Scott Adams, but most people have different experiences. What if you can't afford college, for example?
It does feel like it's a difficult bar for so many people to clear nowadays, though.
For a lot of people... yeah, that's true. When people say that HN is a bubble, they mean it.
I don't know anything about your background, but have any of your friends ever said something like "my biggest dream in life is to be a mom"? Here in Canada, I've heard that from several friends. For a lot of us on HN that might sound trivial, but we're a strange bunch in our own special ways :)
A lot of people won't reach it, or won't bother to try to achieve it, but you have. Winning the state spelling bee could meet that criteria. Publishing a book, saving people's lives, etc.
But going to a grocery store and buying food, and finding someone willing to have sex with you until you or they get pregnant and then not totally fucking up when raising the kids is not really something that 'most people can't or won't achieve'.
People manage it all the time. Sure it's not easy, especially with the way health care, housing, education, and daycare costs have skyrocketed and made it much more difficult and stressful, but most people who want to do it still somehow manage it.
I guess I just have a different perception on what it means to be successful. I'm pretty much just arguing semantics, really, and I'm sorry for that. I'm just surprised that's considered to be successful.
> I just have a different perception on what it means to be successful.
Yep, I think these two things are the crux of the issue. The first is probably quite different to how lots of people view things. It can be really painful to evaluate your own worth/success relatively against others.
For many, I think, success is much less a relative issue than an absolute issue. Most who desire to be happy, loved, materially comfortable, and parenting probably do view success as achieving those things. Besides, if those things are what your peers aspire to as well, then you might even be doing better, relative to them, anyway!
Wasn't he suffering from word soup around this time?
Here's the problem - if you apply at a company that follows the standard "technical interview", you will be tested on one thing only - your coding ability at a whiteboard. Here's what can happen.
An employee at the 89%ile in writing, speaking, sales, and coding would be very valuable and rare.. However, this employee must interview with 5 people, all of whom filter out anyone who doesn't land in the top 10%ile.
Companies rarely create jobs for this sort of multifaceted worker who is top 25% in many areas but not quite top 10% in any of them. Truth is, they don't really understand what this is or why it would be valuable. A software developer might benefit tremendously from expertise in these other fields, but if you don't do really well in the whiteboard exercise, you're out. As a result, software interviews tend to filter out people who can present, write, or sell well. Those workers are still out there, of course, but I think companies reduce the probability that a developer will have these skills through the interview process - and I'm not sure they increase their probability of finding good developers appreciably, even when measured purely by coding skill.
Of course, every inefficiency contains an opportunity. My advice to companies is to look for paths to identify and hire people who can do more than one thing. My advice to individuals is this - first, get as good at the coding tests as you possibly can. But probably better is to try to enter a company through a path that doesn't go through software engineering. Trust me, they will fail you out if you can't find all permutations of a set at the whiteboard, even if you could do this quite easily given 15 minutes and stack overflow (and fully understand what you are doing).
So? Learn to code, and let that be your superpower. I know a few people who had a cs/math background and worked as analysts when they started their careers, and have learned to do quantitative analysis, programming, database design, and so forth, and they are rock stars in their fields, highly valued and often invited to speak at conferences. However, when they interview, they don't go through five hours of whiteboard exams - their interviews are actual interviews, they way almost everyone outside tech understands them. Our interviews are more or less indistinguishable from exams (except without the conventions that make exams more fair for the student, such as feedback, consistent grading, a study path, and so forth). Every now and then, when you pop your head out of the tech bubble and talk to people in other fields, you'll see that they actually shudder when they hear about what our interviews are like. Most importantly, they don't get filtered out because they haven't reviewed their textbooks from whatever they studied their second year of college book and prepared for final exams (again). Seriously, anything you can do to leave a field that forces you to do that is worth considering as an option.
Like I said, this will take more personal initiative on your part. People don't really advertise these positions, you have to show the value and build your way into it. Another "problem" is that you probably won't get the pay grade for a software developer track right away - but you may build your way up, and when you get there, you'll be unusual, invaluable, and probably have a more enjoyable job.
It's because coding is seen as a trivial job despite requiring the same amount of education as an ME. Society has this imagine of 14 year old hackers that can do it with minimal training. So it's easy to convince them that some mechanic that lost his job can retrain to become a coder, because, if a 14 year old could do it...
Computer Science is poised to get more difficult in the future, not easier. New companies/technologies will come along offering products that eliminate the need for low-skilled programmers, leaving the more difficult, high-skilled jobs. The tasks that get easier will no longer require a specialized developer, they can instead be done by a person with an understanding of that specific domain. Leaving the rest of the programming jobs a little bit more difficult. (I think the skewed ratio of senior to entry level programming positions is evidence of this phenomenon in action)
I got my start as a teenager doing small e-commerce sites for people, but I'm not sure the "dedicated developer for a small e-commerce site" job exists much anymore. They have been replaced by Shopify, WIX and even Amazon. And once these companies out-grow their platforms, they need more experienced people to build something more robust.
I think we are doing society a disservice by convincing people that anyone can A) learn to sling some JS, and B) make $80k a year doing it. Easy jobs that anyone could do are not jobs that pay 2-3 times the median salary of a region.
Mate I thought this was the case until over the last 2 years I have met a number of mum and dad "coding" companies that literally make their bread and butter from building websites using these platforms and shit like wordpress. I was actually blown away that a few of them had managed to make enough to maintain/pay off houses in Sydney (and in nice parts of the city too) and still have enough to buy a bimmer and a audi to boot. Like considering over the last few years I have been trying to get myself out of the laboring market and into I.T, I had to actually stop my jaw dropping in obvious exclamation when I found out these people support their lavish lifestyles providing products that are literally DRAG AND DROP forms of production and not exclaim "you get paid for doing that shit?!" its been a real eye opener...there are plenty of luddite's out there willing to pay for crap.
This post reminds me of the infamous HN dropbox comment in terms of how out of touch it is.
(In case you've forgotten, mechanics is a branch of physics dealing with force, acceleration, mass, that sort of thing.)
Those same people would learn basically nothing about CS in their job, yet they should be developers.
Mechanical engineering has become a form of coding. Creating a structured design in CAD strikes me as being similar to creating a software design in code.
I'm not an ME, but I work at a site that employs a number of engineers: Mechanical, electrical, embedded systems, software, manufacturing, etc. Granted, the kind of work done by engineers varies from one industry to another. At my site, most of the engineers do very little engineering per se. They spend most of their time creating parts and assemblies in CAD, dealing with suppliers, and engineering bureaucracy (sprints, JIRA, document control, etc.), and troubleshooting manufacturing problems. The software engineers are doing pretty much the same thing, with different tools (IDE instead of CAD).
Part of the issue is degree inflation: People who used to attend trade school and became draftsmen or designers, are now getting 4 year engineering degrees, but the work for draftsmen and designers is still the same, albeit with more efficient tools.
I think a lot of people who are professional programmers find programming itself scary. Programming is a hard thing to do, and ace programmer's are very opinionated, smart, logical, and can spot non-ace programmer's pretty easily. Or maybe it's just that people are naturally lazy and don't want to get out of their comfort zone. Whatever the reason, many programmers work in one language, in one product, then try and stay in it forever. Then they get laid off after 10 or 15 years and find it quite hard to find a new job.
When hiring people, I'll come across this type of resume, where they focused in some super-niche proprietary tech for many years and are unfamiliar with the latest trends, and usually are asking for a below-average salary. I have interviewed a few, and their lack of talent is so glaringly obvious I feel bad for them. But someone will probably hire them, probably the companies that think that all programmers are replaceable widgets.
In summary, "blue collar" programmers already exist, it's just the author who thought he made some stunning realization, which isn't new.
Not disagreeing with your overall point, put I'm fixing some terrible unit tests (that aren't really unit tests) right now that do nothing but add negative value. So many otherwise experienced programmers write terrible unit tests and/or untestable code that I don't think it could ever be silo'd like that.
Nearly nobody will hire them, because employers like you are expecting 100% domain knowledge on day 1. Because you are completely unwilling to give a person a chance to learn on the job, you are missing out on employees that tend to be low-cost and loyal. There is a cost to having employees regularly quit, and you are paying it because you refuse the sort who stick around.
I've seen lots of code bootcamp grads get completely lost when deploying an application to a Linux environment. Or when they have to figure out what's going on with a malfunctioning system. Or when they have to think about networks. Or when they encounter performance issues in their code.
Then I realize that a lot of my peers that I pair with were like me. They broke the school computer and fixed it when they were 12. They spent their summer job money to build a computer from parts because they were curious at 15. They taught themselves to code, then got better at college or through continued self-study. They ran Linux as their desktop for fun.
Now I'm not saying that bootcamp coders can't get there, but it's hard to compare to someone that at 21 had 10 years of autodidactic learning experiences, maybe with a college degree on top of it. I'm all for being more inclusive and we really should be making efforts to get more people involved, but I think we forget how broad of a domain we work in and how long it took us to get to our skill level.
Consider these quotes:
* "What if we regarded code not as a high-stakes, sexy affair, but the equivalent of skilled work at a Chrysler plant?"
* "teachers and businesses would spend less time urging kids to do expensive four-year computer-science degrees and instead introduce more code at the vocational level in high school. You could learn how to do it at a community college"
The problem is that manufacturing jobs, or their equivalent, is going backwards. We want to go forwards, improve opportunity, income and quality of life for each generation. We want higher-paying, higher-skill jobs.
Rather than find ways to not go to college, what if we continued the trend of each generation being more educated than the last? What if we sent people to college? Sanders proposed college for all, arguing that high school was sufficient a century ago but now college is needed. Clinton proposed something similar, free college for families making <$125K/yr (IIRC the details); she got the majority of votes (which doesn't qualify her for President, but does say something about the popularity of her ideas).
The idea that 'college isn't for everyone' is elitist. It really means that 'college isn't for the children of the working class, only those of the wealthy'. Think about it: Will the children of Senators go to college? I think so. The children of most people reading this? Of SV millionaires? Of Apple and GM executives? Do they tell their kids, 'college isn't for everyone; learn a trade at community college'? Somehow college is for all their kids (with few exceptions), so the evidence seems strong that with the proper resources, it's for everyone.
I actually think you're right that it's elitist, but I don't think this "college is not for everyone" attitude is about money, but about intelligence and personality characteristics. These things happen to also correlate with "wealthy," for values of wealthy above "working class."
Some people just aren't going to be able to make it through college no matter how many resources you give them. And college as we do it now is not right for everyone either. For evidence of this, go to your local state run university and observe how many students are failing out of school because they prefer to smoke weed every day to studying. I think something like 70% of people I met in my freshman year failed out of school in this particular way. Free college wouldn't have helped them.
You're claim is that children born into wealthy families are naturally more intelligent? And that 70% of people in state universities flunk out, and they flunk out due to marijuana usage?
Hmmm .... I think we'd need to see some basis for these theories.
I'm also sharing an anecdote that many people who have the opportunity and resources to go to college, waste it. That's an anecdote from my own experience of going to a state university. The point of sharing it wasn't to tar everybody who goes to state universities, but to point out that there are people who will waste opportunities that they're given.
We're talking about kids; their access to wealth depends almost entirely on their parents, not the child's own intelligence and conscientiousness.
I would be careful here drawing conclusions like this. Voting for a candidate or party is an extremely imprecise way of determining public support for any one policy, because they're effectively an aggregation of various policy ideas and other issues. Those other things are usually not easily deconvolved from each other.
It's like going to a supermarket and only being able to pick from two baskets that were loaded for you by the staff, that you can't rifle through to find out exactly what the quality of the food is. Are you buying the cart on the left because it has sweet ice cream or because the one on the right smells like it's got rotten milk in it?
If a degree is free, then employers will demand a master's degree. (already starting) If we make that free, employers will demand a doctorate. If we make that free, employers will demand post-doctoral work.
Meanwhile, the actual education obtained for any given level declines. This is a race to the bottom because the customers demand it. Colleges are now teaching things that were once required for entering high school, particularly writing.
For an individual, it is usually beneficial to participate in the arms race. College expenses rise to take much of the benefit, but there is some benefit left for the student. For society, anything that encourages the arms race is harmful. An increasingly large portion of a person's life is spent being unproductive.
It looks like wireds ad-blocker blocker has been circumvented now at least.
The real value of good code is way, way less than developers would like to believe. This is coming from someone who is damn near a perfectionist about code. I have to constantly check myself and ask whether whatever I'm demanding we spend time and effort on is really worth it from a business perspective. Occasionally it is, most of the time it's not.
If coding wasn't the thing I could make the most money with at this point in time, I'd do something else and code free software as a hobby. At least free software really benefits from great code practice.
Network effects also make it hard. Sometimes you can't upgrade X because A, B and C feed into it and D, E and F feed out of it and they're all tightly coupled (another thing that's even worse with less skilled programmers). Replacing a single component can mean rewriting the software stack of the whole company.
> If coding wasn't the thing I could make the most money with at this point in time, I'd do something else and code free software as a hobby. At least free software really benefits from great code practice.
Completely agree here. The money is the only thing keeping me in the industry, if that went away I'd do something much more blue collar.
Soooo much this.
But it's also important to note the difference between code and system design. The vast majority of code that's written is solving problems where system design doesn't tend to make a huge amount of difference.
It's only when you get to a certain scale and/or in certain domains that the system design starts to matter, and even there, the code itself is of little import.
The reason architecture starts mattering is because you can do things like put that "shit code" behind an interface/microservice/whathaveyou and then the rest of the system just doesn't care.
This is why code itself isn't particularly valuable in the way you seem to be implying. It isn't without value, but while software is valuable, it's rare for specific code to be where that value is at.
Business users are the ones that have to make the value decisions, and they can't write any code, much less decent code.
From one perspective, this would be good because driving down barriers to entry will theoretically increase jobs and reduce costs. From another, it's obviously not great for web developers who are highly paid, though it could theoretically raise salaries even higher for the fewer highly trained engineers who actually require a computer science education.
Either way, I think the industry would need to substantially change before the less complex/more rote programming jobs could be subsumed into vocational training. It would require a pretty significant cultural shift.
I was at a discovery conference (lawyers) listening to a vendor pitching the cost of writing some ediscovery syntax to delve through a 50gb database of emails. While he was talking I performed a grep search on my ubuntu netbook, with the database on an encrypted thumbdrive. In a matter of minutes I convinced the client that he didn't need coders to do much of anything, that an idiot lawyer with a laptop could do it from his hotel room that night (which I then did). The vendor left the room very angry with me.
The downside was that rather than the 100k I saved the client, all I could ethically charge was my rate for 6hours of overtime.
Had this gone to trial we would have had the ediscovery vendor come in and do a full and proper report. It didn't, and both sides looked took my report as useful enough to come to an agreement. (I gave them my bash scripts and they verified my conclusions themselves.)
This discussion is about social class more than it is about practicalities.
There is a divide between the ownership class and the worker class, just as there has always been. The owners always find ways to justify their unfounded belief in their superiority because that is necessary to rationalize the unequal distribution of profits and unfair burden of work.
The 'coders' are the intelligent and capable hard workers. The owners, managers, 'entrepreneurs' are the ones that happen to have enough money to avoid doing real work.
This article is largely just another caste justification.
Programming used to be women's work (i.e. "low level" work, similar to typists according to 1960s stereotypes), and programmers programmed a business' computers to do whatever tasks they wanted to accomplish. The vast majority of companies in the world do not have software as a core business, so this still applies to a large extent.
Maybe a more relevant example. My grandfather was an accountant. What he did for most of his career, bookkeepers do now. What he did at the end of his career was basically law and banking. The electronic spreadsheet took care the gruntwork he used to do
Oh, but he surely can, replacing a valve that is known for going to break in near future for instance, or putting a different one with additional safety features.
> A sysadmin does have a higher level of abstraction available to them.
Mainly because sysadmin works with immaterial things (software) (and some of sysadmins also work with hardware).
Sysadmins really have similarities with plumbers.
Doing that change will cause downtime. The sysadmin can write a script to make the change and avoid the downtime.
Yeah, that sounds dangerous.
One can see Rails and the later enthusiasm around Node driven by the idea that people could come to be programmers, not necessarily through a dedicated process of education in computer science.