Live data from Hacker News

Former Tesla Firmware Engineer Discusses the System

twitter.com

211–220 of 589 posts

Re: Former Tesla Firmware Engineer Discusses the System

#211
post #20

Earlier quoted context omitted.

Cars weigh thousands of pounds and routinely drive upwards of 60 miles per hour. The success of the first iPhone or Facebook app didn't depend on using it to navigate through life-and-death situations not only for the users but also for everyone around them. There are places for 'move fast and break things'. But cars move fast already, and they can really break things.

Tesla’s infotainment and IT infrastructure is unrelated to their safety. If this guy worked on motor control or braking system firmware then that would be scary, but he didn’t.

1. According to this source, the infotainment system arbitrates flashing other ECUs.

2. Apparently people can ssh into the infotainment system.

1 + 2 => someone hacks into the infotainment system and flashes a safety-critical ECU. I guess/hope there's some protection in place to prevent that.

Re: Former Tesla Firmware Engineer Discusses the System

#212

Sometimes I miss the carburetor.

Did you ever have to stand outside in the winter, in ice and show, with the hood propped open, spraying starting fluid into the carburetor, and manually holding the throttle open, so that your engine could get to the proper temperature? Did you ever floor a car and have the engine shut off because there was too much fuel? No thanks, I don't want to go back to those days!

Or fiddle with the manual choke to find a setting where the engine would sort of idle. Or wish you had a manual choke, when the automatic choke wouldn't go on -- or off.

Re: Former Tesla Firmware Engineer Discusses the System

#213

Earlier quoted context omitted.

What like SAP? And then spend 10s of millions in customizing it for their needs and dealing with an arcane, unintuitive interface? I've seen this over and over again.

I understand SAP's business model: common core business logic code that helps your legal compliance, then lightly customized at great expense. What I don't understand is why the UI sucks so very, very much every single time. And why it's so very, very slow. It seems like it has to be on purpose. Can anyone with insight explain it to me?

Different priorities. The goal isn't to make beautiful software. The goal is a system flexible enough to meet the users needs.

I also think it is a cultural. See SAP's blog entry "Why users might think their SAP user interface is crumby" https://blogs.sap.com/2015/09/15/why-users-might-think-their...

Re: Former Tesla Firmware Engineer Discusses the System

#214

Earlier quoted context omitted.

Very little off-the-shelf software was in use. The whole thing was custom.

Custom as in customized Oracle/SAP, or custom as in from-the-ground up custom? The former is generally a given for a company of any significant size (employees or business activity). The latter is unheard of for most backoffice functions (other than specialized accounting and finance functions) since it's a waste of money and would place the company at significant legal and regulatory risks--it would require effectiv…

In my opinion once you start to need heavy customization in off-the-shelf ERP solution (ie. because you do not fit in the vertical that the system is designed for) you are generally better-off writing the whole thing in house. And if you want to do it as web application then ASP.net with WebForms is one of the more productive approaches to that problem.

Re: Former Tesla Firmware Engineer Discusses the System

#216

Earlier quoted context omitted.

The .NET CLR and core C# runtime libraries are really nice to work with. But things become somewhat Microsoft-y (that is, nice-looking but amazingly half-assed in the most unexpected ways) when you start to do things like writing GUIs.

I've been learning WPF, and I want to shoot myself. It looks pretty, and is very flexible, but it's just so much damn typing. Plus the errors you get out of it are often pretty useless. Maybe my brain just doesn't get it, but the documentation makes me crazy too. I just hate everything about it.

WPF is a huge change from "traditional" UI frameworks like Windows Forms or Swing. It requires some rethinking and to get the most out of it you should really do things the WPF way in many (not all) cases, even though other options appear to work (they're just more work in the end and less flexible).

The documentation is actually fairly good in my eyes iff you're only writing applications. As a library and custom control vendor (a position I find myself in at work) it can be atrocious and sourceof.net is hugely helpful (and I still find myself wanting to debug framework source code at times).

Still, if you have specific questions, you can throw me an e-mail if you want.

Re: Former Tesla Firmware Engineer Discusses the System

#217

Earlier quoted context omitted.

I'm sure anything embedded is almost nothing like the pre-modified stock. The few paper I've read from embedded people is that they know how and will strip everything down until things are like they need.

Ubuntu and Centos come pretty naked; what would you strip and why? Im asking because I run few instances with very heavy traffic and have no issues whatsoever. Just added nano and fail2ban and it runs with no issues for about 2 years now.

Any kernel module that's not required (wifi, graphics, sound, USB, etc depending on application), any security system like selinux, any unnecessary libraries, helper utilities, etc etc.

Basically you rip out anything not strictly required for the task at hand.

Running on embedded hardware is quite different from running on server hardware, disk space and memory are measured in megabytes, not gigabytes...

Re: Former Tesla Firmware Engineer Discusses the System

#218

I used to work at SpaceX on the team that did a piece of software called "WarpDrive". It was a massive monolithic ASP.NET application, with large swaths done with ASP.NET WebForms and a slow frontier of ASP.NET MVC gradually growing when I was working there. This application was responsible for practically everything that ran the factory: inventory, supply chain management, cost analysis, etc. Elon is a big Windows f…

Only naive ppl blame the language instead of the codes based on the language.

Some languages are unfit for certain purposes. For example, Python is not meant for low-level programming, and C is not meant for writing secure, mission-critical applications.

Re: Former Tesla Firmware Engineer Discusses the System

#219

Earlier quoted context omitted.

Banks can reverse transactions if they want to. Tesla's cavalier attitude towards manufacturing has yielded a 14% first pass through rate on the Model 3 line (which is abysmal and may bankrupt the company along with declining M3 demand) vs. the industry standard of ~80% FPT rate. Source - https://www.businessinsider.com/tesla-hit-model-3-target-by-... We're at the point in the Tesla story similar to that of 2008 wher…

I don't think the rework rate is a big deal for the customer. Ultimately manufacturing is about increasing the yield rate so that costs are lowered, because rework is expensive. But if you can make money with lots of manual rework on every product, it's no big deal. Something to improve next quarter. I have so many electronic devices, from cheap to expensive, that have some passive component manually bodged on somewh…

People are waiting 3 or 4 months for replacement parts for their vehicles or Tesla has had possession of the vehicle (and the person is using a loner) for a similar amount of time. That won't fly in the mass market.

Re: Former Tesla Firmware Engineer Discusses the System

#220

Earlier quoted context omitted.

>Elon is a big Windows fan and pushed hard to run the whole shop on Microsoft tech wow - this is surprising to me and wasnt mentioned in the biography - any ideas why ?

Probably related to his use of Windows early on at home and at Zip2, PayPal, etc.

I have heard in some youtube video that one of the first post-merger conflicts at paypal was about elon pushing for Windows NT (and presumably MSSQL) instead of Oracle (presumably on Solaris).
Post reply on HN