4 ms·
Neat article. If you squint, I don't think there is a ton of difference between what most handymen do and what most software engineers do: they both have some g
by karaterobot 3y ago
Neat article. If you squint, I don't think there is a ton of difference between what most handymen do and what most software engineers do: they both have some generalizable skills, and when they get asked to do something they say 'yes' and then figure out how to do it. I don't think the challenge level of most day-to-day software tasks is any harder than the "where'd that water stain come from" puzzle he described in the article. The difference, of course, is in working conditions and payment.
But even if the AI technologies we're so nervously excited about replace all our jobs, the handymen, plumbers, and electricians of the world will be mostly unaffected. Their work is hard to automate. I hesitate to say we'll change places in terms of economic status—more likely, all the out of work engineers and designers will move into those industries and drive down the prices.
- atticora 3y agoAs a coder when I want to figure something out I can just try it an obnoxious number of times and ways within minutes, with almost no marginal cost. Even on the job. When a handyman wants to learn plumbing he has to do things like knock holes in the ceiling just to have a look. If a handyman gets it right only as often as I do in my REPL, he'll fail fast. Atoms are so much tougher than bits.
- neverartful 3y agoI mostly agree with you. I've been a full-time software engineer for the past 28 years and a part-time handyman for the past 5 months. One of the biggest differences that you don't mention is the use of your body. Software engineering is purely intellectual -- often to the detriment of your body (or mine, anyways) since it's often the case where I sit at the keyboard for hours on end, day after day. As a handyman, your body necessarily is a key part of the work you do. Lifting tools, materials, carrying them, getting into weird positions to access the problem area (under bathroom sink for example). The other aspect is the physical nature of the work. The work is tangible. You can take a photo of the thing that needs to be fixed before the repair/construction and then another at the end and compare the before/after photos. Even if you don't care about the photos, you can still see the tangible, physical end-result of your work. With software engineering, at best it's usually just a status update on a Jira ticket. Regarding AI technologies, I agree that it's extremely unlikely that AI will take over the work. It's possible that may help in some diagnostic cases. I strongly disagree with "all the out of work engineers and designers will move into those industries". Why? Many (perhaps most even) software engineers that I've worked with are too lazy or too proud to do handyman type work. Some of the handyman work can be physically quite taxing and some of it can be quite humbling. Examples of taxing work - when you're doing a gate rebuild/repair in 107 degree temperature in direct sun. Example of humbling work - opening up p-traps under sinks and having some of the smelly, dirty water splash on you.
- lostphilosopher 3y agoI’m less concerned about the supply of handymen inflating and more concerned about demand falling. If AI really does replace a huge portion of the people with the money to hire handymen and plumbers and the property to need them where do they get the work from? More people will DIY out of necessity even if the results are worse because they won’t have another option and fewer people will have the property to maintain in the first place.
- spenczar5 3y agoThose are good distinctions. I'm a 13-year software engineer, and a 4-year part time finish carpenter. An important distinction that comes up for me a lot is that it's much harder to fix mistakes with physical stuff. I can rapidly iterate on software, try stuff, see what works, play with a concept. But if I do that with wood and nails, I'm going to be in for trouble. Each idea costs material, and if it's a repair, there can be no going back. "Iterative development" really isn't a thing. This has gotten me in trouble - my instinct is to explore a problem, but I find that physical stuff requires more intellectual planning up-front, counterintuitively.
- cwalv 3y agoIMO this is the defining characteristic of software development. It's why I love it, and why the processes that support doing it well are different from other types of projects. I also think other disciplines will inevitably move more in this direction. Once things can be accurately modeled and tested with computers, the iteration cycle becomes similar. You do have to eventually build the "machine", but I think that will become more and more automated, sortof like a compiler.
- eternityforest 3y agoIf you do 3D printing, make furniture, or anything like that, you can sometimes carry over ideas from programming. Once you've built something yourself, you start seeing problems like "Oh, this assembly has multiple parts that all need to be done in place, how can I change it so I can build it all in the shop and just screw it in". But with software, we try as hard as we can to make it impossible to mess up. With physical goods, we seem to prefer things that can be messed up, things that only look good with expensive materials, etc. Things that by their existence, demonstrate the skill of the maker, and the wealth of the buyer. We don't really know what the limits of pocket screws joinery and cardboard tabletops are, because... nobody is trying to make something out of cardboard that lasts a century, they just assume it will be thrown away. With software, we start with the assumption that no programmer is up to the challenge, nobody will ever understand a large system, no user will ever be competent, etc, and figure out how to make amazing things anyway.
- p1esk 3y agothe handymen, plumbers, and electricians of the world will be mostly unaffected. Their work is hard to automate. It’s funny, when I started in ML 10 years ago people said the same thing about writers, artists, musicians. And yet here we are today. Robotics is just the next thing to be “solved” in AI field, the same way computer vision or NLP got solved - after decades of hard effort and little progress. Once the algorithms are ready people will build robots who will be much better than humans at any physical tasks: faster and more precise.
- teddyh 3y ago“The reason is that, in other fields [than software], people have to deal with the perversity of matter. You are designing circuits or cars or chemicals, you have to face the fact that these physical substances will do what they do, not what they are supposed to do. We in software don't have that problem, and that makes it tremendously easier. We are designing a collection of idealized mathematical parts which have definitions. They do exactly what they are defined to do. And so there are many problems we [programmers] don't have. For instance, if we put an if statement inside of a while statement, we don't have to worry about whether the if statement can get enough power to run at the speed it's going to run. We don't have to worry about whether it will run at a speed that generates radio frequency interference and induces wrong values in some other parts of the data. We don't have to worry about whether it will loop at a speed that causes a resonance and eventually the if statement will vibrate against the while statement and one of them will crack. We don't have to worry that chemicals in the environment will get into the boundary between the if statement and the while statement and corrode them, and cause a bad connection. We don't have to worry that other chemicals will get on them and cause a short-circuit. We don't have to worry about whether the heat can be dissipated from this if statement through the surrounding while statement. We don't have to worry about whether the while statement would cause so much voltage drop that the if statement won't function correctly. When you look at the value of a variable you don't have to worry about whether you've referenced that variable so many times that you exceed the fan-out limit. You don't have to worry about how much capacitance there is in a certain variable and how much time it will take to store the value in it. All these things are defined a way, the system is defined to function in a certain way, and it always does. The physical computer might malfunction, but that's not the program's fault. So, because of all these problems we don't have to deal with, our field is tremendously easier.” — Richard Stallman, 2001: <https://www.gnu.org/philosophy/stallman-mec-india.html#conf9 https://www.gnu.org/philosophy/stallman-mec-india.html#conf9>
- deleted 3y ago[deleted]
- dennis_jeeves2 3y ago>, the handymen, plumbers, and electricians of the world will be mostly unaffected. I will actually then think that all this AI stuff is not smoke and mirrors, the way it currently appears to be.