Frequently Asked Questions (FAQ) About the Dist-Obj Mailing List

Last Checked In: $Date: 1999/06/03 07:15:10 $

Welcome to the FAQ for distributed objects! This page attempts to summarize the philosophy, viewpoints, jargon, and ongoing discussions happening on the dist-obj email list.

Our table of Contents:

General Information
Philosophy of Distributed Objects
Terminology on the List
Suggested Reading
People on the List

General Information

  1. Tell me about the dist-obj mailing list.

    dist-obj started in June 1996 as FoRR (for "Friends of Ron Resnick (with special attention to Mark Baker too, who didn't think FoMB was very catchy 8-)"), an unoriginal clone of FoRK. Cloning has in the past proven to be a recipe for success where computers are concerned: witness WordStar WordPerfect to Word, or Multics to Unix to Ultrix to HPUX to AIX to Xenix to Linux to myfavoriteix. Good artists copy, better artists steal.

    FoRR migrated to Caltech in February 1997 (thanks to Joe Kiniry and the Caltech Infospheres Project), changing its name to dist-obj. Slowly but surely, dist-obj found its niche as a forum for discussing objects (especially distributed objects), seas of components, intelligence, paradox, self reference, metadata, dynamic discovery, safety vs. function, form and ground, implicit and explicit messages, and all kinds of related issues.

    Dist-Obj then migrated to the Distributed Coalition (DC) in December, 1998. The DC is the brainchild of the Dist-Obj founders and members of the Infospheres Group.

    Normally, new dist-obj members send a "hello, this is who i am" message after listening for a week or two. Try to make the message contain "real" dist-obj content as well. Note that, this rule applies all of the time - if your message doesn't have real content, don't post it. This is a list of over 300 respected professionals and researchers in the field; try not to look dumb permanently in front of all of them.

    Recently, the list has considered a few general topics:



  2. What context do I need to understand dist-obj?

    D-O (other abbreviations seen include dist-obj, do, DO, distobj, and d-o) is, as stated up front, not intended for the faint at heart. Thus, this FAQ is not intended to babystep you from basics. Still, it should assist those who do want to 'get' the material, but have not been around for the list's entire history.

    Dist-obj is not for the timid - there's a certain level of context a reader ought to have for this to be of much use, including:


    Also, some listmembers have begun maintaining their own lists o' links, which are decent springboards as well:



  3. Tell me about this FAQ.

    Around the same time, in May 1997, Ron Resnick and Adam Rifkin began working on FAQs for this list to serve as a store for a lot of the ideas on the list. We merged them, and Adam agreed to maintain the list. Sandor has agreed to work on a "useful links" page as a companion to this FAQ. We note that this FAQ would not be possible without the contributions of the listmembers and Web surfers. As such, we would appreciate any suggestions to make it better.

  4. How do I post?
    To post to the whole mailing list, send your message to dist-obj@distributedcoalition.org. There is no longer a "noarchive" option for the mailing list.

  5. How do I get help, subscribe, unsubscribe, etc.?


  6. Are there particularly important posts I should read right now?

    Yes, there is one particular post you should read right now. It is the first State of the Mailing List post by the list maintainers and has some important information in it.


Philosophy of Distributed Objects

  1. What is D-O all about?

    D-O is about the emerging world of smart networked bits everywhere in daily life, in business, and in education.

    That sentence could have come straight out of Wired! magazine, a Negroponte book, or any New Age TV show about "how information technology is going to change our lives."

    By contrast, D-O is about the mapping of the software technologies needed to make this world possible, and about the ramifications of that bit-soaked world. That is, we feel that the Negroponte-like pundits can see the big picture, but are missing out all the technical details of how to make it happen.

    Meanwhile, most of the software world, even those highly clueful in their respective specialties in Java, CORBA, and the Web, are often too close to the details to see the big picture (so that they cannot see the forest for the trees).

    D-O is about closing that gap: it is about figuring out how componentware, Java Beans, high bandwidth and high latency networks, smart metadata, and object groups, permit the big picture to occur. It is also about illustrating what the big picture looks like, and what that picture means to our lives, to our childrens' lives, to our jobs, to the notion of jobs, to the very fabric of human civilization.

  2. What is the D-O motto and why?

    D-O has one or two mottos actually, for depending on who you are they either say the same thing, or they don't. While it doesn't say everything there is to say about D-O, of course, since no single statement possibly could, it captures the gist of it very nicely.

    In other words: there's an Orb-like thingie in just about everything,
    supporting a queryable BO that can do meaningful things?
      -- Sandor Spruit
    
    In other words, there's a HTTP server in every device with a processor
    and a port which can use PEP and HTML to offer a meaningful, composable
    interface to any other HTTP client?
      -- Rohit Khare
    

  3. What makes this list any different than the countless other discussion groups about distributed objects, Java, and CORBA?

    We are interested in the really Big Picture of how these technologies change the fabric of organized human life and society and commerce and relationships and work. Do not come to us with "how do I compile my OrbixWeb app?" or "which applets are really cool on Gamelan?" style questions; there are plenty of OTHER good mailing lists and newsgroups for those questions. Mind you, we do talk a lot of technology, but only in how it can be leveraged to support the kind of distributed components we want to build.


