What would happen if Malaria or Yellow Fever is introduced in all the United States at once?
Each country has endemic and epidemic diseases. Would be interesting to know the current statistics for children with problems in these African countries. The real problem here is that no one of our countries (I live in Costa Rica), was prepared to deal with this "foreign" disease. We have other issues to worry about, some even don't exist in Africa, but Zika was something rare for us and our emergency and health programs.
The same happened with africanized bees. Several years ago was normal to have bee hives in our backyards, bot now we are worried to death when we see one of them, to the point we call the firefighters and they come to dispose them with special tools.
But I see a worst problem here. These diseases come and never go. And it is a matter of time for Zika to cover every corner in the planet with the appropriate weather, even the United States. Because "any" place that has mosquitoes could have this problem.
So, to be really anonymous on a car it is necessary not to have driving assistant, neither mobile phones or tablets (they won't track your car but will find you individually).
Your windows must have protectors for nobody to see you, although in some countries this is illegal.
Because the car has a plate (the same as the Internet has the MAC address for their users), but nobody has a microphone "inside" every car to check if the driver has good or bad intentions. Even it is unknown who actually is driving the car only checking the plate.
The cars are, in fact, anonymous. What the governments are trying to obtain is a method to check every possible car driver and to record for their sake any possible conversation inside these cars. What is the next step? To put plates on the pedestrian and to read their minds?
You are allowed to make a remix in Youtube; it is supposed this won't hurt anybody (well, it depends on your skills).
But when there is a computer in a device that controls how the device works, in particular the engine or other "sensitive" working parts, to modify it could be dangerous.
The cars, and in particular the farm tools, must pass a series of tests to be able to be sold. When these tools don't do their job there is the maker that can be punished in one or another way, in particular when human security is involved. And today these devices need computers to control complex tasks through software that was crafted to perform these tasks. What happen when somebody, without all the information (not only technical but contextual) at hand change that software? Could be possible the tool of good is transformed in a tool of doom?
The same happens with software in general. I understand the good intentions, and even when trained people takes the "risk" to improve or fix something, but in many cases these actions only open doors that harm others, in particular when the context where these programs run are already defined, are critical and create dependencies on others.
So, take care when you fix your device, but be more careful when that fix can make it to explode in your face or to pull it to pass on top of another person property (tractors are not toys).
In fact, the concept of the "algorithm" is mathematics.
And we make algorithms every day, when we prepare ourselves to go to the school or the office, when we decide our traveling route, the way we "use" a car or take a train or bus, etc.
In fact this is not about learning new things, but to understand what is the CS name the things we already do have, and through the CS methods, how can we improve our life.
To include "Computer Science" in a basic study program it is a good idea. Although we can't confuse that CS with coding, because they are different things.
CS is the WHY and coding is the HOW.
To let the people just to work the HOW won't carry anybody to higher levels of understanding and just will produce people repeating things. The important part is the WHY that will give sense to the HOW and will permit the people to understand and to find better ways to do that HOW or to make different HOWs to resolve problems, that it is the way the humanity advances.
I already published two books on Kindle (well, maybe I am not as successful as Stephen King, but at least I know the limitations).
The first thing you need to take care is not to use tables. They behave terribly in the different Kindle devices. Better make images (preferably in black and white), and embed them in the book.
I am not sure today, but the tools provided by Amazon were outdated and they didn't make any effort to update them. It is, in fact, complicated to make them to work correctly. The best option is just to compile the book and to try the result in a real device.
And take into consideration that your book is not a PDF file but a web page located in a very constrained browser, designed for you to read words and phrases. Also it is important to understand that the eInk based devices can't show video because their extremely slow speed, as HTML5 based devices actually do. But this is not a problem when you understand these limitations, just try to be creative in different ways, as if you really has a printed book.
Security is an important part of everything. What happens is that it was not considered as an independent entity before.
I understand Linus point of view, although he is focused in functionality. And this bring some clues to the scene. When we think about just bugs, of course that they need to be addressed because they are problems that didn't need to exist. However, and this is where "security" come into account, there are semantic issues that, not being formal technical problems, derive in terrible lost of data. And if you lost data, why to use the software?
In essence the situation is who needs to deal with these problems. Because they need to be resolved.
A big complication with the Operating Systems is that they are trying to do everything. Then, and this is inevitable, they acquire responsibilities. When your O.S. is small, clean, pure and perfect, you have less trouble, you can make it work better and the security elements are usually outside your control. Then, others work the semantic issues. But when acquiring more power, I am sorry, but the semantic problems are part of your daily problems accept you them or not. And at the end, if you decide not to work these problems, other would need to do so usually creating complicated and dangerous situations.
1) Design the processes involved independently of the language/tool/platform to run them.
2) Choose a very stable platform, as the POSIX one (you already work on Ubuntu anyway).
3) Be modular.
4) Use a standards compliant language. They evolve very slowly but also, they are available for longer periods of time.
5) Do good technical documentation and keep it updated.
The (1) will permit you to design things that could last for centuries. Take into consideration how people control the ships on the sea; they use protocols having more than one thousand years by now. Today have computers, but this is not really a must and they know what to do when the computers fail.
The (2) let you migrate from old hardware to new one without loosing compatibility. Yesterday these systems were using IDE disks, today SATA or SSD and tomorrow who knows? This is not something relevant when you don't think at that level, and the new POSIX systems have drivers for the new stuff, you just store and retrieve data using the standard primitives.
The (3) is a must. You can replace modules when you have better options. If everything is a big monster, forget that you will keep it running without an issue for so many years.
And the (4) offers you a quiet evolution. You could be using K&R C, and to work with C11 these days. If your design is good enough, your software won't be legacy and the only you need to do is to recompile and, maybe, to replace some small pieces that become obsolete with the years.
The (5) is a big problem in almost all software around. People are accustomed to work quickly and to not to describe what and why the did the things. Ten years later, even the original programmers forgot the details, what could be expected 25 years later? a miracle?. So, document, document, enforce it, check it...
If encryption, a mathematical method to protect information, can't be used because the user "could" be using it to hide illegal things...
Prohibit to walk outside of your home, who knows if you will do something illegal today.
Don't show your opinions, somebody could misunderstand you to make something illegal.
Don't have any money, it could be used for illegal things.
Don't give the money to others, that could be an illegal transaction.
Don't accept anything from others, could be possible that this is some type of bribery.
Better stop studying, there is some knowledge that could be used agains the state (Australia already did this).
If you dare to think, do it only for you. Stop writing whatever, stop talking about it, don't take depression medicines, they will show that something bothers you, and then you will be suspicious of wrongdoings.
The problem, and it is a big one, is that everybody is living in the same huge bag we call planet Earth. So, to control a bad person we are forced to restrict them for not to use the technology they could use to hide their secrets, and doing so, we restrict everybody else in their authentically rightful rights.
But, as is usual in human history, when you put many constraints to somebody, this person will find a different way to do the things. But later, you keep the constraints and something, that was completely valid for the good ones, will become useless for everybody.
They are not attacking the source of the problems but the symptoms. This is the same as to consider that some people could have fever and, because of that, we would quit all the conditioned air in the planet, "in case" one of them pass through a place with A.C. active, or to forbid the sugar because somebody could have diabetes. No, the right way is to cure the person with fever and to provide treatment to the diabetes sick person, including a healthy food diet and to let all the others to enjoy conditioned air or to consume some sugar.
Instead of being inventing and, worst of all... IMPLEMENTING... so stupid and retrograde regulations, they need to invest their time discovering what made their current problems to appear and to provide the right solutions to them. Because this will escalate to the complete lost of freedom for everybody in the sake of their safety, when the ones describe what safety is are not the one are suffering for it.
A "back door" is a "back door" or, in other words, a "weakness".
This is a technological designed element that can be opened and that will be opened by somebody else that will figure how to open it, being not one member of the "good guys group".
The encryption algorithms are only good when they are consistent and homogeneous in what they do (no exceptions, no universal keys), and to put that hole will imply that they are imperfect definitions and, as a consequence, useless security measures.
Yes... instead of using the $$$$ in the "smart" part of the TV, look for a better TV (bigger, faster, with better image) without the smart part and purchase a TV stick (miniPC, raspberry or even the chromecast) that would cost you less than $100 with an upgradeable smart part.
And when you perform several "upgrades" and the stick won't accept more updates in several years, possible more time that the smart TVs themselves, you won't feel bad discarding the stick instead of the complete TV set.
What would happen if Malaria or Yellow Fever is introduced in all the United States at once?
Each country has endemic and epidemic diseases. Would be interesting to know the current statistics for children with problems in these African countries. The real problem here is that no one of our countries (I live in Costa Rica), was prepared to deal with this "foreign" disease. We have other issues to worry about, some even don't exist in Africa, but Zika was something rare for us and our emergency and health programs.
The same happened with africanized bees. Several years ago was normal to have bee hives in our backyards, bot now we are worried to death when we see one of them, to the point we call the firefighters and they come to dispose them with special tools.
But I see a worst problem here. These diseases come and never go. And it is a matter of time for Zika to cover every corner in the planet with the appropriate weather, even the United States. Because "any" place that has mosquitoes could have this problem.
MAC ... granted ;-)
... this is to live 50 years ago, maybe.
So, to be really anonymous on a car it is necessary not to have driving assistant, neither mobile phones or tablets (they won't track your car but will find you individually).
Your windows must have protectors for nobody to see you, although in some countries this is illegal.
mm
This person is wrong.
Because the car has a plate (the same as the Internet has the MAC address for their users), but nobody has a microphone "inside" every car to check if the driver has good or bad intentions. Even it is unknown who actually is driving the car only checking the plate.
The cars are, in fact, anonymous. What the governments are trying to obtain is a method to check every possible car driver and to record for their sake any possible conversation inside these cars. What is the next step? To put plates on the pedestrian and to read their minds?
You are allowed to make a remix in Youtube; it is supposed this won't hurt anybody (well, it depends on your skills).
But when there is a computer in a device that controls how the device works, in particular the engine or other "sensitive" working parts, to modify it could be dangerous.
The cars, and in particular the farm tools, must pass a series of tests to be able to be sold. When these tools don't do their job there is the maker that can be punished in one or another way, in particular when human security is involved. And today these devices need computers to control complex tasks through software that was crafted to perform these tasks. What happen when somebody, without all the information (not only technical but contextual) at hand change that software? Could be possible the tool of good is transformed in a tool of doom?
The same happens with software in general. I understand the good intentions, and even when trained people takes the "risk" to improve or fix something, but in many cases these actions only open doors that harm others, in particular when the context where these programs run are already defined, are critical and create dependencies on others.
So, take care when you fix your device, but be more careful when that fix can make it to explode in your face or to pull it to pass on top of another person property (tractors are not toys).
In fact, the concept of the "algorithm" is mathematics.
And we make algorithms every day, when we prepare ourselves to go to the school or the office, when we decide our traveling route, the way we "use" a car or take a train or bus, etc.
In fact this is not about learning new things, but to understand what is the CS name the things we already do have, and through the CS methods, how can we improve our life.
To include "Computer Science" in a basic study program it is a good idea. Although we can't confuse that CS with coding, because they are different things.
CS is the WHY and coding is the HOW.
To let the people just to work the HOW won't carry anybody to higher levels of understanding and just will produce people repeating things. The important part is the WHY that will give sense to the HOW and will permit the people to understand and to find better ways to do that HOW or to make different HOWs to resolve problems, that it is the way the humanity advances.
I already published two books on Kindle (well, maybe I am not as successful as Stephen King, but at least I know the limitations).
:-)
The first thing you need to take care is not to use tables. They behave terribly in the different Kindle devices. Better make images (preferably in black and white), and embed them in the book.
I am not sure today, but the tools provided by Amazon were outdated and they didn't make any effort to update them. It is, in fact, complicated to make them to work correctly. The best option is just to compile the book and to try the result in a real device.
And take into consideration that your book is not a PDF file but a web page located in a very constrained browser, designed for you to read words and phrases. Also it is important to understand that the eInk based devices can't show video because their extremely slow speed, as HTML5 based devices actually do. But this is not a problem when you understand these limitations, just try to be creative in different ways, as if you really has a printed book.
And good look
But you know, when terrorist that explode themselves are there, this is really a dangerous issue.
For them human life is not so important as what they can ask from it.
Long article, lo dissect later.
Security is an important part of everything. What happens is that it was not considered as an independent entity before.
I understand Linus point of view, although he is focused in functionality. And this bring some clues to the scene. When we think about just bugs, of course that they need to be addressed because they are problems that didn't need to exist. However, and this is where "security" come into account, there are semantic issues that, not being formal technical problems, derive in terrible lost of data. And if you lost data, why to use the software?
In essence the situation is who needs to deal with these problems. Because they need to be resolved.
A big complication with the Operating Systems is that they are trying to do everything. Then, and this is inevitable, they acquire responsibilities. When your O.S. is small, clean, pure and perfect, you have less trouble, you can make it work better and the security elements are usually outside your control. Then, others work the semantic issues. But when acquiring more power, I am sorry, but the semantic problems are part of your daily problems accept you them or not. And at the end, if you decide not to work these problems, other would need to do so usually creating complicated and dangerous situations.
1) Design the processes involved independently of the language/tool/platform to run them.
...
2) Choose a very stable platform, as the POSIX one (you already work on Ubuntu anyway).
3) Be modular.
4) Use a standards compliant language. They evolve very slowly but also, they are available for longer periods of time.
5) Do good technical documentation and keep it updated.
The (1) will permit you to design things that could last for centuries. Take into consideration how people control the ships on the sea; they use protocols having more than one thousand years by now. Today have computers, but this is not really a must and they know what to do when the computers fail.
The (2) let you migrate from old hardware to new one without loosing compatibility. Yesterday these systems were using IDE disks, today SATA or SSD and tomorrow who knows? This is not something relevant when you don't think at that level, and the new POSIX systems have drivers for the new stuff, you just store and retrieve data using the standard primitives.
The (3) is a must. You can replace modules when you have better options. If everything is a big monster, forget that you will keep it running without an issue for so many years.
And the (4) offers you a quiet evolution. You could be using K&R C, and to work with C11 these days. If your design is good enough, your software won't be legacy and the only you need to do is to recompile and, maybe, to replace some small pieces that become obsolete with the years.
The (5) is a big problem in almost all software around. People are accustomed to work quickly and to not to describe what and why the did the things. Ten years later, even the original programmers forgot the details, what could be expected 25 years later? a miracle?. So, document, document, enforce it, check it
If encryption, a mathematical method to protect information, can't be used because the user "could" be using it to hide illegal things
mm ... stop being a human being.
The extrapolation is simple:
1) Don't use computers.
2) Don't use mathematics.
3) Don't think.
Oh, and don't try to imagine the consequences, this could be illegal also.
The problem, and it is a big one, is that everybody is living in the same huge bag we call planet Earth. So, to control a bad person we are forced to restrict them for not to use the technology they could use to hide their secrets, and doing so, we restrict everybody else in their authentically rightful rights.
... IMPLEMENTING ... so stupid and retrograde regulations, they need to invest their time discovering what made their current problems to appear and to provide the right solutions to them. Because this will escalate to the complete lost of freedom for everybody in the sake of their safety, when the ones describe what safety is are not the one are suffering for it.
But, as is usual in human history, when you put many constraints to somebody, this person will find a different way to do the things. But later, you keep the constraints and something, that was completely valid for the good ones, will become useless for everybody.
They are not attacking the source of the problems but the symptoms. This is the same as to consider that some people could have fever and, because of that, we would quit all the conditioned air in the planet, "in case" one of them pass through a place with A.C. active, or to forbid the sugar because somebody could have diabetes. No, the right way is to cure the person with fever and to provide treatment to the diabetes sick person, including a healthy food diet and to let all the others to enjoy conditioned air or to consume some sugar.
Instead of being inventing and, worst of all
There is another reason.
A "back door" is a "back door" or, in other words, a "weakness".
This is a technological designed element that can be opened and that will be opened by somebody else that will figure how to open it, being not one member of the "good guys group".
The encryption algorithms are only good when they are consistent and homogeneous in what they do (no exceptions, no universal keys), and to put that hole will imply that they are imperfect definitions and, as a consequence, useless security measures.
Yes ... instead of using the $$$$ in the "smart" part of the TV, look for a better TV (bigger, faster, with better image) without the smart part and purchase a TV stick (miniPC, raspberry or even the chromecast) that would cost you less than $100 with an upgradeable smart part.
And when you perform several "upgrades" and the stick won't accept more updates in several years, possible more time that the smart TVs themselves, you won't feel bad discarding the stick instead of the complete TV set.