The engineering blog of comma.ai, the self-driving company behind openpilot, covering its products, data center, and driving models.
HN commenters praise its clear writing, cite the Taco Bell drive without disengagement, and follow the Comma Body and data center posts.
>Each robot had several human escorts, and the robots were limited to slow walking and a few slow hand gestures.
More importantly, the robots were limited to doing no real work. They just feebly pick up objects and place them somewhere else, which I am pretty sure doesn't require AI.
For example, the vid shows the robot pouring hot water into a glass with a massive funnel strapped to it. Why not have the robot fill the kettle, place the teabag itself, etc? It seems like the kind of thing that should be developed before walking and talking and telling jokes.
What if the refrigerator, microwave, etc. could interface directly with the robot. For example, the refrigerator has some type of robotized shelf that is able to bring a rack of orange juice to the front before the robot comes over to grab it? What if the microwave is able to focus the microwave beam on the food to cook it evenly?
It also irks me how the robots are just humanoids. Like for example, why have a head with two eyes. Does it need to wear a helmet? Does it need exactly 2 eyes at exactly human-like placement to achieve stereopsis? Why not have 3 eyes? Did the designers think about the form of the machine at all, or did they just produce robots in the form that is associated with the most hype and thus will bring in the most investor capital? Is this really the ideal form for interfacing with humans? With other robots?
I am just very skeptical of these companies that want to go from zero to doing everything.…
Chatgpt:
# don’t own the cloud, rent instead
the “build your own datacenter” story is fun (and comma’s setup is undeniably cool), but for most companies it’s a seductive trap: you’ll spend your rarest resource (engineer attention) on watts, humidity, failed disks, supply chains, and “why is this rack hot,” instead of on the product. comma can justify it because their workload is huge and steady, they’re willing to run non-redundant storage, and they’ve built custom GPU boxes and infra around a very specific ML pipeline. ([comma.ai blog][1])
## 1) capex is a tax on flexibility
a datacenter turns “compute” into a big up-front bet: hardware choices, networking choices, facility choices, and a depreciation schedule that does not care about your roadmap. cloud flips that: you pay for what you use, you can experiment cheaply, and you can stop spending the minute a strategy changes. the best feature of renting is that quitting is easy.
## 2) scaling isn’t a vibe, it’s a deadline
real businesses don’t scale smoothly. they spike. they get surprise customers. they do one insane training run. they run a migration. owning means you either overbuild “just in case” (idle metal), or you underbuild and miss the moment. renting means you can burst, use spot/preemptible for the ugly parts, and keep steady stuff on reserved/committed discounts.
## 3) reliability is more than “it’s up most days”
comma explicitly says they keep things simple and don’t need redundancy for ~99% uptime at…
COMMA | Software Engineers | ALL FULL-TIME | ONSITE IN SAN DIEGO ONLY
comma is a profitable company solving self-driving cars and robotics. We make open source software called openpilot and manufacture the comma 3X hardware onsite in San Diego. Think Tesla Autopilot like functionality for your Toyota, Honda, and more.
See our open source driving agent on GitHub: https://github.com/commaai/openpilot
Watch it take us to Taco Bell on YouTube and read our blog post about it: https://www.youtube.com/watch?v=SUIZYzxtMQs&t=2s
We're hiring great software engineers to:
---> Make a great web experience: comma.ai, connect.comma.ai, etc.
---> Run our factory: https://blog.comma.ai/comma3X/#reliability
---> Ship openpilot releases like this: https://blog.comma.ai/094release/
---> Write good infrastructure: https://blog.comma.ai/dev-speed/
Our stack is largely Python, with some C/C++ and JS(React)
Interview Process (roughly) = Coding challenge + 2 phone screens + paid micro-internship on site
Visit https://comma.ai/jobs for more detailed job descriptions
---> Reach out with a GitHub/LinkedIn to work@comma.ai
---> Fast Track by submitting a solution to the Calibration Challenge: https://github.com/commaai/calib_challenge
A lead would need to teach significantly more to even be considered.
Does the vehicle have (1) an after-market device installed that (2) detects that a first component stopped sending commands to a second component and (3) uses relay switch to disconnect the failed first component from the second component and (4) starts sending commands to the second component on its own that are indistinguishable from those sent by the first component?
Technically, the above requirements are needed against claim 20 of '707. Claim 6 requires fewer features.
That doesn't help us because:
(1) claim 20 is asserted in the complaint [0], and
(2) claim 20 was upheld in a previous challenge to its validity (an "IPR"), so it's got some staying power.
[0] https://blog.comma.ai/img/20220824085232055.pdf
I saw a video of a Tesla swerving around a jaywalking pedestrian the other day too, relatively high speed, also scary
It is interesting to compare the various systems safety pages
- https://waymo.com/safety/
- https://www.tesla.com/safety
- https://www.ford.com/technology/driver-assist-technology/
- https://www.gmc.com/connectivity-technology/super-cruise
- https://www.chevrolet.com/support/vehicle/driving-safety/driver-assistance
- https://github.com/ApolloAuto/apollo (Baidu based)
- https://github.com/commaai/openpilot/blob/master/docs/SAFETY.md | https://blog.comma.ai/understanding-the-openpilot-safety-model/#:~:text=The%20safety%20model%20has%20three,the%20driver%20to%20safely%20react.
The last two's minimalism around safety is not reassuring
Apparently some just gamble that by having some instances of every time, they won't all go down:
"However, your cloud provider can pull these virtual machines out from under you at any time without notice (because someone else is willing to pay more). So how do you lower the probability of losing all of your instances to nearly zero? Cloud providers generally need to have a large buffer of capacity and they have many different virtual machine configurations with different CPU and memory sizes. So, don’t just spin up virtual machines of a single configuration type, spin up lots of them from many different configuration types!"
https://blog.comma.ai/scaling-for-10x-user-growth/
I'm not sure if they still have a fallback of traditional instances.