Lollipop is supposed to solve this. It introduces a mechanism where the manufacturer installs the default apps (other than essentials like the dialer and Google Play Store) to the user partition, and a factory reset loads the default apps into Google Play Store's list of apps to redownload once it sees Internet access. I'm surprised that manufacturers hadn't introduced an equivalent mechanism earlier.
Windows XP, Windows Server 2003, and Android 2.x no longer receive security updates. This means they are likely vulnerable to "forever day" exploits that surreptitiously install malware that adds other means of exfiltrating data from a system. An attaker doesn't need to Firesheep a victim's session cookie if he can install a keylogger that captures a whole password. Heck, an attacker could just install a keylogger that captures a victim's keystrokes when entering a credit card number. So if Windows XP is insecure in this manner, why even try to offer "secure" services to an insecure client?
In other words, poor schoolchildren are committing a crime because they're not old enough to have graduated from high school, nor have their classmates.
unless somebody can show they got drunk against their will
Yeah, it's not like the majority of drivers have a yeast infection in the stomach. A Texas man blew an estimated 0.37% BAC in the ER after not having had a sip of alcoholic beverage.
I said that you will never be allowed to make a Mickey cartoon as long as the Walt Disney Company is around.
Are you claiming that Disney would have a valid case or only that Disney would bring vexatious litigation? If the former, what cause of action would Disney have against DreamWorks Animation that, say, the Collodi and Kipling estates didn't have against Disney when it released Pinocchio and The Jungle Book within a year after the respective authors' copyrights expired?
The opinion of the Supreme Court in Eldred v. Ashcroft was that "perpetual copyright on the installment plan" was forbidden, but harmonization of the copyright term to that of another major developed economy (in this case the EU) was acceptable. So first, "America's creative industries" would have to convince another major developed economy to extend its own copyright term before 2025. The EU is unlikely, as its life plus 70 term is derived as an approximation of "lifetime of those heirs who knew the author personally", barring some medical breakthrough. So what other industrialized jurisdiction would be the most likely target of this lobbying?
Bats existed prior to 1910. Under the copyright law then in effect, anything published prior to 1910 was fair game for a television series first published in 1966. It's the same reason you can make a film adaptation of "Little Red Riding Hood", a centuries-old short story by Charles Perrault, and have your own copyright on elements created for the film.
You won't be able to make your own Mickey Mouse Clubhouse episodes because Toodles and other post-1929 elements are still copyrighted. But you'll still be able to make your own Mickey works that use only the elements set forth in the trilogy and original elements. See, for example, the copyright case allowing commercial publication of Sherlock Holmes fan fiction despite that Arthur Conan Doyle's last ten stories were still copyrighted.
If we use exceptions, we have to write exception-safe code - code which frees all resources when the control is transferred from the point of failure (throw) to the point where explicit error handling is done (catch). [...] To solve this, you are supposed to use RAII, meaning that all pointers have to be "smart"
I think this was written before C++11 standardized two suitable smart pointers in std::unique_ptr and std::shared_ptr. Stash resources allocated by the constructor in a smart pointer.
How are you going to figure out whether your program manages resources correctly or not when it's littered with smart pointers of different kinds, especially in [...] cases when "ownership" (the right & duty to dispose a resource) is passed from object to object
The replacement of the problematic std::auto_ptr with std::unique_ptr that uses C++11's new move-construction semantics and addition of std::shared_ptr solved, as yosefk mentioned with the references to Boost pointer templates that made it into TR1.
A trademark cannot be used to extend the term of the exclusive rights under an expired U.S. copyright. Dastar v. Fox. Under current law, as of 2024, this will include the right to prepare, reproduce, and distribute derivative works of the books When We Were Very Young, Winnie-the-Pooh, Now We Are Six, and The House at Pooh Corner, as well as the short films Plane Crazy, The Gallopin' Gaucho, and Steamboat Willie. And in 2025, it will include the revised version of Plane Crazy. So expect a shot for shot remake of the Mickey films in whatever Blender has become by then.
Society GRANTS artists and inventors the rights to hold a monopoly over something they create for a LIMITED TIME with the purposes of encouraging them and others to create more
Then Congress has about nine more years to prove that it will uphold its end of the bargain. If 2024 arrives and Congress hasn't passed another bullshit "harmonization" bill, we'll know that the copyright term is limited enough to let the Mickey trilogy, the Pooh books, and "Rhapsody in Blue" enter the public domain.
for name in filenames:
if isfile(name):
f = open(name)
Congratulations: You just created a time of check to time of use (TOCTTOU) race bug. Consider what happens if another process deletes the file between the call to isfile and the call to open.
exceptions should be used much more sparingly in C++ than in Python because they don't work as well in the former.
Could you explain what you mean by this? Is it that Python tends to throw (predictable) exceptions in cases where C++ has (unpredictable) undefined behavior?
Somehow, we managed to handle errors decades before exceptions.
Decades before exceptions, there wasn't nearly as much multitasking as there is nowadays. Fans of exceptions might claim that exceptions help thwart time of check to time of use (TOCTTOU) attacks.
Is the distinction between normal failures and exceptional failures true of all languages with exceptions or only of C++? If of all languages, then how should, say, a program in Python detect this "totally normal and expected condition" without catching an exception?
Nothing ensures that the config file exists, and your program is responsible for creating it.
You appear to state that the std::ios::fail() paradigm of C++, which allows an inconsistent stream object to continue to exist, is superior to the exception-on-failure paradigm of Python. Do I understand you correctly?
if a program lacks a configuration file because it is being started for the first time
That isn't an exception. That's a given.
Based on a cursory Google search, "given" appears not to be a term of art in programming. What is the C++ idiom to handle givens? I know Python's idiom is Easier to Ask Forgiveness than Permission (EAFP), which uses exceptions liberally because they're less likely to be vulnerable to time of check to time of use (TOCTTOU) attacks on a multitasking system than the alternative Look Before You Leap (LBYL) paradigm.
Exceptions were devised to handle exceptional events, not to handle your main flow of control.
"Use the settings in the configuration file except when the configuration file does not exist." How is that not "exceptional"?
In order to create the configuration file when the program is run for the first time, the program must first attempt and fail to read the existing configuration file.
the C++ alternative is only allocating objects on the stack and implementing destructors that clean up their resources
Also called Resource Acquisition Is Initialization (RAII), or "automatic resource destruction" if you don't want to remind readers of the record industry (RIAA).
but then you have the restriction of not being able to allocate on the heap
You can take advantage of automatic resource destruction if you wrap your object on the heap in a smart pointer type (std::unique_ptr or std::shared_ptr as appropriate) on the stack. If that isn't appropriate in a given situation, C++11 supports a scope guard idiom using std::shared_ptr and lambda expressions. The finally factory described in the Guidelines is ultimately an update of a method described in a 2000 article by Andrei Alexandrescu in Dr. Dobb's.
You claim that all exceptions should be fatal. I hope this was sarcasm. If not, then for example, if a program lacks a configuration file because it is being started for the first time, what lesson ought to be taught, to whom, and why?
Bjarne has never wanted to admit C++ exceptions were a mistake.
What should a method that fails do instead of returning an exception? Should it instead be set up to explicitly return two different types of return value, namely the object that it's supposed to return if it exceeds or an object describing the failure if it fails?
Lollipop is supposed to solve this. It introduces a mechanism where the manufacturer installs the default apps (other than essentials like the dialer and Google Play Store) to the user partition, and a factory reset loads the default apps into Google Play Store's list of apps to redownload once it sees Internet access. I'm surprised that manufacturers hadn't introduced an equivalent mechanism earlier.
What's wrong with a reverse proxy handling all the HTTPS work in front of a bunch of application servers on their own VMs?
Windows XP, Windows Server 2003, and Android 2.x no longer receive security updates. This means they are likely vulnerable to "forever day" exploits that surreptitiously install malware that adds other means of exfiltrating data from a system. An attaker doesn't need to Firesheep a victim's session cookie if he can install a keylogger that captures a whole password. Heck, an attacker could just install a keylogger that captures a victim's keystrokes when entering a credit card number. So if Windows XP is insecure in this manner, why even try to offer "secure" services to an insecure client?
If that were the plan, a term exceeding life plus 70 would have been introduced in the TPP negotiations. Do any TPP leaks mention a longer term?
When was the Batmobile introduced? And under the laws then in effect, bats existed before 1883.
In other words, poor schoolchildren are committing a crime because they're not old enough to have graduated from high school, nor have their classmates.
unless somebody can show they got drunk against their will
Yeah, it's not like the majority of drivers have a yeast infection in the stomach. A Texas man blew an estimated 0.37% BAC in the ER after not having had a sip of alcoholic beverage.
I said that you will never be allowed to make a Mickey cartoon as long as the Walt Disney Company is around.
Are you claiming that Disney would have a valid case or only that Disney would bring vexatious litigation? If the former, what cause of action would Disney have against DreamWorks Animation that, say, the Collodi and Kipling estates didn't have against Disney when it released Pinocchio and The Jungle Book within a year after the respective authors' copyrights expired?
The opinion of the Supreme Court in Eldred v. Ashcroft was that "perpetual copyright on the installment plan" was forbidden, but harmonization of the copyright term to that of another major developed economy (in this case the EU) was acceptable. So first, "America's creative industries" would have to convince another major developed economy to extend its own copyright term before 2025. The EU is unlikely, as its life plus 70 term is derived as an approximation of "lifetime of those heirs who knew the author personally", barring some medical breakthrough. So what other industrialized jurisdiction would be the most likely target of this lobbying?
Bats existed prior to 1910. Under the copyright law then in effect, anything published prior to 1910 was fair game for a television series first published in 1966. It's the same reason you can make a film adaptation of "Little Red Riding Hood", a centuries-old short story by Charles Perrault, and have your own copyright on elements created for the film.
You won't be able to make your own Mickey Mouse Clubhouse episodes because Toodles and other post-1929 elements are still copyrighted. But you'll still be able to make your own Mickey works that use only the elements set forth in the trilogy and original elements. See, for example, the copyright case allowing commercial publication of Sherlock Holmes fan fiction despite that Arthur Conan Doyle's last ten stories were still copyrighted.
yosefk writes:
I think this was written before C++11 standardized two suitable smart pointers in std::unique_ptr and std::shared_ptr. Stash resources allocated by the constructor in a smart pointer.
In 17.4, yosefk continues:
The replacement of the problematic std::auto_ptr with std::unique_ptr that uses C++11's new move-construction semantics and addition of std::shared_ptr solved, as yosefk mentioned with the references to Boost pointer templates that made it into TR1.
I wonder whether yosefk plans to refactor this page into "Defective Modern C++" to parallel the title of a 2014 book by Scott Meyers (ISBN 9781491903995).
Mickey is trademarked
A trademark cannot be used to extend the term of the exclusive rights under an expired U.S. copyright. Dastar v. Fox . Under current law, as of 2024, this will include the right to prepare, reproduce, and distribute derivative works of the books When We Were Very Young, Winnie-the-Pooh, Now We Are Six, and The House at Pooh Corner, as well as the short films Plane Crazy, The Gallopin' Gaucho, and Steamboat Willie. And in 2025, it will include the revised version of Plane Crazy. So expect a shot for shot remake of the Mickey films in whatever Blender has become by then.
Society GRANTS artists and inventors the rights to hold a monopoly over something they create for a LIMITED TIME with the purposes of encouraging them and others to create more
Then Congress has about nine more years to prove that it will uphold its end of the bargain. If 2024 arrives and Congress hasn't passed another bullshit "harmonization" bill, we'll know that the copyright term is limited enough to let the Mickey trilogy, the Pooh books, and "Rhapsody in Blue" enter the public domain.
Early iPhone plans had unlimited data, and once AT&T introduced data caps, people fought to keep their grandfathered plans.
Because the SDXC spec requires a royalty payment to Microsoft for each device that can take cards bigger than 32 GB.
Congratulations: You just created a time of check to time of use (TOCTTOU) race bug. Consider what happens if another process deletes the file between the call to isfile and the call to open.
exceptions should be used much more sparingly in C++ than in Python because they don't work as well in the former.
Could you explain what you mean by this? Is it that Python tends to throw (predictable) exceptions in cases where C++ has (unpredictable) undefined behavior?
Somehow, we managed to handle errors decades before exceptions.
Decades before exceptions, there wasn't nearly as much multitasking as there is nowadays. Fans of exceptions might claim that exceptions help thwart time of check to time of use (TOCTTOU) attacks.
Is the distinction between normal failures and exceptional failures true of all languages with exceptions or only of C++? If of all languages, then how should, say, a program in Python detect this "totally normal and expected condition" without catching an exception?
Nothing ensures that the config file exists, and your program is responsible for creating it.
You appear to state that the std::ios::fail() paradigm of C++, which allows an inconsistent stream object to continue to exist, is superior to the exception-on-failure paradigm of Python. Do I understand you correctly?
if a program lacks a configuration file because it is being started for the first time
That isn't an exception. That's a given.
Based on a cursory Google search, "given" appears not to be a term of art in programming. What is the C++ idiom to handle givens? I know Python's idiom is Easier to Ask Forgiveness than Permission (EAFP), which uses exceptions liberally because they're less likely to be vulnerable to time of check to time of use (TOCTTOU) attacks on a multitasking system than the alternative Look Before You Leap (LBYL) paradigm.
Exceptions were devised to handle exceptional events, not to handle your main flow of control.
"Use the settings in the configuration file except when the configuration file does not exist." How is that not "exceptional"?
In order to create the configuration file when the program is run for the first time, the program must first attempt and fail to read the existing configuration file.
Every object that can be thrown/caught must implement the Throwable interface
Then have all exceptions extend a subclass of std::exception . The guidelines mention use of a subclass as opposed to using the built-in exceptions directly.
the C++ alternative is only allocating objects on the stack and implementing destructors that clean up their resources
Also called Resource Acquisition Is Initialization (RAII), or "automatic resource destruction" if you don't want to remind readers of the record industry (RIAA).
but then you have the restriction of not being able to allocate on the heap
You can take advantage of automatic resource destruction if you wrap your object on the heap in a smart pointer type (std::unique_ptr or std::shared_ptr as appropriate) on the stack. If that isn't appropriate in a given situation, C++11 supports a scope guard idiom using std::shared_ptr and lambda expressions. The finally factory described in the Guidelines is ultimately an update of a method described in a 2000 article by Andrei Alexandrescu in Dr. Dobb's .
You claim that all exceptions should be fatal. I hope this was sarcasm. If not, then for example, if a program lacks a configuration file because it is being started for the first time, what lesson ought to be taught, to whom, and why?
Bjarne has never wanted to admit C++ exceptions were a mistake.
What should a method that fails do instead of returning an exception? Should it instead be set up to explicitly return two different types of return value, namely the object that it's supposed to return if it exceeds or an object describing the failure if it fails?