7 ms·
I respect Rich Hickey, but let me be a bit of a contrarian here. Feel free to hate on me: First, try replacing "developer" with a "production line worker" from
by cocktailpeanuts 9y ago
I respect Rich Hickey, but let me be a bit of a contrarian here. Feel free to hate on me:
First, try replacing "developer" with a "production line worker" from the article and see how that feels, because that's what I feel "development" is turning into.
One of the most respected qualities of a programmer used to be "creativity". This is not the case anymore. Nowadays developers are so focused on "being seen as a good developer"
than actually thinking about why they are a developer in the first place--to build cool stuff that can have huge impact. It's understandable since "being seen as a good developer" is what makes you money.
The concept of "developer" is turning into nothing more than a production line worker. If you don't believe me, just sit back and try to think of what tools you're using to build apps.
Is it YOU who's using the tools? Or is it the tools that are controlling you? You see this in all the "cutting edge tools" you must learn if you want to call yourself a good developer, such as webpack, react, grunt, gulp, npm, mocha, gradle, etc. etc. You spend most of your time learning these meta-technologies than actually building stuff.
These are great tools, but what they're also doing is automating everything so there's less room for creativity. Everybody builds apps the same way. Note that I'm not saying this is bad. I'm saying the "developers" are unknowingly becoming just a cog in the machine which can be replaced easily.
And I'm sure it WILL be replaceable because we are increasingly surrounding ourselves with these uniform ways of doing things. In the end there will be no room left for so called developers.
And when that day comes, it won't be the "better developer" who will be worth a lot because all these techniques you learned will be replaceable with machines. You may think that's some paranoid sci-fi stuff and you're still making $120K a year so you're just fine, but wait till you find yourself looking like a production line worker who get let go because machines are better at doing what you do. Let's be honest, most programming nowadays is nothing more than plumbing together multiple modules written by other people. These abilities won't be valuable in the future because they are totally replaceable with machines.
What truly matters is your ability to ideate and build something novel. Don't just follow the herd and do what the famous people say or tweet online, because you will end up becoming the casualty.
I guess what I really wanted to say was "don't try to become a better developer, try to become a better creator", because otherwise you'll be easily replaced in the future. It's coming.
- meric 9y agoCivil engineers also use same common brands of cement and standard steel girders. They also often re-use the same blueprint for multiple buildings. The creativity isn’t in the form but the ordering and process in which a given form is constructed over a particular piece of land - this one. The same applies for software engineers. The method of using the common tools is identical across many web applications - the creativity is in which of these tools, for which set of subtasks are selected for this set of requirements.
- jecxjo 9y agoThat might be the most depressing thing I've heard all day. You get to be creative today. Which package manager are we going to use on our new project: npm, bower, or yarn? Whoopty freakin' doo!
- TeMPOraL 9y agoIt's even worse. As an engineer, it's not your job to be creative. The only creativity that happens in the company is that of C-suite people (who first comes up with what you'll build) and that of the sales staff (who figure out how to turn those half-baked ideas of the C-suite folks into something that can be sold). Over the past months I've been having this crushing realization that - at scale - you can be either a creative manager or an assembly-line developer. You can't be a creative development. There are few R&D jobs here and there where the people with technical skills get to be creative, but they're scarce.
- zrobotics 9y agoBut do you really want to be the developer who has to debug 'creative' code after the original dev has left? It may not be as much fun, but I don't think that assembly-line development is entirely a bad thing. Even something minor like style conventions: far better to fit into the assembly line of your team's style guide than produce a project where every file is written in a slightly different way. Is this particular variable supposed to be const b/c it is all caps, or not? The last class followed that standard, but who knows? Small example, but can be applied to larger things as well. Last month I had to 'maintain' an application for a small business that had seen too much creativity from contractors over the years, and it seemed like every single one chose a different language. Or we can just abandon practice of referring to development as engineering, and treat every project like artisinal craft work.