Terminology on the List

Index

Answers


Suggested Reading

Influential People

  1. Christopher Alexander.
  2. Ken Birman.
  3. Luca Cardelli.
  4. Brad Cox.
  5. Desmond D'Souza.
  6. Jeri Edwards.
  7. Kurt Godel.
  8. Rachid Guerraoui.
  9. Dan Harkey.
  10. Douglas Hofstadter.
  11. Stuart Kaufmann.
  12. Rohit Khare.
  13. Donald Norman.
  14. Nicholas Negroponte.
  15. Bob Orfali.
  16. Russel & Whitehead.
  17. Doug Schmidt.
  18. Oliver Sims.
  19. Donald Tapscott.
  20. Steve Vinoski.
  21. Jim Waldo.

Recommended Reading

  1. Being Digital, Nicholas Negroponte.
  2. Business Objects: Delivering Cooperative Objects for Client/Server, Oliver Sims.
  3. Client/Server Computing with Java and CORBA, Robert Orfali and Dan Harkey, Wiley, 1997.
  4. Concurrent Programming in Java: Design Principles and Patterns, Doug Lea, Addison Wesley, 1996.
  5. Darwin Among the Machines: The Evolution of Global Intelligence, George Dyson.
  6. Design Bibliography by Adam.
  7. Design Patterns: Elements of Reusable Object Oriented Software, Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides, Addison Wesley, 1995.
  8. Essential Distributed Objects Survival Guide, Robert Orfali, Dan Harkey, and Jeri Edwards, Wiley, 1996.
  9. Fluid Concepts and Creative Analogies, Douglas Hofstadter.
  10. Godel Escher Bach (GEB), Douglas Hofstadter.
  11. Java Language Specification, James Gosling, Bill Joy, and Guy Steele.
  12. Out of Control, Kevin Kelly, Addison Wesley, 1994.
  13. Superdistribution: Objects as Property on the Electronic Frontier, Brad Cox.
  14. The Digital Economy, Donald Tapscott.
  15. The Origins of Order: Self-Organization and Selection in Evolution, Stewart Kauffman
  16. Towards a Web Object Model, Frank Manola, Object Services and Consulting.
  17. FoRK Recommended Books.
  18. The FoRK reading list.
  19. The Infospheres library (current books and books to order)

Recommended Context

  1. A good understanding of consortia such as OMG, W3C, and IETF (politics, RFI/RFPs, services, frameworks).
  2. A proficiency with modern technologies such as JavaSoft, IBM, Oracle, Novell, Netscape, Lotus, Apple, Xerox PARC, Caltech Infospheres, and Distributed Technologies.
  3. A healthy (unhealthy?) and deep distrust of the DARK SIDE, herein referred to as Missy.

People on the List

The list is now automatically maintained and the member list is private.


Links from the List - A Modest Webliography

Buses

  1. Java Shared Data Toolkit (JSDT) by Rich Burridge at Sun.
  2. iBus project - Java implementation of Electra/Horus / Ron's comments
  3. Infospheres project
  4. ISIS / Horus
  5. The LSE Lab - see Consensus Service: A Modular Approach for Building Fault-Tolerant Agreement Protocols in Distributed Systems
  6. Reliable Multicast Protocols
  7. Stanford Distributed Systems Group
  8. T-Bone project - JavaBeans multicasting/broadcasting
  9. Transis project - virtual synchrony and group services
  10. Virtual Synchrony and Group Services 101: an Overview

Publish-and-Subscribe Technologies

  1. Active Software
  2. Backweb
  3. CISCO
  4. Intermind
  5. Iona
  6. IP Multicast
  7. Marimba
  8. Pointcast
  9. Talarian
  10. Teamwave
  11. TIBCO
  12. Vitria

Web Technologies

  1. About Document Formats by Tim Berners-Lee
  2. A Proposal for Web Metadata Operations by Jim Whitehead
  3. Inserting Objects into HTML with the OBJECT tag (client side includes)
  4. Inserting Scripts into HTML with the SCRIPT tag (client side scripting)
  5. Link Reliability - Why URNs are Not the Answer by Dan Connolly
  6. PEP, the Protocol Extension Protocol for extending HTTP
  7. SHOE, Simple HTML Ontology Extensions
  8. Toward a Formalism for Communication on the Web by Dan Connolly
  9. VTML - Versioned Text Markup Language
  10. Weaving a Web of Trust by Rohit Khare and Adam Rifkin
  11. WIDL, the Web Interface Definition Language from webMethods to automate the Web
  12. W3C Technical Reports
  13. XML - Xtensible Markup Language
  14. XML Working Group at the W3C
  15. XML, Java, and the future of the Web by Jon Bosak

