Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

>RPIs are out of stock because they're useful - this company found a use for them.

While I sympathize with this sentiment, it should be noted that their use case could have been most likely accomplished with something like an ESP32, which is only slightly more difficult to work with but boasts a bulk price of $1-3 a pop.

Using a Raspberry Pi 4 for this is a bit like flying a private jet to get to the grocery store.



developing for esp32 is way more difficult than developing for raspi. raspi lets you basically treat it like a normal computer, you can use standard python and sqlite and install whatever nonsense you want from pip and basically assume it will run whatever your laptop can. it means you can hire kids straight out of school, or outsource to india, and whoever you get can work on it without really any concern - it'll run whatever crap you give it.

esp32 is embedded enough that you have to develop for it like you develop embedded software - you need to do things like think about how much ram you're using that you just don't have to on raspi.


Problem: We need to outsource the software to India.

Solution: Put a way overpowered computer in the product so they can program it.

Ridiculous problem with a ridiculous solution. Are they allergic to any level of correctness? Sometimes I'm ashamed to be in this industry.


I've struggled with this question myself so I'll just put it out: what makes using something that's more powerful than you need - and less expensive - wrong or shameful?

The only product that matters to a customer is one that exists, and if this approach saves you money, lets you prove product market fit, or allows the product to keep existing longer - isn't that more important than the fact the Pi has more parts than you need?

What if the jet ride cost 25% less than the drive? What if they're only using the jet to prove demand exists on the route? Optimization only makes sense in the face of scale, but you need to get to the scale first.


My lament is more about the unrelenting desire to degrade software from being robust, well designed, and fit for the task, to fungible slop pouring out of a pipe from whoever is cheapest. In no other profession (architecture, construction, teaching, anything) would that mentality be tolerated.

The unnecessarily wasteful hardware is just one of the (ultimately more benign) side effects of that.


> In no other profession (architecture, construction, teaching, anything) would that mentality be tolerated.

This is exactly what happens in other industries as well, it is not a software only problem.


I think all of the areas you listed have the same desire pushed on them. Maybe even more so than in software. Being able to universally seek products or services that are not cost optimized is an extremely rare opportunity. Most everyone grapples with scarcity of some type before they grapple with not having the most robust and well fit option every time.


The phrase that I've cautioned other engineers with over the years is "you don't get extra points for making it harder."

You really don't. And in most cases, making it harder means that you're probably making it buggier.


Why outsource to India?

Pick any random set of Software Engineers from any country. I guarantee you that you are more likely to find people who can develop fast on an RPi than on an ESP32.

Now if you're a startup needing to build very fast and iterate quickly, it's obvious you're going to use the RPi4. Then, once you've grown, you can make the system more efficient, port it, etc. It'll be a growing pain, but a sustained one. And without being completely immersed in ridiculous amounts of VC-funding (hopefully)

I'm the CTO of a company who helps startups go from the idea to the scale-up phase. We helped build a tiny startup to one of the most promising startups in europe using this idea. We're very proud of what we've achieved. Could we have built something with an ESP32? Sure, and we might have even made it in the same timeframe given the amazing team we have, but it was less risky to bet on the RPi than the ESP32.

In fact, the first iteration had an ESP32 and we were brought in because they needed to move faster and it was becoming hard to develop for and iterate at their pace. Again: perhaps we could have built the same with the ESP32, but it's a matter of risk analysis!

Sometimes I feel like people talk about these things in a kind of vacuum of perfection and utopia, outside of the real world. In the real world things get messy and move very fast. Supply-chain issues arise, hardware has to be swapped, people move cities and quit their jobs. Where we have excelled as a partner is in dealing with very very very fast change and using an ESP32 for that would have made things harder. Now instead of a dead product there's thousands of the thing we helped build out there, and growing. And we're finally moving away from the RPi4.

Technology is actually a very small part of what we do. Most of it is creating the logistic and the "system" around the technology to get everything to work. Sometimes, as engineers, we forget that.


you can outsource esp32 developement to india just fine. the fact that someone decides to use overpowered hardware so he can develop crapware is independent of where the crapware is developed


An ESP is a chip, not an SBC. So then you have to pick an off the shelf SBC from a different supplier which is either (a) hobby grade, see OP or (b) much more expensive or (c): you have to do your own electrical engineering, component selection, BOM, PCB layout, PCB manufacture, assembly, deal with a contract manufacturer - do EVT, DVT and PVT - ramp production, test/validate, package, stock and distribute the units. (c) is going to delay you 6-12 months.

We also don't know anything about the quality of the software running on those devices. I've seen some awful crimes against computers committed in embedded software - and I've seen some pretty well written software on more capable machines. And v.v. of course.


Take the money from the raspis and put it in a decent developer, then fire him once you unleash the scooters and break even after a couple months? The issue here is the months long wait I assume


I understand your point—the barrier to entry for development is somewhat higher for the ESP32 than for the Raspberry Pi.

Then again, I wouldn't say that it is way more difficult, and I would wager that most of those who have the skills to build the brain of an electric scooter with a Pi 4 could learn how to port their application over to the ESP32 platform within at most a week. Even if you went with a more pessimistic estimate than that, the enormous price difference between the two boards will always make up for the cost of engineering at scale.

Consider a few other advantages of using the ESP32 here: faster replacement times of faulty hardware, and a way smaller attack surface. How much do you want to bet that those Pi 4s have "root" set as their username and password?


Right, but depending on your industry, you may not be able to make up the development speed advantage of the RPi at any cost.


You would like Python and SQLite on ESP32? Looks like a solved problem.

https://github.com/spatialdude/usqlite/wiki/esp32


Micropython isn't actually Python.


The only time I think I'll ever see a pi compared to a jet, hah!




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: