Way back when, while attending the University of Illinois (major: Computing Engineering), I wanted to take a junior-level CS course as a freshman. (CS306, to be exact, taught by Gillies.) In order to take the course, I had to satisfy the prerequisites. So I took the exams for the FORTRAN and ASSEMBLER courses. My advisor encouraged me to blow through the two lower courses: "I don't want you getting bored." Both exams were a piece of cake because I had been programming in both languages, plus PL/I, for two years in high school. (Funny story: for the ASSEMBLER course, the final exam was prepared by the professor, and the teaching assistants took the test with the students, to help set the curve. I missed one question, the TAs missed the same question plus one additional question, so I ended up setting the curve. The other members of the class were not amused.)
I was accepted into the CS306 class, and ended up teaching the first two weeks, because I was the only person in the classroom -- the teaching assistants included -- who knew PL/I cold, and PL/I was the languages used for the machine simulator. I also helped debug the simulator. I also was a "group of one" (the standard was to have three-people teams for the term project) because the professor thought that anyone who was on my team would not benefit. So I ran solo. And freely consulted to the other teams, with the professor's blessing and strict limitations on the kind of help I could provide.
(Calculus proved to be my downfall. Long story. Even the Dean of Engineering became involved, but the damage had been done. After working for a corporation for two years, I used the corporate tuition reimbursement program and went to junior college -- and aced all four calculus courses, all the way through Differential Equations. I just needed the right preparation.)
I'm sorry, I have a real problem with the underlying assumptions your answer makes about the process. There should not be a high wall between groups. Developers should not install it, but that doesn't mean the developers are not there when QA or Configuration Managment or whoever installs it. As a long-time developer, I learned more from the struggling of other people with my software than all the scaffolding and test-bedding done in isolation. Back when I was doing embedded programming, I made it a point to spend time in System Test to see how my software was being used...and misused. Next to me were the Documentation people, watching out for mistakes or head-scratching -- between us, we would see the holes that needed to be plugged so that the downstream processes would go more smoothly. And I would go out into the field, to customer sites, from time to time, particularly if a customer was reporting problems. This was particularly true of first launches, because sometimes the devils aren't seen until the customer hits them.
This was true for newspaper composition systems, newpaper press controls, bank check processing systems, key-entry systems, even a technical support group application.
I relate this story about the fallacy of compartmentalization: the General Manager gathers all the employees one Friday. Everyone had just been paid, the weeklies and the monthies. GM: "I'm not happy with the 'us versus them' attitude that seems to permeate this company. It's affecting our ability to get product customers want into their hands, so we all can get paid. So, tell you what: everyone pull out their paychecks, and fold them so the signature at the bottom is visable. See? All are signed by the same person. That should tell you something: that we should be working for the same goals, so we all continue to get paid." The change in that company was dramatic: instead of silos, it was more like an open-plan office writ large, with people talking with one another. One side benefit: sales stopped selling what we didn't have, and PARTICIPATED in the creation of new products. That company went from one step from closing it doors to being a booming business. My stock went from $1 to $65 a share. In six months. And the company was in the mid-West, not Silicon Valley
The softball team started doing a lot better, too.
Got really large files in your corpus? Then consider an intermediate step where you hash a larger and different portion of the file. For something different, you could hash the last bytes of the file so you don't end up duplicating work. Say a megabyte. In my case, I didn't need the extra pass because of the data involved. My corpus was on magnetic tape, so I couldn't just compare files byte by byte, because I would have had to load them somewhere first to do the compare. So I had to identify the potential duplicates *first*.
Novell still could make some kinof comeback this way and sell the product for $10 I know millions of peopluld buy it instead of $125 Office student.
Are you sure? I've switched from Microsoft Word to LibreOffice (nee OpenOffice) and stopped looking back. And before you say "Linux nerd" I run the package on three platforms: Linux, Macintosh, and Windows. LibreOffice satisfies my needs to do techical documentation for a Fortune 5000 company, and does so without breaking the bank.
And, lest you forget, WordPerfect's "niche" was in law offices. Before GUIs. When you needed sensible keyboard shortcuts to keep your productivity up. Those days are long gone. Everyone has pretty much the same shortcuts, so there is no advantage of one word processor over another on that score.
Novell would need to something really, really interesting and useful to break through the reduced competition.
My girlfriend leaves her computers on most of the time. The only time she shuts them down is when there is a thunderstorm: in her neighborhood, the power lines are above-ground including pole mounted transformers, so are prone to lightning hits that can cause significant spikes. In my case, everything is completely underground, with pad-mounted transformers on the ground, so I don't need to worry so much about lightning.
I've told her the "fix" is to put a 100-foot extension cord on her computer. Acts like a distributed filter, it does. Takes the 6000-volt spikes ("sparking of the clearances") down to a 800-volt ring wave that most power supplies can take, especially those protected with a power strip containing MOVs.
I suggest you use Google to find the Cisco documentation on "password recovery". I do this all the time with a whole room-ful of Cisco equipment used by people learning enough about the gear to earn Cisco Certified Internetwork Expert certificates from the company. Any CCIE should know how to password-recover any Cisco device covered by their certification.
Now, if Mr. Childs was nasty enough to disable password recovery (there is a "service" command in routers, for example, to do this) then Mr. Childs was very, very nasty indeed, and deserves the punishment he gets.
No, I'd rather the $900,000 be billed to the person who approved the expense. Personally. This was a power play, pure and simple. Witness the original article: "If the power had failed, we would have lost the network." BULLSHIT. That's what flash memory in Cisco equipment is for. The network would have come back up, and worked perfectly, if Mr. Childs did the job that a CCIE is expected to do, if Mr. Childs had backup of all configuration information so that flash failures could be fixed quickly (assuming he wasn't in jail). The amount of misinformation that the City of San Francisco is spewing absolutely amazes me.
"Sips of knowledge intoxicates the mind, while deeper drinking sobers it again." This is so true of this situation from day one.
I'd be curious how may CCIE (Cisco Certified Internetwork Engineers) you know. Now, my company helps network engineers around the world win their certifications, so I've had to deal with a lot of both CCIEs and wanna-bes. Also, the CCIE community was very, Very, VERY interested in this whole affair, because -- of the ones I talked with -- they thought that Mr. Childs did the right thing by keeping the keys to the network close to the vest. You may be right, erroneus, that Mr. Childs acted out of selfish motivations. From the views expressed by others more knowledgable than myself, though, by keeping everything tight he avoid any untoward and destabalizing meddling.
Could he have done better? Sure he could. For example, if he properly backed up all configuration files from the routers and Etherswitches in a separate computer, he could have given the security auditor those configs and the other guy could have worked from those. You don't need direct access to the vast majority of the equipment to perform a security audit. Mr. Childs could also have provided logs, logs he should have been keeping anyway, for the auditor to examine. From that review, the auditor could then suggest improvements, and Mr. Childs could have made those improvements.
No, it wasn't because there was a "problem"...other than a problem with a control freak who valued personal power over what was good for the City of San Francisco. Unfortunately, that attitude is rampant with our alledged "public servents", which is why things escalated the way they did.
Put more bluntly, mistakes were made on both sides of the argument. Terry Childs has to pay not only for his mistakes, but the mistakes of others. Mistakes that were worse than those made by Mr. Childs. And more costly.
"All the people are so happy now, their heads are caving in. I'm glad they are a snowman with protective rubber skin" -- They Might Be Giants