Java Technologies

  1. Aglets - Java agents
  2. Beans / Glasgow Specifications
  3. Bringing Distributed Objects to the World Wide Web by Ron Resnick
  4. CJava - Corporate Migration to Java list by Bob Marcus
  5. Design for Open Systems in Java by Doug Lea
  6. Elephant Dances - IBM and Java
  7. HotDraw in Java
  8. Infospheres JEDI project - Java Environment for Dynamic Invocations
  9. Java and Frameworks discussion at CJava
  10. Java Links from the Infospheres page
  11. Java, RMI, and CORBA paper by David Curtis
  12. Java Spaces
  13. Java Transaction Service
  14. J.F.O.X. - Java Financial Object Xchange
  15. JTONE - Java Telecom Object Network
  16. Letter to Jim Waldo by Ron Resnick
  17. Pizza - superset of Java with parametric polymorphism
  18. PLAN - programming language for active networks
  19. RMI on CORBA by Jeff Nelson

Object Technologies

  1. Acacia agency collaboration architecture by Wilfred C. Jamison
  2. Agents at UMBC
  3. Business Object Transactions by Paul Evitts
  4. Doug Schmidt's New page
  5. Enterprise Integration Laboratory
  6. Enterprise Engine
  7. Evolving Frameworks - A Pattern Language for Developing Object-Oriented Frameworks by Don Roberts and Ralph Johnson
  8. Jeff Sutherland's Object Technology Web Site
  9. ICON articles on object technologies
  10. Market-Oriented Programming
  11. Objects in Groups by Doug Lea
  12. OMG CORBA News
  13. OOPSLA
  14. Scripting: Higher Level Programming for the 21st Century by John K. Ousterhout
  15. Tree With History Pattern by Francis Anderson and Ralph Johnson

Component Technologies

  1. Active Documents by Staffan Hagg
  2. Aspect-Oriented Programming by Gregor Kiczales
  3. Catalysis for Component-Based Development by Desmond D'Souza (he of IDL++) and Alan Wills
  4. Component-Oriented Programming - a Refinement of OOP by Clemens Szyperski
  5. Component Technology Homepage
  6. COM vs SOM
  7. Enterprise Java Beans
  8. Habanero framework for sharing Java objects
  9. Infospheres project
  10. Infospheres Framework by K. Mani Chandy, Joe Kiniry, Adam Rifkin, and Dan Zimmerman
  11. Infospheres Sessions by K. Mani Chandy and Adam Rifkin
  12. Infospheres' Use in Archiving by K. Mani Chandy, Joe Kiniry, Adam Rifkin, and Dan Zimmerman
  13. Infospheres' Use in Resource Scheduling by K. Mani Chandy, Boris Dimitrov, Ravi Ramamoorthi, and Adam Rifkin
  14. Microsoft's Component Strategy
  15. Phoenix by Mark Baker and Ron Resnick (source code lost)
  16. Quilt/Bento/IronDoc

Seas of Gazillions of Objects/Components

  1. Active Networks
  2. Ariba project
  3. Constraint-Based Languages and Systems at UW
  4. Dependent Demand - a Business Pattern for Balancing Supply and Demand, by Bob Haugen
  5. Diamonds
  6. Dynamics of Multiagent Systems
  7. IBM's Massively Distributed Systems
  8. Infospheres
  9. KIF 101 - knowledge interchange format
  10. Nomadix - mobile computing
  11. ONE - One Namespace Everywhere by Gordon Irlam
  12. Ontology!
  13. REA Links - Cooperative Business Objects for Radically Distributed Supply Chain Systems, by Bob Haugen
  14. Swarms
  15. Venari - storing, accessing, and retrieving objects based on their semantics
  16. WALDO - Wide Area Large Data Object architecture
  17. What is an Ontology? by Tom Gruber

Miscellaneous

  1. Infospheres' Webliography
  2. Rethinking CS 101 by Lynn Stein
  3. Strategic Directions in CS research
  4. Using Java in CS by Doug Lea

Primarily maintained by the BoDO Crew. Original version written and maintained by Adam Rifkin. Special thanks to Mark Baker, Ron Resnick, and Sandor Spruit for their immense help in compiling this information.

Last modified: Wed Feb 3 23:44:54 PST 1999