The conversation

Lessons learnedExperience excerpt · English

I used to be an infotainment software engineer for an Auto maker

… I used to be an infotainment software engineer for an Auto maker. There’s this idea in the software industry that because the software behaves poorly on your car’s system, it must’ve been written poorly by someone who didn’t know what they were doing. In my experience it was almost always a matter of the hardware being stretched way past its limits. Your brand new 2024 car’s system has been in development for 4 years. Product people have been picking at the design and asking for changes way too late, and someone in accounting has asked the hardware contractor to cut more cost off the BOM. My colleagues were tremendously talented. Some of the brightest engineers I’ve had the pleasure of knowing. The developers aren’t lazy or inexperienced, they’re just being asked to turn lead into gold and often get silver.

Original discussionThe Glorious Return of a Humble Car Feature979 source comments · at import
8

What was this responding to?

Parent context · original excerpt

AN

I wouldn't mind touchscreens as long as these imbecile developers would strictly limit UI response time to under 16ms. In no world where you're barrelling 3,000+ lbs of mass at tens of miles an hour should you be distracted by some moronic app or subsystem failing to respond in time because it was written by under-experienced software "engineers." Any software running as a part of a motor vehicle should be federally regulated to not fail response time tests, and if they do, they should be deemed unlawful to be equipped by either the manufacturer or the owner. It's absolutely ridiculous that this still happens today, and it doesn't have to. So what? You've got physical buttons? Big whoop. That physical button that takes 500ms to respond is still as dangerous. You've just removed one problem.

Full original

Community replies 0

No community replies yet. Add your perspective.

Replies from the source 8

Direct replies available in this import. Original-language excerpts.

AN

That still just sounds like people not knowing what they're doing. In no world would automakers say, "Hey you know, we just did all of this tire engineering with this rubber, but let's change the composition at the last minute and not retest all of its physical properties." So, why should it be any different with software? Because some sucker PM didn't have the brains to say, "We can't actually do that."?

Full original
BE

Dude Winamp was a clean, simple and wickedly responsive UI that allowed a multitude of real-time audio tweaks and supported playlists with thousands of files. This was in the late 90’s running on 166Mhz processors with maybe 16MB of system ram. Are you saying modern car infotainment systems have fewer resources allocated to the UI?

Full original
AM

There's a 0% chance 4 yr old hardware can't handle what GP is asking it to do. > Product people have been picking at the design and asking for changes way too late Sounds like classic everything-bolted-on-never-refactored-always-add-features you see in the vast majority of companies. Which is fine if you're making a social app or CRM but not okay when talking about heavy machinery. No company ever prioritizes making things snappy and it's ultimately always on the engineers to push back. Sorry, this one is still on the software developers to me.

Full original
RA

Even if the infotainment has been in development for 15 years, all new cars I've played with seem less responsive than a 1st-generation iPhone despite having a UI that is no more capable. Either the engineers aren't making the most of the hardware or the hardware is underpowered by a few decades.

Full original
AM

I'm willing to credit this type of feature creep for some of the problem, but only some. Decades ago, we had hardware that was so much less capable than anything anyone has put in a car in ten years that the comparison is absurd. Nonetheless, those old systems were often very capable of doing useful things, and the UIs were often very, very fast by modern standards. And a lot of this was that the software stack was tuned for performance and latency and did not do things that hurt latency too much, and this came at a substantial modularity cost. Back when a TI calculator with a whole OS running on a Z80 was an order of magnitude or so faster than your average new car, it didn't have a compositor (which still eats a good frame or so of latency, maybe more, and, as an industry we still don't know how to solve this). It ran an OS that was surely far harder to tweak than a modern car stack, b…

Full original
PR

It's great to get your perspective on this. Aside from the GPS/navigation features, aren't car infotainment systems extremely basic? We've been controlling heating, cooling, audio source, and audio volume since the dawn of time. How are technical requirements related to these basic functions changing such that their UIs haven't been absolutely perfected by now? Is the entire infotainment code being rewritten all the time so there's no chance to iterate and improve on the previous versions work?

Full original
JE

the thing is, even the brightest of us are still terrible. There’s no such thing as a good software developer

Full original
IS

I believe that the engineers are competent at developing software, and think that a lot of the quality issues are due to engineers abdicating authority over the software to managers and never saying "No, adding in that feature at this point in the timeline is going to make this a steaming pile of shit and I refuse to do it and still call myself a software engineer." I get that we have families to feed, but I've seen far too much of a mindset shift in fellow engineers into thinking that we're warcraft peons rather than professionals. "The business" has engineering feedback as a necessary input, and speaking individually with steakholders they expect this - they'll push until we push back.

Full original
Continue on Hacker News

Respect different perspectives. Share concrete experiences.

Sign in to post, reply, repost, and quote.