Back in that era, corporations didn't have mandatory browser versions like they do today. They still officially run IE 6 at work across all users. There are bits of COTS software that were hard-coded to IE 6 and fail miserably on IE 7 (and worse on other browsers). We warned them of such lock-in at the time, but it was not understood then how ubiquitous the browser would become, and the decision for lock-in looked pretty tempting back then (besides, IE 6 really was the best browser in 2001).
The cost benefit is simply not there for a lot of companies to upgrade, some of these systems would cost hundreds of thousands of dollars to replace, if not into the millions. You can either spend a million dollars and two years working on upgrading all these appliances, or you can stick with what already works and avoid software purchases which require versions incompatible with your platform. That's how the decision makers see it: expensive and no obvious benefit, or free and no obvious down side. It's just as easy to say no to a IE7+-only software package as it is to say no to an OS X-only package: if it's not compatible with the platform, it's not a candidate.
Furthermore users are not allowed to install their own browser. I'd love to ditch IE 6 as much as the next guy (actually probably quite a bit above average as it's a constant neverending thorn in my side), but we don't have the luxury of dictating our clients' browser requirements. They're our client, they tell us what the requirement is, we're just the vendor who quotes it that way.
There are plenty of subjective or passive aggressive ways that a district which so desired could take out their aggression on a student. These are things which would be insufficient to rile up a newspaper, and in fact might discredit this parent as a source of frustration (oh look, he's complaining about something else, and without knowing the complete details from the district's perspective, it sounds like there's a reasonable chance they were acting appropriately).
For example, there are a variety of subjects which grading is largely subjective. Penmanship, reading, science fair contributions, etc. And even in non-subjective tests, giving credit for partial answers is a subjective call (if the teacher believes the student understands the material, but just flubbed the answer on a trivial detail usually they'll give credit or at least partial credit).
Discipline is also largely subjective. A district that so desired could turn each minor infraction into a major incident, and could possibly even bait the child into misbehavior (when I was in 8th grade I had a teacher who liked to do this with me; and as an 8th grader, I fell for it pretty much every time). What one student would get a trip to the principal's office for, this guy might find his daughter is getting suspended for.
Anyway, all that is not to say that he shouldn't make such an attempt, it's just to disprove that retaliation can necessarily be effectively counter-retaliated when the balance of power is not in your favor.
What he should do is talk to the PTA and school board, and recommend that each student with a new bus assignment (both for all kinder gardeners as well as other students whose bus assignment has changed either at the start of the year or mid-year) should get a card with their name, address, school, and bus details printed on it. Kinder gardeners should get theirs with a plastic sleeve and a pin to attach it to their bag or lanyard to hang around their neck.
Finally I'm not convinced that simple discrete tracking technology is a bad idea. Not something so discrete that you could secretly hide it on a person, but something that a person could hide on themselves. This makes sense for more than the safety of a child who is spending their first day away from their parents, but also could be useful for a variety of other purposes (put one in your laptop bag, put one in your car, etc). Sort of a generic user-activated Lojack.
It's not uncommon for wealthy Mexicans to secret such a device on themselves and their family members (supposedly sometimes surgically implanted). This is because it's too common for them to be kidnapped and held for ransom (and often after the ransom is paid, the hostage^Honly witness is disposed of, having been kept alive to this point only to provide reassurance). This could therefore be useful when traveling to dangerous countries.
Your point itself raises an interesting question. If it really was called memory recycling, I wonder if there would have been any temptation to reuse such objects instead of freeing them up for use as some different type of object. For example, maybe it's cheaper to reuse an int than to throw away the old one and create a new one. If you clustered similar objects together in memory you could use such a technique to try to avoid memory fragmentation.
I wonder how much the nomenclature we choose affects the approach we take.
Actually I believe in 1.6 it does something along these lines in addition to complete GC's.
As I understand it, there are three generations of memory: New, Tenured, and Permanent. When objects are initially created they go into the New generation. A thread is constantly sweeping through New and cleaning up what it can. When an object has been in New for 40 or so sweeps it moves to Tenured.
Tenured is only cleaned up during a full (locking) GC, and this can be scheduled to run on an interval (1 minute is fairly common), triggered to run at certain memory thresholds (may cause problems if your base memory crosses that threshold), or at the application's request (though the Java spec specifically declines to guarantee the request will be honored immediately - but all modern Java environments do so).
Permanent generation is not GC'd at all; objects referenced by the runtime which will be resident for as long as the runtime is end up in this space (though the specifics elude me).
This is because the models they're using right now have their image quality degraded from what the sensors see.
The full-quality versions (which can be accomplished by changing a setting on the device) provide extremely intimate detail. Those images have not been released, only the degraded quality images have been released.
From Wikipedia:
It is "possible for backscatter X-raying to produce photo-quality images of what's going on beneath our clothes", thus, according to the TSA, the images have been distorted with the private parts being blurred (Layton). According to the TSA further distortion is used in the Phoenix airport's trial system where photo-quality images are replaced by chalk outlines
Just off the top of my head, running it in a separate process would protect from there being an exploit against the plugin communications channel. It would also mean that if there was active scripting in the PDF (Acrobat allows this), it would be substantially harder to get access to other browser data, such as the authentication cookie you have currently active to your bank account, etc.
Exploits within a browser plugin are higher risk than exploits against the same software but not in plugin form.
To boot, it's plausible that the foil makes contact with multiple electrodes on the drive, and a static discharge may find the path of least resistance goes through one of those circuits, blowing it out. Plus the crinkles in the foil can create little capacitance wells. Maybe not powerful enough to do any damage, but still there's a reason that anti-static bags are designed as they are.
Yeah, I really liked ICQ too. I loved that you could IM someone who was offline and they'd get the message even if you were offline when they came on. There was even a real-time chat option where you could see what each other types as you type it.
I think they would have done a lot better if they had let people be primarily identified by their handle instead of only by a number. I really think that hurt adoption more than they realized as people don't want to be #24601, they want to be "MarySueLolz." Especially since it mean that ICQ Spam Bots could start at 1025 (I think this was the lowest possible number for some reason, at least that's what I recall from when I ran my own ICQ Groupware server for a while), and increment by 1 to eventually hit the entire user base.
In no language has quote escaping been the correct approach to putting untrusted data into a SQL statement for quite a long time (even if a language provides only this approach, it's still not the right approach). That stuff is kept for legacy support.
Switch to PDO and start using bound parameters. No matter what happens with the database and heretofore unconsidered character sets, this will never suddenly become vulnerable to a SQL injection when you upgrade your database server.
If you want to process large files (or any large chunks of data such as blob columns) in PHP without loading the entire file into memory, look into streams.
The author of the article specifically debunks this. Standards are intended to provide a guideline for cooperating entities. You could adhere to various email standards and still easily produce an email which can only be displayed by your own email program.
They're not designed to be specifically invulnerable to malicious interpretation; instead they're designed to highlight areas which typically cause interoperability problems and establish the standard for overcoming that specific set of technical challenges.
There are plenty of lossless formats; including formats that support much greater bit depth than JPEG, such as TIFF.
I agree that there ought to be a medical format for these images if there is information which cannot fit into a standard image format; but I think that it ought to also be mandatory to include a format which individuals have a reasonable chance of accessing themselves whenever the record is provided to a patient. It's their medical record, it shouldn't be locked away from them.
Giving an untrusted party enough information to do more with your encrypted data than simply transfer it around or attempt to brute force crack it automatically weakens your encryption.
You're right that you could devise a system that you could label "encryption," which could be searchable, but any such system exposes so much information about the encrypted data that reversing the encryption is trivial (eg with letter substitution cyphers, you perform letter and word frequency analysis, and the brute force space is simply the size of your substitution dictionary).
So while you certainly could come up with a system that was searchable, any system that exposed that much information about my data, I wouldn't accept the term 'encryption' as applied to it any more than I would consider a marble wrapped in a roll of paper a telescope, even if some might call it that. The point of modern encryption is that there is nothing which can be inferred about the underlying data, apart perhaps from a relative size of the data (assuming they have not added padding). It's not possible to distinguish data encrypted with a strong encryption algorithm from random noise.
Any meaningful search you could perform against the data exposes too much about that data to the untrusted party (in this case the search/storage provider). As others have said in this thread, it makes more sense to create a search index and encrypt and upload that along with your data (which is not really your provider doing search, it's you storing search data on your provider, and it can lead to some form of exposure anyway if you're not very careful).
You would only be able to search by complete tokens, and either the token size is small so you can glean a (small) amount of benefit out of this, but you're exposed to a frequency analysis attack, or it's large, and there are few meaningful searches you can do, and you're exposed to a frequency analysis attack but which is harder to exploit.
And still it's not very useful. Imagine that your data is: The rain in Spain fallss mostly on the plain. Assume your storage block size is 4 bytes (I know you'd use something bigger, but this is just to demonstrate how it wouldn't offer you much value).
Here is what your storage looks like: The rain in Spain fallss mostly on the plain aaaabbbbccccddddeeeeffffgggghhhhiiiijjjjkkkk
I want to search for the word "rain" so I search for the token identified by "bbbb" above. I get my result, and it works fine. However if I want to search for "the" I have several problems.
First, I have "The" with a capital T, which is different from "the" with a lower case T. Search is typically expected to be case insensitive, so there's no way to know that the first word is my expected term. Maybe you can lowercase the search text before generating your tokens, but you're opening yourself up even more to a frequency analysis attack since you're now even limiting the characters permitted to fit within tokens.
Second, even if I search for "The", it will not agree with my token as my token is actually for "The " (with a space).
Third, the second "the" in the sentence is actually divided up among two tokens. To successfully find that word, I need to search for the tokens iiii and jjjj, so I need to search for "on the p" to find the word "the".
Fourth, I later realize that I made a typo on the word "fallss" and correct it. Now instead of having to find that second "the" with the term "on the p" I now have to find it with "n the pl".
So maybe you have a token per word, and that token is always based on the lower case version of that word (ignoring the fact that transforming case at this level is a layering violation, the same as having a "case insensitive" file system), a given token for a given word would then always have to be consistent regardless of position within a document. You've essentially got a cryptogram like I used to solve out of the newspaper comic pages over a bowl of cereal, except that it's a word per token instead of a letter per token.
1) This is not your storage provider offering search, this is you storing a file in your provider's space which helps you to do a search yourself. There is nothing which stops you from doing this already, and no special support is required from your storage provider.
2) Each time you modify your data and upload the modified data with its revised index, this exposes information about the underlying data, as you have essentially two messages with the same information stored using a different scheme - and this allows for a conflict analysis where you observe that certain patterns in the relationship between the two can emerge and can be exploited to reveal more about the encrypted information than is ideal.
It's not possible to do this even in theory, unless you're relying on very weak encryption. The point of encryption is that you can't infer anything about the contents. If Google was able to infer enough to give you meaningful search results (if for example each word was encrypted by itself, and you searched for the encrypted version of the word), they would therefore necessarily be able to know enough to perform a frequency analysis attack on your data and compromise it in no time flat unless it was a very small amount of data (thus meaning search isn't really of value anyway).
You'll find a similar problem plagues any attempt at searching. Searching requires a certain knowledge or meta knowledge of the material being searched; and that knowledge necessarily dramatically weakens your encryption.
A healthy economy is always creating new value for itself, however it measures value. To maintain a stable currency, new currency needs to be introduced to represent the new economic value, or else deflation occurs, which can be even more damaging to currency than inflation.
The citizens won't rebel; there is a true cult of personality (Kim Jong-Il and Kim Il-Sung are the poster children for this) going on in that country. They are saturated with pro-NK political propaganda. Chances are good that the majority of citizens really believe in their country, and the infallibility of their fearless leader.
For example, political propaganda is played from loudspeakers every hour, and houses are required to have a radio which cannot be turned off and spouts propaganda every hour (during the daylight hours; the power is off at night). Children's textbooks speak of the dark and corrupt ways of the west, and the heroism, fearlessness, and infallibility of their leader.
In addition to most citizens worshiping their government leaders (the word "deify" is often used), if an underground movement were started; they would lack the resources to make any meaningful retaliation against the government.
Retaliation by the government against citizen upstarts has been swift and brutal. Entire villages disappear if one civilian is suspected of non-political thoughts; and the disappearance is blamed on the west, and is used as additional propaganda.
That's not to say it's impossible there will be a civilian uprising, I just don't think the rest of the world can count on that; the chances of a positive outcome are far too unlikely.
I think GP was going for irony. Firefox was started as a project under exactly the scenario you describe because the key Mozilla developers kept scope creeping Mozilla. Firefox was founded by Blake Ross and Joe Hewitt and early on they did a lot of manual maintenance, merging features over from the Mozilla core while trying to keep the creep out.
Firefox seems to be going down the road of reliving Mozilla's history.
Three addons keep me addicted to Firefox: FireBug, Web Developer Toolbar, and Adblock. When I'm satisfied with the quality of replacements in another browser, I'll probably jump ship to it; preferably something WebKit based.
I'm loving Chrome, but I'm not spending too much time under Windows except in Parallels and VirtualBox. Hopefully the Mac and Linux versions come out soon.
Let's forget for a moment the real reason this is a good idea - which is that cities with red light cameras (and the contractors which they hired to install them, who also get a cut of the profits) have repeatedly been shown to be reducing the yellow warning signal time - sometimes even less than the legally required minimum duration - in order to snap tickets of cars whose velocity makes it unsafe or impossible to avoid entering the intersection between the moment when the light turned yellow and when it turned red.
So even ignoring that your post ignores the real reasons this makes a lot of sense, there are still several problems with your statements that suggest the physical presence of your car in the intersection is always a rightful traffic violation:
1) Sometimes the intersection becomes obstructed only after you have entered it (a pedestrian walks against the signal, an opposing driver turns in front of you, etc)
2) Sometimes the obstruction in the intersection isn't visible until you have either already entered the intersection or it's too late to avoid entering the intersection due to velocity - such as debris in the road.
3) Many roads with traffic lights have speed limits which make observing the principle of avoiding entry until the intersection is completely clear infeasible. When you're traveling at 65 mph, coming up on a green light, even if you are traveling a safe distance from the car in front of you (you have time to come to a complete stop should they slam on their brakes), you are committed to entering that intersection well before the car in front of you has left it, especially if the crossing road is multiple lanes (there is one such intersection near me where the crossing road is 6 lanes; normal traffic patterns have between 2 and 3 cars inside the intersection during their green at any given point in time).
4) Some intersections in my area are blind intersections - enough so that they place "[Red/Green] Light Ahead" signs in advance - which precede the signal in the intersection with enough lead time that when traveling at a normal speed if it turns to "Red Light Ahead" as you pass the sign, the signal will start to turn red just as you approach the intersection. Obviously the township doesn't believe you have enough capacity to evaluate the intersection well enough to make an entry decision without being given advance notice of the light conditions - how could you then hope to make an evaluation of whether the intersection will be clear in time to avoid entering it?
I'm sure I could dream up more scenarios. A police officer standing next to your window is (presumably) going to listen to reason.
Imposing restrictions on who can vote will make this worse, not better. The mob will be whoever gets the authority to dictate the prerequisites for voting, and it will become impossible to unseat them. Everyone requires the unmitigated right to vote, then it's the responsibility of the socially conscious to make sure they vote in an informed way.
I'll agree, we've been doing a pretty crappy job of it lately. Largely this is due to the mass media (the traditional source of political information) being more interested in selling eyeballs to advertisers than reporting the facts. It's also due to a disenfranchisement of voters in general, who often believe either they have no real voice, or who believe their choices are relatively indistinguishable from each other.
There is a better way, and it is not rejecting voters.
Voter testing was a form of vote suppression in the black south. A high level discussion. Of course it gets much more involved than this article discusses.
You have a right to vote no matter what. No Matter What (I don't even agree with removing the right to vote from felons).
How you choose to use your vote is up to you just as it is everyone else. If too many other people are voting uninformed or underinformed, then it's your responsibility and the responsibility of the people running for office to educate them.
If they're not doing trade under that mark, there's no trademark claim.
Back in that era, corporations didn't have mandatory browser versions like they do today. They still officially run IE 6 at work across all users. There are bits of COTS software that were hard-coded to IE 6 and fail miserably on IE 7 (and worse on other browsers). We warned them of such lock-in at the time, but it was not understood then how ubiquitous the browser would become, and the decision for lock-in looked pretty tempting back then (besides, IE 6 really was the best browser in 2001).
The cost benefit is simply not there for a lot of companies to upgrade, some of these systems would cost hundreds of thousands of dollars to replace, if not into the millions. You can either spend a million dollars and two years working on upgrading all these appliances, or you can stick with what already works and avoid software purchases which require versions incompatible with your platform. That's how the decision makers see it: expensive and no obvious benefit, or free and no obvious down side. It's just as easy to say no to a IE7+-only software package as it is to say no to an OS X-only package: if it's not compatible with the platform, it's not a candidate.
Furthermore users are not allowed to install their own browser. I'd love to ditch IE 6 as much as the next guy (actually probably quite a bit above average as it's a constant neverending thorn in my side), but we don't have the luxury of dictating our clients' browser requirements. They're our client, they tell us what the requirement is, we're just the vendor who quotes it that way.
There are plenty of subjective or passive aggressive ways that a district which so desired could take out their aggression on a student. These are things which would be insufficient to rile up a newspaper, and in fact might discredit this parent as a source of frustration (oh look, he's complaining about something else, and without knowing the complete details from the district's perspective, it sounds like there's a reasonable chance they were acting appropriately).
For example, there are a variety of subjects which grading is largely subjective. Penmanship, reading, science fair contributions, etc. And even in non-subjective tests, giving credit for partial answers is a subjective call (if the teacher believes the student understands the material, but just flubbed the answer on a trivial detail usually they'll give credit or at least partial credit).
Discipline is also largely subjective. A district that so desired could turn each minor infraction into a major incident, and could possibly even bait the child into misbehavior (when I was in 8th grade I had a teacher who liked to do this with me; and as an 8th grader, I fell for it pretty much every time). What one student would get a trip to the principal's office for, this guy might find his daughter is getting suspended for.
Anyway, all that is not to say that he shouldn't make such an attempt, it's just to disprove that retaliation can necessarily be effectively counter-retaliated when the balance of power is not in your favor.
What he should do is talk to the PTA and school board, and recommend that each student with a new bus assignment (both for all kinder gardeners as well as other students whose bus assignment has changed either at the start of the year or mid-year) should get a card with their name, address, school, and bus details printed on it. Kinder gardeners should get theirs with a plastic sleeve and a pin to attach it to their bag or lanyard to hang around their neck.
Finally I'm not convinced that simple discrete tracking technology is a bad idea. Not something so discrete that you could secretly hide it on a person, but something that a person could hide on themselves. This makes sense for more than the safety of a child who is spending their first day away from their parents, but also could be useful for a variety of other purposes (put one in your laptop bag, put one in your car, etc). Sort of a generic user-activated Lojack.
It's not uncommon for wealthy Mexicans to secret such a device on themselves and their family members (supposedly sometimes surgically implanted). This is because it's too common for them to be kidnapped and held for ransom (and often after the ransom is paid, the hostage^Honly witness is disposed of, having been kept alive to this point only to provide reassurance). This could therefore be useful when traveling to dangerous countries.
Your point itself raises an interesting question. If it really was called memory recycling, I wonder if there would have been any temptation to reuse such objects instead of freeing them up for use as some different type of object. For example, maybe it's cheaper to reuse an int than to throw away the old one and create a new one. If you clustered similar objects together in memory you could use such a technique to try to avoid memory fragmentation.
I wonder how much the nomenclature we choose affects the approach we take.
Actually I believe in 1.6 it does something along these lines in addition to complete GC's.
As I understand it, there are three generations of memory: New, Tenured, and Permanent. When objects are initially created they go into the New generation. A thread is constantly sweeping through New and cleaning up what it can. When an object has been in New for 40 or so sweeps it moves to Tenured.
Tenured is only cleaned up during a full (locking) GC, and this can be scheduled to run on an interval (1 minute is fairly common), triggered to run at certain memory thresholds (may cause problems if your base memory crosses that threshold), or at the application's request (though the Java spec specifically declines to guarantee the request will be honored immediately - but all modern Java environments do so).
Permanent generation is not GC'd at all; objects referenced by the runtime which will be resident for as long as the runtime is end up in this space (though the specifics elude me).
This is because the models they're using right now have their image quality degraded from what the sensors see.
The full-quality versions (which can be accomplished by changing a setting on the device) provide extremely intimate detail. Those images have not been released, only the degraded quality images have been released.
From Wikipedia:
([1][2])
In addition these scans can reveal privileged medical information such as whether the traveler uses a colostomy bag.
Just off the top of my head, running it in a separate process would protect from there being an exploit against the plugin communications channel. It would also mean that if there was active scripting in the PDF (Acrobat allows this), it would be substantially harder to get access to other browser data, such as the authentication cookie you have currently active to your bank account, etc.
Exploits within a browser plugin are higher risk than exploits against the same software but not in plugin form.
To boot, it's plausible that the foil makes contact with multiple electrodes on the drive, and a static discharge may find the path of least resistance goes through one of those circuits, blowing it out. Plus the crinkles in the foil can create little capacitance wells. Maybe not powerful enough to do any damage, but still there's a reason that anti-static bags are designed as they are.
Yeah, I really liked ICQ too. I loved that you could IM someone who was offline and they'd get the message even if you were offline when they came on. There was even a real-time chat option where you could see what each other types as you type it.
I think they would have done a lot better if they had let people be primarily identified by their handle instead of only by a number. I really think that hurt adoption more than they realized as people don't want to be #24601, they want to be "MarySueLolz." Especially since it mean that ICQ Spam Bots could start at 1025 (I think this was the lowest possible number for some reason, at least that's what I recall from when I ran my own ICQ Groupware server for a while), and increment by 1 to eventually hit the entire user base.
PHP compiles regex's transparently automatically. If you've used a pattern recently, it will not reparse the statement.
In no language has quote escaping been the correct approach to putting untrusted data into a SQL statement for quite a long time (even if a language provides only this approach, it's still not the right approach). That stuff is kept for legacy support.
Switch to PDO and start using bound parameters. No matter what happens with the database and heretofore unconsidered character sets, this will never suddenly become vulnerable to a SQL injection when you upgrade your database server.
If you want to process large files (or any large chunks of data such as blob columns) in PHP without loading the entire file into memory, look into streams.
The author of the article specifically debunks this. Standards are intended to provide a guideline for cooperating entities. You could adhere to various email standards and still easily produce an email which can only be displayed by your own email program.
They're not designed to be specifically invulnerable to malicious interpretation; instead they're designed to highlight areas which typically cause interoperability problems and establish the standard for overcoming that specific set of technical challenges.
There are plenty of lossless formats; including formats that support much greater bit depth than JPEG, such as TIFF.
I agree that there ought to be a medical format for these images if there is information which cannot fit into a standard image format; but I think that it ought to also be mandatory to include a format which individuals have a reasonable chance of accessing themselves whenever the record is provided to a patient. It's their medical record, it shouldn't be locked away from them.
Giving an untrusted party enough information to do more with your encrypted data than simply transfer it around or attempt to brute force crack it automatically weakens your encryption.
You're right that you could devise a system that you could label "encryption," which could be searchable, but any such system exposes so much information about the encrypted data that reversing the encryption is trivial (eg with letter substitution cyphers, you perform letter and word frequency analysis, and the brute force space is simply the size of your substitution dictionary).
So while you certainly could come up with a system that was searchable, any system that exposed that much information about my data, I wouldn't accept the term 'encryption' as applied to it any more than I would consider a marble wrapped in a roll of paper a telescope, even if some might call it that. The point of modern encryption is that there is nothing which can be inferred about the underlying data, apart perhaps from a relative size of the data (assuming they have not added padding). It's not possible to distinguish data encrypted with a strong encryption algorithm from random noise.
Any meaningful search you could perform against the data exposes too much about that data to the untrusted party (in this case the search/storage provider). As others have said in this thread, it makes more sense to create a search index and encrypt and upload that along with your data (which is not really your provider doing search, it's you storing search data on your provider, and it can lead to some form of exposure anyway if you're not very careful).
You would only be able to search by complete tokens, and either the token size is small so you can glean a (small) amount of benefit out of this, but you're exposed to a frequency analysis attack, or it's large, and there are few meaningful searches you can do, and you're exposed to a frequency analysis attack but which is harder to exploit.
And still it's not very useful. Imagine that your data is:
The rain in Spain fallss mostly on the plain.
Assume your storage block size is 4 bytes (I know you'd use something bigger, but this is just to demonstrate how it wouldn't offer you much value).
Here is what your storage looks like:
The rain in Spain fallss mostly on the plain
aaaabbbbccccddddeeeeffffgggghhhhiiiijjjjkkkk
I want to search for the word "rain" so I search for the token identified by "bbbb" above. I get my result, and it works fine. However if I want to search for "the" I have several problems.
First, I have "The" with a capital T, which is different from "the" with a lower case T. Search is typically expected to be case insensitive, so there's no way to know that the first word is my expected term. Maybe you can lowercase the search text before generating your tokens, but you're opening yourself up even more to a frequency analysis attack since you're now even limiting the characters permitted to fit within tokens.
Second, even if I search for "The", it will not agree with my token as my token is actually for "The " (with a space).
Third, the second "the" in the sentence is actually divided up among two tokens. To successfully find that word, I need to search for the tokens iiii and jjjj, so I need to search for "on the p" to find the word "the".
Fourth, I later realize that I made a typo on the word "fallss" and correct it. Now instead of having to find that second "the" with the term "on the p" I now have to find it with "n the pl".
So maybe you have a token per word, and that token is always based on the lower case version of that word (ignoring the fact that transforming case at this level is a layering violation, the same as having a "case insensitive" file system), a given token for a given word would then always have to be consistent regardless of position within a document. You've essentially got a cryptogram like I used to solve out of the newspaper comic pages over a bowl of cereal, except that it's a word per token instead of a letter per token.
1) This is not your storage provider offering search, this is you storing a file in your provider's space which helps you to do a search yourself. There is nothing which stops you from doing this already, and no special support is required from your storage provider.
2) Each time you modify your data and upload the modified data with its revised index, this exposes information about the underlying data, as you have essentially two messages with the same information stored using a different scheme - and this allows for a conflict analysis where you observe that certain patterns in the relationship between the two can emerge and can be exploited to reveal more about the encrypted information than is ideal.
It's not possible to do this even in theory, unless you're relying on very weak encryption. The point of encryption is that you can't infer anything about the contents. If Google was able to infer enough to give you meaningful search results (if for example each word was encrypted by itself, and you searched for the encrypted version of the word), they would therefore necessarily be able to know enough to perform a frequency analysis attack on your data and compromise it in no time flat unless it was a very small amount of data (thus meaning search isn't really of value anyway).
You'll find a similar problem plagues any attempt at searching. Searching requires a certain knowledge or meta knowledge of the material being searched; and that knowledge necessarily dramatically weakens your encryption.
In addition, you can back up your books from your Kindle, transfer the Kindle to a different account, and restore your books to it.
A healthy economy is always creating new value for itself, however it measures value. To maintain a stable currency, new currency needs to be introduced to represent the new economic value, or else deflation occurs, which can be even more damaging to currency than inflation.
The citizens won't rebel; there is a true cult of personality (Kim Jong-Il and Kim Il-Sung are the poster children for this) going on in that country. They are saturated with pro-NK political propaganda. Chances are good that the majority of citizens really believe in their country, and the infallibility of their fearless leader.
For example, political propaganda is played from loudspeakers every hour, and houses are required to have a radio which cannot be turned off and spouts propaganda every hour (during the daylight hours; the power is off at night). Children's textbooks speak of the dark and corrupt ways of the west, and the heroism, fearlessness, and infallibility of their leader.
In addition to most citizens worshiping their government leaders (the word "deify" is often used), if an underground movement were started; they would lack the resources to make any meaningful retaliation against the government.
Retaliation by the government against citizen upstarts has been swift and brutal. Entire villages disappear if one civilian is suspected of non-political thoughts; and the disappearance is blamed on the west, and is used as additional propaganda.
That's not to say it's impossible there will be a civilian uprising, I just don't think the rest of the world can count on that; the chances of a positive outcome are far too unlikely.
I think GP was going for irony. Firefox was started as a project under exactly the scenario you describe because the key Mozilla developers kept scope creeping Mozilla. Firefox was founded by Blake Ross and Joe Hewitt and early on they did a lot of manual maintenance, merging features over from the Mozilla core while trying to keep the creep out.
Firefox seems to be going down the road of reliving Mozilla's history.
Three addons keep me addicted to Firefox: FireBug, Web Developer Toolbar, and Adblock. When I'm satisfied with the quality of replacements in another browser, I'll probably jump ship to it; preferably something WebKit based.
I'm loving Chrome, but I'm not spending too much time under Windows except in Parallels and VirtualBox. Hopefully the Mac and Linux versions come out soon.
Let's forget for a moment the real reason this is a good idea - which is that cities with red light cameras (and the contractors which they hired to install them, who also get a cut of the profits) have repeatedly been shown to be reducing the yellow warning signal time - sometimes even less than the legally required minimum duration - in order to snap tickets of cars whose velocity makes it unsafe or impossible to avoid entering the intersection between the moment when the light turned yellow and when it turned red.
Red light cameras have been proven to increase the number of accidents at an intersection rather than reducing them; drivers try to stop more quickly than is necessarily safe if they know there is a camera. Here is a link to five studies which demonstrate an increased accident rate for intersections which received red light cameras.
So even ignoring that your post ignores the real reasons this makes a lot of sense, there are still several problems with your statements that suggest the physical presence of your car in the intersection is always a rightful traffic violation:
1) Sometimes the intersection becomes obstructed only after you have entered it (a pedestrian walks against the signal, an opposing driver turns in front of you, etc)
2) Sometimes the obstruction in the intersection isn't visible until you have either already entered the intersection or it's too late to avoid entering the intersection due to velocity - such as debris in the road.
3) Many roads with traffic lights have speed limits which make observing the principle of avoiding entry until the intersection is completely clear infeasible. When you're traveling at 65 mph, coming up on a green light, even if you are traveling a safe distance from the car in front of you (you have time to come to a complete stop should they slam on their brakes), you are committed to entering that intersection well before the car in front of you has left it, especially if the crossing road is multiple lanes (there is one such intersection near me where the crossing road is 6 lanes; normal traffic patterns have between 2 and 3 cars inside the intersection during their green at any given point in time).
4) Some intersections in my area are blind intersections - enough so that they place "[Red/Green] Light Ahead" signs in advance - which precede the signal in the intersection with enough lead time that when traveling at a normal speed if it turns to "Red Light Ahead" as you pass the sign, the signal will start to turn red just as you approach the intersection. Obviously the township doesn't believe you have enough capacity to evaluate the intersection well enough to make an entry decision without being given advance notice of the light conditions - how could you then hope to make an evaluation of whether the intersection will be clear in time to avoid entering it?
I'm sure I could dream up more scenarios. A police officer standing next to your window is (presumably) going to listen to reason.
Imposing restrictions on who can vote will make this worse, not better. The mob will be whoever gets the authority to dictate the prerequisites for voting, and it will become impossible to unseat them. Everyone requires the unmitigated right to vote, then it's the responsibility of the socially conscious to make sure they vote in an informed way.
I'll agree, we've been doing a pretty crappy job of it lately. Largely this is due to the mass media (the traditional source of political information) being more interested in selling eyeballs to advertisers than reporting the facts. It's also due to a disenfranchisement of voters in general, who often believe either they have no real voice, or who believe their choices are relatively indistinguishable from each other.
There is a better way, and it is not rejecting voters.
Voter testing was a form of vote suppression in the black south. A high level discussion. Of course it gets much more involved than this article discusses.
You have a right to vote no matter what. No Matter What (I don't even agree with removing the right to vote from felons).
How you choose to use your vote is up to you just as it is everyone else. If too many other people are voting uninformed or underinformed, then it's your responsibility and the responsibility of the people running for office to educate them.