These days, there's enough spare CPU and virtual machines to throw around to do random-junk fuzzing, but decades ago when I was taking CS100, and we were being taught to never ever ever trust input and always check for corner cases and off-by-ones and other malformed input, we had to run most of our class programs against data sets that were designed to check whether we'd done everything correctly. Maybe your testers won't think of everything, but they ought to be putting as much effort into finding things that can go wrong and testing for them as the coders and designers are into coding and designing the code, and if you don't have enough QA people to do that, you don't have enough QA people.
A QA engineer walks into a bar and orders a beer. Orders 32768 beers. Orders -1 beers. Orders a lizard....
He's doing pretty well for a 14-year-old who also hacks go-kart engines. Sure, if you're trying to build a production thing, custom circuit-boards are the way to go, but if you're doing a quick learning project, bread-boards are the way to go. From my perspective, if he'd used a project-specific circuit board, it would have looked more like one of those beginner education projects you could get from Radio Shack until they went bust (and I'm not criticizing that; I've used some of those in the past couple of years), but if he'd done that, the same crowd would also be dissing his work, because the objective is to draw attention away from how badly he was treated.
Yup. It's clearly an attempt to deflect from the obvious demonstration that there's too much racism* and Islamophobia around, as well as too much of the "Zero Tolerance - Panic About Everything" movement. Probably the most vilely opportunistic part of it I've seen was the "#HalfABomb" crowd - well, duh, a "movie set bomb" or "hoax bomb" has something that looks like a timer, and something that looks like an explosive, and maybe also some wires of different colors so Our Hero can create extra dramatic tension about which wire to cut.
* It's probably more Islamophobia than racism, though both of those were part of it, but for instance one of the cops who shows up in the "Ahmed in NASA T-Shirt" picture is black, and the mayor of the town is a well-known Islamophobe. ( And ok, I partly emphasized racism in the Subject line because there weren't enough characters to fit Islamophobia.)
It turns out my younger siblings had always given me more credit than I deserved for taking things apart and putting them back together - they apparently hadn't realized how few of the things I took apart were the same things that got put together (though I did reuse parts), and the things that I did successfully put back together were mostly ones I didn't aggressively disassemble. (So the vacuum-tube amp from the old record player - this was back when those were current or a bit old, as opposed to retro - did get a bunch of different things attached to it, but the dead TV mostly had parts unsoldered, back when parts were still big enough to recognize and reuse.)
My siblings gave me a Google Cardboard set the last year, and I finally had a phone that could run it (Samsung G4mini - a bigger phone would have worked a bit better.) It was a lot of fun for an hour or two, so it was worth the $5 or whatever it cost. It wasn't all that practical - among other things, the demo YouTube watching app tended to get misaligned, so instead of sitting in a regular chair to use it, you either needed a swivel chair or else you needed to stand up, because you're be drifting around in one direction or the other for a while. But hey, a couple of games, an art museum, and the ability to watch a few 3D videos, it's as good as a ViewMaster.
Look, it's nice to know that there are cool features coming Real Soon for your phone if you've got a Google-Brand Nexus Device, just like Apple users can know there'll be something cool coming out for their Apple Brand iDevice, but if you're one of the billion or so Android users out there with some other phone or tablet (such as, just to pick entirely random examples, a Samsung or HTC or nearly-noname Coby), what you know is that your hardware vendor will probably never bother to put out more than a couple of point-release upgrades for your device, and even if they do, your phone company probably won't get around to shipping it, if your device is connected to a phone company and not WiFi-only.
(Ok, my Samsung 4mini got upgraded from 4.2ish to 4.4.2, but it's unlikely to get 5.x, my HTC never did get the upgrade from 2.1 to 2.2 distributed to it, and I don't remember if the Coby tablet started with 4.0.1 or the 4.0.4 it has now, but Coby seems to have forgotten they ever even made that tablet. In theory I appreciate the openness in Android, but basically what that means is that you have to decide for yourself when your vendor's abandoned you and it's time to root the device and install Cyanogen.)
Look, I'm sure it's nice to know how fast you can open a window or tab, run some piece of Javascript thingie, and close it, but that's got very little to do with how I browse, and a benchmark result of "23456" doesn't tell me anything.
- How many windows and tabs were open?
- How do those compare to average popular-web-site web pages for complexity?
- How much memory was the browser burning?
Go fetch a Fark.com 168-hour page, open all the links in separate tabs, and tell me how much memory it's burning and whether the browser crashes. Once it's open, THEN go run your benchmark.
Yes, we don't trust them, and we didn't trust them when they came into office and started lying to us, because that's what their predecessors had also been doing. And they're trying to restart the Crypto Wars they lost 20 years ago and want us to believe them THIS TIME FOR SURE! and somehow that trick's still not working?
Obviously The Onion deserves special handling to make sure their brand name is protected - you wouldn't want to go to a website called "the.onion", find real news stories there, and assume they're fake. Think how badly that could be abused!
But the more interesting part of this story is that IETF and IANA seem to be asserting that they still have some control domain name system, even though ICANN appropriated it for themselves some years ago, and has tried to also control some IANA functions like IPv6 name space. (In case you weren't paying attention back when that happened, there was an "IETF Ad Hoc Committee" trying to expand the Top Level Domain space, and it had gotten as far as proposing an initial set of seven fairly lame TLDs to try out first, and even though the Trademark Gods had been able to have some influence over the IAHC's policies, such as getting them to ask for True Names and Addresses for whois so that trademark suits could be filed, that wasn't enough control for them so they started ICANN to be less responsive to the internet community and more responsive to the Intellectual Property racketeers.)
SSL certs do multiple things - protecting your connection, but also demonstrating that you've connected to the destination you thought you did. That destination might be a well-known brand name, or it might be some random person, or it might be some website you don't care who's running it - but you might want to know that the "buy-drugs-here.onion" you're connecting to today is the same "buy-drugs-here.onion" you connected to yesterday. A self-signed cert doesn't always give you that.
Patent law applies to development and sale of products; resale of patented equipment is no more covered than resale of used copyrighted material is. The patent owner got compensated for use of their design when the product was first sold; that's all they get.
Now, if they had a business method patent for "ripping off printer buyers by forcing them to buy hopelessly overpriced ink", they might have a case, but that business method's old enough by now that any patents on it should have long expired; I was writing open source drivers for HP inkjets in the early 90s, so that's past the 20 year mark.
This is another Stingray variant, for acquiring information without warrants, and isn't about stolen goods. It just has a better cover story, and a developer who's not insisting on NDAs to cover illegal mobile phone wiretapping because sucking up publicly broadcast information like SSIDs and MACs isn't explicitly illegal.
Your average 90 IQ police department isn't going to search for stolen iPhones even if the user comes to them and says"My phone got stolen, '$Get-My-Phone-Back-App' says it's located at 766 Valencia St, here's the picture of the user, Facebook says he's Pat Smith, mugshots-online.sf.ca.gov shows a matching picture and his record of petty theft and fencing, and the app shows he's been there for 3 hours, yes, I know that address is the Central Police Station, he's in Room 243. Can you walk upstairs and ask him to give my phone back?"
Your average police department also doesn't have a list of MAC addresses for stolen goods, nor do most theft victims - if my work laptop gets stolen, maybe the IT department has that somewhere, but if my home PC gets stolen, I don't, unless possibly my router's NAT table or my ISP has the MAC cached, but it's pretty unlikely.
I've found the last ~5 years of using Android products to be really frustrating - Google supports new versions of Android on any Google hardware that has enough horsepower, but most other vendors give you at most a couple of minor upgrades, if you're lucky; I seem to have missed the 15 minutes that my HTC Aria could be upgraded from 2.1 to 2.2 before it dropped Google Play support, no-name Coby tablet stopped at 4.0.4, Samsung doesn't seem to plan to take my S4mini phone to 5.0, and it may stay stuck at 4.4.2, and in general the vendors customize the interface so that you can only get upgrades from them, which the carriers don't push them to deliver on because both sides want to ship new shiny hardware, not support slightly older hardware.
Apple will of course provide software support and upgrades for anything that can handle them, but Google devices are about the only Android gear that you can expect the same level of support, unless you want to move over to Cyanogen.
I have a Coby 10" tablet from 2-3 years ago, picked because $DAYJOB's program of "You've worked here N mod 5 == 0 years, pick a gift" had it as a choice. It's not bad, but there's been almost zero support for upgrades, and scarcely even any documentation on the vendor's website. It's now running 4.0.4, and I think it might have originally come with 4.0.1, but there's nothing since then. And it's Wifi-only, so it's not like there's a mobile phone provider to blame for the lack of upgrades (oh - avoid HTC also:-), but this has a much higher level of vendor abandonment than I've seen from anybody; at least HTC kept the documentation online for a while.
For it's day, it wasn't bad for a low-end tablet. 10" screen, something like 1024x800 or 1024x768, SD card slot so I could add storage (subject to Android's clunkiness about that.) It did replace my Kindle 3 for most ebook reading (the Kindle was still the winner for taking on airplanes or reading on the train, because of size, but for home or work, the bigger screen and backlight were a win.)
WaPo article on craters in Siberia - apparently they're from methane gas evaporation, which is spectacularly bad news, because methane has more greenhouse effect than CO2. There's a lot of methane stored in frozen arctic tundra, and if warming temperatures make more of it escape, that's going to warm things up faster and make more of it escape.
You should totally be using them, instead of keeping your copies at home, because it's much more reliable, they've got better hardware, geographic redundancy, paid staffs, and nothing can go w(#($!_*$@#RR
You need simplicity, reliability, format independence, and no particular speed or latency. Don't do RAID or NAS for backups.
Sure, NAS and RAID and the like are great for online reliability, and for your current copies, but for backups, you want something that you can plug in 5 years from now, be sure it'll work, and don't care if it's a bit slow. So buy a few individual drives with the most portable formats available (seems to be 2TB with USB2 and eSATA for now), and every couple of years, copy to new media, which will cost you half as much for twice the capacity and maybe use some format that doesn't exist yet.
File formats are anybody's guess - you probably should keep the data in the original format, but also, as new formats come out, consider translating some of the old ones into new formats, e.g. JPEG->PNG, or OlderMovieFormat->NewerMovieFormat, and keep the translation programs on the same disk.
File namingAgain, simplicity's good, but you're also doing this for people in the future, including yourself. I tend to have directories by year, and subdirectories by what category of picture it was (this trip, cats, etc.), and never get around to keeping simple text files of what most of the pictures in the batch are about, but you should totally be doing that. And that's static text files, not some DBMS that won't be supported next decade. (So CSV files or tab-separated text from 1978 still work fine, but Lotus123 spreadsheets or mid-90s Excel binaries or Office365 cloud-stuff may not be readable.)
I once worked for a guy who had a number tattooed on his arm. There are some still around, though more of their kids and grandkids, and enough living in NYC or New Jersey that you'd think Christie would have more sense.
I probably have wristwatches with more power than a Cray 1 by now. And a $50 BeagleBoneBlack is probably way faster than a Cray 2. The amount of Moore's Law since the Cray 1 came out is just silly, even though it has slowed down a bit.
As with telephone switches, you end up needing a large fraction of your code to be monitoring the state of the system to make sure everything's working. But also, you don't get that kind of reliability by having systems that flake out for a few milliseconds - you end up with multiple systems in parallel, and you know failure probabilities of the individual systems and build the thing to try to eliminate common-mode failures. So Box A, Box B, and Box C are in parallel, and each one has alarms that detect whether the other ones are down and the backup needs to take over for the primary, so if Box A is down, Box B takes over while you fix Box A, and Box C is there to take over if Box B also fails (or was already down when Box A failed.) Or alternatively, you've got an A/B pair, and a C/D pair, and if A fails, the C/D pair takes over while you fix A, reducing the risk that B will fail before you've done that.
We were part of the project because we're good at systems integration and government projects, but also because we had processor chips that did trig functions really really fast (for late-80s definitions of fast.) Turns out that the data was all coming from sensors with 12-bit A/D converters, and the fastest way to do trig functions on them isn't a floating-point chip - it's a lookup table:-)
These days, there's enough spare CPU and virtual machines to throw around to do random-junk fuzzing, but decades ago when I was taking CS100, and we were being taught to never ever ever trust input and always check for corner cases and off-by-ones and other malformed input, we had to run most of our class programs against data sets that were designed to check whether we'd done everything correctly. Maybe your testers won't think of everything, but they ought to be putting as much effort into finding things that can go wrong and testing for them as the coders and designers are into coding and designing the code, and if you don't have enough QA people to do that, you don't have enough QA people.
A QA engineer walks into a bar and orders a beer. Orders 32768 beers. Orders -1 beers. Orders a lizard. ...
He's doing pretty well for a 14-year-old who also hacks go-kart engines. Sure, if you're trying to build a production thing, custom circuit-boards are the way to go, but if you're doing a quick learning project, bread-boards are the way to go. From my perspective, if he'd used a project-specific circuit board, it would have looked more like one of those beginner education projects you could get from Radio Shack until they went bust (and I'm not criticizing that; I've used some of those in the past couple of years), but if he'd done that, the same crowd would also be dissing his work, because the objective is to draw attention away from how badly he was treated.
Yup. It's clearly an attempt to deflect from the obvious demonstration that there's too much racism* and Islamophobia around, as well as too much of the "Zero Tolerance - Panic About Everything" movement. Probably the most vilely opportunistic part of it I've seen was the "#HalfABomb" crowd - well, duh, a "movie set bomb" or "hoax bomb" has something that looks like a timer, and something that looks like an explosive, and maybe also some wires of different colors so Our Hero can create extra dramatic tension about which wire to cut.
* It's probably more Islamophobia than racism, though both of those were part of it, but for instance one of the cops who shows up in the "Ahmed in NASA T-Shirt" picture is black, and the mayor of the town is a well-known Islamophobe. ( And ok, I partly emphasized racism in the Subject line because there weren't enough characters to fit Islamophobia.)
It turns out my younger siblings had always given me more credit than I deserved for taking things apart and putting them back together - they apparently hadn't realized how few of the things I took apart were the same things that got put together (though I did reuse parts), and the things that I did successfully put back together were mostly ones I didn't aggressively disassemble. (So the vacuum-tube amp from the old record player - this was back when those were current or a bit old, as opposed to retro - did get a bunch of different things attached to it, but the dead TV mostly had parts unsoldered, back when parts were still big enough to recognize and reuse.)
My siblings gave me a Google Cardboard set the last year, and I finally had a phone that could run it (Samsung G4mini - a bigger phone would have worked a bit better.) It was a lot of fun for an hour or two, so it was worth the $5 or whatever it cost. It wasn't all that practical - among other things, the demo YouTube watching app tended to get misaligned, so instead of sitting in a regular chair to use it, you either needed a swivel chair or else you needed to stand up, because you're be drifting around in one direction or the other for a while. But hey, a couple of games, an art museum, and the ability to watch a few 3D videos, it's as good as a ViewMaster.
Look, it's nice to know that there are cool features coming Real Soon for your phone if you've got a Google-Brand Nexus Device, just like Apple users can know there'll be something cool coming out for their Apple Brand iDevice, but if you're one of the billion or so Android users out there with some other phone or tablet (such as, just to pick entirely random examples, a Samsung or HTC or nearly-noname Coby), what you know is that your hardware vendor will probably never bother to put out more than a couple of point-release upgrades for your device, and even if they do, your phone company probably won't get around to shipping it, if your device is connected to a phone company and not WiFi-only.
(Ok, my Samsung 4mini got upgraded from 4.2ish to 4.4.2, but it's unlikely to get 5.x, my HTC never did get the upgrade from 2.1 to 2.2 distributed to it, and I don't remember if the Coby tablet started with 4.0.1 or the 4.0.4 it has now, but Coby seems to have forgotten they ever even made that tablet. In theory I appreciate the openness in Android, but basically what that means is that you have to decide for yourself when your vendor's abandoned you and it's time to root the device and install Cyanogen.)
Play is the obvious way to download it to a random Android...
The one at Whitehouse.gov, to let Texas secede from the Union? I proposed we could give y'all back to Mexico if you didn't like DC.
Look, I'm sure it's nice to know how fast you can open a window or tab, run some piece of Javascript thingie, and close it, but that's got very little to do with how I browse, and a benchmark result of "23456" doesn't tell me anything.
Go fetch a Fark.com 168-hour page, open all the links in separate tabs, and tell me how much memory it's burning and whether the browser crashes. Once it's open, THEN go run your benchmark.
Yes, we don't trust them, and we didn't trust them when they came into office and started lying to us, because that's what their predecessors had also been doing. And they're trying to restart the Crypto Wars they lost 20 years ago and want us to believe them THIS TIME FOR SURE! and somehow that trick's still not working?
I'm shocked, shocked I tell ya!
Obviously The Onion deserves special handling to make sure their brand name is protected - you wouldn't want to go to a website called "the.onion", find real news stories there, and assume they're fake. Think how badly that could be abused!
But the more interesting part of this story is that IETF and IANA seem to be asserting that they still have some control domain name system, even though ICANN appropriated it for themselves some years ago, and has tried to also control some IANA functions like IPv6 name space. (In case you weren't paying attention back when that happened, there was an "IETF Ad Hoc Committee" trying to expand the Top Level Domain space, and it had gotten as far as proposing an initial set of seven fairly lame TLDs to try out first, and even though the Trademark Gods had been able to have some influence over the IAHC's policies, such as getting them to ask for True Names and Addresses for whois so that trademark suits could be filed, that wasn't enough control for them so they started ICANN to be less responsive to the internet community and more responsive to the Intellectual Property racketeers.)
SSL certs do multiple things - protecting your connection, but also demonstrating that you've connected to the destination you thought you did. That destination might be a well-known brand name, or it might be some random person, or it might be some website you don't care who's running it - but you might want to know that the "buy-drugs-here.onion" you're connecting to today is the same "buy-drugs-here.onion" you connected to yesterday. A self-signed cert doesn't always give you that.
Patent law applies to development and sale of products; resale of patented equipment is no more covered than resale of used copyrighted material is. The patent owner got compensated for use of their design when the product was first sold; that's all they get.
Now, if they had a business method patent for "ripping off printer buyers by forcing them to buy hopelessly overpriced ink", they might have a case, but that business method's old enough by now that any patents on it should have long expired; I was writing open source drivers for HP inkjets in the early 90s, so that's past the 20 year mark.
This is another Stingray variant, for acquiring information without warrants, and isn't about stolen goods. It just has a better cover story, and a developer who's not insisting on NDAs to cover illegal mobile phone wiretapping because sucking up publicly broadcast information like SSIDs and MACs isn't explicitly illegal.
Your average 90 IQ police department isn't going to search for stolen iPhones even if the user comes to them and says"My phone got stolen, '$Get-My-Phone-Back-App' says it's located at 766 Valencia St, here's the picture of the user, Facebook says he's Pat Smith, mugshots-online.sf.ca.gov shows a matching picture and his record of petty theft and fencing, and the app shows he's been there for 3 hours, yes, I know that address is the Central Police Station, he's in Room 243. Can you walk upstairs and ask him to give my phone back?"
Your average police department also doesn't have a list of MAC addresses for stolen goods, nor do most theft victims - if my work laptop gets stolen, maybe the IT department has that somewhere, but if my home PC gets stolen, I don't, unless possibly my router's NAT table or my ISP has the MAC cached, but it's pretty unlikely.
I've found the last ~5 years of using Android products to be really frustrating - Google supports new versions of Android on any Google hardware that has enough horsepower, but most other vendors give you at most a couple of minor upgrades, if you're lucky; I seem to have missed the 15 minutes that my HTC Aria could be upgraded from 2.1 to 2.2 before it dropped Google Play support, no-name Coby tablet stopped at 4.0.4, Samsung doesn't seem to plan to take my S4mini phone to 5.0, and it may stay stuck at 4.4.2, and in general the vendors customize the interface so that you can only get upgrades from them, which the carriers don't push them to deliver on because both sides want to ship new shiny hardware, not support slightly older hardware.
Apple will of course provide software support and upgrades for anything that can handle them, but Google devices are about the only Android gear that you can expect the same level of support, unless you want to move over to Cyanogen.
I have a Coby 10" tablet from 2-3 years ago, picked because $DAYJOB's program of "You've worked here N mod 5 == 0 years, pick a gift" had it as a choice. It's not bad, but there's been almost zero support for upgrades, and scarcely even any documentation on the vendor's website. It's now running 4.0.4, and I think it might have originally come with 4.0.1, but there's nothing since then. And it's Wifi-only, so it's not like there's a mobile phone provider to blame for the lack of upgrades (oh - avoid HTC also :-), but this has a much higher level of vendor abandonment than I've seen from anybody; at least HTC kept the documentation online for a while.
For it's day, it wasn't bad for a low-end tablet. 10" screen, something like 1024x800 or 1024x768, SD card slot so I could add storage (subject to Android's clunkiness about that.) It did replace my Kindle 3 for most ebook reading (the Kindle was still the winner for taking on airplanes or reading on the train, because of size, but for home or work, the bigger screen and backlight were a win.)
WaPo article on craters in Siberia - apparently they're from methane gas evaporation, which is spectacularly bad news, because methane has more greenhouse effect than CO2. There's a lot of methane stored in frozen arctic tundra, and if warming temperatures make more of it escape, that's going to warm things up faster and make more of it escape.
You should totally be using them, instead of keeping your copies at home, because it's much more reliable, they've got better hardware, geographic redundancy, paid staffs, and nothing can go w(#($!_*$@#RR
You need simplicity, reliability, format independence, and no particular speed or latency. Don't do RAID or NAS for backups.
Sure, NAS and RAID and the like are great for online reliability, and for your current copies, but for backups, you want something that you can plug in 5 years from now, be sure it'll work, and don't care if it's a bit slow. So buy a few individual drives with the most portable formats available (seems to be 2TB with USB2 and eSATA for now), and every couple of years, copy to new media, which will cost you half as much for twice the capacity and maybe use some format that doesn't exist yet.
File formats are anybody's guess - you probably should keep the data in the original format, but also, as new formats come out, consider translating some of the old ones into new formats, e.g. JPEG->PNG, or OlderMovieFormat->NewerMovieFormat, and keep the translation programs on the same disk.
File namingAgain, simplicity's good, but you're also doing this for people in the future, including yourself. I tend to have directories by year, and subdirectories by what category of picture it was (this trip, cats, etc.), and never get around to keeping simple text files of what most of the pictures in the batch are about, but you should totally be doing that. And that's static text files, not some DBMS that won't be supported next decade. (So CSV files or tab-separated text from 1978 still work fine, but Lotus123 spreadsheets or mid-90s Excel binaries or Office365 cloud-stuff may not be readable .)
... what you think it means.
I once worked for a guy who had a number tattooed on his arm. There are some still around, though more of their kids and grandkids, and enough living in NYC or New Jersey that you'd think Christie would have more sense.
I probably have wristwatches with more power than a Cray 1 by now. And a $50 BeagleBoneBlack is probably way faster than a Cray 2. The amount of Moore's Law since the Cray 1 came out is just silly, even though it has slowed down a bit.
s/their/there/
As with telephone switches, you end up needing a large fraction of your code to be monitoring the state of the system to make sure everything's working. But also, you don't get that kind of reliability by having systems that flake out for a few milliseconds - you end up with multiple systems in parallel, and you know failure probabilities of the individual systems and build the thing to try to eliminate common-mode failures. So Box A, Box B, and Box C are in parallel, and each one has alarms that detect whether the other ones are down and the backup needs to take over for the primary, so if Box A is down, Box B takes over while you fix Box A, and Box C is there to take over if Box B also fails (or was already down when Box A failed.) Or alternatively, you've got an A/B pair, and a C/D pair, and if A fails, the C/D pair takes over while you fix A, reducing the risk that B will fail before you've done that.
We were part of the project because we're good at systems integration and government projects, but also because we had processor chips that did trig functions really really fast (for late-80s definitions of fast.) Turns out that the data was all coming from sensors with 12-bit A/D converters, and the fastest way to do trig functions on them isn't a floating-point chip - it's a lookup table :-)
It's only 1.995 pet falops because one of the falops got its tail caught in a closing screen door and lost the tip. Maybe it'll grow back.