I started enjoying Netflix more when I realized I shouldn't be looking for stuff I knew of from elsewhere, but rather explore titles, rate, and help their algorithm to suggest things to me. Has been working out well so far - I got into an area I didn't think I was interested so far (superhero series).
My 2 cents: many file systems do not have a file locking feature that can enforce file locking. In unix-like systems, file locks (e.g., lockf(3)) are "advisory" rather than mandatory, meaning it's up to the higher-layer apps to check whether another program has locked a file and voluntarily stop.
Any apps that do implement this feature likely do so by making the original file read-only and having the first app that opens the file work on a copy. However, I think Windows may have a mandatory file locking mechanism.
Speed is one concern but far from the main reason. You couldn't use a typical-length RSA key to encrypt a large chunk of data because there's a max input size for any given RSA key size. Standard block/stream cipher modes of operation are defined only for symmetric key ciphers.
The max input size is for one message. It's effectively the "block size" for RSA. You can send multiple messages using a single RSA key (and in fact pretty much everyone does that, otherwise you'd need a new public key for every message). RSA is a complete crypto system, you don't need any additional ciphers. You do need randomiziation (e.g. random padding).
For the sake of completeness, one such construction where RSA is used as a cipher is OAEP (Optimal Asymmetric Encryption Padding). Beyond being slow it has some other inefficiencies but that's another story.
Speaking for the Bay area, public transportation here is shockingly bad, even for something as routine as getting to the airport. For someone living in the valley to get to SFO (about 40 miles), a taxi can cost anywhere from $50-$80, and the public transportation alternative takes anything between 2-2.5 hours, 1 bus, 3 trains, some distance walking with your luggage, and about 15 bucks. Oh, I forgot to mention that trains are once an hour, and there are a total of 3 distinct operators for the bus and train systems who are totally uncoordinated with each other.
Not surprisingly, most people who value their time prefer making a 35-minute drive at their convenience, and paying about $12-$18 per day of parking.
For HTTP clients and servers, I've not had too much trouble with cpp-netlib. It's heavily boost-based, and it uses Boost::Asio for concurrency and SSL handling, but if you're familiar with Boost, you can be up and running in no time. IIRC, this library is considered for official inclusion to Boost as well. I use cpp-netlib + RapidJSON for my REST API handling needs.
Which book did you get? Curious to find out what's in it.
> ... so disadvantageous in an evolutionary sense? Environmental factors (such as staring at a computer screen...)
Well if you're arguing that it's a nurture thing, there are plenty of us who had bad vision at childhood, right from before the dawn of the computer age. You could say that it was not computer screens but books that caused it, but how far back can you make this argument? Any sources for this claim?
Well, I did too--I started wearing glasses at around age 4. Books and TV would certainly contribute as well--as I understand it, "nearpoint stress" is the main cause of myopia. The eyes are tuned for scanning the horizon for faraway threats; we're naturally more far-sighted. Focusing your eyes closely causes strain, where your eye muscles must contract the lens constantly. Your eyes accomodate this stress by keeping the lens in a contracted position, and by lengthening the eye.
Very likely -- Run this on your machine and see if it improves things http://stackoverflow.com/a/9781943. I got about 18.6s for your python code while this one with a 16 byte salt and 250k iterations runs in 0.6s.
I may not understand the whole context, but if you're using PBKDF2 for key derivation, you don't want to use something that works "fast". You want whatever algorithm/iteration combination that is as slow as possible [1], but not too slow that it annoys the user.
The kdf should be as slow as possible for an attacker but fast enough for you. If you're using python and the attacker is using C, you can increase security with no usability loss by switching to C and raising the iteration count.