5 ms·
Software development sure would be a lot simpler to manage if it were like auto repair, where every bit of work is well scoped, short, with absolute boundaries
by qes 7y ago
Software development sure would be a lot simpler to manage if it were like auto repair, where every bit of work is well scoped, short, with absolute boundaries and near complete independence from any other work happening.
Perhaps I'll think lessons from an auto repair shop can apply to software development after they've spent 2 years rebuilding a vehicle from the inside out while it continuously journeys across the interstates.
https://i.imgur.com/cD8Y7fh.mp4 https://i.imgur.com/cD8Y7fh.mp4
- maxerickson 7y agoLots of shops do ground up builds. I think it's also not the case that software development is so heroic, most deployment strategies draw a line between development and the version people are using, and there is quite some power in the ability to go back to a previous version.
- semiotagonal 7y agoI'm beginning to think the real answer for software development is to stop wanting a process. A team either clicks, or it doesn't. I think this happens no matter what process is attempted. EDIT: Obviously there should be acceptance criteria for the product, especially where safety is a concern; but the day-to-day process is just going to be what it is.
- ken 7y agoI don’t understand why some areas would warrant the response of “sometimes it works and sometimes it doesn’t”. What if we left other areas examined? “Let’s not bother to research sorting algorithms further. Some people write a sort and it goes fast, and some people write one and it goes slow, and that’s just the way it is”. If a team can just “click”, isn’t it critically important to figure out why this occurs, so we can create other teams that click? It would be an awful shame if we were not as a species able to make effective use of all of us because we preferred to leave this to chance.
- semiotagonal 7y agoI think it's just very hard to generalize from the performance of a combination of people that each have unique personalities and abilities. It's hard to even know what to measure. For a sorting algorithm, you know what to analyze, and you know the result is generalizable.
- juped 7y agoNo one has even bothered to use Fred Brooks' recommendations in nearly 50 years, despite praising his book up and down without reading it.
- kingludite 7y agoEventually everything will be sealed in lego like blocks. We will then stop calling software technology.
- gtirloni 7y agoHow far away from that do you think we are and why?
- kingludite 7y agoIt wont happen overnight (if at all). For hardware we are already there. We use a single cpu or video card that just works and cant be matched by combining a bunch of smaller components. We do have instances trying to combine the 2. We also have lots of and continue to have more software monoliths that at first are just to good, one wouldn't bother writing their own. Later we wont even remember how to do it and end up with a final design. Could be epic, could be aweful. (I mean every ready made thing available for use either for end users or programmers) Why? Software is a fantastic prototyping tool, its so good we don't bother making things into a chip. This for the most part because we wouldn't be able to update it. The need for updates will eventually go away. Things for now continue to be improved but at some point it stops making sense to do so. What [say] an email application should look like was completely unknown in the 80's but we all have expectations today. It seems unlikely for us to continue to write [say] new email clients from scratch forever?
- ken 7y agoThat’s called hardware. The whole point of software is that it’s soft.
- modoc 7y agoI think you’re over simplifying auto repair work. Sure, sometimes it’s an oil change, which is short, well scoped, etc... But a lot of times it’s “Sometimes, when I’m turning left, the car makes this noise... you know, like a whining grinding popping noise. It’s not doing it today though.” And you don’t know if it’s a 5 minute fix or a 5 day investigation and replacement of major drivetrain parts...
- t34543 7y agoAuto repair is 90% diagnostics and 10% wrench turning. A lot of newer vehicles have symptom matrixes with a process for repair. Lowering the skill floor for mechanics. What’s interesting to me about auto repair is how techs are paid. A lot of shops do book rate. Example let’s say you have to replace a front half shaft. Book rate pays you for 30min. If you take an hour to do it - you lose money.
- jcims 7y agoHVAC repair starts getting into black magic territory. Giant, incredibly dynamic systems with hard physics, positive/negative feedback loops, control theory operating with very few inputs and very uncomfortable humans dripping sweat on the back of your neck while they watch you work. I feel like everyone that frequents HN would have a good time spending a year working in that industry.
- BLKNSLVR 7y agoI've had a tangential interest in the physics / mechanics of air-conditioning since working in an office with two people on opposite ends of the "comfortable temperature" scale, and noticing that one of them opens their window in order to "solve the problem". I've since noticed various other people open windows to try to "fix" the air-conditioning temperature. My assumption is that opening the window fucks it up for the whole system, but very few people are aware of this, and the office folks aren't made aware of it by the air-con techs. Am I way off? Am I overstating the effect that an open window has on the system?
- jcims 7y agoSoftware development is more like manufacturing engineering. Auto repair is probably closer to working an operations ticket, only without all of the fancy telemetry and diagnostic tools, and a lot more bloody knuckles.
- Scoundreller 7y agoThe OBD port can tell you a lot. Especially if you can google it to get pointed toward the more common failure modes that lead to code XYZ.