If you read Design Patterns, the next book to read should be AnitPatterns: Refactoring Software, Architectures, and Projects in Crisis (ISBN: 0471197130). Design patterns shows you what to do, Anitpatterns shows you what *not* to do (and how to fix it if its already fscked up).
Sorry, apparently I left out a detail. All disks were part of a RAID 5 set (many different RAID sets). So we're protected against coffee pourance on hard disks, hard disk controllers, and (oh dear god please don't let this happen) on the mainframes.
Yes, it's rare - but very valuable. Where I used to work we had about 4TB of hard disk space. Every disk (there were many - all SCSI, around 10GB each) was double-tailed. This allowed each disk to be connected to two controllers, and then each controller was connected to two mainframes. It's a redundancy thing - you're protecting against disk failure, host failure, and controller failure. For all those screaming NFS - all that does is move the problem. What happens when the hard disk controller in the NFS server dies? This way (ideally) if say somebody spills coffee on a hard disk controller (talk about a PITA), the disks are automatically switched over to the other controller. No down time.
Waitaminute... I'm not that old... What the hell?!? NOOO!!!! I'm DOOMED!! My life as a coder is over! Everyone knows that people in their mid-to-late 20's can't code!!!
... that put hair on your chest. I did the same thing once - 27hrs in front of a Sun box, working on a damn OS project. Breaks for food and restroom only. That experience w/ pthreads scarred me for life. hehe - now I'm TA'ing pthreads, go figure. The one thing to take away from that experience is to NEVER do it again.;) Other than that, congrats.
I know, it's silly. But I've had potatoes grow to a huge size in my cupboards... They're really a perfect plant - you don't need to water or feed them, and you can eat them too!
Just a thought, but isn't LDAP designed for information kinda like this? Not the actual config information, but pointers to the correct config file? You could put the config files themselves into an SCM system, and then when a box needs to find out what config file it should be using it queries the ldap server for what file it should hit. Offers atomic updates, scalability. hmm... might try that here.
It's on Long Island. Of course they're going to discover new forms of matter. Hell, I discover new forms of matter just walking down the streets of NYC.
If you go here, it's plain to see that this isn't a simple problem. Hell, I used to live in a rural suburb of Grand Rapids, and it's ridiculous hard to get decent dial-up service there.
Judging by the tele-comm infrastructure maps (off the link above), it looks like the best thing to do would be to tap off that fat pipe from Chicago to Houghton, and get a pipe running east-west accross the U.P.
Of course, I guess it depends on whether you're trying to bring service to every Tom, Dick, and Harry who lives up there, or if you're just trying to connect major cities and leave the plebes to the cable/telcos.
BTW, it'd be really tough for wireless to work up there; Not only is there still alot of Fe in the ground, but the U.P. isn't exactly flat. You'd have really short line of sight, unless you went satellite.
Quieter: Not quieter, but they run w/o cpu fans (at least, the older ones did (g4-400)).
Memory!!! OS X really needs alot (1GB in my machine)
Tough to say - if you like having the machine under warranty, then spend the extra $ to get everything from apple. Getting the machine repaired can be expensive.
SMP - Yes, OS X plays nice w/ SMP. It's worth it.
In my experience, no. IDE's pretty quick nowadays, and entirely sufficient for home use.
I whole-heartedly agree with you on this one. Although difficult, it is possible to remap keys under OS X. The keyboard files are in/System/Library/Keyboards. By the way, all apple computers come w/ 3 free sub-major version OS upgrades, and all minor version upgrades are free via Software Update.
I'm surprised that no one has mentioned lex and yacc. Guys, perl != generic parser. If you're looking to delve into the science of scanners and parsers, from tokenizing to LR1 grammars, look at lex and yacc. Their java equivalents, JLex and CUP, are just as good for that language (and a whole lot easier to use, I might add). OReilly has a small book on using them, and it would probably be a good introduction to the science of parsing - not to mention the foundation of compilers.
When I first read your reply, I had to admit that I almost changed my mind. Then I realized one important fact:
It currently is illegal, vis a vis current copyright law, to copy and publicly display this material. How we want the law to be (or don't want) doesn't matter - That's how it is in the U.S. Period.
Now, I fully agree with your analysis of the different ways that a TV network could change s.t. it no longer relies strictly upon advertising. I wish it would happen. It'll probably take a renegade network to do it though. (btw, PBS does the fund raising thing. It works, after a fashion - with the addition of gov't funding.
Having no expectation of privacy doesn't matter, btw. That only applies to trade secrets. Copyright law does not protect secret information.
Fine. But either way, in order for any progress to be made on this whole fair-use/copyright nonsense, somebody is going to have to come up with evidence showing that fair-use, as *we* mean it, is in the best interests of those corporations that own the copyrights.
... but as much as this pisses me off (the invasion of privacy part), isn't this exactly what the industry needs?
Seriously, once stats like this are collected, either they'll realize that this isn't a threat (and then really start pushing digital tv, stop suing companies like sonicblue etc..), or we'll be right back to where we are right now.
I understand the slippery-slope argument and all, but how the hell are you going to convince tv networks that piracy isn't happening unless you do something like this?
And if piracy *is* happening, wake the fuck up. It's illegal. You knew the free ride wouldn't last forever. Being able to freely copy anything you want isn't a constitutional right, even under the guise of fair use (which, by the way, isn't even established by the constitution).
The military - including agencies like DARPA, ONNR, etc - don't just choose products based on cost. This is a common misconception. One of the reasons gov't funded projects are so expensive is that they *TRY* to push the envelope. Think about it - Do you want your military to use the same quality components as your enemy? Or do you want them to use bleeding-edge (but very carefully verified) technology?
Don't believe me? We saw the same thing when NASA chose to fund Boeing's overbudget, delayed, and far-fetched next-gen reusable spacecraft, rather than selecting the already built and working prototype model by McDD. NASAs justification? The Boeing craft required alot of new technology to be developed.
The same thing is true in university research, btw.
You're misunderstanding p2p systems. There is no higher level TLD - Every time a name resolution is performed a key is generated. This key, though related to the name (could be the md5 of the name), will be significant only to the overlay network, and it fact will be used to properly route the request to the correct host. (yes, this means that a name-ip mapping could exist anywhere in the network.) For example, if foo.quest md5'ed to 123, then this request would get routed to host 123 within the overlay network. It's not the same as peering, and this is a significantly different structure than current dns. Again - The whole point is to eliminate administrative control of the root domains.
And you're suggesting that a completely decentralized solution can't do the same? I grant you that a centralized DNS is easier to manage at the top levels -- But that's exactly what got us into the ICANN mess in the first place. Also, I didn't say that the system couldn't be controlled - it's just different control. If the edges now handle registration, it's up to the edges to administer their own names. Maybe an illustration is in order: So you register your domain "foobar.doodad" with your local ISP. They run a box that's part of an overlay network containing all the other dns boxen. Whenever a request for "foobar.doodad" comes along it gets routed to your local ISP (yes, there are key-based overlay networks. freenet is one of them, and there are many others). The dns info is backfilled on each node belonging to the ON on the way back to the requester. And the backfilled information contains your ttl, etc. In essence, it works the same as normal dns -- But without root servers. As for removal, that's now handled by your local isp.
Again, this uses the same logic as current DNS. Why do you need to control registration? (Sounds like a silly question, I know, but think about it.) Use a FreeNet-type system, where often requested names get cached close to end nodes, to handle the load distribution. Build atomic name registration into the system, and have the people that actually own the boxes implement a standard registration policy - Govern name registration at the edges rather than the middle (Provided there's a standard registration agreement that prevents cyber-squatting and what not, use the court system for name conflicts (more fair than arbitration currently)).
No. ICANN is asking for an organization to take over the registration process for the.org domain - This probably won't affect owners of.org domains at all. The 35K is for the opportunity to bid on taking over.org registration. It's about as stupid an idea as making name owners pay 35k for their names, but you don't need to be worried.
I'm just curious here, what with all the recent ICANN controversy, is there a design limitation inherent in DNS that's preventing a better system?
It seems to me as though requiring root servers is just asking for a single body to come along and hijack the whole registration process - which is exactly what's happening.
Although DNS is a distributed model, it certainly isn't p2p - So would a p2p dns system remove the need for ICANN?
Katz, if you're really interested in reaching the widest possible audience, you might want to consider switching publishers.
The Baen Free Library has a wide selection of books you download off the net for free -- But before you ask, "well, how do I get paid?", you may want to look at the statistics they've posted for free downloads encouraging sales. I know I'd be alot more comfortable purchasing a book about a year w/ dogs if I could read part of it first.
What if a software company were to change its license such that it WOULD assume liability? Granted, it would probably need insurance of some kind, but how much more comfortable would a purchaser of this hypothetical company's software be if had somebody to sue?
Let the free market speak - Once a company is confident enough in its product to offer a warranty, the rest will follow.
If you read Design Patterns, the next book to read should be AnitPatterns: Refactoring Software, Architectures, and Projects in Crisis (ISBN: 0471197130). Design patterns shows you what to do, Anitpatterns shows you what *not* to do (and how to fix it if its already fscked up).
Sorry, apparently I left out a detail. All disks were part of a RAID 5 set (many different RAID sets). So we're protected against coffee pourance on hard disks, hard disk controllers, and (oh dear god please don't let this happen) on the mainframes.
Yes, it's rare - but very valuable. Where I used to work we had about 4TB of hard disk space. Every disk (there were many - all SCSI, around 10GB each) was double-tailed. This allowed each disk to be connected to two controllers, and then each controller was connected to two mainframes. It's a redundancy thing - you're protecting against disk failure, host failure, and controller failure. For all those screaming NFS - all that does is move the problem. What happens when the hard disk controller in the NFS server dies? This way (ideally) if say somebody spills coffee on a hard disk controller (talk about a PITA), the disks are automatically switched over to the other controller. No down time.
Yeah. Grey ones.
/me checks...
Waitaminute... I'm not that old... What the hell?!? NOOO!!!! I'm DOOMED!! My life as a coder is over! Everyone knows that people in their mid-to-late 20's can't code!!!
... that put hair on your chest. I did the same thing once - 27hrs in front of a Sun box, working on a damn OS project. Breaks for food and restroom only. That experience w/ pthreads scarred me for life. hehe - now I'm TA'ing pthreads, go figure. The one thing to take away from that experience is to NEVER do it again. ;) Other than that, congrats.
I know, it's silly. But I've had potatoes grow to a huge size in my cupboards... They're really a perfect plant - you don't need to water or feed them, and you can eat them too!
Just checked Dell's website. If you're a business (even a small one-person business), you can already buy a Dell w/ Redhat 7.3 preinstalled.
Just a thought, but isn't LDAP designed for information kinda like this? Not the actual config information, but pointers to the correct config file? You could put the config files themselves into an SCM system, and then when a box needs to find out what config file it should be using it queries the ldap server for what file it should hit. Offers atomic updates, scalability. hmm... might try that here.
It's on Long Island. Of course they're going to discover new forms of matter. Hell, I discover new forms of matter just walking down the streets of NYC.
If you go here, it's plain to see that this isn't a simple problem. Hell, I used to live in a rural suburb of Grand Rapids, and it's ridiculous hard to get decent dial-up service there.
Judging by the tele-comm infrastructure maps (off the link above), it looks like the best thing to do would be to tap off that fat pipe from Chicago to Houghton, and get a pipe running east-west accross the U.P.
Of course, I guess it depends on whether you're trying to bring service to every Tom, Dick, and Harry who lives up there, or if you're just trying to connect major cities and leave the plebes to the cable/telcos.
BTW, it'd be really tough for wireless to work up there; Not only is there still alot of Fe in the ground, but the U.P. isn't exactly flat. You'd have really short line of sight, unless you went satellite.
Nice, but you forgot the modem [sic].
Quieter: Not quieter, but they run w/o cpu fans (at least, the older ones did (g4-400)).
Memory!!! OS X really needs alot (1GB in my machine)
Tough to say - if you like having the machine under warranty, then spend the extra $ to get everything from apple. Getting the machine repaired can be expensive.
SMP - Yes, OS X plays nice w/ SMP. It's worth it.
In my experience, no. IDE's pretty quick nowadays, and entirely sufficient for home use.
I whole-heartedly agree with you on this one. Although difficult, it is possible to remap keys under OS X. The keyboard files are in /System/Library/Keyboards. By the way, all apple computers come w/ 3 free sub-major version OS upgrades, and all minor version upgrades are free via Software Update.
I'm surprised that no one has mentioned lex and yacc. Guys, perl != generic parser. If you're looking to delve into the science of scanners and parsers, from tokenizing to LR1 grammars, look at lex and yacc. Their java equivalents, JLex and CUP, are just as good for that language (and a whole lot easier to use, I might add). OReilly has a small book on using them, and it would probably be a good introduction to the science of parsing - not to mention the foundation of compilers.
When I first read your reply, I had to admit that I almost changed my mind. Then I realized one important fact:
It currently is illegal, vis a vis current copyright law, to copy and publicly display this material. How we want the law to be (or don't want) doesn't matter - That's how it is in the U.S. Period.
Now, I fully agree with your analysis of the different ways that a TV network could change s.t. it no longer relies strictly upon advertising. I wish it would happen. It'll probably take a renegade network to do it though. (btw, PBS does the fund raising thing. It works, after a fashion - with the addition of gov't funding.
Having no expectation of privacy doesn't matter, btw. That only applies to trade secrets. Copyright law does not protect secret information.
Fine. But either way, in order for any progress to be made on this whole fair-use/copyright nonsense, somebody is going to have to come up with evidence showing that fair-use, as *we* mean it, is in the best interests of those corporations that own the copyrights.
... but as much as this pisses me off (the invasion of privacy part), isn't this exactly what the industry needs?
Seriously, once stats like this are collected, either they'll realize that this isn't a threat (and then really start pushing digital tv, stop suing companies like sonicblue etc..), or we'll be right back to where we are right now.
I understand the slippery-slope argument and all, but how the hell are you going to convince tv networks that piracy isn't happening unless you do something like this?
And if piracy *is* happening, wake the fuck up. It's illegal. You knew the free ride wouldn't last forever. Being able to freely copy anything you want isn't a constitutional right, even under the guise of fair use (which, by the way, isn't even established by the constitution).
The military - including agencies like DARPA, ONNR, etc - don't just choose products based on cost. This is a common misconception. One of the reasons gov't funded projects are so expensive is that they *TRY* to push the envelope. Think about it - Do you want your military to use the same quality components as your enemy? Or do you want them to use bleeding-edge (but very carefully verified) technology?
Don't believe me? We saw the same thing when NASA chose to fund Boeing's overbudget, delayed, and far-fetched next-gen reusable spacecraft, rather than selecting the already built and working prototype model by McDD. NASAs justification? The Boeing craft required alot of new technology to be developed.
The same thing is true in university research, btw.
You're misunderstanding p2p systems. There is no higher level TLD - Every time a name resolution is performed a key is generated. This key, though related to the name (could be the md5 of the name), will be significant only to the overlay network, and it fact will be used to properly route the request to the correct host. (yes, this means that a name-ip mapping could exist anywhere in the network.) For example, if foo.quest md5'ed to 123, then this request would get routed to host 123 within the overlay network. It's not the same as peering, and this is a significantly different structure than current dns. Again - The whole point is to eliminate administrative control of the root domains.
And you're suggesting that a completely decentralized solution can't do the same? I grant you that a centralized DNS is easier to manage at the top levels -- But that's exactly what got us into the ICANN mess in the first place. Also, I didn't say that the system couldn't be controlled - it's just different control. If the edges now handle registration, it's up to the edges to administer their own names. Maybe an illustration is in order: So you register your domain "foobar.doodad" with your local ISP. They run a box that's part of an overlay network containing all the other dns boxen. Whenever a request for "foobar.doodad" comes along it gets routed to your local ISP (yes, there are key-based overlay networks. freenet is one of them, and there are many others). The dns info is backfilled on each node belonging to the ON on the way back to the requester. And the backfilled information contains your ttl, etc. In essence, it works the same as normal dns -- But without root servers. As for removal, that's now handled by your local isp.
Again, this uses the same logic as current DNS. Why do you need to control registration? (Sounds like a silly question, I know, but think about it.) Use a FreeNet-type system, where often requested names get cached close to end nodes, to handle the load distribution. Build atomic name registration into the system, and have the people that actually own the boxes implement a standard registration policy - Govern name registration at the edges rather than the middle (Provided there's a standard registration agreement that prevents cyber-squatting and what not, use the court system for name conflicts (more fair than arbitration currently)).
No. ICANN is asking for an organization to take over the registration process for the .org domain - This probably won't affect owners of .org domains at all. The 35K is for the opportunity to bid on taking over .org registration. It's about as stupid an idea as making name owners pay 35k for their names, but you don't need to be worried.
I'm just curious here, what with all the recent ICANN controversy, is there a design limitation inherent in DNS that's preventing a better system?
It seems to me as though requiring root servers is just asking for a single body to come along and hijack the whole registration process - which is exactly what's happening.
Although DNS is a distributed model, it certainly isn't p2p - So would a p2p dns system remove the need for ICANN?
Katz, if you're really interested in reaching the widest possible audience, you might want to consider switching publishers.
The Baen Free Library has a wide selection of books you download off the net for free -- But before you ask, "well, how do I get paid?", you may want to look at the statistics they've posted for free downloads encouraging sales. I know I'd be alot more comfortable purchasing a book about a year w/ dogs if I could read part of it first.
Just my two drachma.
What if a software company were to change its license such that it WOULD assume liability? Granted, it would probably need insurance of some kind, but how much more comfortable would a purchaser of this hypothetical company's software be if had somebody to sue?
Let the free market speak - Once a company is confident enough in its product to offer a warranty, the rest will follow.