12 ms·
It seems like nowadays you just can't make money building interesting things anymore. Most of the available programming work is really just writing glue code t
by DarkWiiPlayer 6y ago
It seems like nowadays you just can't make money building interesting things anymore.
Most of the available programming work is really just writing glue code to make big software systems work as intended, to the point where it can feel more like writing configuration files than actual programming. Put simply, 98% of programming these days is scripting.
On the other hand, you have lots of fun things one can do with code, from building weird experimental things that lack any real-world application but are very interesting to think about to simply recreating some of the giants of the software world in creative ways or in different languages to get a better appreciation of their inner workings and the principles behind them. None of that has any value from a busyness perspective and nobody will pay you for it.
The way I feel about programming is in equal parts as an art and as engineering. The weird obsession of the IT industry with treating code as a resource that has no purpose other than create wealth is absurd and, I believe, one of the reasons why many programmers end up disillusioned and simply drop programming altogether, both as a job and as a hobby.
- bserge 6y agoThat's the case in most industries. Find me one that isn't just about the daily grind and making money. In construction, you could do cool stuff, and do things perfectly, but people want "normal" and time is money so you need to work fast. If you have an auto repair shop, you could build an EV from scratch. But you're getting paid to fix other people's cars. Even if you do tuning and modding, it's all just standardized shit that you buy and install. Woodworking, farming, networking, accounting, anything really is 90% grind, with a select few getting the chance to have fun while getting paid.
- krageon 6y agoSo what you're saying is that it's indeed shit, just like everything else?
- bserge 6y agoYes, however when everything is shit, perhaps it's our mindset that needs to change. Learn to enjoy what we've got, because while you can try getting into a better position, it really might not get better. And there's nothing wrong with that.
- krageon 6y agoThat's a good point, in a lot of cases the major impact that you make on the world is being part of the machinery that keeps everyone's food, entertainment and housing maintained.
- spurdoman77 6y ago> It seems like nowadays you just can't make money building interesting things anymore. So what? Then it becomes just a normal job. Most jobs out there arent that interesring, just problems or doing tasks that people don't want to do themselves. Getting interesting tasks while being well-paid is not any way normal or common, and I also think hasn't been ever.
- analog31 6y agoThis could just be an outgrowth of complexity. As the number of pieces increases by O(n), the number of relationships between pieces goes as O(n^2). As a result, any endeavor is going to tend towards the majority of people working on connecting pieces. This is true in plenty of occupations. I've seen it in mechanical and electrical design, for instance. With that said, I know a lot of good people who actually enjoy the work of piecing things together, so I wouldn't disparage it. Something for everybody. A pleasure of working on something for fun at home, or maybe in an R&D setting, is that it can start out a lot simpler.
- fxtentacle 6y agoI think so. That's why eventually you shatter your monolith into micro-services and then have 1000+ people work on coordinating how these services deal with each other.
- anticristi 6y agoVery nicely put. I mean look at a car: It's essentially a lot of 3rd party components put together coherently. I don't think any part of my Peugeot has a Peugeot label on it, rather Bosch, Autoliv, Michelin, etc. Same thing with airplanes. Boeing is pretty much Honeywell+GE+Liebherr to name a few. I am unsure why people find componentizing and integrating unrewarding in IT. I didn't hear my dad (a sound engineer) complain that he no longer spins a wire onto a metal to obtain a speaker. :)
- analog31 6y agoOne issue I've seen is that a person who devotes 100% of their time to integration can lose their quantitative engineering skill -- it's a "use it or lose it" phenomenon. The folks who manage to cling to that work end up becoming the only ones who can do it, resulting in a sort of caste system with no relation to actual productivity. However, in my experience, the best integrators are worth their weight in gold. It requires a mental organization, patience, and discipline that I don't possess. The ones who do it badly are the ones who are racking up dependencies and technical debt.
- 6y ago
- cpursley 6y ago> Most of the available programming work is really just writing glue code to make big software systems work as intended, to the point where it can feel more like writing configuration files than actual programming. Put simply, 98% of programming these days is scripting. It's that the entire purpose of programming, though? To abstract away the repetitive stuff? I personally see this as a good thing. Even with all the configuration and scripting, there are still plenty of lower-level programming tasks involved in piecing together systems. I'd rather save the difficult programming for the actual difficult tasks instead of re-implementing the already solved problems like CRUD.
- ChrisMarshallNY 6y ago> the already solved problems If I had a dollar for every time I've heard the phrase "XXX is a solved problem," indicating that there's a dependency that "solves" it, I'd be rich. People think that, just because we can google up a dependency that does what we want (sorta/kinda/mostly), the "problem is solved." It's been my experience, that, when our "solution" is to bring in a massive dependency to address a very basic issue that we could solve, ourselves, by banging out a bit of code in a day or two, our problems are just beginning. In some cases, that's exactly what I have done. For example, I use dependencies to handle SOAP (yuck), for ONVIF work, and keychain access for login Face/TouchID validation. These are small, atomic dependencies, written and maintained by reputable authors. The SOAP thing would have taken me a couple of months to write something not as good, but the keychain thing is something I could write, myself, in a couple of days. I just find that I don't really need to, as there is an acceptable alternative. In fact, when I have been dissatisfied with the choices, and have decided to write my own solutions, I have encountered derision. I feel for the OP, but I am sad to hear they are leaving the industry. Maybe it's for the best, or maybe they will always look back in regret. In my case, I have just realized that I can't look to others to validate my work, and have to work on my own. It is not my preferred choice. I worked on (often, huge) teams, my entire career. But I won't compromise my personal ethos to be "down with the kids." If writing good software is no longer in fashion, I guess I'll be unfashionable. I won't deliberately write bad software. I couldn't live with myself. For me, I'm never leaving, but that may mean that I'll need to work on my own. I have a pretty good record of creating stuff that other people value, so we'll see how that goes. More will be revealed...
- chpmrc 6y agoI can order a comfy car anywhere I am with the tap of a button. I can order food from hundreds of restaurants and have it delivered in less than 30 mins with the tap of a button. I can book flights and hotels with the tap of a button. I can play with friends in virtual reality and actually sweat. I can watch a live stream of SpaceX launching reusable rockets in space. I could buy a car that is almost fully "self driving". I can exchange value with anyone in the world anonymously and with no delays or censorship thanks to cryptocurrencies. I can land in a completely foreign city and get step by step directions to wherever I need to go. I can translate almost any language in real time, be it in writing, spoken or taken from an image. And so on...You can (and most of the time do) get paid to build interesting things. It's just that most of us are unable to look at the big picture and not realize that the combined effort of a team is more valuable than the sum of the individual efforts. And if you do actually work on stuff you don't find interesting there is enough demand that switching is not that hard. And if you want to solve puzzles for the sake of solving puzzles then there are plenty of resources for that. Plenty of choice in my honest opinion.
- qz2 6y agoTo be fair we could do nearly all of that before without much of an issue. Now we inherit the overhead of the software, demand pricing, apps that are made of shit and string (uber eats I'm looking at you) and zero customer service...
- yoz-y 6y agoUhh. Before I didn’t even have Internet, much less a screen on which I could tap on a button.
- derefr 6y agoI think the implication is that ride hailing, delivery ordering, and flight/hotel booking were possible to do by calling the company on the telephone. Which—if you already know precisely what you want—has almost as little friction as opening an app and tapping a button. (And to make that apply more often, these companies used to distribute fliers containing their “browsable UI.”) “Live streams” of rocket launches were on TV :) And driving, step-by-step directions, and translation were services provided by human beings. For the richer of us, they still mostly are services provided by humans, because the machine versions still aren’t quite as good. There have been VR systems at arcades since the 80s. The main difference today is that they’re consumer electronics you can bring home. (Not that that’s necessarily better for everyone; not every home has the room.) Cryptocurrency is fairly novel in the universality of the access it provides to such services. Before, you and your counterparty had to both have fancy Swiss bank accounts or Bahamian shell companies to exchange the funds through. Still possible, but you couldn’t just send the money to anybody, so it limited what you could do with dirty money. Now dirty money is almost as useful as clean money! :P
- dcolkitt 6y ago20+ years ago, a sizable chunk of the software workforce was dedicated to converting legacy systems from 2 digit year codes into 4 digits. The notion that all the interesting work was done in yesteryear is just looking at the past through rose-colored glasses. At any time in history most software work was glue code. Because the low-hanging fruit is always going to be taking existing systems and applying small tweaks to extend their functionality to a slightly different domain. Truly innovative software has always been done by the tip of the spear. Building something new and valuable is risky and difficult. 95% of the time the end product is worthless. And that's assuming that everyone on the team is highly competent. You either have to be willing to take a lot of personal risk, or have a good enough reputation that someone's willing to pay you to take crazy risks. In other words, work that never has and never will be done by the median engineer. But this is pretty much true of any job in the knowledge economy. The average lawyer is just writing templated boilerplate contracts, not arguing Constitutional law before the Supreme Court. The average accountant is just filing personal and small business taxes, not uncovering high-level corporate fraud. The average doctor does the same simple procedure all day long, not working on a cure for cancer. The average academic does by-the-number meaningless research to get his publication count up, not research deep breakthroughs in his field.
- cptskippy 6y ago20 years ago I was writing one of the first online endorsement engines for producers (independent insurance agents) to allow them to make endorsements on insurance policies over the internet rather than having to speak to an underwriter on the phone. We built a single web front end that was to be used by both the underwriters and the producers. I remember showing off the role based permissions structure we had in place to allow an admin to control what sort of endorsements users could make. I quipped something like "this is so granular that we could even allow insureds to make endorsements to the policy." The response I got from the head underwriter was "we will never allow insureds to make endorsements on policies". When was the last time you had to speak to an agent or underwriter on the phone to make changes to your insurance policy? 20 years ago was a very exciting time as many businesses were going online for the very first time. We were getting away from writing websites in C with CGI and using higher level languages like Perl, PHP, and ASP.
- mistahenry 6y agoI've spent the last 3 years building the whole solution suite for 2FA banking devices. We have our own hardware devices with secure elements that use your computer as an internet proxy (connected via bluetooth low energy or USB). If you find a small company doing interesting work, your job looks very different than just writing configuration files. Especially when hardware is involved and the firmware is written in house. From my experience, if you find a post startup small business with fewer than 10 developers, you end up wearing many hats. Both times I've been at large corporate jobs, though, it's exactly as you describe.
- andrewmcwatters 6y ago> It seems like nowadays you just can't make money building interesting things anymore. Sounds like you haven't tried or you haven't stumbled on an actual issue. There are lifetimes of problems out there, and many existing solutions are poor or non-solutions. I run into them all the time and cannot possibly dedicate my one lifetime to all of the problems I see viable commercial solutions to.
- vbezhenar 6y agoWrite a blog post enumerating all of them :)
- bbrree66 6y ago> 98% of programming these days is scripting LOL. What a silly comment.