I can not really think of any industry that simply resigns when it becomes difficult and just blame it on users not being smart enough. if car manufacturers could get away with that, imagine the roads...
Fully patched and upgraded Vista is basically Win7.
It isn't terrible, but Vista SP2 still doesn't have the window snap feature from Windows 7. I like that feature a lot.
Install the original release version of Vista and see if that machine can run even a single year.
I don't understand. Do you mean keep using Vista, or keep running without rebooting?
On the first point, it's inadvisable, because Microsoft ended support for Vista without service packs back in 2012. Otherwise, people have put up with horrible computer systems for longer periods of time. Vista is no Windows ME.
On the second point, if my computer hasn't malfunctioned and forced a restart before, then it reboots every month for Patch Tuesday. It's a rare month when critical updates don't force a restart. This is the same for Windows XP, Windows Vista, Windows 7, and Windows 8.1. Otherwise, if you keep it isolated, on stable hardware with ECC, and interact with it very little, then I don't see why it couldn't run for a few years.
then why won't all XP software run on Windows 7, and why hasn't everyone seen the error of their ways, and upgraded their XP systems?
This is partly AMD's fault. They decided that 64-bit mode would not include Virtual 8086 mode.
My dad owns a number of companies which all went out and bought extra XP systems... they don't want to have to re-buy all their machines, and re-buy all their existing software, and rewrite from scratch all their Microsoft COM component based glue code the next time they hire a new person into the office... the incompatibility is killing adoption of anything later than Windows XP for almost every business I know that has 100 or less employees, which is 95% of all businesses in the U.S..
I don't personally know any small business that has such custom software. They just use Windows and Office, which can be replaced with GNU/Linux and LibreOffice. Or ChromeOS and Google Drive. But I'm more familiar with the 10-or-less business demographic.
I do know some labs that have Windows XP attached to expensive machinery. They definitely can't upgrade. But they really should not be on the Internet, anyway.
There is no such thing. A device that moves data from one location to another, using some policies to examine and transform it, is not just a "hardware" device. It's also software. And if it interfaces with software, then it can be compromised. Or haven't you noticed the news about D-Link routers? A lot of these routers have 2MB or less of flash, which makes it difficult to find a useful exploit, but "difficult" doesn't mean "impossible."
It's pretty unlikely that anyone will come up with a useful attack on a device that's just doing port blocking, NAT, and basic routing. At worst, somebody might DOS it or turn it into a well-connected zombie to aid in DDOSing somebody's server, but neither of those is compromising your data.
This seems like a huge omission. It's hard to think of a more influential computer game.
Apple Newton???
Mossberg's editorial point of view is of the average consumer, and I don't think most people care about computer games. I don't.
But choosing the Newton because of AI? Everybody has been working on that, and the Newton's approach was a dead end. The Newton had an even bigger impact that Mossberg omitted: It launched ARM into the low-energy device market, which it now dominates.
The Hour of Code was teaching the outdated, sequential type of programming
Sequential code may be inadequate for advanced programming, but it certainly isn't "outdated". As a professional programmer, 90% of my code is purely sequential. Even parallel code has sequential blocks, and parallel programming skills can only be built on a solid foundation of basic understanding of sequential processing. Arithmetic skills are not enough to do calculus, but that doesn't mean arithmetic is "outdated".
But arithmetic is outdated. Computers are just way better at arithmetic, and very few people do arithmetic manually in their jobs. Kids get entirely the wrong idea about math, spending all that time on brittle algorithms, and you get the wrong idea about sequential programming due to the abundance of undefined behaviors. The trouble is that we don't have a consistent way to teach something better.
Just like I had to partially unlearn the least-significant-digit-first arithmetic to learn everyday, useful arithmetic, I also had to unlearn BASIC's strictly sequential programming to learn modern, functional programming. Everybody who works with new ideas is familiar with how long they can take to become common. I, for one, am curious about what would happen if kids were taught category theory and explicit control of side effects from the beginning, instead of being introduced to it much later as a bizarre branch of higher math.
That computers emulate sequential operation with barriers, careful analysis of memory dependencies, and a single program counter (or is Intel up to 30 program counters now?) is just an implementation detail. The computer science doesn't depend on having an exact sequence, and some asynchronous computers or flow-based computers might not need the program counter. I'm not sure how to build it, but it feels like it should be possible. Multithreading sequential programs is turning out to be a bust. Except for embarrassingly parallel problems, very few people can reason about them effectively. We need people to discover and learn new ways of handling concurrency.
I think it was Crockford who said that the programmers who understand multi-threading should be captured and compelled to do systems programming, but I'm not sure.
Ah, I remembered right.
Races and deadlocks are just really difficult to reason about.
There are very few people in the world who can reason about them effectively.
My belief, and I mean this sincerely, is that they should all be enslaved and made to work on operating systems. And that nobody else should have to go near this stuff, because it's just way too complicated.
What bad habits? Logic of whatever type you want to implement is inherently sequential.
No, it is not. Logic is inherently reflexive and transitive. It's a major failing in math education, that people think it is about performing algorithms in sequence. Most people never learn the relations that allow you to rearrange the equations and create new algorithms.
In programming, the idea of sequential programming has problems. CPython guarantees that only one bytecode is executing at one time, and therefore they find it extremely difficult to remove the Global Interpreter Lock. C guarantees sequence only between sequence points, and makes liberal use of undefined behavior. Even Javascript, with its relatively simple model, has variable hoisting that catches beginners by surprise. Locking limits scalability, and shared-memory multi-threading is so difficult that it's believed that almost nobody knows how to do it properly. I think it was Crockford who said that the programmers who understand multi-threading should be captured and compelled to do systems programming, but I'm not sure.
Declarative and functional programming don't require execution in a particular sequence. The canonical example of this is Haskell, with its lazy evaluation, but logic programming is based on this idea, and even event-driven programming is like programming inside-out for a sequential programmer.
It's true that there's a lot of ridiculous hype and grandstanding about this, but either way, people are getting a chance to be introduced to programming in an interesting way, and possibly learning from it.
Now it's time for the angry hordes to come tell us why we're wrong and why this is horrible.
As you wish.
The Hour of Code was teaching the outdated, sequential type of programming that Dijkstra was complaining about back in 1975. It was already problematic back when most computers had a single processor, but it's completely inadequate in an increasingly parallel world. Any student who wishes to make sense of a concurrent program, or a monadic program, will have to unlearn bad habits and start again.
I know, I shouldn't respond to a troll, but I'm feeling generous today.
There you go again. Acting like you know what you're talking about, but you don't. ZFS and BTRFS have...
Exactly dick to do with what I said. The filesystem doesn't matter. The operating system doesn't even matter.
Um, excuse me? The filesystem absolutely does matter. Traditionally, the filesystem assumes that any data retrieved from the drive has been put there, earlier. Obviously, drives don't do that 100% reliably. It's an important innovation, that these newer filesystems will add their own checksums to the data that they write, so they can detect and sometimes fix corrupted reads.
I'm talking about infrastructure and architecture, while you're blubbering on about the hardware.
Get your head out of the clouds. Everything does come down to hardware. In fact, given your other posts about hardware, I sometimes doubt that you actually interact with the hardware that you talk about.
Ideally, a RAID would be able to recreate the missing block, but I can't find any reference to a RAID doing that.
That's because you have no experience as a network administrator in a professional environment. Because then you'd know that's the very thing RAID was designed to do: Recover from hardware failure, which includes sectors becoming unreadable.
That's an aspect of software. Of course a RAID with sufficient parity will recover from a total drive failure. It's much harder to find reference to how a particular RAID will respond to intermittent errors. But if you're not just a blowhard, I'd like to see some of your links to documents describing how the RAIDs that you know will handle drive read errors. Not total failures. Just read errors.
Speaking of RAID, ZFS has its own concept of RAID that supports up to triple parity, with a different architecture than a normal storage system. Still, I haven't found any reference to how it handles drive read errors.
It surely doesn't help that modern computers have many gigabytes of memory, but almost none have ECC on that memory.
That's because ECC adds an extra layer of complexity to solve a problem that doesn't occur very often in computers, and when it does, the most severe consequence is usually that the computer crashes or behaves abnormally. For residential, and even most commercial uses, ECC memory just isn't needed. But for a select few use scenarios where data integrity is absolutely critical -- such as, say, nuclear power plants, air traffic control systems, certain types of hospital equipment, or financial processing systems, the added cost is justified because they need high availability/high reliability of those systems.
What a horrible attitude to data integrity. Computer crashes, I lose data. Computer behaves abnormally, worst case scenario is it calculates some important thing wrong, say the root of an important filesystem B-tree, and the filesystem needs to go through an expensive repair. My data are important to me. I use my computer for my personal financial processing, and I know I'm not alone. My old computer had an extra 128kB of memory to provide parity checks for the other 1MB. I imagine that stupid traditions of cost-cutting are why my new computer does not have 2GB of memory to provide ECC for the other 16GB.
Your consumer-grade computer's memory is a piece of shit. It's made with commodity capacitors and ICs that are stamped out in bulk for super cheap.
And your server memory isn't? Back up a moment... I thought OP was talking about being able to detect bitrot in family photos, and now you're telling him he should buy a server with memory lovingly crafted for high reliability? Which reliability i
The only way to truly prevent bitrot is by maintaining at least three complete copies of the data, and regularly compare between them.
There you go again. Acting like you know what you're talking about, but you don't.
ZFS and BTRFS have a much more efficient way to ensure correctness: CRC of everything written. That is what is checked when you do a zpool scrub or a btrfs scrub. Random errors are very unlikely to produce the same checksum, so then you only need a second copy that doesn't produce CRC errors.
Hard drives are nowhere near as reliable as their manufacturers claim. Modern drives don't store the bits that you feed them exactly as you give them. Instead, they use CRC and error correcting codes, so they only need most of the data to be correct. Usually, if the data doesn't match the CRC, and it cannot be corrected by ECC, then you get a read error instead of corrupted data. Which, I guess, is better than getting a corrupted picture. Ideally, a RAID would be able to recreate the missing block, but I can't find any reference to a RAID doing that.
But I've seen enough errors that I suspect something else is going on. It surely doesn't help that modern computers have many gigabytes of memory, but almost none have ECC on that memory. Your computer can be corrupting your data, and you have no warning that it's happening. In addition, hard drives lie. I'm not optimistic about the long-term storage of electronic data.
You can download DRM-free music that you can play anywhere from iTunes so how is it the FSF is so opposed to that?
You didn't read the FSF's reasoning, did you. They object to how the only way to download those DRM-free tracks is with that annoying proprietary bloat-ware, iTunes.
They didn't mention, but the DRM-free tracks from Apple are also patent-encumbered AAC and violate your privacy, by including your account details in the file.
This is subtly different. In my eyes, once the employee has been fired, they are really under no obligation to help their now ex-employer with much of anything....snip... The only difference here is that they didn't find out what he had done until after he was fired, which doesn't change the fact that he was committing a crime in the first place.
It was worse than that. He wasn't even actually fired, yet. He was being "reassigned," and he took that as a sign that he should put his contingency plan into effect. He took a bunch of stuff with him and fled to Nevada, and was caught when he came back for some more stuff. To this day, not all of it has been recovered.
Admins good! PHBs bad! But then he was forced to hand over the passwords and San Francisco did not revert to the stone age as their entire electronic infrastructure melted down around them, as he expected. So Terry was wrong, and now he's just an asshole with a god complex doing time.
To be fair, the PHBs of San Francisco were bad. Using the case to build up political capital for the District Attorney's office, publishing those contested passwords as evidence in the public record, laying off IT personnel left and right.
San Francisco did not melt down because Cisco stepped up and fixed things. It helped that the FiberWAN was OMG PUBLIC SAFETY so the City gave Cisco a blank check to do whatever they needed to get it back on track. Which was like $900,000 over a couple weeks.
It's interesting that this seems to be the prevailing opinion now. But when this all went down, Terry Childs was the Slashdot Poster Child. Why have opinions changed?
More of the relevant facts have been made public. It turns out that Childs wasn't the overzealous network administrator that he was made out to be, but he was a sociopathic, somewhat psychotic criminal who carved a mini-empire for himself out of wires and electricity. He was even denying appropriate requests for service, just because of his own personal hangups.
On the other hand, my opinion of the City and County of San Francisco has not been improved, either. The situation should not have been allowed to turn into full-on criminal prosecution. Even Jason Chilton, the famous Juror #4 who is also a network engineer, thought the criminal charges should have been dropped. Successive mayors have used the position to grant kickbacks to various friends, yet the IT department was being downsized and Childs was left with no job security and nobody overseeing his work. At the same time, District Attorney (now California Attorney General) Kamala Harris was facing accusations of being soft on murder, so she apparently took the Childs case as a gift from heaven to demonstrate her toughness on technology crime. When Childs did surrender the passwords, and she immediately put them into the public record as evidence, that was just amazing work. Amazing for the wrong reasons.
So, my opinion of Childs deteriorated, and my opinion of San Francisco did not improve.
There's all this doom and gloom, but where are the comments about what's going right? Nothing ever starts without problems.
When Twitter first became popular, the fail whale was a constant fixture. When Microsoft took over Hotmail, it had major glitches. Microsoft's Azure cloud still has major service disruptions. And who can remember the days when "Slashdotting" meant a site went down?
Of course, the major difference between those and Healthcare.gov is that ordinary people can freely choose not to join Twitter, but uninsured Americans face fines from the IRS if they don't get a health insurance plan by the start of next year.
I think dishonesty and corruption are part of human nature, and go back to the beginning of humanity. The Constitution gave the United States a "more perfect union," but it cannot eliminate the inherent evil.
That was working time. They all started from standby pretty much immediately, and they also had significant standby times. And they got these times using alkaline batteries. Rechargeable batteries sucked back then.
All that extra complexity you ascribe to them is based solely on looking at the size of it and going "zomfg! Where do I start?"... which is probably why I got downmodded. Nobody understands that just because something is _big_ does not mean it is _complex_.
No, I think you got downmodded because you have a habit of throwing around technical terms like you understand what you're saying, but you don't.
Making something like GCC is not simple. The language specifications are written by humans, and have a whole lot of edge cases and undefined behaviors. So, you have to decide what to do in edge cases, how to take advantage of undefined behaviors to improve performance. And then, a few years later, the specifications change and you have the fun of deciding on a case-by-case basis how to both maintain backwards compatibility and support the new features. Not to mention all the interactions with other people on the project and in the standards committees.
A compiler is an upper-class undergraduate project. A competitive optimizing compiler with front-ends for C, C++, and several other languages and back-ends for a lot of different processors and operating systems is a very complicated job.
Am I the only person who watches what they are doing while plugging things in?
are you all plugging your phones in with your eyes closed?
Sometimes. It used to be easy, when my phone had a barrel plug. I don't like how much longer it takes to orient and use micro-USB. I also don't like how my modern smartphone with micro-USB needs to be plugged in every night, while my dumbphone could go several days without charging.
Also, not everybody has such sharp eyes and steady hands. Maybe you don't, either, after a night of drinking and carousing. Micro-USB is an accessibility disaster.
Apple started work on Newton in the 1980s, released it in 1993, and discontinued it in 1998.
But the idea for tablets has been around since computers gained user interfaces. The most famous is Alan Kay's Dynabook from 1972.
Pen-driven and portable computers come in waves. There was the GRiDPad generation in the 1980s (roughly ending with Windows for Pen Computing). There was the EPOC generation in the 1990s (from which we get the Microsoft product, WinCE). There was the TabletPC generation, promoted by Bill Gates but sabotaged by the Office division. Now we're in the iOS and Android era.
Oh, wait, isn't that kinda their job? The value of TOR lies in it's inability to be cracked, why is anyone surprised that the NSA tried to crack it?
Now, if the report was that the NSA had been able to successfully crack TOR that would be noteworthy...
Yeah, I don't know why people are so alarmed that the NSA is trying to crack Tor. Tor is not invulnerable, but that's exactly the sort of thing Tor was designed to protect against. If anything, it's encouraging that somebody who is, roughly speaking, on our side is trying to crack Tor.
... the wiki is outdated/inaccurate/contradictory (often on the same page)... I was exploring DDWRT at one point and that documentation said OpenWRT packages will work with DDWRT.... * First I had to figure out my router would only run with the bleeding edge daily builds. Then I was trying to setup using local storage on router's USB port(s) then I was trying to get tftp-hpa configured, then I was trying to make the local storage/tftp daemon start/stop with a button press.
Even if you could install OpenWRT packages in DD-WRT, I find OpenWRT to be more flexible because it leaves more storage space free. Seriously, I find no need for 3 hotspot daemons, 2 DynDNS clients and 6 different VPNs in my router.
But I'm strange. I started using Linux for routers back before WiFi routers were invented. I'm comfortable with downloading the source and using Kconfig to remove unnecessary features, such as the GUI and the web server, so I could have space for stuff that matters to me. (IPv6 and DNSSEC, ooh la la.) If you're stuck, then the source is the documentation. I'm sure it's possible to hack up whatever script you want to have running when you press the buttons.
I can not really think of any industry that simply resigns when it becomes difficult and just blame it on users not being smart enough. if car manufacturers could get away with that, imagine the roads...
I wish car manufacturers could do that! Tens of thousands of people in the US die because of cars every year. As I get older, I'm increasingly amazed that we consider high-speed operation of multi-ton machinery to be normal for people of all ages (above 16 years) and ability. Driverless cars can't come soon enough. Imagine the roads...
Fully patched and upgraded Vista is basically Win7.
It isn't terrible, but Vista SP2 still doesn't have the window snap feature from Windows 7. I like that feature a lot.
Install the original release version of Vista and see if that machine can run even a single year.
I don't understand. Do you mean keep using Vista, or keep running without rebooting?
On the first point, it's inadvisable, because Microsoft ended support for Vista without service packs back in 2012. Otherwise, people have put up with horrible computer systems for longer periods of time. Vista is no Windows ME.
On the second point, if my computer hasn't malfunctioned and forced a restart before, then it reboots every month for Patch Tuesday. It's a rare month when critical updates don't force a restart. This is the same for Windows XP, Windows Vista, Windows 7, and Windows 8.1. Otherwise, if you keep it isolated, on stable hardware with ECC, and interact with it very little, then I don't see why it couldn't run for a few years.
So far, I have not identified any benefits for me from using 7 compared to using XP.
Windows 7 is just a bunch of little improvements.
Anyway, those are the reasons I switched to Windows 7.
then why won't all XP software run on Windows 7, and why hasn't everyone seen the error of their ways, and upgraded their XP systems?
This is partly AMD's fault. They decided that 64-bit mode would not include Virtual 8086 mode.
My dad owns a number of companies which all went out and bought extra XP systems... they don't want to have to re-buy all their machines, and re-buy all their existing software, and rewrite from scratch all their Microsoft COM component based glue code the next time they hire a new person into the office... the incompatibility is killing adoption of anything later than Windows XP for almost every business I know that has 100 or less employees, which is 95% of all businesses in the U.S..
I don't personally know any small business that has such custom software. They just use Windows and Office, which can be replaced with GNU/Linux and LibreOffice. Or ChromeOS and Google Drive. But I'm more familiar with the 10-or-less business demographic.
I do know some labs that have Windows XP attached to expensive machinery. They definitely can't upgrade. But they really should not be on the Internet, anyway.
As far as I'm concerned, a hardware router...
There is no such thing. A device that moves data from one location to another, using some policies to examine and transform it, is not just a "hardware" device. It's also software. And if it interfaces with software, then it can be compromised. Or haven't you noticed the news about D-Link routers? A lot of these routers have 2MB or less of flash, which makes it difficult to find a useful exploit, but "difficult" doesn't mean "impossible."
It's pretty unlikely that anyone will come up with a useful attack on a device that's just doing port blocking, NAT, and basic routing. At worst, somebody might DOS it or turn it into a well-connected zombie to aid in DDOSing somebody's server, but neither of those is compromising your data.
With just a little paranoia, I can imagine someone finding a way to get those routers to copy your traffic, or at least the headers, to some hostile entity. It doesn't take full knowledge of your traffic to destroy your privacy.
A router is a type of computer. It's subject to all the same concerns about trustworthiness as any debate about proprietary and free software.
This seems like a huge omission. It's hard to think of a more influential computer game.
Apple Newton???
Mossberg's editorial point of view is of the average consumer, and I don't think most people care about computer games. I don't.
But choosing the Newton because of AI? Everybody has been working on that, and the Newton's approach was a dead end. The Newton had an even bigger impact that Mossberg omitted: It launched ARM into the low-energy device market, which it now dominates.
The Hour of Code was teaching the outdated, sequential type of programming
Sequential code may be inadequate for advanced programming, but it certainly isn't "outdated". As a professional programmer, 90% of my code is purely sequential. Even parallel code has sequential blocks, and parallel programming skills can only be built on a solid foundation of basic understanding of sequential processing. Arithmetic skills are not enough to do calculus, but that doesn't mean arithmetic is "outdated".
But arithmetic is outdated. Computers are just way better at arithmetic, and very few people do arithmetic manually in their jobs. Kids get entirely the wrong idea about math, spending all that time on brittle algorithms, and you get the wrong idea about sequential programming due to the abundance of undefined behaviors. The trouble is that we don't have a consistent way to teach something better.
Just like I had to partially unlearn the least-significant-digit-first arithmetic to learn everyday, useful arithmetic, I also had to unlearn BASIC's strictly sequential programming to learn modern, functional programming. Everybody who works with new ideas is familiar with how long they can take to become common. I, for one, am curious about what would happen if kids were taught category theory and explicit control of side effects from the beginning, instead of being introduced to it much later as a bizarre branch of higher math.
That computers emulate sequential operation with barriers, careful analysis of memory dependencies, and a single program counter (or is Intel up to 30 program counters now?) is just an implementation detail. The computer science doesn't depend on having an exact sequence, and some asynchronous computers or flow-based computers might not need the program counter. I'm not sure how to build it, but it feels like it should be possible. Multithreading sequential programs is turning out to be a bust. Except for embarrassingly parallel problems, very few people can reason about them effectively. We need people to discover and learn new ways of handling concurrency.
I think it was Crockford who said that the programmers who understand multi-threading should be captured and compelled to do systems programming, but I'm not sure.
Ah, I remembered right.
Races and deadlocks are just really difficult to reason about. There are very few people in the world who can reason about them effectively. My belief, and I mean this sincerely, is that they should all be enslaved and made to work on operating systems. And that nobody else should have to go near this stuff, because it's just way too complicated.
Crockford on JavaScript - Scene 6: Loopage
What bad habits? Logic of whatever type you want to implement is inherently sequential.
No, it is not. Logic is inherently reflexive and transitive. It's a major failing in math education, that people think it is about performing algorithms in sequence. Most people never learn the relations that allow you to rearrange the equations and create new algorithms.
In programming, the idea of sequential programming has problems. CPython guarantees that only one bytecode is executing at one time, and therefore they find it extremely difficult to remove the Global Interpreter Lock. C guarantees sequence only between sequence points, and makes liberal use of undefined behavior. Even Javascript, with its relatively simple model, has variable hoisting that catches beginners by surprise. Locking limits scalability, and shared-memory multi-threading is so difficult that it's believed that almost nobody knows how to do it properly. I think it was Crockford who said that the programmers who understand multi-threading should be captured and compelled to do systems programming, but I'm not sure.
Declarative and functional programming don't require execution in a particular sequence. The canonical example of this is Haskell, with its lazy evaluation, but logic programming is based on this idea, and even event-driven programming is like programming inside-out for a sequential programmer.
It's true that there's a lot of ridiculous hype and grandstanding about this, but either way, people are getting a chance to be introduced to programming in an interesting way, and possibly learning from it.
Now it's time for the angry hordes to come tell us why we're wrong and why this is horrible.
As you wish.
The Hour of Code was teaching the outdated, sequential type of programming that Dijkstra was complaining about back in 1975. It was already problematic back when most computers had a single processor, but it's completely inadequate in an increasingly parallel world. Any student who wishes to make sense of a concurrent program, or a monadic program, will have to unlearn bad habits and start again.
I know, I shouldn't respond to a troll, but I'm feeling generous today.
There you go again. Acting like you know what you're talking about, but you don't. ZFS and BTRFS have ...
Exactly dick to do with what I said. The filesystem doesn't matter. The operating system doesn't even matter.
Um, excuse me? The filesystem absolutely does matter. Traditionally, the filesystem assumes that any data retrieved from the drive has been put there, earlier. Obviously, drives don't do that 100% reliably. It's an important innovation, that these newer filesystems will add their own checksums to the data that they write, so they can detect and sometimes fix corrupted reads.
I'm talking about infrastructure and architecture, while you're blubbering on about the hardware.
Get your head out of the clouds. Everything does come down to hardware. In fact, given your other posts about hardware, I sometimes doubt that you actually interact with the hardware that you talk about.
Ideally, a RAID would be able to recreate the missing block, but I can't find any reference to a RAID doing that.
That's because you have no experience as a network administrator in a professional environment. Because then you'd know that's the very thing RAID was designed to do: Recover from hardware failure, which includes sectors becoming unreadable.
That's an aspect of software. Of course a RAID with sufficient parity will recover from a total drive failure. It's much harder to find reference to how a particular RAID will respond to intermittent errors. But if you're not just a blowhard, I'd like to see some of your links to documents describing how the RAIDs that you know will handle drive read errors. Not total failures. Just read errors.
Speaking of RAID, ZFS has its own concept of RAID that supports up to triple parity, with a different architecture than a normal storage system. Still, I haven't found any reference to how it handles drive read errors.
It surely doesn't help that modern computers have many gigabytes of memory, but almost none have ECC on that memory.
That's because ECC adds an extra layer of complexity to solve a problem that doesn't occur very often in computers, and when it does, the most severe consequence is usually that the computer crashes or behaves abnormally. For residential, and even most commercial uses, ECC memory just isn't needed. But for a select few use scenarios where data integrity is absolutely critical -- such as, say, nuclear power plants, air traffic control systems, certain types of hospital equipment, or financial processing systems, the added cost is justified because they need high availability/high reliability of those systems.
What a horrible attitude to data integrity. Computer crashes, I lose data. Computer behaves abnormally, worst case scenario is it calculates some important thing wrong, say the root of an important filesystem B-tree, and the filesystem needs to go through an expensive repair. My data are important to me. I use my computer for my personal financial processing, and I know I'm not alone. My old computer had an extra 128kB of memory to provide parity checks for the other 1MB. I imagine that stupid traditions of cost-cutting are why my new computer does not have 2GB of memory to provide ECC for the other 16GB.
Your consumer-grade computer's memory is a piece of shit. It's made with commodity capacitors and ICs that are stamped out in bulk for super cheap.
And your server memory isn't? Back up a moment... I thought OP was talking about being able to detect bitrot in family photos, and now you're telling him he should buy a server with memory lovingly crafted for high reliability? Which reliability i
The only way to truly prevent bitrot is by maintaining at least three complete copies of the data, and regularly compare between them.
There you go again. Acting like you know what you're talking about, but you don't.
ZFS and BTRFS have a much more efficient way to ensure correctness: CRC of everything written. That is what is checked when you do a zpool scrub or a btrfs scrub. Random errors are very unlikely to produce the same checksum, so then you only need a second copy that doesn't produce CRC errors.
Hard drives are nowhere near as reliable as their manufacturers claim. Modern drives don't store the bits that you feed them exactly as you give them. Instead, they use CRC and error correcting codes, so they only need most of the data to be correct. Usually, if the data doesn't match the CRC, and it cannot be corrected by ECC, then you get a read error instead of corrupted data. Which, I guess, is better than getting a corrupted picture. Ideally, a RAID would be able to recreate the missing block, but I can't find any reference to a RAID doing that.
But I've seen enough errors that I suspect something else is going on. It surely doesn't help that modern computers have many gigabytes of memory, but almost none have ECC on that memory. Your computer can be corrupting your data, and you have no warning that it's happening. In addition, hard drives lie. I'm not optimistic about the long-term storage of electronic data.
You can download DRM-free music that you can play anywhere from iTunes so how is it the FSF is so opposed to that?
You didn't read the FSF's reasoning, did you. They object to how the only way to download those DRM-free tracks is with that annoying proprietary bloat-ware, iTunes.
They didn't mention, but the DRM-free tracks from Apple are also patent-encumbered AAC and violate your privacy, by including your account details in the file.
This is subtly different. In my eyes, once the employee has been fired, they are really under no obligation to help their now ex-employer with much of anything. ...snip... The only difference here is that they didn't find out what he had done until after he was fired, which doesn't change the fact that he was committing a crime in the first place.
It was worse than that. He wasn't even actually fired, yet. He was being "reassigned," and he took that as a sign that he should put his contingency plan into effect. He took a bunch of stuff with him and fled to Nevada, and was caught when he came back for some more stuff. To this day, not all of it has been recovered.
Admins good! PHBs bad! But then he was forced to hand over the passwords and San Francisco did not revert to the stone age as their entire electronic infrastructure melted down around them, as he expected. So Terry was wrong, and now he's just an asshole with a god complex doing time.
To be fair, the PHBs of San Francisco were bad. Using the case to build up political capital for the District Attorney's office, publishing those contested passwords as evidence in the public record, laying off IT personnel left and right.
San Francisco did not melt down because Cisco stepped up and fixed things. It helped that the FiberWAN was OMG PUBLIC SAFETY so the City gave Cisco a blank check to do whatever they needed to get it back on track. Which was like $900,000 over a couple weeks.
It's interesting that this seems to be the prevailing opinion now. But when this all went down, Terry Childs was the Slashdot Poster Child. Why have opinions changed?
More of the relevant facts have been made public. It turns out that Childs wasn't the overzealous network administrator that he was made out to be, but he was a sociopathic, somewhat psychotic criminal who carved a mini-empire for himself out of wires and electricity. He was even denying appropriate requests for service, just because of his own personal hangups.
On the other hand, my opinion of the City and County of San Francisco has not been improved, either. The situation should not have been allowed to turn into full-on criminal prosecution. Even Jason Chilton, the famous Juror #4 who is also a network engineer, thought the criminal charges should have been dropped. Successive mayors have used the position to grant kickbacks to various friends, yet the IT department was being downsized and Childs was left with no job security and nobody overseeing his work. At the same time, District Attorney (now California Attorney General) Kamala Harris was facing accusations of being soft on murder, so she apparently took the Childs case as a gift from heaven to demonstrate her toughness on technology crime. When Childs did surrender the passwords, and she immediately put them into the public record as evidence, that was just amazing work. Amazing for the wrong reasons.
So, my opinion of Childs deteriorated, and my opinion of San Francisco did not improve.
There's all this doom and gloom, but where are the comments about what's going right? Nothing ever starts without problems.
When Twitter first became popular, the fail whale was a constant fixture.
When Microsoft took over Hotmail, it had major glitches. Microsoft's Azure cloud still has major service disruptions.
And who can remember the days when "Slashdotting" meant a site went down?
Of course, the major difference between those and Healthcare.gov is that ordinary people can freely choose not to join Twitter, but uninsured Americans face fines from the IRS if they don't get a health insurance plan by the start of next year.
Reagan? He started the downward spiral toward total dishonesty and lack of government.
Not Reagan. Government dishonesty goes back way further. Do you not remember 1973 Nobel Peace Prize winner Henry Kissinger? In 1975 he said, "The illegal we do immediately; the unconstitutional takes a little longer." And what about J. Edgar Hoover?
I think dishonesty and corruption are part of human nature, and go back to the beginning of humanity. The Constitution gave the United States a "more perfect union," but it cannot eliminate the inherent evil.
When did computer batteries ever last 8 days?
Back when computers were much thicker but had a fraction of the computing power of one of those old Nokias.
The Radio Shack TRS-80 was supposed to have 20 hours of battery life. The Epson HX-20 had 50 hours. And the Psion MC 400 had 60 hours.
That was working time. They all started from standby pretty much immediately, and they also had significant standby times. And they got these times using alkaline batteries. Rechargeable batteries sucked back then.
All that extra complexity you ascribe to them is based solely on looking at the size of it and going "zomfg! Where do I start?" ... which is probably why I got downmodded. Nobody understands that just because something is _big_ does not mean it is _complex_.
No, I think you got downmodded because you have a habit of throwing around technical terms like you understand what you're saying, but you don't.
Making something like GCC is not simple. The language specifications are written by humans, and have a whole lot of edge cases and undefined behaviors. So, you have to decide what to do in edge cases, how to take advantage of undefined behaviors to improve performance. And then, a few years later, the specifications change and you have the fun of deciding on a case-by-case basis how to both maintain backwards compatibility and support the new features. Not to mention all the interactions with other people on the project and in the standards committees.
A compiler is an upper-class undergraduate project. A competitive optimizing compiler with front-ends for C, C++, and several other languages and back-ends for a lot of different processors and operating systems is a very complicated job.
I have had cars run me out of the bike lane dozens of times because they wanted a turn lane.
That's actually the law. My brother failed a driving test in Daly City because he failed to merge into the bike lane when turning.
Am I the only person who watches what they are doing while plugging things in?
are you all plugging your phones in with your eyes closed?
Sometimes. It used to be easy, when my phone had a barrel plug. I don't like how much longer it takes to orient and use micro-USB. I also don't like how my modern smartphone with micro-USB needs to be plugged in every night, while my dumbphone could go several days without charging.
Also, not everybody has such sharp eyes and steady hands. Maybe you don't, either, after a night of drinking and carousing. Micro-USB is an accessibility disaster.
Apple started work on Newton in the 1980s, released it in 1993, and discontinued it in 1998.
But the idea for tablets has been around since computers gained user interfaces. The most famous is Alan Kay's Dynabook from 1972.
Pen-driven and portable computers come in waves. There was the GRiDPad generation in the 1980s (roughly ending with Windows for Pen Computing). There was the EPOC generation in the 1990s (from which we get the Microsoft product, WinCE). There was the TabletPC generation, promoted by Bill Gates but sabotaged by the Office division. Now we're in the iOS and Android era.
Oh, wait, isn't that kinda their job? The value of TOR lies in it's inability to be cracked, why is anyone surprised that the NSA tried to crack it?
Now, if the report was that the NSA had been able to successfully crack TOR that would be noteworthy...
Yeah, I don't know why people are so alarmed that the NSA is trying to crack Tor. Tor is not invulnerable, but that's exactly the sort of thing Tor was designed to protect against. If anything, it's encouraging that somebody who is, roughly speaking, on our side is trying to crack Tor.
... the wiki is outdated/inaccurate/contradictory (often on the same page) ... I was exploring DDWRT at one point and that documentation said OpenWRT packages will work with DDWRT. ... * First I had to figure out my router would only run with the bleeding edge daily builds. Then I was trying to setup using local storage on router's USB port(s) then I was trying to get tftp-hpa configured, then I was trying to make the local storage/tftp daemon start/stop with a button press.
Even if you could install OpenWRT packages in DD-WRT, I find OpenWRT to be more flexible because it leaves more storage space free. Seriously, I find no need for 3 hotspot daemons, 2 DynDNS clients and 6 different VPNs in my router.
But I'm strange. I started using Linux for routers back before WiFi routers were invented. I'm comfortable with downloading the source and using Kconfig to remove unnecessary features, such as the GUI and the web server, so I could have space for stuff that matters to me. (IPv6 and DNSSEC, ooh la la.) If you're stuck, then the source is the documentation. I'm sure it's possible to hack up whatever script you want to have running when you press the buttons.