6 ms·
When I was in college, one summer I worked up in Vermont putting together and maintaining trailer park homes. Plumbing was one of the best parts of the jobs in
by alexanderdmitri 8y ago
When I was in college, one summer I worked up in Vermont putting together and maintaining trailer park homes. Plumbing was one of the best parts of the jobs in my opinion. I'd wager the person who wrote this article has never had to put a plumbing system together from scratch.
There is an art and a science to it. The guy I worked with put a lot of thought into the best way to design these things, often because he'd be the one who would then have to maintain them. He'd also get very upset when we go out to a trailer with a poor plumbing system. The main giveaway would be a mess of pipes going every which way without rhyme or reason. These systems were the ones that broke the most and were also the hardest to fix.
It might just be "plumbing" to someone that doesn't have to do it, but there is a whole lot that goes into it and you don't want a plumber who approaches his/her work with the catch phrase: "Well, it's just plumbing."
- cousin_it 8y agoYou just made me feel inspired in a new way about the job I've been doing for many years. Thank you!
- kashyapc 8y agoThere's a reason why parts of the Linux community has an event named: The Linux Plumbers Conference :-) https://linuxplumbersconf.org https://linuxplumbersconf.org A reputed community conference, co-organized by contributors and maintainers of the Linux kernel and related low-level "plumbing" utilities and libraries.
- rootusrootus 8y agoAnd plumbers get paid pretty well, just like programmers. I talked to the plumber who did my house and he loved his job. He was reluctantly retiring and handing over the day-to-day operations to his son, but if he had been physically able he'd keep doing it. He also said he refused to do work on existing plumbing. He loved to build new systems but hated maintaining old ones. Where have I heard that before...?
- chiefalchemist 8y agoIn a previous professional life I hired an electrician to put in some outlets in my warehouse. Long to short, he said he mainly worked solo (read: didn't want to deal with employee bullshit), and tended to work for 4 to 6 weeks and then go on vacation with his wife for a week. I think it's the only time I said "THAT is the kinda setup I want."
- gaius 8y agoA plumber we had doing some work for us explained that electricians were always miserable because it was boring but plumbing was actually fun. Subjective of course, but he was a very jolly fellow so perhaps there’s something in it
- trollsund 8y agoThat largely depends on the tasks. Putting down 2km of electrical cable each day is pretty boring, as much of new construction is, but troubleshooting why the ventilation stopped working at a restaurant and fixing it is pretty awesome.
- rgrieselhuber 8y agoWe've been conditioned to believe that trades such as plumbing, carpentry, construction, etc. are beneath high IQ people so it's easy to see how this mentality carries through into software engineering. Infrastructure, properly done, outlasts its own empires.
- williamscales 8y agoMy father-in-law has two master's degrees and was a highly sought-after fiber optic design engineer back during the dot-com boom. He deeply enjoyed the stimulation of the R&D work but hated the severe work pressure. Now he works as a fiber optic field engineer installing new systems for telecom companies and he's incredibly happy. He loves to build a beautiful installation and his industry knowledge makes him extremely effective at his job.
- gnarcoregrizz 8y agoI've met people in the trades that are just as smart, or smarter than most white collar folk, including software engineers. A lot of these people may have dropped out of high school or college, but street smarts are real Some of the successful ones that own their own businesses are able to make a lot of money (a consistent >500k/year). The downsides are that those businesses are difficult to scale since they are service oriented, and they depend on good physical health. Moreover, consistent quality is mostly the responsibility of the owners, and again, that can't always scale far either. You also get out what you put in, in most cases it seems like the pay is a linear function of productivity. It's definitely not easy or normal to make that much, but it's doable as a tradesman
- TAForObvReasons 8y agosoftware development is "plumbing" now because many of the common problems have standard and high-quality solutions. Plumbers don't have to craft their own pipes nowadays because the existing piping solutions are very well understood. It's not as important that the plumber knows exactly how the pipe is produced. They need to know how to set up the interface between the pipes. Similarly in software, we have high quality solutions to many common problems ("the pipes"). While we do have some people focusing on designing the solutions, in 2018 people don't need to know how to make their own frameworks in order to use one. This reflects a maturity of the industry.
- throwawaymath 8y agoThis comment (and the sibling one by eastbayjake) should be higher up responses, in my opinion. It seems like a lot of people in this thread are interpreting "most software is plumbing" to be pejorative. Plumbing is not a high status job, but I don't think that's a charitable interpretation of the comparison. The other interpretation is that most software engineering work doesn't require significant theory or novel work. Implementing software solutions to theoretically resolved problems still requires skill. Likewise plumbers very rarely do novel design work, but that shouldn't be a judgement of their skill. I think the statement, "most software is plumbing" is true insofar as most software developers need design novel solutions. There are existing frameworks, libraries and languages for the vast majority of business needs. That kind of maturity is a good thing.
- alexanderdmitri 8y agoWell to clarify my initial comment, the article uses the word "just" to qualify the comparison: The Bulk of Software Engineering in 2018 is Just Plumbing In my opinion it's a bit of a lazy analogy and the author doesn't show any real knowledge of what goes into plumbing or how this analogy provides any value. Software development is full of analogies that are designed to aid understanding of a large array of abstract concepts. This is good! I just don't see why this "software development is just more and more like plumbing" analogy has become so popular in the dev community. I get what they're trying to say, but it says more about how they perceive/approach their work than it says about either field. I feel like I could provide just as much value by taking all the points this author made, just replacing the word "plumbing" with "open-heart surgery", but everyone reading my article would be like what the heck? It's almost comical: The Bulk of Software Engineering in 2018 is Just Open-Heart Surgery Software is great because you tend to get out of it what you put in. The same is true about plumbing (please don't think about that too much ...). But that's not what these types of articles are getting at.
- PretzelFisch 8y agoIn the valley to do comercial plumbing you need to join the union and go through an apprentice program( 5 years and 1080 hours of classes) plus there is a lot of plumbing done for hospitals and clean rooms which takes more training and class work. After all of that is ready the trades have to work together and organize their schedule to get a given project done. I don't know if the people making the programing is like plumbing comment realize how highly skilled a plumber is.
- eastbayjake 8y ago... but you would be very upset if you'd spent years doing graduate research in fluid mechanics, gone through several interviews where you discussed theory, accepted an offer believing your role would be technically groundbreaking and use your knowledge of fluid mechanics -- then realize on your first day you had been hired as a plumber. I think this is less a denigration of software engineering in 2018 than it is a denigration of software engineer interviewing in 2018.
- umanwizard 8y agoNothing in real life is anything like your analogy. A typical 4-year CS degree is not research-oriented. Asking people to write code on a whiteboard is not "discussing theory".
- neverminder 8y agoBut when you interviewed for this plumbing job, were you asked to explain in detail Bernoulli's principle of fluid dynamics? I think the author's point is ridiculous academically heavy interviews when the actual job is boring ass CRUD.
- alexanderdmitri 8y ago> Let’s go back to the plumbing example. Imagine you owned a small restaurant with one bathroom and 10 employees. You get a few hundred customers per week and maybe 10% of them use your bathroom. Obviously, you’ve got to have a working bathroom, but does it need to be anything fancier or more advanced than your home toilet? Do you need 10 stalls, motion-activated faucets, Dyson hand dryers, and marble counters? Probably not, unless you’re just trying to project some facade of success. This gave me the impression he hasn't really thought through what he is saying. > Just as a good small business owner should hire a humble plumber who knows the standard tools required for small bathrooms, and will pay him market rate, a good engineering manager should hire humble team players who use industry-standard tools to build reliable software, and pay them market rate. This furthered my sense he hadn't thought through what he was saying. > Part of the problem is that we over-engineer the software we work on. I am guilty of this as well. I have no idea what he's getting at here. > “Oh, so you’re building an app? Does it use AI? Blockchain? ? Take my money and do it!" Unfortunately investors these days love to hear that. Devs who bring these skills are most definitely adding value, even if the author deems it largely superficial. > Finally, don’t get comfortable. This isn’t a popular opinion among software engineers, but I believe that many in the field are overpaid relative to the difficulty of the work they do. Sometimes it’s because they are the only people who know some obscure corner of their field, sometimes it’s because their company’s gatekeepers are preventing full access to the talent market, and sometimes it’s because other engineers insisted they overbuild things such that junior devs will take a long time to understand it. Should plumbers not get comfortable too? At this point I think the author forgot what he was writing about. I'm not trying to be mean. I was just trying to add value to an analogy I had trouble distilling value from. I am speaking from frustration at seeing comparison here and there lately in developer communities. To answer your question, I've never been asked in detail about complex algorithms for either plumbing or software work. Maybe I've been lucky or maybe I just exude an unnatural amount of competence (I'm guessing it's the former, I have resting dumb face). Anyway, I don't think gauging someone's level of understanding is unheard of in the plumbing world. It probably depends if you're going for a junior or senior plumbing position. Edit: some clarification
- notacoward 8y agoReminds me of when Paul Graham's "Hackers and Painters" was ripped apart by a real painter. http://idlewords.com/2005/04/dabblers_and_blowhards.htm http://idlewords.com/2005/04/dabblers_and_blowhards.htm
- 628C6l0 8y ago> ripped apart I see what you did there