12 ms·
The Internet of Things – A Disaster
- ChuckMcM 9y agoAn interesting read, a bit more inflammatory than I find informative but the points are pretty solid. Realizing a new device, especially a safety critical device, is something to be done with care (he rants about the Nest smoke detector). And it is "easy" to get irrationally exuberant about adding a computer to things that don't really need them. But I'd diverge a bit on claiming the practice flawed rather than simply the application of it in this case.
- almostarockstar 9y agoAgreed. A bit ranty - but still a good analysis of what constitutes bad design when "disrupting".
- sharemywin 9y agoI read the article as: "Move fast and break things" is great for a giant clickbait system, but in some industries it can kill people.
- quanticle 9y agoThe problem is that the device is the result of a flawed process. If the process isn't fixed to be more conservative, it will continue to produce flawed devices.
- Animats 9y agoThat's what bothers me about IoT projects - little consideration of failure modes. Nest thermostats have failed in modes that resulted in houses having no heat, and the user couldn't override it locally.[1] Combine this with active attacks, and it looks really bad. Over three weeks after the attack, Maersk Lines is still struggling. Their big ports didn't achieve close to normal operation until about last Monday. Their big automated port in Rotterdam is running again, after being totally shut down for two weeks, but there's much more manual paperwork than usual, and billing is completely down, so they have zero revenue.[2] LA and Elizabeth NJ are finally back up. Some customer-facing functions were completely re-implemented with simpler web sites. Container tracking is still down. This is the world's largest shipping line, 24 days after the event. [1] https://www.nytimes.com/2016/01/14/fashion/nest-thermostat-glitch-battery-dies-software-freeze.html https://www.nytimes.com/2016/01/14/fashion/nest-thermostat-g... [2] http://www.maersk.com/~/media/20170629-operational-update/20170714_5pm_nwc_faq.pdf?la=en http://www.maersk.com/~/media/20170629-operational-update/20...
- pmarreck 9y agoThe Nerves project (http://nerves-project.org http://nerves-project.org) is an IoT OS which basically boots a device into Elixir, and benefits greatly from the battle-tested Erlang BEAM VM which is extremely fault-tolerant. Do you have a link to the Maersk story? My dad used to work in shipping. Also, my original Nests decided out of the blue one day that their power wires were both disconnected (which is impossible); is this bug related?
- Animats 9y agoAlso, my original Nests decided out of the blue one day that their power wires were both disconnected (which is impossible); is this bug related? Probably. The problem resulted in Nest units not charging, but continuing to run until their battery was dead. Bringing them back up required a recharge via their USB port, followed by a firmware update to keep them from doing it again.
- willtim 9y agoBoth Erlang anr Elixir, while safer than C/C++, are still far from ideal for any critical system, since they lack any kind of static typing.
- __jal 9y agoGiven that even the 'premium' end of IoT things we have so far range from insecure to dangerous, I think the onus is on those attempting to sell them to demonstrate that their product isn't literally worse than useless. After that, they can make the case of being better non-connected devices. And, never say never, but there are some classes of devices of which I will never buy IoT versions, or if I have to, I will cripple the connectivity. Frankly, house locks are one of those - the dangers are far greater than any convenience for me. That reduces to one's threat models, of course, and I totally get that others may differ. (I live alone in an urban environment; having eight kids and house staff in the 'burbs would be entirely different.)
- calafrax 9y agoThe key thing that this hits on is that it is bad engineering to replace a simple system with a vastly more complex system for the same task. The correct approach, which the author points out, is to leave the simple system in place and then layer the more complex system with its additional features on top in a way that when it fails it does not break the base level system. On the same topic, it might be good to keep POTS around, just in case we ever want to make an analog phone call again.
- grapeshot 9y agoIf you're writing an article, is it really that hard to do a little research? Most of this piece is just "I didn't even bother to look up a teardown photo, but here's how I assume they must have designed it".
- sgt 9y agoHe explicitly says that while he didn't tear down one himself, the folks at ifixit did and then he included a link to the photos.
- jaxbot 9y agoHas anyone tried one of the newer revisions of the Protect and had any experiences, positive or negative, with it? I was initially excited when I heard about the product announcement. It seemed like everything I wanted in a smoke detector: remote monitoring, ability to silence, starting with voice before blaring and getting my adrenaline up, and, well, a smoke detector. But Amazon reviews and the infamous video later, I backed quickly away. I've been awoken by a false-positive smoke detector before and the experience is panic inducing on top of outright annoying.
- zippergz 9y agoI have a few of them. I like them, and haven't encountered any issues with them. I also had a first gen and didn't have any problems with that. That's not to discount that other people did have problems, or the fact that it's critically important for a safety device to be reliable. But I think that the problems are vastly overblown, and calling it a "fiasco" is hyperbole.
- DIVx0 9y agoI just bought a house that has two 2nd gen protects along with traditional style detectors, So far so good! No false positives so far. I reset both detectors and had them go through their self test when we moved in and they both report being fully operational. Neither of the protects are near the kitchen or regular smoke producing spaces though. However They are near bathrooms. I hear steam can set these off pretty easily but I have not had that experience. I might buy more protects to replace the other detectors but I want to wait a bit and see if nest comes out with any other products.
- pcblues 9y agoI would test them with smoke just to see how each behaved. Try with smoke from a candle just put out, a piece of paper just put out, and a plastic wire just put out.
- astebbin 9y agoI have 2 first-gen and 2 second-gen Protects in my home. I've never had any false alarms. The newer model has 4.7 stars (out of 5) on Amazon with over 5000 reviews, so I think my positive experience is the norm.
- frozenport 9y agoTldr; build an analog backup into a mission critical device. The argument about not reinventing the wheel might be misinformed, because their custom chip could actually be a well known design with a tiny tweek.
- 3chelon 9y agoThe author makes a very valid point about people replacing embedded systems with Linux. I have a home automation system that has been running for over a decade now, and has several generations of technology in it. The order of failure is, from highest to lowest:- 1. the desktop I receive status updates on; 2. the Raspberry Pi I added to monitor the remote nodes and email me status updates; 3. the batteries; 4. the physical parts: motors, etc; 5. the embedded systems that read the sensors and control the motors; 6. the analog circuitry.
- mcbruiser3 9y agodo you happen to have a writeup of your HA system and how you put it together?
- ocdtrekkie 9y agoNot the parent, but I will probably be writing up mine soon. My choice of hardware is heavily inspired by the notion that devices function independently of the computer, and the computer functions independently of the Internet. ...My home automation software has bugs, and I've had plenty of problems with it. But I've yet to have a problem with my thermostat, lights, or smoke detectors. Despite all of them being linked to it.
- mcbruiser3 9y agoOK, great. Will look for a reply with a link.
- noonespecial 9y agoWith apologies to the late Mitch Hedberg, always design your device to fail like an escalator, not an elevator. When an escalator fails, it becomes stairs. When an elevator fails, it becomes jail. Don't design a computer that is a smoke detector, design a smoke detector that happens to also have a computer. A kernel panic or complete loss of computing should leave behind a traditional smoke detector in a fancy looking case.
- ghaff 9y agoI agree (of course). It's even a bigger problem for me with the Nest thermostat. Living somewhere that gets cold in the winter I absolutely won't tolerate an added failure mode in my heating system. And I have other ways to monitor temperature that happen out-of-band of my furnace control.
- DougWebb 9y agoA couple of years ago I had a 'failure mode' problem with my heating system. A winter storm knocked out power in my area. My heating system was a natural-gas-fired boiler that produced steam, which thanks to gravity would rise up through my radiators, condense to water, and flow back to the boiler. The power outage didn't stop the gas, so the only thing that kept my furnace from running was the electric thermostat that sent on/off signals to the electric device that controlled the gas valve and sparked an ignitor. The thermostat itself had a battery backup, so it was trying to turn the heat on as my house cooled off. But the controller and ignitor had no backup. I couldn't even use a match to light the thing manually, because there was no way to open the gas valve. I understand the safety implications of adding a manual valve and spark ignitor to a furnace, but letting my pipes freeze (and me too) also has safety implications. Besides, there's probably already a thermo-mechanical safety mechanism that would slam the valve shut if the furnace gets too hot. Luckily, the power came back on in a few days, before my house got colder than light-jacket conditions. No frozen pipes.
- tgtweak 9y agoUnfortunately the ones that were immune to this employed Mercury switches, which I don't believe are sold any more. We had an older gas heating stove which had this and worked even when the electricity was out (particularly good in the winter when heating with electricity). Eventually that part failed and being an older model, that part was discontinued by the manufacturer. This forced us to get a "new" stove which now uses an electrical system to control it, and which doesn't have a battery backup integrated. Technically one could add a UPS, but since it also uses an electrical fan it would probably empty that ups within a few hours.
- philipkglass 9y agoI first read about Internet of Things in contexts where it seemed to make a lot of sense: monitoring bridges and pipelines for integrity, "smart grid" coordination to optimize electrical grid services, networked sensors for better preventive maintenance and higher productivity from existing capital equipment (e.g. mining facility trucks, crushers, power plants...) It's sad that the term has come to be dominated by ill-conceived consumer devices. I still have to remind myself that people are picturing "waffle iron that sends email" rather than "networked strain gages on bridges" when they savage IoT as a concept.
- azeirah 9y agoI've recently come to believe the same thing, always shrugged off the weird consumer IoT stuff because of the marketing, security issues and uselessness of a lot of the projected visions of the IoT future. I lose confidence in my rejection of IoT when I think of smart energy grids and cooperating sensor-networks. It's a useful and welcome addition to our future.
- com2kid 9y agoThere is a battle between the old school people who want to do everything with microcontrollers and who measure RAM in Kilobytes, and the new generation who want to embed a full microprocessor + OS in everything. When it comes to capabilities, the people arguing for entire OSs generally win. Go with Linux, get an HTTPS stack, get XML parsing, get JSON parsing, don't worry so much about RAM. And heck, the price different between a microprocessor and a microcontroller is minimal now days, a couple bucks in large quantity (especially if you have to outfit the microcontroller with more chips to add functionality). The microcontroller people are right in one way though. Their products are simpler. Battery life will be better (it is easier to control power usage when you start with nothing and build up, then trying to minimize an entire OS down) and the code will be purpose built with less complexity to it. The ESP8266, ESP32, and Arduino are one view of things, Raspberry Pi and "Things with Android Running On Them" are another. Of course against all of this, the analog EEs laugh at us and continue to make things that just /work/.
- DougWebb 9y agoIs there software that you can run on a Pi that emulates a microcontroller that uses the Pi's I/O pins? That might be an easier to use way to prototype, with the ability to restart the microcontroller while the host is still functioning. It could also be a nice way to emulate additional IoT devices in a neat little package, which might help simulations and debugging.
- jimmywanger 9y agoI think the problem is the realtime. You can certainly write software that emulates a microcontroller on the Pi, but the problem is that it can't guarantee timing, since it's running on Linux fundamentally, and other processes can pre-empt it. For certain things it doesn't matter as much, such as for a door lock or something like that. Then you gotta worry about power consumption, since running cables to your lock is problematic, and it has to run on batteries for months at a time. That's a reason why realtime controllers can't run on Linux - if you were controlling an industrial robot that controls welding temperatures and times, even like 300 ms off can drastically affect the finished product with fit and finish and metal heat treating. "This whole batch of parts worth hundreds of thousands of dollars went bad!" "Well, the network is down, and the robot controller was busy trying to reconnect to the network, so that's why the welds were formed over 300 ms more than they should have been." That can't cut it in industrial applications.
- jancsika 9y ago> First, begin with a smoke alarm. A tried and true design that you can buy for $10. Buy the exact parts that are already in use, and put them in your final product. The smoke sensor, the transistors, the through-hole resistors, the Fairchild IC, the 9V, the LED. Buy all of that and use it in your final product. So... why didn't Nest do it this way?
- rubatuga 9y agoThey were too busy disrupting the smoke sensor market
- debacle 9y agoSoftware people designing hardware.
- StavrosK 9y agoActual answer: Because you can't sell that to Google for $3.2 billion.
- jancsika 9y agoBut why not piggy-back atop of the legacy hardware? Doing that would save time and let the software people solve higher-level (and presumably more interesting) problems. Besides, software people I know are way to lazy to go sticking their fingers in sockets.
- komali2 9y agoI don't think a poorly designed and engineered product, that happens to connect to the internet (and to be fair is marketed as "IoT") means that the entire concept of "connecting devices to the internet" is "bullshit." I agree that there's a lot of marketing Bullshytt (to steal from neal stephenson) regarding IoT, but when we get to the root of what the words really mean (connecting stuff to the internet), I think it's the natural progression of technology. Why wouldn't you connect your field of oil pumps' valve readings to the internet (as well as having the manual needle-gauge backup) so you don't have to have a dude drive out every day to take readings? Why wouldn't you connect your thermostat to the internet so you can override the schedule when it turns out you need to stay late at work? Etc. I don't get why everyone has to lump together the marketing bullshit that obviously is overstated with IoT, and then go "hence, IoT will fail and is crap."
- rubatuga 9y agoThe author mentions that he would like IoT for his washing machine, so I think you’re misrepresenting his sentiment. Most likely, he’s angry with the current engineering standards of IoT, more specifically Nest
- ouid 9y agoYou can network things without exposing them to the world.
- zanny 9y agoCultures are extremely hard to change, and there is a culture in hardware manufacturing to expect a product lifecycle of production, distribution, sale, and returns if something physically breaks. The Internet connectivity is not the real problem, but it is the greatest show of the problem in commodity hardware (and this does apply to a lot of computers, particularly phones - the more disposable the device the more prevalent the behavior) that manufacturers believe it is ethical to produce a product nobody can maintain or repair on their own. These companies also have limited to no long term plan for support. The problem is that general purpose computers are not suited to fire and forget when interacting at levels of abstraction as large as TCP networking. I don't think this will ever be solved, because average consumers are incredibly ignorant of why it is a problem to begin with, and thus they do not care if they don't have rights to repair the software running their devices. At least until something goes wrong, then you get isolated outrage that fades away when the computer is too "complicated" or "magic" to understand and thus the ignorance drives people to simply assume it isn't a solvable problem, when it really is - we have communities maintaining support for chipsets manufactured in the 70s with modern software, but they can only emerge and grow when devices are either popular enough to incentivize the massive effort require to reverse engineer the software entirely or have publicized documents on how to modify them. As long as it isn't generally considered unethical to provide black box software running the hardware you buy (when likewise the design documents of said hardware are also often proprietary trade secrets) then nothing will change. People are offended if they are sold a car whose engine they cannot open and whose parts they cannot replace (up right until said car has a computer in it, at which point all expectations of right to repair go out the window because the computers are "magic" in ways belts and radiators are not) but they happily buy phones they can never disassemble.
- gumby 9y agoNest is doubling down on the dumbness too. Their nest cams ship everything up to the cloud for processing! What happened to computing at the edge? Are Apple (of all people) the only ones to still embrace this philosophy?
- jff 9y agoProcessors are cheaper than ever, and there are multi-core multi-gigahertz processors with multiple gigabytes of RAM scattered throughout most homes but yes, as you point out, nobody wants to use them, they want to ship them up to "the cloud" or as we used to call it, "some servers on the Internet". A charitable soul might say that by keeping local software simple, the end-user's devices don't need to be updated as often, while the software running on the cloud systems can be continually enhanced. A cynic like myself would say they prefer to use the cloud: 1) because it's easier to gather serious data about the users for later use/sale 2) because by tying users to an online service, they have something valuable ("2 million active users!") to offer when the startup inevitably gets bought out 3) because you can get away with less efficient code if you're running on a big timeshared server vs. on a small battery-powered device 4) because "the cloud!" is still an effective marketing gimmick
- mahyarm 9y agoAs an ios mobile dev, I get jealous of my fellow android dev's ability to roll out updates incrementally and to publish updates immediately. With a cloud model, you don't have the possibility of bricking your customer's device as a failure mode. 1) You can actually gather more data on the device vs just a remote service 2) SaaS moats are attractive from a business model perspective 3) TBH pushing compute on your customers devices is cheaper for the cloud owner, but harder to manage. On a per user basis most servers are actually VERY efficient. Most peoples smartphones are relative supercomputers, only some things will be very battery draining. 4) 'the cloud' does enable a lot of stuff that people don't want to manage manually themselves
- dgacmu 9y agoBecause you can offer processing-intensive features to customers who bought the device several years ago without requiring they buy new hardware! Look at the changes to what you can do with a Nest Cam, an Amazon Echo, and a Google Home compared to when the hardware was released. Particularly when you want to do various machine learn-y things on the data. Can't go retrofit 1M consumer devices with TPUs, but you can use them in the cloud.
- rubatuga 9y agoI’m just wondering, as we shrink our gates for CPUs more and more (the gates are approaching 10nm soon), does it become less reliable? People always want the next fastest and most power efficient device, but surely we must be losing something with the shrink in CPU gate size! If that’s the case, are CPUs such as the Intel 286s more reliable?
- pacificmint 9y agoThe vast majority of issues will arise from software defects, not hardware defects. So rather than switching to a 30 year old cpu, increasing the quality control and testing for the software would be the better aproach. Also, as some peope in this thread have mentioned, a smart smoke detector should be designed in a way where if it fails it becomes a dumb smoke detector, but the actual smoke detection and warning should still work.
- sigjuice 9y agoThe vast majority of issues will arise from software defects, not hardware defects. Exactly. The last thing I want in my house is a smoke alarm with software written by idiots like me.
- justinsaccount 9y ago> I can't buy something that just has a $5 microprocessor with just enough intelligence to connect to the internet and send me an email or a push notification if the buzzer on the washer goes off. 1000000 x this. The only thing I'd ever want a smart device to do is have a way to configure a mqtt or such endpoint that it should connect to to send/receive simple messages. Just no consumer actually wants this. They want to be sold a box that connects to someone elses mqtt broker so it can work with an app that connects to someone elses server. It's just another front on the war on general purpose computing.
- astebbin 9y ago> a $5 microprocessor with just enough intelligence to connect to the internet and send me an email or a push notification if the buzzer on the washer goes off You have essentially described the Protect. Its brain is a cheap little MCU with 128kB RAM. The author, had he read an actual teardown [0], should have realized this. Instead, he made false and confusing claims about Linux. Certainly other companies put grossly-overspecced hardware in their "Smart" devices, but Nest's Protect isn't one of them. https://www.ifixit.com/Teardown/Nest+Protect+Teardown/20057 https://www.ifixit.com/Teardown/Nest+Protect+Teardown/20057
- wrs 9y agoLinux specifically is wrong, but according to ifixit, there are two general purpose 32-bit processors, and two radio SoCs also containing 32-bit processors. Which to me still seems like a heck of a lot of CPUs and software for a smoke alarm.
- ksk 9y agoI think it also requires a mindset that a lot of young engineers don't have IMHO. Very few of them will ever ship code that will run 24/7 without patching, and be stable out of the box.
- pishpash 9y agoThe whole patching culture (it being so easy) is just bogus. It is moral hazard through and through.
- ocdtrekkie 9y agoThis really worries me when they start writing critical applications. I did have to reboot an old school program at work today. Very dated piece of software, pretty sure it predates Windows 7. It had been running, over a (fairly complicated) network connection for 303 days. I can't think of many modern pieces of software that do their job 24/7 for 303 days straight. And I'm pretty sure the reason it was 303 days, was because I had to move that machine last year.
- pishpash 9y ago"I need to preface this by saying that I have very little faith in the worldliness or general sense of Silicon Valley hardware engineers. I have seen a long history of extremely poor decisions from that part of industry, so I will assume they made all the worst decisions." Old school engineers designed bridges, dams, nuclear plants, transformers, etc. They took a serious oath and got a license. Software "engineers" -- and let's be honest, most are closet software engineers, even the "hardware" ones -- are not cut from the same cloth in approaching problem solving, to the major detriment of society. I never trusted them.
- mahyarm 9y agoIt's about specs, budget and liability. Most people are engineering software tents and art pieces, because that is what the market wants and demands. They don't want to pay the price for non-tents. There is nothing wrong with software tents, you just have to realize what they are.
- luord 9y ago> to the major detriment of society. I never trusted them. That's going a bit too far, though. Software has accomplished a lot for society, even if the methods are still not standardized, which absolutely is a problem, and prone to failure.
- ew6082 9y agoAs one of those engineers, I often wonder. In my line of work, if you don't have a stamp, you're not an Engineer. While NCEES offers a PE in software, how many in software actually take the PE exam? Is Professional Engineer even a thing in Silicon Valley?
- astebbin 9y agoAs a Silicon Valley software developer, I haven't seen many credentialed engineers. The vast majority of my colleagues in software have a degree or two in Computer Science, but no formal engineering certification. The few I've met I would describe as "incidentally" credentialed, meaning they went to a school (commonly Waterloo) where it was a requirement for graduation.
- rubatuga 9y agoA lot of the research into redundancy for computer systems has already been done. Check out this article from NASA when they began to implement multiple failsafe computers into their spacecraft. https://history.nasa.gov/computers/Ch4-4.html https://history.nasa.gov/computers/Ch4-4.html
- kootenpv 9y agoThe best article I have read in a long time.
- _iyig 9y agoI worked at Nest. This blog post is full of BS. For example: "For the record, I read several stories about the Nest Protect going into permanent alarm, and you know what my hunch is? The same thing I always assume: "Dumb Linux crap." The culprit was probably some shell script that opened /opt/smoked/detect and output 1 to it and then left the file locked so nothing else could touch it or forgot to delete a pid file or whatever. This is what I always assume when I read about Linux integrated devices screwing up, and on the occasions I've actually heard what the cause was I usually end up right." As I mention in a separate comment, iFixit's teardown identifies the 100Mhz, 128kB RAM MCU which is the Protect's brain. Such a device does not run Linux. Had the author done any research at all, they would have found this. Instead, they waded into an unfamiliar topic with the knowledge of a novice and the arrogance of an expert - precisely the accusation they level against Nest. Furthermore: "The Smart device engineer does not begin by disassembling ten smoke alarms to see how they work. They do not begin by reading papers written by fire chiefs and scientists. They do not look at the statistics on fire-related deaths with and without smoke alarms of different eras (although the marketing department director does)" All this due diligence and much more was done. The author's lazy speculation insults me and my former co-workers. This blog post gets lots more important stuff wrong. Suffice it to say that today the Protect is very well-rated by consumers and safety professionals. The IoT field as a whole is a mess, and deserves much of the author's criticism. Nest, specifically, does not.
- stingrae 9y agoThank you. I find this blog post to not be worth the credibility of the HN front page.
- monochromatic 9y agoCan you expand a little more? I'm really curious what else he got wrong.
- zkms 9y ago> All this due diligence and much more was done. I don't have any connection with Nest Protect and don't own one, but the fact that the Protect does not use an ionisation sensor (they suck because they suck at detecting fires early, it has nothing to do with the harmless radioactivity) and used a dual-wavelength photoelectric sensor gives them high marks in my book. All the hardcore smoke detection equipment -- both the aspirating kinds ("VESDA") and the open-space beam/imaging kinds -- use dual-wavelength sensing. I cannot speak to all the "smart"/"connected" aspects of the device but the smoke sensor seems far better than that of every other residential smoke detector, and it would be very nice if other residential smoke detectors ditched the ionisation sensor and went to a dual-wavelength design.
- _wldu 9y agoA friend of mine likes to say, "The S in IoT is for security".
- lxe 9y ago> Put it on top. Connect the I/O lines on your little PC to the output of the smoke detector chip. Let it do the heavy lifting, the stuff that you aren't sure you can do safely and which it has proven it can do for decades. I worked on a network communications part (the little PC) of a device that controls train signals (the smoke detector chip). This is exactly how it's architected -- the safety-critical components are isolated from the non-safety-critical ones. The busybox linux board does not go in between the sensors and the vital control logic, but rather "on top"
- luord 9y agoAll of these are excellent arguments against most of the IoT practices, and not even including the security issues. All in all a great read[1]. These are all the reasons for why I'm not interested in IoT/embedded. I just don't have the hardware and low-level firmware knowhow and doing it the other way, starting with an OS and going down, seems (and evidently is) horrible. And I say this as a full-time software developer. [1]: Even if there might be inaccuracies; the author admitted the possibility and the point stands.
- bsder 9y agoAs much as I like slagging the Internet of Crap, smoke detectors are not a great example because smoke detectors are remarkably complicated. They have to work. For years. They have to detect disgustingly small signals. Reliably. And, by the way, the chips have to survive in close proximity to a radiation source. And generate an alarm loud enough to wake the dead. If I remember correctly, Qualcomm nee NXP nee Freescale nee Motorola used to keep an old 2" aluminum gate fab line around because every time somebody tried to make a new smoke detector chip something failed. So, they kept the fab open and simply printed money.
- nivramarvin 9y agoThe mobile-friendly view, recommended on top of the article - is kind of a usability disaster: I really like the authors approach using plain HTML. But using the mobile-friendly view has many usability pitfalls like: No links, no ability to copy text, no ability to search on page and switching to another browser-tab will lose the current position where you were reading at. As said in the article, sometimes its better to keep things which just work and are used by the majority like that. Same goes for using some styles or a blog template to provide a a fully mobile friendly read for the user, not a compromise of two bad options (plain article or mobile-"friendly" view).
- MarkMMullin 9y agoOne thing I believe that's not being properly considered is the fact this is really a multilevel problem - if you want to make a smart IoT device you still want a reliable device. "On top of" is absolutely the best concept. Yes, the biggest computational bang for the buck comes from stuffing linux or something similar in, but who doesn't react with a smile when they see a multi year uptime reported - it's not rare, but it's not anywhere near a majority either - Start with the basic circuit, on top of that you add microcontroller logic to mediate between the higher level ARM SoC or whatnot and the base circuit, and just as importantly, you've also got a microcontroller based watch dog that will kick linux if it falls over. My experience in building this https://hackaday.io/project/21966-quamera https://hackaday.io/project/21966-quamera is to never stop asking "Quis custodiet ipsos custodes" (anybody proffering analog solutions will be ignored, analog is hard and I am stupid)