I know C really well so I very rarely look anything up online on it. If I do need to remind myself of an API (and printf is a good example, i can never remember the format specifiers), I'll probably use the man pages installed on my computer rather than going to the Web. The same for any language I use regularly, even Java. I'l download the API documentation onto my laptop so I can still use it when offline.
However, I recently had to write some enhancements for a web site written in classic ASP and, pretty much literally the code for every line I wrote had to be Googled. Going off my web searches, you would assume I only use classic ASP and never anything else.
Not a good idea. The last time I had to do a hard tap on the brakes (enforced, not voluntary because the car in front stopped), with a tailgater behind me he nearly lost control and only just avoided veering into the next lane.
The best thing to do with a tailgater is to gently allow the gap between you and the car in front increase to give yourself a margin of error so you don't have to hit the brakes hard and then let the tailgater past at the first opportunity. It's better to have such idiots in front of you than behind.
That's not the point at all. It's not about keeping the backdoors secret but about stopping people from advertising that they exist. Companies like Apple and Google and Facebook and even the BBC would comply with the request to put back doors in but they would put a notice on the log in screen (for British customers only) along the lines of
"Although we respect your privacy, be aware that, by order of the British Government we have to make your data available to them on request".
There's nothing like having a reminder every time you use Facebook, that your own government wants to snoop on you for driving up opposition.
We're making a pretty good fist of it so far. There's no reason to suspect that the senses we have are not sufficient to explain the Universe and the evidence of our progress suggests that they probably are.
How do you do that? I brute forced a seventeen character message encrypted with a one time pad and here are three of the possible plain texts I got out.
I'm the new British ambassador for the People's Republic of China. Before I leave, I go to my boss who hands me a USB stick containing a couple of terabytes of one time key. I use it to encrypt my messages home while in China and when it runs out, I pop home for a "holiday" and to get a new USB stick.
The premise "if you can transmit the key securely, then it's most likely that you could have transmitted the message itself securely" is false in general.
True, IBM wasn't the greatest of companies at times but they did have a better grasp of the big picture beyond a simplistic "make it run applications".
So it's unfortunate that "make it run applications" has always been the most successful approach.
Some languages do. The standard arithmetic operators in Swift, for example throw fatal errors if they overflow (there are "overflow allowed" versions of the operators too).
If we are talking about the early 90's there was Windows NT 3.1 and OS/2 as well as BSD, SCO Unix and Xenix. Plus there were still Unixes available for several higher end work stations like Sun and Silicon Graphics.
In technical terms the Windows NT kernel compares very favourably with Linux which was pretty agricultural by the standards of the times. Taking just the example of the thread support, Linux threads were a fiasco for many years.
It has a better track record than closed source.... hmm, not sure I believe that. Certainly some of the more recent high profile issues were in open source software.
I think the real problem is not closed source == insecure, open source == maybe secure. In theory, either can be made secure through audits (probably not in practice), however the only people who can fully audit closed source software is the owner of the code.
The issue is actually one of trust. Microsoft can audit their software to death and they can, at least theoretically, make it secure. The problem is that, when they say they have audited their software and it is fine, you can't be certain they are telling the truth.
The functionality of a non private API must be documented. Requiring people to read the code in a function in order to find out what it is supposed to do is stupid.
If a programmer changes the code in a function such that its API documentation is wrong, the documentation hasn't gone stale, the programmer introduced a bug.
continue, break, return, else and throw are all restricted forms of goto. while, do... while and for loops are codifications of "safe" patterns of if and goto.
This is the reason why you have comprehensive unit tests. You can refactor the original function safely in the knowledge that, if you break it, the unit tests will start failing.
What does that do? Let me s
So you made two claims and you're refusing to supply any evidence for either of them.
In the first case, a simple declaration of your interest should suffice.
In the second case, if the problem is a serious one, you should be able to go to StackOverflow today and pick out some examples.
You need 5 up votes in order to comment on other people's posts. That's hardly laborious.
Or click the "+" button at the right hand end of the tabs.
Or right click a link and select the top item in the contextual menu.
Or command click a link
Or press command-t.
I know C really well so I very rarely look anything up online on it. If I do need to remind myself of an API (and printf is a good example, i can never remember the format specifiers), I'll probably use the man pages installed on my computer rather than going to the Web. The same for any language I use regularly, even Java. I'l download the API documentation onto my laptop so I can still use it when offline.
However, I recently had to write some enhancements for a web site written in classic ASP and, pretty much literally the code for every line I wrote had to be Googled. Going off my web searches, you would assume I only use classic ASP and never anything else.
Avast finds nothing wrong. I'm still not unzipping it though.
This is Orly which is no longer Paris's main airport. If you ever travel through it, it'll be obvious that they have no money.
Not a good idea. The last time I had to do a hard tap on the brakes (enforced, not voluntary because the car in front stopped), with a tailgater behind me he nearly lost control and only just avoided veering into the next lane.
The best thing to do with a tailgater is to gently allow the gap between you and the car in front increase to give yourself a margin of error so you don't have to hit the brakes hard and then let the tailgater past at the first opportunity. It's better to have such idiots in front of you than behind.
That's not the point at all. It's not about keeping the backdoors secret but about stopping people from advertising that they exist. Companies like Apple and Google and Facebook and even the BBC would comply with the request to put back doors in but they would put a notice on the log in screen (for British customers only) along the lines of
"Although we respect your privacy, be aware that, by order of the British Government we have to make your data available to them on request".
There's nothing like having a reminder every time you use Facebook, that your own government wants to snoop on you for driving up opposition.
We're making a pretty good fist of it so far. There's no reason to suspect that the senses we have are not sufficient to explain the Universe and the evidence of our progress suggests that they probably are.
How do you do that? I brute forced a seventeen character message encrypted with a one time pad and here are three of the possible plain texts I got out.
wearenowattacking
wearenotattacking
rmseatstoecheeses
Which is the right one?
Pedantic: Actually the UK does have a written constitution, it's just not written down all in one place.
I'm the new British ambassador for the People's Republic of China. Before I leave, I go to my boss who hands me a USB stick containing a couple of terabytes of one time key. I use it to encrypt my messages home while in China and when it runs out, I pop home for a "holiday" and to get a new USB stick.
The premise "if you can transmit the key securely, then it's most likely that you could have transmitted the message itself securely" is false in general.
True, IBM wasn't the greatest of companies at times but they did have a better grasp of the big picture beyond a simplistic "make it run applications".
So it's unfortunate that "make it run applications" has always been the most successful approach.
Win95 had a 32 bit kernel. You are thinking of the GDI which was 16 bit and was essentially identical to the Win 3.1 GDI.
Incidentally, it was all written in assembler.
Positiveness?
Positivitanity?
Negativenessless?
From TFS
Some languages do. The standard arithmetic operators in Swift, for example throw fatal errors if they overflow (there are "overflow allowed" versions of the operators too).
If we are talking about the early 90's there was Windows NT 3.1 and OS/2 as well as BSD, SCO Unix and Xenix. Plus there were still Unixes available for several higher end work stations like Sun and Silicon Graphics.
In technical terms the Windows NT kernel compares very favourably with Linux which was pretty agricultural by the standards of the times. Taking just the example of the thread support, Linux threads were a fiasco for many years.
Works for me.
Are you one of these luddites who disables Javascript?
It has a better track record than closed source.... hmm, not sure I believe that. Certainly some of the more recent high profile issues were in open source software.
I think the real problem is not closed source == insecure, open source == maybe secure. In theory, either can be made secure through audits (probably not in practice), however the only people who can fully audit closed source software is the owner of the code.
The issue is actually one of trust. Microsoft can audit their software to death and they can, at least theoretically, make it secure. The problem is that, when they say they have audited their software and it is fine, you can't be certain they are telling the truth.
The functionality of a non private API must be documented. Requiring people to read the code in a function in order to find out what it is supposed to do is stupid.
If a programmer changes the code in a function such that its API documentation is wrong, the documentation hasn't gone stale, the programmer introduced a bug.
continue, break, return, else and throw are all restricted forms of goto. while, do ... while and for loops are codifications of "safe" patterns of if and goto.
This is the reason why you have comprehensive unit tests. You can refactor the original function safely in the knowledge that, if you break it, the unit tests will start failing.
You do have comprehensive unit tests?
No they don't. They make it look more readable but they do that by disguising the complexity (except maybe early return).