Mike Baier
198 posts

Mike Baier
@Mike__Baier
Director of Production, Electrical Engineering, and Software Engineering at The Boring Company













JUST IN: Trial lawyers are lobbying against self-driving cars, arguing they threaten auto accident litigation.



A foundational principle for automating complex machines operating in unstructured environments is what I call Tele Op-to-Autonomy. All this means is that you should start off with 100% remote control (tele operation) and progressively add automations until the human is eventually 100% removed. Why this works so well: 1) It allows you to get a product into the field crazy fast, which means you can start learning where all of your wrong assumptions are much sooner. This is by far the fastest path to test out product market fit, test tech efficacy, etc. 2) There is significant overlap in the tech needed to teleop and automate so the amount of “wasted work” towards the ultimate goal of full automation is actually quite low. In both cases, you will require: - A fully drive by wire system - A sensing suite capable of giving full situational awareness - A remote support function for when things inevitably go wrong. 3) Development/iteration speed skyrockets when devs don’t have to eat the entire elephant at once. Imagine being a developer asked to automate some function for machine that is mission critical for the customer and you have the following two options: Scenario 1 - Focus on automation first: The devs are well aware that if they don’t deliver a solution with 99.9…% (pick your number of 9s) the customer will be impacted, their work will have caused relationship damage, and they effectively will have failed. As a result, devs start to focus on solving for the long tail of exceptions which exponentially increases time to market. Scenario 2 - Focus on awesome teleop first: You built your remote support systems first and thoroughly enough that someone anywhere in the world can strap into an awesome UI, get full situational awareness through strategically located streaming camera and sensor feeds, and take control over every aspect of the operation. If you did this right there is also a mechanism to alert someone that a machine or process is “stuck” so the person can just get an alert, switch the UI over to that machine and seamlessly take control. In this scenario, someone watching the machine wouldn’t even know that control was handed off to a remote operator as the system keeps operating without the need for any local interventions. In scenario 2 the automation strategy can start to be viewed through the metric of “# of support personnel per machine”. On day one that ratio will likely be 1:1. As you incrementally add automations that ratio can go to 1:2, the. 1:5, then 1:20, etc. and it can happen fast because each step of the way the developers writing the automations know that there is a graceful fallback plan for any exceptions so they don’t need to solve the long tail of potential issues before releasing the new feature.











Gotta love the LLMs' standard response - because it's exactly what any mathematician would say if you showed up with this out of the blue.








