They've made some very major blunders. First of all, for that price and that sales volume, you go with an off-the-shelf enclosure and machining that can be done in your kitchen, if need be. Yeah, the custom pluggable enclosure looks cool, but is wholly unnecessary. A membrane keypad with display and other windows can be had cheaply even when full custom. All in all, they've totally overdesigned it physically. If I wanted to develop open source firmware for such a device, giving my time away for free, I could probably make a profit on such a device in qty 100, never mind thousands. Sure it wouldn't have a full custom look, but it could be done for the price point they quoted.
That's nice, but I really don't understand the uproar. The quality of some answers is very poor, and the average quality of both answers and questions seems to be, well, nothing to write home about either.
I don't think that the shortcomings of broken blog engines are supposed to influence programming language design.
If I have to copy-paste something from a blog into an editor, then run autoformat on it, I might just pass on. Frankly said, people with shit worth posting know how to manage their formatting. If a post is so broken as to be unreadable, it's most likely useless code anyway.
If your blog "engine" can't handle a simple pre-formatted code block without tabs, you're doing things wrong. A lot of blogging tools out there seem destined for the barely literate, where a few paragraphs of text and a few pictures is the pinnacle of expressiveness. It's too bad that those tools mess up Python, but they mess up C/C++ and everything else equally badly: it becomes an unreadable mess.
Given that a space cannot be re-configured to mean something else, as opposed to tabs, I simply stopped using tabs for indentation long ago. Any decent editor knows how to deal with indentation without a 1:1 mapping between the Tab key and the TAB ASCII control code. So, I really don't see a problem.
He would have saved way more, then, by simply blowing in $250 of insulation into his attic, and investigating an upgrade to his HVAC system. Heck, even with the old HVAC system, just replacing the windows one-by-one yourself offers a way better payback. He must have had it real bad beforehand.
Never mind that a modern HVAC system's "thermostat" is really an application-specific terminal with a 24V power input and a CAN connection in the back. It's like an OBD-2 scanner: you have access to full diagnostics of the heat pump and the "furnace" (fan coil), and a multitude of settings to fine-tune it all. You will get informed when your air filter restricts the air flow too much due to it being dirty, when you lose refrigerant, etc. That's what you can get with a $7k system for a 2000 sq.ft. house, give-or-take. On such a system, a Nest thermostat is just as bad as a dumb thermostat would be - and you definitely don't want a dumb thermostat there!
Really, no modern HVAC system should have a dumb thermostat, but it shouldn't have a Nest either. It needs a terminal-thermostat that's designed to bring the system's features to the end user. And nobody who owns a house over 1000 sq. ft. should ever replace their HVAC system with a dumb one that doesn't have modern controls and diagnostics - it's a waste of money.
Nest is, unfortunately, an idea so dumb that it truly baffles me how can supposedly intelligent people come up with it. Any decent residential HVAC system comes with a smart thermostat already, and most of the efficiency gains are due to the efficient two-stage heat pump, variable speed blower fan, and a multitude of sensors that monitor it all and let the thermostat drive it appropriately. If I were to replace my default thermostat with a Nest, I'd actually lose lots of functionality for what: a perhaps better aesthetics and a remote access feature of dubious value.
At the very least, the Nest people should have reverse-engineered the rather trivial CAN-based protocols used by the few common smart thermostats and supported those. If you don't have money to buy a decent, modern and efficient HVAC system, you're not in Nest's market anyway. And when you do have a modern HVAC, a Nest is a step back.
It seems to me that Nest's designers only ever lived in crappy housing with old HVAC controls, and have no engineering background in HVAC. I feel a bit sad for the consumers who got tricked into buying a Nest - it's about the worst way they could have spent their money. In all seriousness, they'd get more utility had they spent the same amount on a used tablet or somesuch.
I don't rally know what point you've tried to make. I did not address at all whether the problem is endemic to engineers or not. I'm not saying that all engineers around me are incompetent, only that a lot - way too many - are not. The people I work with are always better at me at many things - that's a precondition to their hiring:)
I must, sadly, second that. There's a lot of engineers who have vastly overinflated opinions of themselves. In my hiring, I try to be modest, since I know I'm not good at most things, and always look for people better than myself in some way - mostly to learn from them. They are very, very hard to find. But then I spend about 15% of my time reading "random" technical writings about all sorts of subjects, just so that I won't look like a total idiot when faced with fields I normally don't deal with. It helps to gain perspective and understanding of the limitations of one's knowledge.
The biggest clincher is that the Earth's electrical grid doesn't even have to be susceptible to be damaged by such storms. The damage is due to high-intensity, slowly-changing magnetic fields that induce what amounts to DC current (when compared to the brisk 50/60Hz). Such low-frequency currents happily saturate the transformer cores and destroy the infrastructure. The solution is rather simple, and would have costed very little to implement: AC coupling of all conductors over a certain length in transmission and distribution circuits. By all conductors I really mean all: the grounded conductors, and mast-to-mast earting wires would need to be AC coupled as well. An alternative would be to add DC-breaking overcurrent protection to all circuits, including grounded and lightning protection circuits.
That's perfectly fine though: the fault indicator lights are there to indicate that there's a problem. Things get ugly when you decide not to run the engine anymore when such "tampering" is detected. Or, worse, if the emissions equipment is replaced by properly functioning aftermarket parts that don't have proper authentication circuitry and/or firmware.
This is bullshit. The manufacturer wants nothing open because it'll commoditize the stuff that rakes them boatloads of money. Regulation has nothing to do with it. The owner/operator of the equipment is responsible for maintaining it with adherence to emissions regulations. How she does it, is up to them.
This isn't actually the case. I know of no Federal regulation that disallows adjustments by a particular party. All that the regulations require is that there be no unauthorized modifications to the system. They don't place the onus on anyone to prevent such modifications in any particular way.
a lot of inconsistency between what is declared in.h files and what is implemented in the corresponding.cpp files
That's impossible unless you're talking about comments in the header files, or the implementation (.cpp) files don't include their own headers. Generally speaking, every.cpp file must include its header in the first non-comment line of the file.
The solution is simple, then: consider how much the cheapest insurance would cost you vs. paying the IRS fines. Do whatever makes financial sense. It won't be a big expense for you. Consider it another tax - and if it happens to be paid to an insurance company, you could even, gasp use the benefits when the time comes to do so!
So, you've got a 100k of disposable income sitting around just in case you had to say in the hospital for a week? Well, good for you, but I don't want the likes of you setting public policy, you know.
Those aren't called hacks, they are techniques and they stem from the structure inherent in numbers. As you progress in mathematics, you're supposed to be building a large vocabulary of such "hacks". Eventually you'll learn your multiplication table without even trying. More importantly, you'll be able to apply said hacks to larger numbers, where memorization doesn't help.
So, your complaint is not only solitary, but severely misplaced. Yeah, I attribute it to FUD. If you hear anything about Common Core from people who haven't read the source text and have no understanding of subject matter, everything you hear will be wrong. And I do mean everything. The misinformation is that bad.
when the schools attempt to illustrate things by cutting up paper or rearranging puzzle pieces, it is attacked as not being "proper math" by the usual suspects.
Such as? Hopefully no mathematician would ever do that.
This is not because of having teaching experience, but simply because I much better understand what the actual point of something in a larger setting and what the underlying key idea is.
This, a thousand times this! You can see the forest and the trees, and switch your perspective at will. U.S. math teachers can see the branches and the needles of the evergreens. I'm not sure if they even see the leaves of the deciduous trees, for they often know of only one way of doing a particular thing. Seeing the forest? Forget it.
Not only that, they fundamentally don't understand math. They can't see the forest for the trees. They don't know about the more abstract, unifying theories that intimately affect most of what they teach. Teaching elementary algebra without knowing what a group or a ring is, is silly. It's cargo cult teaching: all the moves, none understanding.
They've made some very major blunders. First of all, for that price and that sales volume, you go with an off-the-shelf enclosure and machining that can be done in your kitchen, if need be. Yeah, the custom pluggable enclosure looks cool, but is wholly unnecessary. A membrane keypad with display and other windows can be had cheaply even when full custom. All in all, they've totally overdesigned it physically. If I wanted to develop open source firmware for such a device, giving my time away for free, I could probably make a profit on such a device in qty 100, never mind thousands. Sure it wouldn't have a full custom look, but it could be done for the price point they quoted.
IOW: What a clusterfuck.
That's nice, but I really don't understand the uproar. The quality of some answers is very poor, and the average quality of both answers and questions seems to be, well, nothing to write home about either.
Holy shit, the CMD controllers! You brought back some bad memories. /shudder
I don't think that the shortcomings of broken blog engines are supposed to influence programming language design.
If I have to copy-paste something from a blog into an editor, then run autoformat on it, I might just pass on. Frankly said, people with shit worth posting know how to manage their formatting. If a post is so broken as to be unreadable, it's most likely useless code anyway.
If your blog "engine" can't handle a simple pre-formatted code block without tabs, you're doing things wrong. A lot of blogging tools out there seem destined for the barely literate, where a few paragraphs of text and a few pictures is the pinnacle of expressiveness. It's too bad that those tools mess up Python, but they mess up C/C++ and everything else equally badly: it becomes an unreadable mess.
Given that a space cannot be re-configured to mean something else, as opposed to tabs, I simply stopped using tabs for indentation long ago. Any decent editor knows how to deal with indentation without a 1:1 mapping between the Tab key and the TAB ASCII control code. So, I really don't see a problem.
echo 'int main(){printf("hello\n");}'|gcc -xc -&&./a.out
Nope, you don't need the spaces.
He would have saved way more, then, by simply blowing in $250 of insulation into his attic, and investigating an upgrade to his HVAC system. Heck, even with the old HVAC system, just replacing the windows one-by-one yourself offers a way better payback. He must have had it real bad beforehand.
Never mind that a modern HVAC system's "thermostat" is really an application-specific terminal with a 24V power input and a CAN connection in the back. It's like an OBD-2 scanner: you have access to full diagnostics of the heat pump and the "furnace" (fan coil), and a multitude of settings to fine-tune it all. You will get informed when your air filter restricts the air flow too much due to it being dirty, when you lose refrigerant, etc. That's what you can get with a $7k system for a 2000 sq.ft. house, give-or-take. On such a system, a Nest thermostat is just as bad as a dumb thermostat would be - and you definitely don't want a dumb thermostat there!
Really, no modern HVAC system should have a dumb thermostat, but it shouldn't have a Nest either. It needs a terminal-thermostat that's designed to bring the system's features to the end user. And nobody who owns a house over 1000 sq. ft. should ever replace their HVAC system with a dumb one that doesn't have modern controls and diagnostics - it's a waste of money.
Nest is, unfortunately, an idea so dumb that it truly baffles me how can supposedly intelligent people come up with it. Any decent residential HVAC system comes with a smart thermostat already, and most of the efficiency gains are due to the efficient two-stage heat pump, variable speed blower fan, and a multitude of sensors that monitor it all and let the thermostat drive it appropriately. If I were to replace my default thermostat with a Nest, I'd actually lose lots of functionality for what: a perhaps better aesthetics and a remote access feature of dubious value.
At the very least, the Nest people should have reverse-engineered the rather trivial CAN-based protocols used by the few common smart thermostats and supported those. If you don't have money to buy a decent, modern and efficient HVAC system, you're not in Nest's market anyway. And when you do have a modern HVAC, a Nest is a step back.
It seems to me that Nest's designers only ever lived in crappy housing with old HVAC controls, and have no engineering background in HVAC. I feel a bit sad for the consumers who got tricked into buying a Nest - it's about the worst way they could have spent their money. In all seriousness, they'd get more utility had they spent the same amount on a used tablet or somesuch.
I don't rally know what point you've tried to make. I did not address at all whether the problem is endemic to engineers or not. I'm not saying that all engineers around me are incompetent, only that a lot - way too many - are not. The people I work with are always better at me at many things - that's a precondition to their hiring :)
I must, sadly, second that. There's a lot of engineers who have vastly overinflated opinions of themselves. In my hiring, I try to be modest, since I know I'm not good at most things, and always look for people better than myself in some way - mostly to learn from them. They are very, very hard to find. But then I spend about 15% of my time reading "random" technical writings about all sorts of subjects, just so that I won't look like a total idiot when faced with fields I normally don't deal with. It helps to gain perspective and understanding of the limitations of one's knowledge.
The biggest clincher is that the Earth's electrical grid doesn't even have to be susceptible to be damaged by such storms. The damage is due to high-intensity, slowly-changing magnetic fields that induce what amounts to DC current (when compared to the brisk 50/60Hz). Such low-frequency currents happily saturate the transformer cores and destroy the infrastructure. The solution is rather simple, and would have costed very little to implement: AC coupling of all conductors over a certain length in transmission and distribution circuits. By all conductors I really mean all: the grounded conductors, and mast-to-mast earting wires would need to be AC coupled as well. An alternative would be to add DC-breaking overcurrent protection to all circuits, including grounded and lightning protection circuits.
The guy in the article is exactly the kind of an engineer I wouldn't hire. Doesn't see the forest for the trees. Code isn't always an answer, dummy.
That's perfectly fine though: the fault indicator lights are there to indicate that there's a problem. Things get ugly when you decide not to run the engine anymore when such "tampering" is detected. Or, worse, if the emissions equipment is replaced by properly functioning aftermarket parts that don't have proper authentication circuitry and/or firmware.
This is bullshit. The manufacturer wants nothing open because it'll commoditize the stuff that rakes them boatloads of money. Regulation has nothing to do with it. The owner/operator of the equipment is responsible for maintaining it with adherence to emissions regulations. How she does it, is up to them.
This isn't actually the case. I know of no Federal regulation that disallows adjustments by a particular party. All that the regulations require is that there be no unauthorized modifications to the system. They don't place the onus on anyone to prevent such modifications in any particular way.
a lot of inconsistency between what is declared in .h files and what is implemented in the corresponding .cpp files
That's impossible unless you're talking about comments in the header files, or the implementation (.cpp) files don't include their own headers. Generally speaking, every .cpp file must include its header in the first non-comment line of the file.
Good:
#include "foo.h"
#include <cmath>
Bad:
#include <cmath>
#include "foo.h"
The solution is simple, then: consider how much the cheapest insurance would cost you vs. paying the IRS fines. Do whatever makes financial sense. It won't be a big expense for you. Consider it another tax - and if it happens to be paid to an insurance company, you could even, gasp use the benefits when the time comes to do so!
So, you've got a 100k of disposable income sitting around just in case you had to say in the hospital for a week? Well, good for you, but I don't want the likes of you setting public policy, you know.
I forgot the most important thing: you aren't supposed to read about it . You're supposed to read it . Go ahead. It's free.
teaching kids hacks to do the math quickly
Those aren't called hacks, they are techniques and they stem from the structure inherent in numbers. As you progress in mathematics, you're supposed to be building a large vocabulary of such "hacks". Eventually you'll learn your multiplication table without even trying. More importantly, you'll be able to apply said hacks to larger numbers, where memorization doesn't help.
So, your complaint is not only solitary, but severely misplaced. Yeah, I attribute it to FUD. If you hear anything about Common Core from people who haven't read the source text and have no understanding of subject matter, everything you hear will be wrong. And I do mean everything. The misinformation is that bad.
Hopefully you've read Paul Lockart's A Mathematician's Lament. If not, you'll find it quite resonating, I think.
when the schools attempt to illustrate things by cutting up paper or rearranging puzzle pieces, it is attacked as not being "proper math" by the usual suspects.
Such as? Hopefully no mathematician would ever do that.
This is not because of having teaching experience, but simply because I much better understand what the actual point of something in a larger setting and what the underlying key idea is.
This, a thousand times this! You can see the forest and the trees, and switch your perspective at will. U.S. math teachers can see the branches and the needles of the evergreens. I'm not sure if they even see the leaves of the deciduous trees, for they often know of only one way of doing a particular thing. Seeing the forest? Forget it.
Not only that, they fundamentally don't understand math. They can't see the forest for the trees. They don't know about the more abstract, unifying theories that intimately affect most of what they teach. Teaching elementary algebra without knowing what a group or a ring is, is silly. It's cargo cult teaching: all the moves, none understanding.