Domain: acm.org
Stories and comments across the archive that link to acm.org.
Comments · 1,502
-
A bit dated...
Richard Gabriel gave this speech at theOOPSLA 2000 Conference (Object Oriented Progamming, Systems, Languages & Applications). There are some other interesting keynote presentations there including a piece on Adaptive Software Engineering (PDF Alert!!).
You can download a .pdf of the essay, or if you can't view pdf's, check out the cover. -
A bit dated...
Richard Gabriel gave this speech at theOOPSLA 2000 Conference (Object Oriented Progamming, Systems, Languages & Applications). There are some other interesting keynote presentations there including a piece on Adaptive Software Engineering (PDF Alert!!).
You can download a .pdf of the essay, or if you can't view pdf's, check out the cover. -
Re:Oh well...
Not only that, but the Association for Computing Machinery is getting behind Dr. Felten as well. Methinks that the RIAA has blundered badly this time...
-- Shamus
O Brave New World, with such People in it! -
ACM Declaration
This is a bit off topic... The ACM has filed a declaration in Federal Court in support of the Felten case. As someone else said in response to another article along the same lines, their position on the DMCA makes me proud to be a member.
-
Re:Mistakes or Typos?
Wasn't it Dijksta who originally flamed gotos? http://www.acm.org/classics/oct95/
-
Re:Check out the ACM
And if not the entire ACM Portal, at least look at the ACM's digital library.
It provides the ability to search on a variety of fields (title, author, keywords, full text, etc) and to download in PDF if available.
Searching is free, but you need a subscription or pay-per-use to get the full text. With membership, you also get access to a useful "My Bookshelf" tool where you can save and organize search results and individual papers.
My only complaint is that for some older articles, the PDF seems to be generated from an image scan of the text, rather than the text itself, resulting in huge files for only a few pages. -
Re:Awesome!
> Actually, most of the games I know are enthusiastic about Linux. Whether they have the skills to administer a Linux system is another story, of course.
How about this little administration tool? -
Check out the ACM
The ACM (Association for Computing Machinery is rolling out The ACM Portal to Computing Literature. It looks to me that your timing is perfect, as they say on the ACM home page:
Visit the NEW ACM Portal - (and try the Online Guide to Computing Literature for FREE through 9/30/01)!
I learned of this from reading the article "ACM Opens Portal to Computing Literature" which appeared in the (dead tree) July 2001 Issue of "Communications of the ACM" Vol. 44, No. 7.Here is part of a salient paragraph:
While it is currently out-of-scope for the Portal to capture the references in works put out by other publishers, it is intended to create a comprehensive bibliographic database by capturing all the references in ACM articles that cite works from other publishers and for which there is no matching bibliographic entry in the database.
I would suggest you contact the ACM and see if they have any suggestions on what you are attempting. I would expect they have already explored a number of alternatives, one of which might be just what you are looking for.If you should decide to create your own system, please consider making it open-source so that others may benefit as well.
-
Check out the ACM
The ACM (Association for Computing Machinery is rolling out The ACM Portal to Computing Literature. It looks to me that your timing is perfect, as they say on the ACM home page:
Visit the NEW ACM Portal - (and try the Online Guide to Computing Literature for FREE through 9/30/01)!
I learned of this from reading the article "ACM Opens Portal to Computing Literature" which appeared in the (dead tree) July 2001 Issue of "Communications of the ACM" Vol. 44, No. 7.Here is part of a salient paragraph:
While it is currently out-of-scope for the Portal to capture the references in works put out by other publishers, it is intended to create a comprehensive bibliographic database by capturing all the references in ACM articles that cite works from other publishers and for which there is no matching bibliographic entry in the database.
I would suggest you contact the ACM and see if they have any suggestions on what you are attempting. I would expect they have already explored a number of alternatives, one of which might be just what you are looking for.If you should decide to create your own system, please consider making it open-source so that others may benefit as well.
-
ACM letter to Dianne FeinsteinAs mentioned in Wired, Sen. Feinstein (D-CA) is a big supporter of DMCA along just about everyone in DC other than Rep. Rick Boucher (D-VA). Apparently, she stated that there was "no credible opposition" to the law. I was very pleased to see that Barbara Simons and Gene Spafford of the ACM Public Policy Office have done their best to disabuse her of this view (for whatever good it will do).
See http://www.acm.org/usacm/IP/dmca-feinstein-letter
. htmlThey of course wrote an earlier letter to AAP specifically regarding Sklyarov's arrest and AAP's statement in favor of it.
--Paul
-
ACM letter to Dianne FeinsteinAs mentioned in Wired, Sen. Feinstein (D-CA) is a big supporter of DMCA along just about everyone in DC other than Rep. Rick Boucher (D-VA). Apparently, she stated that there was "no credible opposition" to the law. I was very pleased to see that Barbara Simons and Gene Spafford of the ACM Public Policy Office have done their best to disabuse her of this view (for whatever good it will do).
See http://www.acm.org/usacm/IP/dmca-feinstein-letter
. htmlThey of course wrote an earlier letter to AAP specifically regarding Sklyarov's arrest and AAP's statement in favor of it.
--Paul
-
Re:Why is thisThere was a good essay about this in the May issue of Communications of the ACM: http://www.acm.org/pubs/articles/journals/cacm/20
0 1-44-5/p25-apt/p25-apt.pdf Ironically, you must be a member to view it, but kudos to the CACM for publishing it.Among the interesting bits was this:
Instead of inventing some economic models, it is much better to rely on public information provided by those who run successful FSP journals. In [4] Minton and Wellman provide a detailed analysis of the economic matters involved in the production of JAIR based on their five years of experience. They find that "the only significant cost involved in pro-ducing the journal is the cost of the review and editing process. Thus, the universities and research labs that employ JAIR's editors effectively subsidize the journal by supporting this work." In turn, Louis, Schneider, and Rehmann [3] published an account of the costs of running Documenta Mathe-matica based on their four years of experience. In their detailed analysis they reach a revealing amount of $210 per year ("including hidden costs"). So, not surprisingly, Rehmann wrote to me: "Our journal was never sponsored by anybody. Needless to say, the journal is hosted on my PC, which I have anyway."
Also, for those who haven't seen it, take a look at ResearchIndex (CiteSeer), should definitely visit it. See http://citeseer.nj.nec.com/cs It's really wonderful to be able to see the citations in context--for a good example, see http://citeseer.nj.nec.com/abiteboul97lorel.html-3. Louis, A.K., Schneider, P. and Rehmann, U. Documenta Mathementa (Aug. 31, 1999); www.mathematik.uni-bielefeld.de/~rehmann/bericht-
e ng. html.4. Minton S. and Wellman, M.P. JAIR at five. AI Magazine, 20, 3 (Sum-mer 1999); www.isi.edu/sims/minton/papers/jairfive.pdf.
- and browse the documents that are available on the web. Right now it's just computer science, but hopefully all research papers will eventually be on the web. -
Exactly correct!
And if I may expand on this a bit...
The content is going to stay free due to basic free-market effects. The barriers to entry are so low as to be non-existant. Therefore any idiot can start producing content. You can even produce pretty good content for next to nothing (like
/.). In a market where anybody can enter, competition will drive the price down to the minimum amount that will allow the manufacturers to stay open. And since there are nearly no fixed costs, that cost is the marginal cost, which as stated before, is darn near zero.A meatspace example is farming. The barriers to entry to farming are pretty low. Anyone can get a loan to buy a couple hundred acres, get a load for seed/equipment/chemicals, and pay someone else to actually do the work for a low hourly wage. As a result, the cost of food has approached the cost of producing it. That is because as soon as the price of food rises much above the cost of production, somebody else will enter the market and supply more.
The only reason that more products aren't that cheap is barriers to entry. Take, for example, CPU's. It takes a lot of money to develop a CPU, and it is very risky. The barriers to entry are quite high. There are, then, only a handful of major CPU makers (Intel, IBM (S390), AMD, Sun (UltraSpark), Compaq (Alpha)). Since there are only a few firms competing, they act like an oligopily (read: sorta-monopoly), and can charge a higher price. On the other hand, RAM is dirt cheap (as far as chips go), mainly because it is so easy to design and fab RAM, leading to low(er) barriers to entry. Can you even count the number of RAM-chip producers? I thought not.
Now, that doesn't mean that you can't charge for information. Copyright allows an easy way to manufacture a barrier to entry (legally too). For example, take a look at how much the ACM's Digital Library cost (for the lazy, $38 for students, $185 otherwise, must already be a ACM member too). I pay that (and get my money's worth), because there is no other way to get that particular (and very high quality) content. The material is copyrighted, and ACM is (usually) the copyright holder (sometimes ACM doesn't have the copyright, but is one of few holders of distribution rights).
So, yes, that's exactly it. It's cheap because there is a "strong incentive" (market forces) to provide it for cheap.
-
IT ethics have a long way to go
"Why would one have any more paranoia about The Taj having information," he said, "than if Sears or AT&T had that information?"
I'd rather that none of the above had that information. If it only gets used for what they say they're using it for, it's probably okay. The problem is that information doesn't go away - much of what's been collected about people within the last few years is likely to be around for a lifetime.
Lots can happen within a lifetime. (Compare today's world with something pre-WW2, for example.) Assuming various privacy laws and data correlation restrictions (or what's left of them) don't lighten up in the future, and that's very unlikely, there's still the danger of information leaks.
For example, what would happen if someone were to steal MGM Mirage's database and post it on the net? Immediately millions of people's names and addresses would be available next to their estimated personal income, and potentially "interesting" information such as when they're likely to go on holiday.
The thing that most consumers don't realise is that when you're letting a company collect information about you, you're not just trusting the company. You're also trusting every one of their employees, and probably employees of related companies that you have no control or knowledge about.
In this case you're trusting their data security setup - not to mention the software engineers who wrote the software they're using. You're trusting every one of thousands or more casino workers who have direct access to some very personal information, and you're trusting the person who hired them not to make one mistake with that many chances.
I'm not sure if there's an obvious way to stop this, because people will always be collecting data about other people and in the computer age it's going to get easier and easier to store, mine and correlate to make new information. I'd at least like to see the following:
-
Important computer organisations (eg. ACM) really pressing their codes of ethics' seriously. There must be lots of people in ACM at the moment, for example, who have pirated software and don't have a second thought about it. I know lots of society doesn't take it seriously, but if the ACM isn't going to take it seriously then I don't think section 1.5 should be in the code of ethics.
General ethical standards in computer employees really suck at the moment. Information management ethics needs to be a more serious part of the education system. There are lots of IT workers who have essentially sold out to their management. There are some lines that I simply won't cross without resigning to find a better job, and when we're approaching them I let my boss know what I will and won't do. Doctors have professional codes of ethics - they don't go selling inforamtion about their patients - and IT professionals should, too.
-
Standard and well recognised privacy policies in place for organisations to use. They would include things such as properly destroying collected personal data after a certain timeframe (very important) or when the company ceases to exist, not correlating it or using it for unspecified purposes, and so on.
If marketed properly so that ordinary consumers understand it, organisations could stamp an approval label on their service, and people could decide based on that whether they want to trust the organisation or not.
=== -
-
IT ethics have a long way to go
"Why would one have any more paranoia about The Taj having information," he said, "than if Sears or AT&T had that information?"
I'd rather that none of the above had that information. If it only gets used for what they say they're using it for, it's probably okay. The problem is that information doesn't go away - much of what's been collected about people within the last few years is likely to be around for a lifetime.
Lots can happen within a lifetime. (Compare today's world with something pre-WW2, for example.) Assuming various privacy laws and data correlation restrictions (or what's left of them) don't lighten up in the future, and that's very unlikely, there's still the danger of information leaks.
For example, what would happen if someone were to steal MGM Mirage's database and post it on the net? Immediately millions of people's names and addresses would be available next to their estimated personal income, and potentially "interesting" information such as when they're likely to go on holiday.
The thing that most consumers don't realise is that when you're letting a company collect information about you, you're not just trusting the company. You're also trusting every one of their employees, and probably employees of related companies that you have no control or knowledge about.
In this case you're trusting their data security setup - not to mention the software engineers who wrote the software they're using. You're trusting every one of thousands or more casino workers who have direct access to some very personal information, and you're trusting the person who hired them not to make one mistake with that many chances.
I'm not sure if there's an obvious way to stop this, because people will always be collecting data about other people and in the computer age it's going to get easier and easier to store, mine and correlate to make new information. I'd at least like to see the following:
-
Important computer organisations (eg. ACM) really pressing their codes of ethics' seriously. There must be lots of people in ACM at the moment, for example, who have pirated software and don't have a second thought about it. I know lots of society doesn't take it seriously, but if the ACM isn't going to take it seriously then I don't think section 1.5 should be in the code of ethics.
General ethical standards in computer employees really suck at the moment. Information management ethics needs to be a more serious part of the education system. There are lots of IT workers who have essentially sold out to their management. There are some lines that I simply won't cross without resigning to find a better job, and when we're approaching them I let my boss know what I will and won't do. Doctors have professional codes of ethics - they don't go selling inforamtion about their patients - and IT professionals should, too.
-
Standard and well recognised privacy policies in place for organisations to use. They would include things such as properly destroying collected personal data after a certain timeframe (very important) or when the company ceases to exist, not correlating it or using it for unspecified purposes, and so on.
If marketed properly so that ordinary consumers understand it, organisations could stamp an approval label on their service, and people could decide based on that whether they want to trust the organisation or not.
=== -
-
small inaccuracy in articleFrom the article:
Quake was the first network / on-line code that let you join in the middle of a game, players could come and go and the games would never end.
This is not the case -- back in my school days I remember playing Xpilot over the net at all hours of the day. You could join in anytime you wanted, send messages to teammates, customize the look of your ship, etc. There was even a worldwide ranking system. Xpilot has been around 10 years old now, and introduced (or at least expanded on) some pretty cool innovations.
Check out the story of Xpilot at http://www.acm.org/crossroads/xrds3-2/xpilot.html
. -
Re:soA specific and interesting example, from a talk Dennis Richie
I am sure that I only one of dozens of people to post this, but it was Ken Thompson.
-
Re:Backdoors?More importantly, you also misspelled "Ken Thompson" as "Dennis Ritchie."
:-) Better to misattribute than to fail to attribute at all, though."Reflections on Trusting Trust", Ken Thompsom, Communication of the ACM, Vol. 27, No. 8, August 1984, pp. 761-763
-
Re:WAP isn't THAT bad
This year's feb. edition of Communications of the ACM has an article covering WAP' security problems.
I don't have it with me now (so this post is somewhat useless) but the general idea was that several security issues weren't consideres during the design stage, and "fixing" those
issues would mean a great deal of redesign for the protocol.
Besides this security problem, i think WAP was doomed from the start, if you consider the fact that most
providers are including or going to include a TCP/IP stack on their units (and mobility issues can be solved using Mobile-IP as transport). -
Re:my opinion
You are thinking of Reflections on Trusting Trust, and it wasn't a compromise of gcc, it was just a "what if" situation that Ken Thompson talked about once.
-
Re:SQL crippling?
SQL is crippling because it doesn't implements the full relational model, as you can read in DBDebunk.
--
Leandro Guimarães Faria Corsetti Dutra
DBA, SysAdmin -
Re:Closed Source?
No. Even if you have source code, and recompile the source, then you do not know what the object code being run will be. See Reflections on Trusting Trust, Ken Thompson, Communication of the ACM, Vol. 27, No. 8, August 1984, pp. 761-763.
-
The Feds like P2P...
I could talk about all the research that's been done on P2P systems in both the OS and the DB worlds. But this item about P2P in the Federal Government, which just came across ACM TechNews, seems to say everything anybody might want to communicate to the court:
-
Re:Does illustrate the advantage of Open Source
Recompile? But wait, can you trust the compiler? Ken Thompson says you can't.
-
Re:Union. Ech. Professional Org., Hmmmmm...
That being said, there are times when I've wanted to speak with many voices (which is one of the reasons for my Slashdot account), and have no real recourse. I think that a real, legally sanctioned _professional_ organization would go a long way to help some of my problems (like being here since 3:00am this morning). Something like what the denstists or doctors have - not really a Union that has barganing units and such, but an org that can sanction shops that don't treat their IT workers properly.
What about the ACM or the IEEE? I don't believe they sanction employers per se, but letting one's fellow computer professionals know about employers who suck seems well within the spirit of both organizations' codes of ethics to me. All there needs to be (if there isn't one already) is some mechanism to go beyond word of mouth to an official "the ACM or IEEE says you suck" declaration.
-
Re:OODBMS Not According to Best Database Theory
> It is interesting to see that a posting with so many wrong statements receives such a high rating here.
It seems that each of us have different ideas about what's right and what's wrong, so let's get over such self-serving statements and go over the issues at hand.
> Reality is object-oriented. We use objects in our modern programming languages.
As far as I know reality may be represented by objects. It makes no sense saying that reality is this or that oriented, since apart from God no one can ever know what He was oriented to when he did create.
Seriously, reality can be represented by objects. It can be represented by relations also. Even if objects are convenient for some programming domains, it isn't for data storage and retrieve, except if your program will never change *and* it is object-oriented. It's surprising to learn how many programming gurus, and specially database gurus, steer clear of object-oriented programming, rather keeping with other models of programming like the functional or the structured ones.
> Why should we flatten these out to tables with unnecessary keys...
Why should we complicate relations with objects, if we can store data-independently?
Please, you are repeating OO jargon without explaining nothing to me. As I never saw much sense in OOness, I will need better teaching than this.
> Relations between objects can be maintained transparently within the database.
This isn't the issue. The issue is that these relationships are maintained physically in the database, thus getting against the Information Principle. In contrast, relational databases have no physical links. All relationships are a result of data kept in common by different relations. I won't explain here what is a relation; you should read Chris J Date's An Introduction to Database Systems for that.
> This is common-sense and there is no need to write scientific papers about it.
It is common sense for uncommon OO programmers, not for DAs, DBAs, functional or other non-OO programmers and common people like me.
The fundamental issue of OO is that is an over-extension of some simple programming rules-of-thumb. When they got the full extension they have today they got much more complicated than the surprisingly simple scientific papers that were published about relational database model theory, like E F Codd's paper.
> You can design data by writing classes in your respective programming language.
Not so fast. I want my data in my database, in a well defined and theoretically sound *data* sublanguage, not only in a programming language.
> [independence of the logical and physical layers of your database]
> Where do you need tables here?
> Class members define properties.
> Methods define behaviour.If you want to compare relational databases to anything else, it is better to think relations, not tables nor entities or relationships.
Seriously again, relations are a logical representation. With this logical representation of data at users' (and programmers') hands, you can lay your data physically whatever way you want, even by using pointers if you like. This way you can optimise the physical layer for performance or availability or thoroughput or whatever balance of whatever goals, while keeping data logically organized, easily accessible and readily available to access plans created by a good query optimizer.
> [shifting the performance optimization issues to the DBMS' optimizer]
> Object databases also use optimizers to analyze queries.
But your access paths are predefined. The user has little freedom to discover relationships between different data, ad hoc queries will have weird access paths and little possibility of optimization. And if you ever need a schema change, you will have to rewrite lots of queries.
> [any schema change do not only need an application recompilation]
> There are object databases that manage schema versioning automatically.
> Our product simply stores a superset of all used schemas.This won't fly. This is schema accumulation, not change. You will have data stored in many different ways, and users will find ways of wanting schema changes that can't be efficiently stored anyway.
> Wrong. Our object database is not multi-user as of today
Then you haven't even faced the very issues relational theory was created to solve. First read and understand Codd's paper above, then we can talk. Write me privately by email, or better yet read also The Third Manifesto, then Database Debunkings, and then we can talk.
> By the way: Do you typically have different tables for different users?
Even in quasi-relational SQL each user has its own schema. And this schema can contain base relations, derived relations including named ones (views), and synonyms.
> [rethink the data access path]
> Reengineering is a terrible problem with relational databases.
I've been working for years with weak, quasi-relational SQL and even with this poor tool I've not faced this problem of "reengineering". I now you have a product to sell, so it may be hard to forget marketspeak, even more actually acknowledging some fault, but what do you mean really by reengineering? AFAIK this is a management nineties' regurgitation of Operations and Methods ill digested with some Data Processing thrown in, not a CS word.
> Strings are not typesafe, so you have to parse the entire application
Stop! Stop! You're killing me!
Seriously, strings are strings. If SQL doesn't do all type checking it could, it is no fault of strings per se, much less the relational model. And it has no bearing in relational data independence. When you change a data type, you have a different relation, there's no way of shielding a typesafe language from that. Some data sublanguage may provide some shortcuts to such modifications, and even do some automatic type casting, but this is not a database model issue.
> [which should give us practically all of the advantages of OODBMSs without their cons]
> We are going the other way. We want to provide all the
> relational functionality that you wish with
> our object database. We might finally end up
> with very similar engines.Not at all, because you haven't yet understood the fundamentals of the field.
--
Leandro Guimarães Faria Corsetti Dutra
DBA, SysAdmin -
Re:Taking the good with the bad
> This is very much akin to having database schema for databases.
In fact there are many people proposing to store data as XML. I see a big danger here. Lots of people are encoding data with XML to enable exchange, and that's OK. But when people start thinking about storing that XML representation in a database, they fail to realize all the benefits that a relational database gives, both today with semi-relational SQL and in the future with fully-relational Tutorial D.
--
Leandro Guimarães Faria Corsetti Dutra
DBA, SysAdmin -
Re:ACK (mod parent up!)
There is an awful lot of literature in the field of Human-Computer Interaction. Personally I like the book 'The Elements of User Interface Design' by Theo Mandel, who also worked on the OS/2 Workplace Shell.
There also is a lot of literature available on the Web. Very informative is the User Interface Hall of Shame. You may also want to check out IBM's Easy of Use website. If you are an ACM member you have access to an abundance of articles on various HCI subjects. Personally I find Intelligent User Interfaces an interesting subject.
Enough information for now....
-
The Piper Cub Offensehttp://www.acm.org/ubiquity/views/j_raskin_1.html
August, 1998. On South Uist island in the Outer Hebrides, off the west coast of Scotland, a group of men huddled around a van, jacketed against the 25 knot wind. There was no way that they could hear the sound of the aircraft's engine over the persistent whistling of the gale; they would see it -- if they saw it at all -- before they would hear it. And it was an hour overdue on a potentially historic flight.
The small, single-engined craft was attempting the first solo flight across the Atlantic, but this was more of a solo than the one Lindbergh made some 70 years earlier. Where there had been one pilot on that flight, which was for Lindbergh the irreducible minimum crew, there was none on Laima. The plane was trying to fly itself solo from one side of the ocean to a particular spot on the other side. Instead of a compass and stars to steer by, it had a microprocessor and a global positioning system (GPS) receiver...
Read the rest at:
http://www.acm.org/ubiquity/views/j_raskin_1.html -
The Piper Cub Offensehttp://www.acm.org/ubiquity/views/j_raskin_1.html
August, 1998. On South Uist island in the Outer Hebrides, off the west coast of Scotland, a group of men huddled around a van, jacketed against the 25 knot wind. There was no way that they could hear the sound of the aircraft's engine over the persistent whistling of the gale; they would see it -- if they saw it at all -- before they would hear it. And it was an hour overdue on a potentially historic flight.
The small, single-engined craft was attempting the first solo flight across the Atlantic, but this was more of a solo than the one Lindbergh made some 70 years earlier. Where there had been one pilot on that flight, which was for Lindbergh the irreducible minimum crew, there was none on Laima. The plane was trying to fly itself solo from one side of the ocean to a particular spot on the other side. Instead of a compass and stars to steer by, it had a microprocessor and a global positioning system (GPS) receiver...
Read the rest at:
http://www.acm.org/ubiquity/views/j_raskin_1.html -
peer reviewed journalsSince this is about peer-reviewed scientific journals, I think what you will see is the growth of non-profit groups like AMS (in Math) and ACM, IEEE (in Computer Science) who already do a serious amount of publishing in the journals (Transactions on
...) and conferences SIGGRAPH of high quality.Since these journals are being reviewed by peers, publishing by such non-profit groups can work. Both the submitter and review wants the highest quality publication since it helps their respective reputations, the reviewer does not need a hugh amount of cash, just enough to cover expensives or pay for the costs of their next paper.
Smaller topics in mathematics, computer science, and physics already have free pre-print services (arXiv.org www.acm.org/dl), and more than a few online peer reviewed publications. These areas have quickly adapted because they already use electronic submissions of "camera-ready" papers in TeX format.
I think the important point is that these speciality publications are for a small community not for a general audience. The numbers are small, and most participates main income comes from elsewhere.
I didn't even say peer2peer once.
-
Re:Question to the scientists of /.
ACM has an online archive for its own publications (ACM members only).
-
Some things are very redundant, some less so.Large ISPs like UUnet, AT&T, Sprint, etc have networks that contain significant alternate paths, and run internal routing protocols like OSPF that allow pretty good failover in the event of router or link failures. You still get problems when all the links are in the same fiber trunk and someone puts a backhoe through it, but it's really pretty hard to partition large ISPs backbones. That's the good part.
Between ISPs, everyone runs BGP4, and most ISPs impose policies that restrict the transit traffic they're willing to carry. Also because inter-domain traffic spans multiple companies, it's much harder to plan what happens in the event of a failure. So there's less redundancy than you might think from just looking at Internet maps.
Also BGP itself has some convergence problems, so whilst it should only take a minute or two to find a backup path, it can take a lot longer than that in practice.
In addition, it's not really hard to misconfigure BGP and screw up someone elses routing by advertising something you shouldn't. This isn't a lack of redundancy but a lack of robustness.
Finally, many internet problems that users might think are routing problems turn out to be issues with DNS, and whilst the network itself is fine, the hostname just can't be resolved to the IP address of the end system.
So, it depends where you look. There's definitely a lot of room for improvement, but most of the internet has a reasonable amount of redundancy. The trouble is that you often only find out that your redundant backup isn't working when the primary solution fails (this is especially true of DNS, less so of routing).
-Fzz
-
Re:Er, sure, yah, okay.
Yeah..I agree..but with source distribution you usually get README and INSTALL files that tell you exactly what is going to happen during the installation process.
If the RPM cant be trusted, then neither can the README or the INSTALL file. Even the source can't be trusted following this line of though. Might I recommend you read what Ken Thompson has written on the topic of trust? http://www.acm.org/classics/sep95/. Eventually you have to decide who you are going to trust, if the packages are from the softwares author, then I see no reason to doubt the RPMS above the source code. Same with the authors of your distribution. I'd be more wary about packages without any form of acknowledgment from someone related to the program itself.
treke
Fame is a vapor; popularity an accident; the only earthly certainty is oblivion. -
No holes in source, but how about compilers
While yes, the openness of Linux prevents back doors and such to be put into the source code, it's still possible to have a compiler written that will put in back doors. I believe Ken Thompson demonstrated that in a talk once. And since you can't do anything without a complier (unless you're up for writting assembly by hand.) then there's always a way to get a hole in. Maybe it's time to have a trust model for compilers?
-
Re:I actually had a solution for thisI suspect your idea was rejected because it doesn't address the political or economic issues associated with running the Internet. It may be a good technical solution, but the Internet doesn't run purely on technology. It runs on money.
Perhaps the best example of this is the story of Landmark Routing. Go read the paper. You probably need to read it 3 times before it completely sinks in, but it's a brilliant way of building a routing hierarchy that scales beautifully in virtually every dimension: number of end-stations, number of sub-networks, number of routers, number of everything.
The basic idea is that you route packets the same way you might ask for directions on a trip from New York to your friend's house in Los Angeles. You start out asking "which way to LA?" and someone might point you vaguely westward. Once in LA you can ask someone from LA, "where's Santa Monica?" and once in Santa Monica, ask "where's Ocean Blvd?" As you get closer and closer to your destination, you ask for progressively more and more specific directions -- and are more likely to get them because you're more likely to encounter people who know the local geography. Your route may not be optimal (i.e., because the person in New York who you first asked for directions didn't have global knowledge of LA's streets), but it works very well in a distributed way, and it scales. This is Landmark in a nutshell (but, really - don't take my word for it; go read the paper).
Anyway, as I heard it, back in the days when BGP was being standardized, Landmark was at one point suggested as an alternative. Now, my very 3rd-hand understanding is that it was ultimately rejected because it just didn't fit the model of what Internet routing algoritms need to do. It can't express policy. It can't support ISP X saying "I only want to send data to ISP Y, because I have a peering agreement with them. I don't want to advertise routes to ISP Z because they use me as transit without providing transit. I don't want to route these packets through Canadian ISPs because it violates local laws." The economic reality is that you don't always route through the shortest path, or the cheapest path, but the path through which you've negotiated peering agreements or are buying transit service. BGP lets you express these policies.
Landmark is a beautiful technical solution, and from the point of view of pure computer science, it works. Maybe your solution does, too. But that doesn't necessarily have any bearing on its usefulness in the real world. For your idea (or any idea) to be considered seriously, you have to address these issues.
-
Re:I actually had a solution for thisI suspect your idea was rejected because it doesn't address the political or economic issues associated with running the Internet. It may be a good technical solution, but the Internet doesn't run purely on technology. It runs on money.
Perhaps the best example of this is the story of Landmark Routing. Go read the paper. You probably need to read it 3 times before it completely sinks in, but it's a brilliant way of building a routing hierarchy that scales beautifully in virtually every dimension: number of end-stations, number of sub-networks, number of routers, number of everything.
The basic idea is that you route packets the same way you might ask for directions on a trip from New York to your friend's house in Los Angeles. You start out asking "which way to LA?" and someone might point you vaguely westward. Once in LA you can ask someone from LA, "where's Santa Monica?" and once in Santa Monica, ask "where's Ocean Blvd?" As you get closer and closer to your destination, you ask for progressively more and more specific directions -- and are more likely to get them because you're more likely to encounter people who know the local geography. Your route may not be optimal (i.e., because the person in New York who you first asked for directions didn't have global knowledge of LA's streets), but it works very well in a distributed way, and it scales. This is Landmark in a nutshell (but, really - don't take my word for it; go read the paper).
Anyway, as I heard it, back in the days when BGP was being standardized, Landmark was at one point suggested as an alternative. Now, my very 3rd-hand understanding is that it was ultimately rejected because it just didn't fit the model of what Internet routing algoritms need to do. It can't express policy. It can't support ISP X saying "I only want to send data to ISP Y, because I have a peering agreement with them. I don't want to advertise routes to ISP Z because they use me as transit without providing transit. I don't want to route these packets through Canadian ISPs because it violates local laws." The economic reality is that you don't always route through the shortest path, or the cheapest path, but the path through which you've negotiated peering agreements or are buying transit service. BGP lets you express these policies.
Landmark is a beautiful technical solution, and from the point of view of pure computer science, it works. Maybe your solution does, too. But that doesn't necessarily have any bearing on its usefulness in the real world. For your idea (or any idea) to be considered seriously, you have to address these issues.
-
Paper on web hashing used by Akamai
Here is an actually quite readable paper from ACM about the hashing routine that Akamai uses, called Consistent hashing and random trees: distributed caching protocols for relieving hot spots on the World Wide Web by David Karger et al (1997).
-
Paper on web hashing used by Akamai
Here is an actually quite readable paper from ACM about the hashing routine that Akamai uses, called Consistent hashing and random trees: distributed caching protocols for relieving hot spots on the World Wide Web by David Karger et al (1997).
-
Another Approach to Volumetric Displays
3d Technology Laboratories was demoing their 3D Volumetric display at ACM1. Their approach is to shine 2 different wavelength lasers through a glass or plastic cube (dopant revealed only under NDA). Where they cross, voila. A pinpoint of light. The demo display is a 2-inch glass cube. See the website for pictures.
-
Re:Use the source, Luke
Ken Thompson in Reflections on trusting Trust
-
Re:It's worse than that
It was Ken Thompson in an implementation of a C compiler. His paper on it can be found here.
-
Re:Why the paranoia?I seem to remember that in the early days there was a version of the gcc compiler that has secret code built into is
It wasn't gcc, it was the Unix C compiler (pcc I believe). It hit not only the C compiler but the login program. For more info on this, see Ken Thompson (one of the original authors of Unix)'s paper "Reflections on Trusting Trust"
He later fessed up to actually implementing this, though I can't turn up that reference off the top of my head.
Sumner
-
IEEE and ACM: Two professional international orgsThere *are* professional groups who *are* concerned with technological implications: IEEE (Institute for Electrical and Eletronic Engineers) and ACM (Association for Computing Machinery).
Both are international, and both have strong areas of their respective organizations who are politically and socially active.
See their websites (and particularly public policy areas) at
-
IEEE and ACM: Two professional international orgsThere *are* professional groups who *are* concerned with technological implications: IEEE (Institute for Electrical and Eletronic Engineers) and ACM (Association for Computing Machinery).
Both are international, and both have strong areas of their respective organizations who are politically and socially active.
See their websites (and particularly public policy areas) at
-
Re:Um...
It pays to study the classics. Please see this for an explanation of a back door which remains hidden despite your "check".
-
ACM curriculum
The thing is, most universities follow a standard curriculum set out the by the ACM.
There are a few versions of this, the most recent completed was Computing Curricula 1991. There is another version in-progress, Computing Curricula 2001. I seem to remember being told that most schools are actually somewhere in between the 1991 curriculum and the previous recommendation, which doesn't seem to be online.
So, the bottom line is that our beef may be with the ACM. This question is well-timed, since the new curriculum is still in development. There are several discussion groups open to the public on the new curriculum proposals.
Greg
-
ACM curriculum
The thing is, most universities follow a standard curriculum set out the by the ACM.
There are a few versions of this, the most recent completed was Computing Curricula 1991. There is another version in-progress, Computing Curricula 2001. I seem to remember being told that most schools are actually somewhere in between the 1991 curriculum and the previous recommendation, which doesn't seem to be online.
So, the bottom line is that our beef may be with the ACM. This question is well-timed, since the new curriculum is still in development. There are several discussion groups open to the public on the new curriculum proposals.
Greg
-
Papers on the netAs a graduate student in Computer Science, I find that Internet access is quite highly useful. Researchers tend to put links to their research papers online and this is far more convenient than going to the library to look for paper you need and finding that the only copy was stolen last week.
In general you don't look on the journals' and conferences' pages, you look at researchers' pages to track down those references. The ACM Digital Library has a number of useful papers, but a lot of the papers were scanned in as bitmaps and so they look terrible.
-
Good design...
Of course, when people say that "design" will save the world, they usually mean their idea of design, which might not jibe with yours or mine.
No timothy, when they say "design", I beleive they are referring to things like usability testing. In other words, taking a software package to groups of users, and designing statistically sound experiments to see what users find easy and fast to use. In other words, users ideas of good design - not yours, not mine.
If you're interested, maybe read some sites on design.
Moreover, I think they are also saying that VC's should at least be aware of what theoreticians are thinking about so they make better use of their investor's dollars