<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <title>Briatribe's topics - tribe.net</title>
  <link rel="alternate" href="http://briatribe.tribe.net/threads/atom" />
  <subtitle>Tribe.net. Local Connections</subtitle>
  <entry>
    <title>[GEEKERY] Wrestling with Ant and JUnit...</title>
    <link rel="alternate" href="http://briatribe.tribe.net/thread/3e487a8f-93c2-44c3-b4e8-cd10a43cec6a" />
    <author>
      <name>brian</name>
    </author>
    <id>http://briatribe.tribe.net/thread/3e487a8f-93c2-44c3-b4e8-cd10a43cec6a</id>
    <updated>2007-06-25T05:29:43Z</updated>
    <published>2007-06-25T05:29:43Z</published>
    <summary type="html">&lt;div&gt;I spent some time today obsessing over getting my web of ant files to work perfectly.  During my last days with Tribe I was working on a build system that was a simple library of ant files that provide some basic functionality that projects always need - compile, test, coverage, jar, war, publish, etc.  It's like the apache-maven project, but less opaque.  One thing that I wanted to get working was to load the junit task into the running ant instance without having to put junit.jar into the $ANT_HOME/lib directory.  The reason for this is that I want new developers to be able to load the stock version of Ant on their machines, check out my code, and start testing without having to download any more software.  Mac OS X also already has Ant installed if you install the Java developer tools.  My "build" module has a set of jar files that are added to ant in order to provide functionality like scp, dependency management (via antlion), and junit - or so I thought.
&lt;br/&gt;
&lt;br/&gt;The first thing I tried out was this:
&lt;br/&gt;
&lt;br/&gt;    &amp;amp;lt;taskdef name="junit" classname="org.apache.tools.ant.taskdefs.optional.junit.JUnitTask"&gt;
&lt;br/&gt;        &amp;amp;lt;classpath&gt;
&lt;br/&gt;            &amp;amp;lt;pathelement location="${test.basedir}/lib/junit.jar"/&gt;
&lt;br/&gt;        &amp;amp;lt;/classpath&gt;
&lt;br/&gt;    &amp;amp;lt;/taskdef&gt;
&lt;br/&gt;
&lt;br/&gt;I left off the ant-junit.jar because it is in the $ANT_HOME/lib directory already.  However, this didn't quite work right.  The error I got was this:
&lt;br/&gt;
&lt;br/&gt;build/test.xml:15: taskdef A class needed by class org.apache.tools.ant.taskdefs.optional.junit.JUnitTask cannot be found: 
&lt;br/&gt;junit/framework/Test
&lt;br/&gt;
&lt;br/&gt;This was pretty frustrating, as I knew that this class was right in the jar that I specified as the classpath for this task.  I tried lots of things to fix this along the way, including the following:
&lt;br/&gt;
&lt;br/&gt;    &amp;amp;lt;taskdef name="junit" classname="org.apache.tools.ant.taskdefs.optional.junit.JUnitTask"&gt;
&lt;br/&gt;        &amp;amp;lt;classpath&gt;
&lt;br/&gt;            &amp;amp;lt;pathelement location="${test.basedir}/lib/junit.jar"/&gt;
&lt;br/&gt;            &amp;amp;lt;pathelement location="${test.basedir}/lib/ant-junit.jar"/&gt;
&lt;br/&gt;        &amp;amp;lt;/classpath&gt;
&lt;br/&gt;    &amp;amp;lt;/taskdef&gt;
&lt;br/&gt;
&lt;br/&gt;The change above was to explicitly include the ant-junit hook in my classpath for the junit task, but even this did not work.  Well, it did not work until I REMOVED ant-junit.jar from $ANT_HOME/lib.  Once I did that, everything worked as expected.  Great, but unfortunately it still requires that you mess with the stock distribution of Ant for junit to work correctly which is exactly what I was trying to get around!
&lt;br/&gt;
&lt;br/&gt;It would appear that this is a classloader issue, similar to the problems that people run into with tomcat when trying to access classes that were loaded by different classloaders (well, I guess it is EXACTLY that problem!)  What I wanted to do was find a way in Ant to have a classloader just re-load the ant-junit jar along with the junit jar so that everything would work correctly.  This assumes, of course, that the problem is that Ant is automatically loading all of the classes in $ANT_HOME/lib on startup in a different classloader than the one used for loading the junit.jar.
&lt;br/&gt;
&lt;br/&gt;I have tried using the loaderref attribute of the typedef task, but to no avail.  In fact, I tried a couple things with that attribute - first setting it to a unique value in an attempt to get junit to work only with its own classloader, then to try loaderref="root" in an attempt to get junit.jar onto the classpath after Ant had already started.
&lt;br/&gt;
&lt;br/&gt;Of course, it was right about this time that I finally figured out what it was I should have been googling for and found this link:
&lt;br/&gt;
&lt;br/&gt;http://ant.apache.org/faq.html#delegating-classloader-1.6
&lt;br/&gt;
&lt;br/&gt;which explains everything.  What this entry told me that I didn't know about was the option to have a directory called $HOME/.ant/lib for your external dependencies.  Using this mechanism, it is just a matter of needing to include an ant task as part of my testing environment that will make that directory if it does not exist and drop the junit.jar file in it.&lt;/div&gt;
				&lt;div&gt;
			posted in
			&lt;a href="http://briatribe.tribe.net"&gt;Briatribe&lt;/a&gt;
			- 0 replies
		&lt;/div&gt;</summary>
    <dc:creator>brian</dc:creator>
    <dc:date>2007-06-25T05:29:43Z</dc:date>
  </entry>
  <entry>
    <title>some thoughts on tribe as a community space</title>
    <link rel="alternate" href="http://briatribe.tribe.net/thread/088142ea-704d-42be-b609-d45fb2f799fe" />
    <author>
      <name>spam</name>
    </author>
    <id>http://briatribe.tribe.net/thread/088142ea-704d-42be-b609-d45fb2f799fe</id>
    <updated>2006-12-08T07:44:10Z</updated>
    <published>2006-09-12T23:03:26Z</published>
    <summary type="html">&lt;div&gt;So here's a mail I originally sent to Jenni, and she suggested I forward it here since Brian's actually got that vision thing going on.
&lt;br/&gt;--------
&lt;br/&gt;So I'm thinking here about how tribe is refocussing on commnities. Which is great, but what, really, does that mean? 
&lt;br/&gt;
&lt;br/&gt;There's lots of community types that tribe serves pretty well. Social discussion communities in particular. But some community types it does not serve well-and these may be the sorts of communities that can bring in some actual money into tribe, not to mention making tribe ground breaking again. You have all (or most) of the parts already, but what you need is the right sort of presentation. 
&lt;br/&gt;
&lt;br/&gt;What if I could set up a tribe as a small (or not so small) business home page? Allow me to customze the layout so I can assemble the page components as I want, let me use the discussion forum as a customer service or customer community space, let me sell stuff directly from my tribe. The gallery could be used as a product catalog for users to browse and purchace from. Let me have customized advertising (or none at all). Let the URL for the tribe be an arbitrary domain, so www.mybusinessname.com goes directly to my tribe. Let me, the business owner, use tribe to manage CRM details. 
&lt;br/&gt;And, of course, tribe skims a small amount off each sale. 
&lt;br/&gt;
&lt;br/&gt;What if I could use tribe to manage a small art project? A few burning man projects already have tribes, wouldn't it be cool if they could do real project management using tribe? Allow users to list tasks, dependencies, resources, etc, and display burndown charts and tasklists. 
&lt;br/&gt;
&lt;br/&gt;What if I could skin a tribe to be a photo gallery? Not to critique, but the photo gallery for tribe is so very 2001. I have an art project in mind that will require me to display a number of pictures. I could write something custom, but it would be cool for me to just skin a tribe as an art gallery. 
&lt;br/&gt;
&lt;br/&gt;Oh, and while we're on photos, why can't I click a button to order prints online? I bet flickr is making serious change on that little option. 
&lt;br/&gt;
&lt;br/&gt;What if I could use tribe as an intranet for a virtual company? Look into the modules that sharepoint has to offer, and start cloning cloning cloning. 
&lt;br/&gt;
&lt;br/&gt;Anyway, these are the things I would love to see tribe doing. You've got social networking nailed (OK, it's getting a bit long in the tooth and there's certainly places you need to catch up with your competitors), but it's time for you to start branching out. Think about community types as vertical markets, design modules that fit the needs for those markets, and make them available. Make tribe templates available for "predefined" tribe types, and allow users to generate their own tribe types. 
&lt;br/&gt;
&lt;br/&gt;Anyway, these are just my random thoughts. &lt;/div&gt;
				&lt;div&gt;
			posted in
			&lt;a href="http://briatribe.tribe.net"&gt;Briatribe&lt;/a&gt;
			- 4 replies
		&lt;/div&gt;</summary>
    <dc:creator>spam</dc:creator>
    <dc:date>2006-09-12T23:03:26Z</dc:date>
  </entry>
  <entry>
    <title>[GEEKERY] Separation of concerns when scaling a database...</title>
    <link rel="alternate" href="http://briatribe.tribe.net/thread/3ae6787c-190b-4183-9d8b-48e3ae68fdce" />
    <author>
      <name>brian</name>
    </author>
    <id>http://briatribe.tribe.net/thread/3ae6787c-190b-4183-9d8b-48e3ae68fdce</id>
    <updated>2006-12-06T16:17:11Z</updated>
    <published>2006-12-06T16:17:11Z</published>
    <summary type="html">&lt;div&gt;We have been hard at work since our management change on a couple of different fronts, both business and technical.  Mercifully, I have been on the technical.  The work we have been doing is basically a thorough audit of the many software layers we have put in place over the last few years, figuring out which we should keep, which we should update, and which we should dump.  
&lt;br/&gt;
&lt;br/&gt;One thing that we didn't do in a consistent fashion across the board was our persistence layer.  We started with Torque, on Object-Relational Mapping tool that has pretty much run its course.  Torque couldn't do everything, so we had to throw some JDBC in there too.  Then, we began to move into Hibernate, a more modern and functional ORM tool.  Throw into this the fact that our database connection management is also done different ways in different places and it's pretty easy to see that one thing we need to invest time in is reworking our persistence layer.
&lt;br/&gt;
&lt;br/&gt;In order to scale to the size we want to, as well as to accomodate future features and business models that we want to support on our platform, the persistence layer needs to scale.  This means we need to partition things vertically across many different data segments and we need to partition horizontally across many partitions.  And ideally we would do all this in a way that is hidden from the application business logic completely.  Below is a stream of consciousness that I spewed a few days ago about this problem that I wanted to put up here mostly just so that I have a log of what I was thinking about...
&lt;br/&gt;
&lt;br/&gt;===
&lt;br/&gt;
&lt;br/&gt;...There is also a question of how cross-segment collections would be handled.  So if the idiom would call for something like member.addProfile(p) do I want to suppot the addition of objects to cross-segment collections?  Or would it be better to not expose the addProfile() method on the net.tribe.beans interface and just require first the creation of the Profile bean, then the addition of the Member object to that bean.  My gut says that since cross-segment collections could result in the selecting single objects across many partitions, we don't want to make the retrieval of that collection an "under-the-sheets" operation.  As opposed to the same-segment collection (which presumes same-partition, incidentally) where Hibernate will just be able to do business in the normal way.
&lt;br/&gt;
&lt;br/&gt;This actually brings up an interesting point about the need for a layer lilke this as opposed to letting the database or some other layer do all the data segmentation work.  If you put in a 3rd party tool to do things like retrieve collections that may exist across many partitions, someone is going to have to figure out which partitions to go to for that information.  This means that the virtualization layer may need to go to every partition it knows about to make that query, which may result in some pretty heavy lifting in that layer, along with some extra work on each of the partitions that really didn't need to happen at all.  By putting some smarts in our persistence layer, we are able to dumb down these requirements and include more simplifying assumptions about how to recover data sets across many different partitions.
&lt;br/&gt;
&lt;br/&gt;Issues such as load balancing and failover are probably good candidates for a third party (application agnostic) system, since those systems will provide the "hard part" - i.e. failure detection and automatic redirection of requests to the hot backup.  Load balancing across replicated instances is also something that could be accomplished through a third party (or even by a hardware solution like setting up a virtual server on our f5) because again, there is nothing particular about the application that a load balancing system could use to its advantage.  Rather it is more an issue of the load balancing software (or hardware) knowing how to figure out the optimal target for a given request.
&lt;br/&gt;
&lt;br/&gt;So when considering a scalable solution for the application to database interface, there are a few different concerns that we can separate out:
&lt;br/&gt;
&lt;br/&gt; * vertical partitioning scheme: How do we split up tables onto different machines?  This is a very application specific concern and needs to take into account things like how quickly the tables will grow as well as how the application domain views those objects, even up to the UI level.  There could also be data isolation concerns bound into this as well.
&lt;br/&gt; * horizontal partitioning scheme: We also need to be able to insure that we are able to split up the same table into different partitions so that it's growth across reasonably priced hardware is boundless.  This type of work may be offloaded to a third party product depending on the requirements.  I.e. if the partitioning algorithm is simple then probably the RDBMS could handle it.  This is the case if you are viewing your db as a single object and it just needs to be able to grow to be very large.  If, however, you or your customers require some level of data isolation (perhaps, say, for reporting or pricing needs) then the application wil need to be more involved.
&lt;br/&gt; * load balancing: how to I spread queries across different readers?  Clearly something the application doesn't need to know about.
&lt;br/&gt; * failover: how do I account for the loss of a node?  Clearly something the application doesn't need to know about.&lt;/div&gt;
				&lt;div&gt;
			posted in
			&lt;a href="http://briatribe.tribe.net"&gt;Briatribe&lt;/a&gt;
			- 0 replies
		&lt;/div&gt;</summary>
    <dc:creator>brian</dc:creator>
    <dc:date>2006-12-06T16:17:11Z</dc:date>
  </entry>
  <entry>
    <title>when are you going to tell people about this?</title>
    <link rel="alternate" href="http://briatribe.tribe.net/thread/74cb9894-51ed-45ee-a83e-852bd441154f" />
    <author>
      <name>chris</name>
    </author>
    <id>http://briatribe.tribe.net/thread/74cb9894-51ed-45ee-a83e-852bd441154f</id>
    <updated>2006-06-01T23:17:46Z</updated>
    <published>2006-06-01T23:17:46Z</published>
    <summary type="html">&lt;div&gt;It doesn't seem to be worth keeping secret.
&lt;br/&gt;
&lt;br/&gt;http://www.tribe.net/tribe/servlet/template/pub,TribeGeist.vm&lt;/div&gt;
				&lt;div&gt;
			posted in
			&lt;a href="http://briatribe.tribe.net"&gt;Briatribe&lt;/a&gt;
			- 0 replies
		&lt;/div&gt;</summary>
    <dc:creator>chris</dc:creator>
    <dc:date>2006-06-01T23:17:46Z</dc:date>
  </entry>
  <entry>
    <title>if tribe does net nanny like scientology,.... then</title>
    <link rel="alternate" href="http://briatribe.tribe.net/thread/63158a11-ea55-408b-852d-fafb9a95ec2c" />
    <author>
      <name>amisun</name>
    </author>
    <id>http://briatribe.tribe.net/thread/63158a11-ea55-408b-852d-fafb9a95ec2c</id>
    <updated>2006-02-22T20:51:07Z</updated>
    <published>2005-12-30T10:29:32Z</published>
    <summary type="html">&lt;div&gt;cant some of the tribe just relocate?
&lt;br/&gt;
&lt;br/&gt;we are back to where is the realestate on the internet again....
&lt;br/&gt;
&lt;br/&gt;&lt;/div&gt;
				&lt;div&gt;
			posted in
			&lt;a href="http://briatribe.tribe.net"&gt;Briatribe&lt;/a&gt;
			- 3 replies
		&lt;/div&gt;</summary>
    <dc:creator>amisun</dc:creator>
    <dc:date>2005-12-30T10:29:32Z</dc:date>
  </entry>
  <entry>
    <title>Social Network Framers...</title>
    <link rel="alternate" href="http://briatribe.tribe.net/thread/0d79fe6a-1e62-45e1-9c6d-2f3eb5437389" />
    <author>
      <name>brian</name>
    </author>
    <id>http://briatribe.tribe.net/thread/0d79fe6a-1e62-45e1-9c6d-2f3eb5437389</id>
    <updated>2006-01-09T21:48:21Z</updated>
    <published>2005-12-27T09:21:42Z</published>
    <summary type="html">&lt;div&gt;A couple posts back, I gave my perspective on the recent TOU changes, and shared some of the difficulty that we have all had going through this process.  Mike then mentioned his disappointment in Tribe, mentioning that he had thought that Tribe got it - when in fact we may not have.  It should be quite evident at this point that if you intend to build a social network of your own, you had better build in from the ground up some sort of "constitution" by which all members must abide, and you *must* include mechanisms though which violators are brought to justice.
&lt;br/&gt;
&lt;br/&gt;I would be interested in hearing what some of you would do in the "blue sky" situation, where you are able to start from scratch and build a social system from the ground up.  An interesting (if legally dicey) idea that Mike put forth in the previous thread about this topic was that a decentralized system could be designed where federated nodes form the basis of the social network, with a centralized index perhaps for finding content across all those nodes.  If such a system were in place, then the person "running the site" is the person who is hosting that part of the network.  I would view this as a more technological solution to the problem, where tribes and profiles could be kept on distributed nodes of the network and the tribe surfing experience may actually land you on different domains, but all of which are running an instance of the network-ready, distributed tribe software.  Clearly this is a paradigm shift from what we have today in this space, but I am positive that someday it will happen.
&lt;br/&gt;
&lt;br/&gt;The other approach is to stay centralized but to get far more elaborate with the mechanisms that you have in place for displaying content, while at the same time putting in place equally elaborate mechanisms for allowing people to punish bad citizens in the same way that we enforce law &amp;amp; order in the real world (1st Amendment and all).  The reason that the former is needed is that for a site to benefit from the network effect, it must be inviting to all kinds of different people.  The reason that the latter is needed is so that people will still feel safe on the site and will not be freaked out by the occasional over-zealous troll.
&lt;br/&gt;
&lt;br/&gt;I have thought some about how this would be built from the ground up, either going with the paradigm shifting "Federated Social Network Network" or by going the other direction and building into the platform a Constitution and fair enforcement policy.  Now I look to you, dear reader, for your ideas on the topic.  I would have posted this in Social Software Intellectuals or another such tribe, but I have come to like this forum better for certain discussions - this is more like chatting over a beer, mostly with people that I have actually met.  I'm buyin!&lt;/div&gt;
				&lt;div&gt;
			posted in
			&lt;a href="http://briatribe.tribe.net"&gt;Briatribe&lt;/a&gt;
			- 13 replies
		&lt;/div&gt;</summary>
    <dc:creator>brian</dc:creator>
    <dc:date>2005-12-27T09:21:42Z</dc:date>
  </entry>
  <entry>
    <title>Rewritten from earlier...</title>
    <link rel="alternate" href="http://briatribe.tribe.net/thread/cb146a59-253d-48b1-808d-d40da767013a" />
    <author>
      <name>phreddd</name>
    </author>
    <id>http://briatribe.tribe.net/thread/cb146a59-253d-48b1-808d-d40da767013a</id>
    <updated>2006-01-02T08:07:11Z</updated>
    <published>2005-12-30T13:20:33Z</published>
    <summary type="html">&lt;div&gt;Just read your take on what has happened with Tribe's changes. I still think that it was a poorly implemented set of changes, but your explanation does make the silliness a lot more understandable.
&lt;br/&gt;
&lt;br/&gt;Thank you very much. 
&lt;br/&gt;
&lt;br/&gt;FREDV&lt;/div&gt;
				&lt;div&gt;
			posted in
			&lt;a href="http://briatribe.tribe.net"&gt;Briatribe&lt;/a&gt;
			- 1 reply
		&lt;/div&gt;</summary>
    <dc:creator>phreddd</dc:creator>
    <dc:date>2005-12-30T13:20:33Z</dc:date>
  </entry>
  <entry>
    <title>So long, and thanks</title>
    <link rel="alternate" href="http://briatribe.tribe.net/thread/b4780f87-4441-4a07-8253-2045027f5b86" />
    <author>
      <name />
    </author>
    <id>http://briatribe.tribe.net/thread/b4780f87-4441-4a07-8253-2045027f5b86</id>
    <updated>2005-12-29T23:43:55Z</updated>
    <published>2005-12-29T23:43:55Z</published>
    <summary type="html">&lt;div&gt;Tribe's made an immeasurable difference in my life.  I'm sad that it's become a site I can't, in good conscience, support any longer.  
&lt;br/&gt;
&lt;br/&gt;Thanks Brian, for all the code, and replies to my 4 am messages, and the occasional beer-y conversations.  (Hope to continue the beer part someday.)  Thanks, also, to Patti, Elliot, and other early-hires who are still around.  I'll miss you guys.  And I already miss what Tribe was.
&lt;br/&gt;&lt;/div&gt;
				&lt;div&gt;
			posted in
			&lt;a href="http://briatribe.tribe.net"&gt;Briatribe&lt;/a&gt;
			- 0 replies
		&lt;/div&gt;</summary>
    <dc:creator />
    <dc:date>2005-12-29T23:43:55Z</dc:date>
  </entry>
  <entry>
    <title>New To this Tribe</title>
    <link rel="alternate" href="http://briatribe.tribe.net/thread/9ada97c3-2bcd-4df0-a8ca-fe8a0e7571c7" />
    <author>
      <name>bgisbrecht</name>
    </author>
    <id>http://briatribe.tribe.net/thread/9ada97c3-2bcd-4df0-a8ca-fe8a0e7571c7</id>
    <updated>2005-12-26T08:12:11Z</updated>
    <published>2005-12-25T10:43:56Z</published>
    <summary type="html">&lt;div&gt;Hi, as you can tell my name is brian.  I was just browsing and thought this one was a kewl tribe to join.  
&lt;br/&gt; 
&lt;br/&gt;I live in Ohio and have been there for a while now.
&lt;br/&gt;
&lt;br/&gt;~brian~&lt;/div&gt;
				&lt;div&gt;
			posted in
			&lt;a href="http://briatribe.tribe.net"&gt;Briatribe&lt;/a&gt;
			- 2 replies
		&lt;/div&gt;</summary>
    <dc:creator>bgisbrecht</dc:creator>
    <dc:date>2005-12-25T10:43:56Z</dc:date>
  </entry>
  <entry>
    <title>Another perspective on what is going at Tribe...</title>
    <link rel="alternate" href="http://briatribe.tribe.net/thread/d2e0dc52-eebb-4342-b400-90dd0f19e1b9" />
    <author>
      <name>brian</name>
    </author>
    <id>http://briatribe.tribe.net/thread/d2e0dc52-eebb-4342-b400-90dd0f19e1b9</id>
    <updated>2005-12-20T06:57:14Z</updated>
    <published>2005-12-18T23:22:33Z</published>
    <summary type="html">&lt;div&gt;I can't begin to tell you how difficult it is to read some of the discussions going on about our new flagging policies and TOU.  It is fairly typical for people to complain about change here, but this is a different sort of complaining.  And it is a sort that we knew we would have to endure.  What's different this time is that the complaints are more cultural than technical.  If someone doesn't like the new colors, layout, features, or masthead, it is normally just a matter of time before someone else chimes in with "hey wait a minute, I like the new layout."  It is rare that work we do on the application actually makes it *worse*.  There is always a period of adjustment that goes along with change, and normally within a week things settle down a bit and return to business as usual.
&lt;br/&gt;
&lt;br/&gt;The flagging thing is not simply a technical change or a new feature though.  This one is a change that for many will irreparably damage their ability and willingness to participate in our community, but not because we have changed the logo again or made the system unstable.  This change bites into the Tribe culture that has been building up on its own over the last 30 months.
&lt;br/&gt;
&lt;br/&gt;When the alternative lifestyle tribes began to turn up on Tribe, my attitude at the time was to treat tribe like I treat Mission St.  On Mission St. right around the corner from my house there is a porn shop that is open at all hours.  I have walked by it more times than I can count.  It is my choice any time of the day or night to walk in to that store, and to browse or buy, or perhaps hang with the locals.  Or, I could just walk right on by.  My choice.
&lt;br/&gt;
&lt;br/&gt;If I walk the other direction, up to Valencia St. there is a Good Vibrations store.  Is it upscale porn or simply "sex positive"?  It certainly is much less intimidating than the Mission News (the aforementioned porn shop) but still carries content of sexually explicit nature.  Both of the stores have Rated X material, both of them are right out in the open doing a brisk business.  As an individual I may choose to walk in to either store at any time, or I may choose not to.  I may even choose to find the content morally reprehensible, and to run up to Mission Dolores and bathe myself in holy water whenever I cast my eyes open these stores.  But I never thought it was within my rights to deny the owners of those businesses their spot in my neighborhood.
&lt;br/&gt;
&lt;br/&gt;Tribe being Tribe has taught me *a lot* about the world around me that I did not know before.  And I have met people in my neighborhood that I never would otherwise have had the opportunity to meet - I simply do not lead an "alternative lifestyle".  But I do feel like a more complete, more informed individual now that I have met these people.  I don't know if I will ever go to Burning Man, but I might.  I don't think I will tie anyone up or get tied up myself, but you never know.  The point is that live and let live is a great way to achieve harmony in your daily life.
&lt;br/&gt;
&lt;br/&gt;Tribe has now decided to "open up shop" for real.  For our first 2 years we lived completely off of Venture funding and were largely left to our own devices to come up with new ideas to make the site better.  Frankly I think we only did an ok job at that, and we never really did figure out how to make a sustainable business out of it.  Generally speaking, our investors have been pretty happy with things.  Not thrilled (like perhaps a MySpace style exit would have made them) but not unhappy (like a Friendster style flameout would have made them) but they, and we, are still looking for the right formula to make this business real, and viable for years to come.
&lt;br/&gt;
&lt;br/&gt;Mark Pincus stepped down as CEO in acknowledgement of the fact he was not going to be able to do accomplish that.  It was his decision to make, and he did the right thing.  That change at the highest level brought about a shakeup at Tribe, where a few more people (including our last remaining founder) left the company as well.  Over the next 6 months, starting in April or May and extending through October, we began experiments around generating revenue on Tribe.net without making many changes to the application itself.  This mostly meant hooking the site up with ad networks, signing new listings partners to fill in our jobs and apartments listings categories, and buying search engine traffic to certain revenue generating pages.  All the while, we were debating internally about the mature content issue.  Not only what to do about it, but whether it was an issue at all.  I guarantee you that every debate you see on Tribe.net today about the new policy has already been had AT LENGTH internally at some point over the last 6 months.
&lt;br/&gt;
&lt;br/&gt;For me, what it boils down to is we have opened up shop for real, and we have decided that we aren't the Mission News and we aren't Good Vibrations.  That is just not what our business is.  We never really told anybody that WAS our business, but with the people we attracted it somehow became perceived as being our business.  This doesn't mean we won't be a cool business - there are many other shops that sell good books or art or clothes, and everyone - EVERYONE - is free to go into those stores and enjoy being there.  There are just some things you can't do in there.
&lt;br/&gt;
&lt;br/&gt;So what's next for Tribe?
&lt;br/&gt;
&lt;br/&gt;Well, once we are by 12/20 we will be having another release early next year that will significantly change the look of the site.  The navigation will be simpler to understand and the My tribe.net page will give you more access to all of the things you can do on Tribe.  After that, we will be embarking on a whole new round of innovation around Tribes.  This will include new syndication options, so that you can syndicate your tribe discussions out to other web sites, as well as content import and customization options.  These things are all still in the early design stages, but we are all very excited about these changes to say the least.  We understand that the best thing about Tribe is the tribes, and we want to make them as useful and leading edge as possible.
&lt;br/&gt;
&lt;br/&gt;Perhaps it is best to say that we are a technology company with a cultural component, and not a culture company with a technological component.  I hope that this all makes sense to you all.  I will be very sorry to see people go if that is what it comes to.  But these are the tough decisions that need to be made in order for us to make progress as a business.&lt;/div&gt;
				&lt;div&gt;
			posted in
			&lt;a href="http://briatribe.tribe.net"&gt;Briatribe&lt;/a&gt;
			- 5 replies
		&lt;/div&gt;</summary>
    <dc:creator>brian</dc:creator>
    <dc:date>2005-12-18T23:22:33Z</dc:date>
  </entry>
  <entry>
    <title>Skills update...</title>
    <link rel="alternate" href="http://briatribe.tribe.net/thread/9d67b25f-9b65-4f71-9523-d95c368f0cb6" />
    <author>
      <name>brian</name>
    </author>
    <id>http://briatribe.tribe.net/thread/9d67b25f-9b65-4f71-9523-d95c368f0cb6</id>
    <updated>2005-12-18T21:47:53Z</updated>
    <published>2005-05-11T06:53:28Z</published>
    <summary type="html">&lt;div&gt;Well, I have officially begun a little side project to get up to date on some technology changes that have happened since I last poked my head up from tribe.  The fun thing about the beginning of a startup is that you can pretty much choose whatever technology you want to get a job done.  When tribe started, they needed to get something going fast so I chose to use technologies that I had been using/creating at the time.  At that point, MVC had pretty much become a mainstream idea, and not using it for your web application was a well known bad idea.  Since then, the biggest advance in the state of the Java art has been the proliferation of Inversion of Control frameworks.
&lt;br/&gt;
&lt;br/&gt;At the time we started, Spring was still in its infancy and the now defunct Avalon project at Apache was the IoC platform that I had heard of but never worked with.  Inversion of Control is a pretty abstract idea, and Avalon did not do much to make it a more penetrable concept.  But the idea is basically that your application is much easier to test and maintain if it is not responsible for managing object lifecycles and other cross-cutting concerns such as security.  The IoC people strive to create a framework that you can ask for objects, and the framework itself is responsible for assembling those objects and managing them based on declarative conifigurations specified by the developer.  This is, in some sense, what the redwood framework that I have been explaining does - albeit in a far more primitive way.  Redwood provides a method for applications to declaratively wire application objects together, as well as providing security credentials for those objects without forcing the application objects themselves to know about these concerns.
&lt;br/&gt;
&lt;br/&gt;Spring has since come along and risen to prominence in the Java community.  Spring is very abstract and may be dropped into any Java application and be of some use.  I am now curious whether I may be able to put it to use in Redwood, and ultimately to replace Redwood completely.  Spring provides a more complete inversion of control implementation, has a huge and thriving community of developers behind it, and does in some way provide much of the goals that I had initially strived for when coding Redwood and Tribe.
&lt;br/&gt;
&lt;br/&gt;So in pursuit of answers to these burning questions, I have begun a project at home to build a (non-web-based) comic book tracking application.  Korin has thousands of comic books, so I should have ample test data.  At tribe, we use the following software stack and products
&lt;br/&gt;
&lt;br/&gt;Tomcat
&lt;br/&gt;Torque
&lt;br/&gt;Turbine
&lt;br/&gt;Redwood
&lt;br/&gt;MySQL
&lt;br/&gt;CVS
&lt;br/&gt;Roundup (for bug tracking)
&lt;br/&gt;
&lt;br/&gt;At home, my goal is to not use any of these.  I am not going web based right off the bat, so I won't have a Tomcat replacement right away.  But in the interest of mixing up I will have:
&lt;br/&gt;
&lt;br/&gt;Hibernate
&lt;br/&gt;Spring
&lt;br/&gt;Acegi
&lt;br/&gt;Subversion
&lt;br/&gt;Trak (if I can get it working.  I tried this once before: http://sanfrancisco.tribe.net/thread/9b8ff14e-8377-4fc1-9656-0f35832b5739?tribeid=5d5e4972-6e03-4794-aca2-32839ded401d&amp;amp;r=10535 )
&lt;br/&gt;
&lt;br/&gt;What I said before was that the beginning of startups if fun because you can choose to work with whatever tools you want.  But we are way past the beginning of tribe.  I am not in my 3rd year at this job, and 3 years is an awfully long time in the Java (and technology) world.  So it is time for a skills update.  I will let you all know how it goes.&lt;/div&gt;
				&lt;div&gt;
			posted in
			&lt;a href="http://briatribe.tribe.net"&gt;Briatribe&lt;/a&gt;
			- 7 replies
		&lt;/div&gt;</summary>
    <dc:creator>brian</dc:creator>
    <dc:date>2005-05-11T06:53:28Z</dc:date>
  </entry>
  <entry>
    <title>The breadth of feedback...</title>
    <link rel="alternate" href="http://briatribe.tribe.net/thread/6fb898e0-7448-4998-a7cd-1d1cc2e20b32" />
    <author>
      <name>brian</name>
    </author>
    <id>http://briatribe.tribe.net/thread/6fb898e0-7448-4998-a7cd-1d1cc2e20b32</id>
    <updated>2005-09-03T00:39:52Z</updated>
    <published>2005-08-25T23:04:52Z</published>
    <summary type="html">&lt;div&gt;The great thing about the contraversial upgrades at Tribe is the massive breadth of feedback that comes in.  Some of the less constructive stuff can be rather depressing, but after 2 years of ruining peoples' on rollout day lives you sort of get used to it.  That time that we took away the trackback stuff stands out as a big one.  We really didn't anticipate the backlash that would cause, but lo and behold, it turns out that there were some folks to whom that feature was absolutely critical to the Tribe experience.
&lt;br/&gt;
&lt;br/&gt;The ads are a different beast.  This isn't buggy functionality, it is far more significant.  To many, it is a sellout - a harbinger of simply awful things to come.  The beginning of the end.  To others, it is just an annoyance, one that is quickly adjusted to and life goes on.  Some seem genuinely hurt or offended or betrayed.  Many are disgusted.  But in amongst the shouting and calls for boycott there are always valuable nuggets.
&lt;br/&gt; 
&lt;br/&gt;For example, this guy is mad and has a great explanation of why he should be:
&lt;br/&gt;
&lt;br/&gt;http://www.tribe.net/template/pub%2Ctribes%2CViewThread.vm/threadid/7b235c53-6c7a-4471-8093-b1a14c366970/tribeid/de9b6ce0-c92e-48c1-a3bc-1a3a2367e250/id/50614879-44e9-45d6-9203-ab0d9a6d2cb6
&lt;br/&gt;
&lt;br/&gt;Seeing stuff like this not only renews my faith in humanity, but it also renews my belief that there are many tribe users who *really* get it.  He is mad about the ads, but he also understands (as we do) that we have more than enough information to do far far better.  He understands that he has given us all kinds of information about his location, his tastes, and his interests.  He understands that he *gave* us this information of his own free will - that doing so was a valuable part of him developing his online identity here at Tribe.  And he not only understands, but *anticipates* that we will use that information to show him ads that are more relevant to him than any other site on the internet possibly can.  I look forward to the day where we deliver that message and reintroduce this man and others to the gee whiz factor that has made a connection with many of our users in the past.
&lt;br/&gt;
&lt;br/&gt;There is also this woman:
&lt;br/&gt;
&lt;br/&gt;http://www.tribe.net/template/pub%2Ctribes%2CViewThread.vm/threadid/8ac60a63-8319-46ef-a17c-d0e34dfee038/tribeid/de9b6ce0-c92e-48c1-a3bc-1a3a2367e250/id/080bda43-83b0-4d8f-8f2e-7df1084d15bb
&lt;br/&gt;
&lt;br/&gt;This is also a refreshing bit of feedback.  It is nice to know that people would like to see us succeed, and offer up constructive advise on how to get this done.  That is nice.  But what is powerful is that her idea is to tap the very community that we have all built, not just Tribe the company but Tribe the culture.  I can't tell you how many times I have thought to myself "ah... but if only days were 40 hours long and we could organize events to make this online community happen in real life".  Be it a Tribe.net block party where local tribesters come to meet, sell their art, juggle fire, and cause some offline havoc for a change, or be it new functionality to help non-profits organize on Tribe, to mobilize their memberships and gather donations.
&lt;br/&gt;
&lt;br/&gt;These are the things that transcend code and servers, business and revenue, venture capital and office space.  These are the things that people already do that Tribe could help them do better.  Is there a business in it?  I don't know.  No one here has really been able to convince anyone else here that there is, and as a result we are forced to experiment with other ideas.  The ad thing will certainly improve.  The targeting is no good and the page layout is choppy.  In time, it will probably be forgotten.  What continues to endure is the community, and all of its opinions and passions.  Not only the boistrous nay-sayers but the silent contributors who continue to find value in what they have found here.  &lt;/div&gt;
				&lt;div&gt;
			posted in
			&lt;a href="http://briatribe.tribe.net"&gt;Briatribe&lt;/a&gt;
			- 6 replies
		&lt;/div&gt;</summary>
    <dc:creator>brian</dc:creator>
    <dc:date>2005-08-25T23:04:52Z</dc:date>
  </entry>
  <entry>
    <title>Breaking the silence...</title>
    <link rel="alternate" href="http://briatribe.tribe.net/thread/f3d09c68-7044-4065-a4d7-077311b76a2c" />
    <author>
      <name>brian</name>
    </author>
    <id>http://briatribe.tribe.net/thread/f3d09c68-7044-4065-a4d7-077311b76a2c</id>
    <updated>2005-08-24T03:10:39Z</updated>
    <published>2005-08-24T03:10:39Z</published>
    <summary type="html">&lt;div&gt;It has been a while since I posted - much has happened at tribe since the last time I wrote in briatribe.  One thing is that now I have one of those nifty tribe.net blogs - which is where I write about the weekends.  This has largely relegated briatribe to being the place where I talk about work and geek stuff - of which I have talked about neither of late.
&lt;br/&gt;
&lt;br/&gt;First, work.  Some of you know this, others do not.  But it has been a few weeks now so it is probably safe to say that the last of Tribe.net's 3 founders is no longer with the company.  Paul, our former CTO, has chosen to move on.  This has obviously had an impact on my ability to code a lot or to write here.  To say he "contributed" to the company is an understatement - for a while he WAS the company!  Now we have moved on to a new phase of our existence, which many of you have been noticing today.  We are now focused on becoming an ongoing concern, not just a hot startup.
&lt;br/&gt;
&lt;br/&gt;Ah... remember the days when Tribe was a hot startup?  All you SF technophiles joined up, met up, partied it up - the sky was the limit.  As Tribe employees we just stood by and watched in amazement as people joined the site and actually used it to make friends.  It has had a very positive effect on the lives of many.  Those were heady days indeed - but always sitting in the background was that pesky question about how we would ever make money.
&lt;br/&gt;
&lt;br/&gt;The last 90 days have been spent doing some user study and experimentation around how we can make money.  The results have been interesting, and encouraging.  We do in fact bring money in now.  It isn't as much as we spend, of course, but it is a step in the right direction.  Also, in Paul's absense, I have had a chance to participate at a higher level in the company and I can say with confidence that top to bottom, everyone is committed to keeping this thing going, and to finding new and creative ways to monetize it.  Don't worry, we know that ads are very vulnerable to downturns in the economy - we are looking for other ways supplement our income that is more immune to such swings.
&lt;br/&gt;
&lt;br/&gt;While I miss the days of just being able to sit down and crank out a feature and slip it into Tribe, I understand that after 2 years at this it is time for us to get serious about making a business.  The big challenge is to find a way to make a business that is truly useful to the people who use it - providing value is after all the best way to charge a premium.  We have been reluctant to charge you, the subscriber, directly.  There are, however, 3 other things that we do on the site today that *do* generate revenue for us:
&lt;br/&gt;
&lt;br/&gt;1) ADS!  ADS!  and more ADS!
&lt;br/&gt;2) Listings from outside services, such as CareerBuilder or Apartments.com.
&lt;br/&gt;3) Sponsored Tribes ( http://sponsoredtribe.tribe.net ) - which is still somewhat experimental but has potential (see http://scion.tribe.net ).
&lt;br/&gt;
&lt;br/&gt;Anyway, I have blathered enough...  Time to go get some dinner.  If you guys wanna talk about this stuff I am always more than happy to oblige.&lt;/div&gt;
				&lt;div&gt;
			posted in
			&lt;a href="http://briatribe.tribe.net"&gt;Briatribe&lt;/a&gt;
			- 0 replies
		&lt;/div&gt;</summary>
    <dc:creator>brian</dc:creator>
    <dc:date>2005-08-24T03:10:39Z</dc:date>
  </entry>
  <entry>
    <title>[Tribe] How tribe.net works....</title>
    <link rel="alternate" href="http://briatribe.tribe.net/thread/a5b5440e-6846-440e-837d-8a785cba88fd" />
    <author>
      <name>brian</name>
    </author>
    <id>http://briatribe.tribe.net/thread/a5b5440e-6846-440e-837d-8a785cba88fd</id>
    <updated>2005-07-02T21:41:03Z</updated>
    <published>2005-01-12T07:00:49Z</published>
    <summary type="html">&lt;div&gt;[ This posting is the first in a series about the tribe.net application architecture. ]
&lt;br/&gt;
&lt;br/&gt;Tribe.net is an application that is fundamentally built to allow for arbitrary types of user generated content.  An application of this sort presents very specific security requirements to account for the fact that millions of objects may be accessed and modified by millions of people.  Consider, for example, maintenance of your own personal profile.  No other user but you should be able to change your profile attributes.  Tribes, as another example, are application objects that require members to be able to create content for that tribe if and only if they are members of that tribe.
&lt;br/&gt;
&lt;br/&gt;Taking "top-level" objects such as tribes, people, and listings into account, the programmatic challenge of assuring the correct permission controls on each object is fairly simple.  Am I in the tribe?  Am I the person I am trying to change?  Do I own the listing I am trying to modify?  What gets more tedious, and more difficult to maintain, is when those top-level objects take on more functionality, and more child objects.  For example, tribes have Postings, Topics, Photos, Listings, Recommendations, and Events.  In addition, people have Photos, Listings, and Recommendations.  Finally, listings have Photos.
&lt;br/&gt;
&lt;br/&gt;So what we end up with is lots of different objects that may reasonably live in lots of different contexts. We need to be sure that creation of this content is done only by those who may do so (i.e. those with verified accounts with permission on the top-level object) and that content that gets created cannot be spoofed and attributed to someone else, AND that existing content may not be changed by those without permission to do so.  And by the way, there needs to be an administrative user who has privileges to all this stuff to anyone so that the site may be reasonably maintained from a Customer Service perspective.
&lt;br/&gt;
&lt;br/&gt;The purpose of this thread is to document the Redwood architecture package that we use at tribe.    Redwood is a Java-based architecture that is built on top of the Jakarta-Turbine application architecture.  The purpose of Redwood is to "model the model".  Many web applications these days use the Model-View-Controller (MVC) design pattern by virtue of the Open Source package they have chosen to build on.  These frameworks usually provide a controller, some typical application services, and may provide some help on the view.  Jakarta-Struts, for example, is MVC for the masses because it brought this pattern to the JSP world, and also provides a centralized configuration file to define screen flows in the view.  Similarly, Jakarta-Turbine has provided a simple controller along with some built in service brokering functionality.  The Spring framework provides all of the above and more.  But none of these frameworks go to the next step and provide assistance in creating the security model that is necessary for an application like tribe, nor should they.  This is a job that is typically left to application developers, and the result involves an Object-Relational mapping tool along with some layers built on top to try and automate the process of securely manipulating the application data.  And those security layers that are developed do not often lend themselves to re-use across different companies and applications.
&lt;br/&gt;
&lt;br/&gt;Redwood provides a method for modeling the Model of an application in an abstract way.  The name "Redwood" comes from the fact that this model takes the form of a tree (an XML file).  The Tribe.net tree is actually quite large now, but a subset of it looks like the following:
&lt;br/&gt;
&lt;br/&gt;Application -&gt; Person -&gt; Photo, Interest, Listing
&lt;br/&gt;Application -&gt; Tribe -&gt; Photo, Posting, Listing
&lt;br/&gt;Application -&gt; Listing -&gt; Photo
&lt;br/&gt;
&lt;br/&gt;One way to translate such a tree into English is that the Application has People, Tribes, and Listings, that Tribes have Photos, Postings, and Listings, and that People have Photos, Interests, and Listings, and that Listings have Photos.  Each of these objects is a &amp;amp;lt;branch&gt; element in the XML file, and each branch contains information about how to get the underlying data that it represents, and branches that have security requirements (like People and Tribes) have configuration properties in the XML file to reflect that.  But the interesting thing is that when the application wants to create, modify, or remove a particular branch on the tree, there is no code in the application.  The RedwoodService and its supporting classes know how to find a branch and walk back up the tree until it finds a security credential to check.  This is in fact how we do the checks for everything from creating a new tribe posting to adding a new photo to your profile.  There is nothing about the Photo object specifically that checks security, it is that Photo object's position in the tree and the inherent security credentials of that position that provide us with the answers.
&lt;br/&gt;
&lt;br/&gt;[ to be continued ]&lt;/div&gt;
				&lt;div&gt;
			posted in
			&lt;a href="http://briatribe.tribe.net"&gt;Briatribe&lt;/a&gt;
			- 24 replies
		&lt;/div&gt;</summary>
    <dc:creator>brian</dc:creator>
    <dc:date>2005-01-12T07:00:49Z</dc:date>
  </entry>
  <entry>
    <title>Homebrew!</title>
    <link rel="alternate" href="http://briatribe.tribe.net/thread/0e5fbdac-00df-441a-a946-55be00b3c9af" />
    <author>
      <name>brian</name>
    </author>
    <id>http://briatribe.tribe.net/thread/0e5fbdac-00df-441a-a946-55be00b3c9af</id>
    <updated>2005-06-10T19:20:18Z</updated>
    <published>2005-01-14T02:58:29Z</published>
    <summary type="html">&lt;div&gt;The new picture for this tribe of my first homebrew.  I got a beer machine for Christmas ( http://www.beermachine.com ) and so far, the results are impressive!&lt;/div&gt;
				&lt;div&gt;
			posted in
			&lt;a href="http://briatribe.tribe.net"&gt;Briatribe&lt;/a&gt;
			- 18 replies
		&lt;/div&gt;</summary>
    <dc:creator>brian</dc:creator>
    <dc:date>2005-01-14T02:58:29Z</dc:date>
  </entry>
  <entry>
    <title>Hacking into James...</title>
    <link rel="alternate" href="http://briatribe.tribe.net/thread/fe932900-05ad-46cc-96f8-85efbe825b4e" />
    <author>
      <name>brian</name>
    </author>
    <id>http://briatribe.tribe.net/thread/fe932900-05ad-46cc-96f8-85efbe825b4e</id>
    <updated>2005-06-09T17:06:05Z</updated>
    <published>2005-06-09T17:06:05Z</published>
    <summary type="html">&lt;div&gt;I spend about 2 or 3 hours last night hacking the James email server.  Why was I doing this?  Because I want to send and receive email of course.  But I also want to be able to programmatically manipulate how the mail is processed - in Java.  James seems to be about the only real option for this, so that is what I am using.
&lt;br/&gt;
&lt;br/&gt;I have been using James for some time on my home machine to receive emails.  Here is a posting on that: 
&lt;br/&gt;
&lt;br/&gt;http://sanfrancisco.tribe.net/thread/bbd4ecde-4472-413a-93b0-083d07a46f1c?tribeid=5d5e4972-6e03-4794-aca2-32839ded401d&amp;amp;r=10535#3b2300e7-a77b-438b-9dcb-2eebd5742290
&lt;br/&gt;
&lt;br/&gt;Sending mail has always proven to be a bit harder for me though, unless I turn on authentication.  I don't want to have to turn on authentication though, I just want to be able to send email that originates from the machine the server is running on - a feature that James should support out of the box.  But alas, on the Mac it does not.
&lt;br/&gt;
&lt;br/&gt;So I went into the James code to figure out why it doesn't work on a Mac, and by the end of the night it was fixed.  Here is a play by play of what happened:
&lt;br/&gt;
&lt;br/&gt;http://daflink.net/cgi-bin/trac.cgi/wiki/JamesHacking
&lt;br/&gt;
&lt;br/&gt;
&lt;br/&gt;
&lt;br/&gt;If you don't wanna read all that, the punchline was that this line of code doesn't work:
&lt;br/&gt;
&lt;br/&gt;return org.xbill.DNS.Address.getByName(allowIPLiteral(host));
&lt;br/&gt;
&lt;br/&gt;
&lt;br/&gt;And this line does:
&lt;br/&gt;
&lt;br/&gt;return java.net.InetAddress.getByName(allowIPLiteral(host));
&lt;br/&gt;
&lt;br/&gt;
&lt;br/&gt;2 hours, and one code change later, voila!&lt;/div&gt;
				&lt;div&gt;
			posted in
			&lt;a href="http://briatribe.tribe.net"&gt;Briatribe&lt;/a&gt;
			- 0 replies
		&lt;/div&gt;</summary>
    <dc:creator>brian</dc:creator>
    <dc:date>2005-06-09T17:06:05Z</dc:date>
  </entry>
  <entry>
    <title>Trac installation woes on Mac OS X...</title>
    <link rel="alternate" href="http://briatribe.tribe.net/thread/9b8ff14e-8377-4fc1-9656-0f35832b5739" />
    <author>
      <name>brian</name>
    </author>
    <id>http://briatribe.tribe.net/thread/9b8ff14e-8377-4fc1-9656-0f35832b5739</id>
    <updated>2005-05-20T02:38:01Z</updated>
    <published>2005-01-06T17:51:24Z</published>
    <summary type="html">&lt;div&gt;[This is the first message in what unfortunately must become a series.  I am trying to install Trac - a package that bundles together issue tracking, source code control (via svn) and a wiki.  It is just an experiment for home use, but the installation has not been easy.  Read on and feel the pain.]
&lt;br/&gt;
&lt;br/&gt;I spent a quiet evening at home trying to get Trac [1] and Subversion [2] up and running on OS X.  This post is more of a HOWTO than an explanation of "vendor selection," but suffice to say that I like the idea of source control, issue tracking, and a wiki being all wrapped up into one thing - for free!  Anyway, if you are going to try this yourself on OS X, be sure to refer to the wiki page [3] on the topic.
&lt;br/&gt;
&lt;br/&gt;Using OS X, the easiest way to get this stuff going it to use fink [4], or so the wiki told me.  The first problem I ran into was that my installation of fink could not find the sqlite package.  This fella [5] ran into the same problem.  The fix was to instruct fink to look in the unstable packages for sqlite - like so:
&lt;br/&gt;1) vi /sw/etc/fink.conf
&lt;br/&gt;2) Search for Trees:
&lt;br/&gt;3) add "unstable/main unstable/crypto" (without the quotes) to the end of the Trees: line
&lt;br/&gt;
&lt;br/&gt;I was then able to continue on to the next problem by entering the command:
&lt;br/&gt;
&lt;br/&gt; &gt;  fink install sqlite sqlite-dev sqlite-shlibs
&lt;br/&gt;
&lt;br/&gt;This did lots of stuff, but then failed with the following message:
&lt;br/&gt;
&lt;br/&gt;  Failed: No mirror site list file found for mirror 'gnu'.
&lt;br/&gt;
&lt;br/&gt;This problem is solved [6] by installing fink-mirrors with the following command:
&lt;br/&gt;
&lt;br/&gt;  &gt; fink install fink-mirrors
&lt;br/&gt;
&lt;br/&gt;I then reissued the fink install sqlite etc. command and was off and running!  Lots of downloading, lots of compiling, reminds of the good old days of building my linux kernel.  After many minutes of updates and compilations and linkings, the installation of sqlite finally succeeded. 
&lt;br/&gt;
&lt;br/&gt;Next I was instructed to install subversion itself (I think) with the following command:
&lt;br/&gt;
&lt;br/&gt;     ## DIDN'T WORK
&lt;br/&gt;  &gt; apt-get install svn svn-client svn-swig-py23
&lt;br/&gt;
&lt;br/&gt;Which didn't work for me.  Something about not finding the dist or some such nonsense.  On a hunch, I tried the following:
&lt;br/&gt;
&lt;br/&gt;  &gt; fink install svn svn-client svn-swig-py23
&lt;br/&gt;
&lt;br/&gt;And was then launched on to another installation odyssey of those 3 packages and some 50 additional dependencies.  Is this correct?  I don't really know.  But the last thing I want to do is *not* let fink do its thing.  
&lt;br/&gt;
&lt;br/&gt;After some unknown amount of time (I went to bed while this last one was running) I 
&lt;br/&gt;began the next step - installing the clearsilver template engine.  After downloading the package from clearsilver.net [7], I ran the suggested commands:
&lt;br/&gt;
&lt;br/&gt;  &gt; ./configure --prefix=/sw/ --with-python=/sw/bin/python2.3
&lt;br/&gt;  &gt; make install
&lt;br/&gt;
&lt;br/&gt;but this failed with the following message:
&lt;br/&gt;
&lt;br/&gt;Running ruby test
&lt;br/&gt;dyld: /usr/bin/ruby Undefined symbols:
&lt;br/&gt;_cgi_register_strfuncs
&lt;br/&gt;Failed Ruby Test: hdftest.rb
&lt;br/&gt;    See hdftest.out and hdftest.err
&lt;br/&gt;
&lt;br/&gt;The issue here turned out to be a problem with the configure script.  Namely, it was looking in lots of logical locations to find my installation of ruby, but was NOT looking in /sw which is where fink puts it.  I fixed this by going into the configure script in the clearsilver top level directory, searching for "ruby_search_path", and inserting /sw into the space-delimited list of directories to search for ruby in.
&lt;br/&gt;
&lt;br/&gt;This change got me a little further - on to the link stage of one of the ruby directories, but once there I ran into the same problem again.
&lt;br/&gt;
&lt;br/&gt;So now I have to go to work and do tribe.net things.  So I will leave this work to be completed later on.  I feel like I am close now, because I know that the symbol that is being searched for is in fact in the clearsilver hierarchy.  I have already tried to brut force that symbol into the link line that is now failing but that resulted in more errors occurring.  Gonna have to do a little googling to figure that out.
&lt;br/&gt;
&lt;br/&gt;[1] http://projects.edgewall.com/trac/
&lt;br/&gt;[2] http://subversion.tigris.org/
&lt;br/&gt;[3] http://projects.edgewall.com/trac/wiki/TracOnOsx
&lt;br/&gt;[4] http://fink.sourceforge.net/
&lt;br/&gt;[5] http://lists.edgewall.com/archive/trac/2004-December/001245.html
&lt;br/&gt;[6] http://sourceforge.net/mailarchive/forum.php?thread_id=5082127&amp;amp;forum_id=9724
&lt;br/&gt;[7] http://www.clearsilver.net/downloads/&lt;/div&gt;
				&lt;div&gt;
			posted in
			&lt;a href="http://briatribe.tribe.net"&gt;Briatribe&lt;/a&gt;
			- 1 reply
		&lt;/div&gt;</summary>
    <dc:creator>brian</dc:creator>
    <dc:date>2005-01-06T17:51:24Z</dc:date>
  </entry>
  <entry>
    <title>Spain Trip Report</title>
    <link rel="alternate" href="http://briatribe.tribe.net/thread/f291fc27-8ae0-4280-af9c-15f5c68a6b55" />
    <author>
      <name>brian</name>
    </author>
    <id>http://briatribe.tribe.net/thread/f291fc27-8ae0-4280-af9c-15f5c68a6b55</id>
    <updated>2005-04-26T19:16:25Z</updated>
    <published>2005-04-19T08:27:25Z</published>
    <summary type="html">&lt;div&gt;I don't really have much time to report anything here - outside of the fact that we are alive and well for the moment.  Korin and I are about to rent a car and start driving around Spain, so things may get very interesting in the near future.
&lt;br/&gt;
&lt;br/&gt;The first couple of days have been fun, but a bit jetlagged.  The real difficulty with getting over jetlag here is the fact that as a tourist, your days start at a normal hour but are supposed to last into the wee hours of the morning.  Everyone stays up late here, even on Mondays, and thus far I have not been able to make it past 11PM, which is when most people are eating their dinners!
&lt;br/&gt;
&lt;br/&gt;The night we landed (at around 10PM local time) was our latest night out yet, I think because I slept like the dead on the flight from Munich to Madrid.  We has some fantastic shrimp tapa at about midnight, then some even better churros y chocolate at about 2AM.
&lt;br/&gt;
&lt;br/&gt;Also, we went to the bullfights on Sunday.  Korin has some pretty gory video.  I did not realize what actually goes on at a bullfight - the structure of it was very interesting.  I would imaging many tourists have come to this thing and been horrified.  The worst thing is probably the part after the bull is dead, where they bring out 2 horses and tie him up around the horns and drag him out of the ring.  And a couple minutes later, another bull enters!  Nonstop fun for the whole family.
&lt;br/&gt;
&lt;br/&gt;Anyway, we are off to Toledo tonight, then on to Seville the next day.  If I have internet access, time, and exciting stories to tell I will be sure to check in...
&lt;br/&gt;
&lt;br/&gt;Adios!&lt;/div&gt;
				&lt;div&gt;
			posted in
			&lt;a href="http://briatribe.tribe.net"&gt;Briatribe&lt;/a&gt;
			- 5 replies
		&lt;/div&gt;</summary>
    <dc:creator>brian</dc:creator>
    <dc:date>2005-04-19T08:27:25Z</dc:date>
  </entry>
  <entry>
    <title>Behold the Open Container!</title>
    <link rel="alternate" href="http://briatribe.tribe.net/thread/261b97ef-37d0-4152-92b4-2a113139d348" />
    <author>
      <name>elliot</name>
    </author>
    <id>http://briatribe.tribe.net/thread/261b97ef-37d0-4152-92b4-2a113139d348</id>
    <updated>2005-04-25T18:00:55Z</updated>
    <published>2005-04-20T17:57:14Z</published>
    <summary type="html">&lt;div&gt;Brian, the plug-in stuff for the Open Container is working like a charm.  I don't suppose you'll be spending a lot of time surfing tribe.net while you're in Spain, but take it from me:  people are adding modules and customizing their profiles like we thought they would.
&lt;br/&gt;
&lt;br/&gt;It's all killer, no filler.&lt;/div&gt;
				&lt;div&gt;
			posted in
			&lt;a href="http://briatribe.tribe.net"&gt;Briatribe&lt;/a&gt;
			- 7 replies
		&lt;/div&gt;</summary>
    <dc:creator>elliot</dc:creator>
    <dc:date>2005-04-20T17:57:14Z</dc:date>
  </entry>
  <entry>
    <title>Late night at triibe...</title>
    <link rel="alternate" href="http://briatribe.tribe.net/thread/c74fa7f8-d1fb-4c67-9a16-2f5914074be0" />
    <author>
      <name>brian</name>
    </author>
    <id>http://briatribe.tribe.net/thread/c74fa7f8-d1fb-4c67-9a16-2f5914074be0</id>
    <updated>2005-04-15T00:47:41Z</updated>
    <published>2005-04-08T07:58:26Z</published>
    <summary type="html">&lt;div&gt;Almost 1AM, and we are still here plugging away.
&lt;br/&gt;
&lt;br/&gt;I have been bestowed with the lovely job of being Chief Architect while at the same time being Release Engineer.  It is kind of a pain in the ass to be branching and merging CVS branches, but I actually do kind of enjoy the job of being able to see lots of bug fixes merging into lots of feature enhancements.
&lt;br/&gt;
&lt;br/&gt;Mostly right now we are working on solidifying the next rev of our Open Profile stuff.  It is really cool to see things coming together like they are.  On the back end we are developing a content aggregation framework that is working great, and on the front end we are working on the skins for the modular profile.  Put it all together and you have a really cool profile offering.  I can't wait to extend it to the other areas of the site...&lt;/div&gt;
				&lt;div&gt;
			posted in
			&lt;a href="http://briatribe.tribe.net"&gt;Briatribe&lt;/a&gt;
			- 6 replies
		&lt;/div&gt;</summary>
    <dc:creator>brian</dc:creator>
    <dc:date>2005-04-08T07:58:26Z</dc:date>
  </entry>
  <entry>
    <title>What about "Tribe.net:  The Movie?"</title>
    <link rel="alternate" href="http://briatribe.tribe.net/thread/f5a297c6-8baf-4de8-9947-44b715a880b1" />
    <author>
      <name />
    </author>
    <id>http://briatribe.tribe.net/thread/f5a297c6-8baf-4de8-9947-44b715a880b1</id>
    <updated>2005-03-23T08:50:41Z</updated>
    <published>2005-03-22T06:36:59Z</published>
    <summary type="html">&lt;div&gt;I know there's at least *one* independent film producer in this Tribe:
&lt;br/&gt;
&lt;br/&gt;"Variety reports that Topher Grace will star in an untitled Harold Ramis ('Groundhog Day') comedy that will be based on the popular web service, Friendster.com. Gustin Nash will pen the screenplay.
&lt;br/&gt;
&lt;br/&gt;Topher will play a character that will utilize the website, as well as instant messaging and camera phones, as he looks for love on the Internet."
&lt;br/&gt;
&lt;br/&gt;In the Tribe.net version, maybe a sandal-wearing MBA could use the service to meet furries, freaks and tantra partners?&lt;/div&gt;
				&lt;div&gt;
			posted in
			&lt;a href="http://briatribe.tribe.net"&gt;Briatribe&lt;/a&gt;
			- 5 replies
		&lt;/div&gt;</summary>
    <dc:creator />
    <dc:date>2005-03-22T06:36:59Z</dc:date>
  </entry>
  <entry>
    <title>That's the stuff.</title>
    <link rel="alternate" href="http://briatribe.tribe.net/thread/262e1e2b-3740-40ff-a7a5-d008b44ea892" />
    <author>
      <name>elliot</name>
    </author>
    <id>http://briatribe.tribe.net/thread/262e1e2b-3740-40ff-a7a5-d008b44ea892</id>
    <updated>2005-03-21T04:55:59Z</updated>
    <published>2005-03-21T04:55:59Z</published>
    <summary type="html">&lt;div&gt;Dogfish Head 120 Minute Imperial IPA -- 21% ABV:
&lt;br/&gt;
&lt;br/&gt;http://www.dogfish.com/beer/120minuteipa.cfm&lt;/div&gt;
				&lt;div&gt;
			posted in
			&lt;a href="http://briatribe.tribe.net"&gt;Briatribe&lt;/a&gt;
			- 0 replies
		&lt;/div&gt;</summary>
    <dc:creator>elliot</dc:creator>
    <dc:date>2005-03-21T04:55:59Z</dc:date>
  </entry>
  <entry>
    <title>Interesting insight on Enterprise Software vs. Software You Love...</title>
    <link rel="alternate" href="http://briatribe.tribe.net/thread/07041fbf-115e-469d-a22f-dbc751455a48" />
    <author>
      <name>brian</name>
    </author>
    <id>http://briatribe.tribe.net/thread/07041fbf-115e-469d-a22f-dbc751455a48</id>
    <updated>2005-03-15T02:45:14Z</updated>
    <published>2005-03-08T12:52:49Z</published>
    <summary type="html">&lt;div&gt;http://www.jwz.org/doc/groupware.html
&lt;br/&gt;
&lt;br/&gt;It is very interesting to read articles like this with the new perspective that working at tribe has given me.  I have never actually worked at a company where people were really *in to* the software produced by me and my coworkers.
&lt;br/&gt;
&lt;br/&gt;Well, I guess there were some rave reviews of the stuff I did at Walgreens.  I worked there for 3 years (as a consultant with Accenture) and in that time helped code a complete ground-up replacement for their pharmacy system.  If you ever go to Walgreens and get your prescriptions filled using insurance, chances are (unless that have gutted the whole thing by now) that you are using my code!  Some pharmacists really seemed to like that system, and it was cool, but only because it made their job easier.  They *had* to use it, and the thing that we were giving them (after several iterations) was indeed a better product than the mainframe system that they had when we got there.
&lt;br/&gt;
&lt;br/&gt;But that was an Enterprise System from the get-go, with millions of dollars behind it and a comprehensive product delivery plan along with a staff of 200 people working on it.  Tribe, on the other hand, has been lots of things over the last couple of years.  Sometimes it looks more like a classifieds site, like craigslist.  Sometimes it looks like an event planning site, like evite.  Sometime it is best for gather recommendations and reviews, like sfgate.  Or maybe it is just for friend surfing like friendster.  We have done all these things, some better than others, but it still seems that what keeps folks coming back for more is just gathering together and chatting.  And in something as simple as that, it seems to have become Software We Love.&lt;/div&gt;
				&lt;div&gt;
			posted in
			&lt;a href="http://briatribe.tribe.net"&gt;Briatribe&lt;/a&gt;
			- 5 replies
		&lt;/div&gt;</summary>
    <dc:creator>brian</dc:creator>
    <dc:date>2005-03-08T12:52:49Z</dc:date>
  </entry>
  <entry>
    <title>NEWS ALERT!  Friendster Still Sucks.</title>
    <link rel="alternate" href="http://briatribe.tribe.net/thread/863edcd4-8db6-4374-bd50-e76bf5d65b5e" />
    <author>
      <name>brian</name>
    </author>
    <id>http://briatribe.tribe.net/thread/863edcd4-8db6-4374-bd50-e76bf5d65b5e</id>
    <updated>2005-03-08T22:10:19Z</updated>
    <published>2005-02-02T06:14:34Z</published>
    <summary type="html">&lt;div&gt;I know, I am rather heavily biased in the question of whether or not Friendster has any value.  After all, their growth was always something that we at tribe sought to understand, and they were the front of a wave the we rode out through the latter half of 2003, which resulted in our closing a quality round of Venture funding.  But I am here to tell you, the site still sucks.
&lt;br/&gt;
&lt;br/&gt;Those of you who are still on Friendster may have received via email an update of all the great things that are currently happening with the site.  Here are some excerpts:
&lt;br/&gt;
&lt;br/&gt; -- snip --
&lt;br/&gt;Submit Photo for a Friend
&lt;br/&gt;Do you have friends that have a question mark [?] as their primary photo? Now you can submit photos to your friend's Friendster profile and give them the photos they deserve. It's simple. Visit a friend's profile page and click on the "submit photo" button and follow the instructions to upload a photo. Your friend will have the option to post your photo on their photo page.
&lt;br/&gt; --
&lt;br/&gt;
&lt;br/&gt;"give them the photo they deserve."  Hee hee, I imagine that the opportunity for abuse on this one will be interesting, but more ironic still is the idea that they limit you to 5 but want everyone to have 1 at the very least.
&lt;br/&gt;
&lt;br/&gt; -- snip --
&lt;br/&gt;Profile View Counter
&lt;br/&gt; How popular is your profile? Now you can check out how many times your profile has been viewed. Visit your home page and look at the first line under your "Account Settings" to see this new feature.
&lt;br/&gt; --
&lt;br/&gt;
&lt;br/&gt;This is the feature that prompted this blog entry.  I *love* this.  Perhaps one of the Friendster employees is a regular of http://viewcountersluts.tribe.net - and perhaps that person is reading this blog entry right now.  If you are, let me be the first to warn you that view counters are sacred - don't mess up the processing or you will certainly pay the consequences.  (see http://sanfrancisco.tribe.net/thread/3afa4adc-8cb3-44c3-aa0e-041ad83261ad?tribeid=bbe523ba-f877-4923-80b3-9bce3cd8342e&amp;amp;r=10535 for a complete description of what went wrong and how we fixed it).  
&lt;br/&gt;
&lt;br/&gt; -- snip --
&lt;br/&gt;Friendster Sponsored Events 
&lt;br/&gt;Take a look at our current and upcoming Friendster sponsored events, we're currently sponsoring the ManiaTV! college tour and two parties in San Francisco.
&lt;br/&gt; --
&lt;br/&gt;
&lt;br/&gt;Hm... 2 events right here in SF.  I thought I would take a look, and I found that the events are the following:
&lt;br/&gt;
&lt;br/&gt;-- snip --
&lt;br/&gt;SF DJ Dreamteam 2005
&lt;br/&gt;Thursday, Feb. 3rd, San Francisco, CA.
&lt;br/&gt;	Red, Valentine's Day Party
&lt;br/&gt;Saturday, Feb. 12th, San Francisco, CA.
&lt;br/&gt;View the flyer 
&lt;br/&gt; --
&lt;br/&gt;
&lt;br/&gt;HEY!  They are having an event the same day we are!  February 3 is going to be a big night for social networkers all over the City.  But somehow I don't think we will really be stealing each others' crowd.
&lt;br/&gt;
&lt;br/&gt;I think that a more interesting bit of content on the events page is the following DISCLAIMER:
&lt;br/&gt;
&lt;br/&gt;-- snip --
&lt;br/&gt;"Friendster is not responsible for, and disclaims any and all  liability for, all Friendster sponsored events/tours, all Date My Friend™, LA DJ The Movie, or  Declare Yourself events,  your attendance or activities at such events and the acts, omissions and conduct of any participants, members, promoters,  sponsors or any third parties in connection with such events."
&lt;br/&gt;--
&lt;br/&gt;
&lt;br/&gt;In essence, if you go to a Friendster party an have a good time, they are in no way, shape, or form responsible for that.
&lt;br/&gt;
&lt;br/&gt;And finally:
&lt;br/&gt;
&lt;br/&gt;-- snip --
&lt;br/&gt;Meet the Date Doctor! 
&lt;br/&gt; According to the date doctor, "Eight out of ten women believe that the first kiss will tell them everything they need to know about a man." Meet this urban legend and other cast members of the new romantic comedy HITCH.
&lt;br/&gt; --
&lt;br/&gt;
&lt;br/&gt;The fakester revolution continues.  I just love the fact that Friendster, once a staunch opponent to profiles that weren't backed by real people, continues to put up approved corporate fakesters as marketing gimics.  But they are making more money than we are so more power to 'em.  Here's to hoping that we find more interesting ways to make money than that.
&lt;br/&gt;
&lt;br/&gt;But with all these going on at Frienster, I thought it was time that I logged back in, to try to fall in love all over again.  I found that I had 2 new friend requests waiting.  In a nice new green outlined box - looks like they have gone beyond the Confederate gray motif to draw my attention with other colors.  Not bad.   Unfortunately what really drew my attention was the ipod ad just below with the iPod running back and forth.  We have these on tribe and I hated them, and now I hate them even more.
&lt;br/&gt;
&lt;br/&gt;Also, I noticed that my profile has been viewed 0 times since 2/1/05.  So sad.  Of course, this could be due to the fact the I have 4 friends on Friendster.  I used to have 5 but one of them was a fakester generated by that fakester generating engine (what was that thing called) and I guess she has since been exterminated.  Another friend of mine is "jerry", who happens to be my dad but also happens to not have a picture up.  Maybe I should take advantage of the new "upload photos for friends" feature to make my dad look like Fabio.  Now you can be an even bigger hit with the ladies, dad!
&lt;br/&gt;
&lt;br/&gt;So I went to post a new bulletin and saw that I had 3 messages in my inbox, and that there are 2 ads per page.  Is 2 ads all tribe has to do to make us rich and famous?  There in my inbox are 3 messages, 2 from patti dated 8/21/2003 and one from the now defunct Mika, the fakester that has presumably been terminated.  But her message lives on.  I will cherish it until the day that my account has also gone to that great /dev/null in the Friendster bit bucket.  Just out of curiosity I clicked on Mika and got an Invalid User ID error.  She dead.
&lt;br/&gt;
&lt;br/&gt;Back on my homepage, was a new bit of commercialism that was not there when I first logged in: "Local Sponsored Offers".  Jobs, Florists, Restaurants, Motels (presumably to take all of the lovely Friendsterettes that I'll be meeting once I start surfing), Apartments, Attractions, Home Decor, Vacations, and Bars and Clubs.  Interesting... local connections.  That is something I get at tribe, but friendster has more people, and presumably better information - we *all* know how important it is to have a "critical mass" in a market!!  So I clicked on restaurants and it took me to a page full of links to places outside of the Friendster site.  I clicked on the first one which was a link that goes through an ad server and lands on citysearch.com.  The restaurant they gave me?  TGI Fridays in San Mateo.  8.4 out of 10!  This is too easy.  I went back to my homepage and clicked again.  Presumably the adserver would direct me to another restaurant and it did.  TGI Friday's in San Bruno!!  7.0 out of 10.  I don't know what's worse - the fact that TGI Friday's is on CitySearch, or the fact that the CitySearch staff wrote about it.  Here is the review:
&lt;br/&gt;
&lt;br/&gt; -- snip --
&lt;br/&gt;Every night is the weekend at this bistro, where families enjoy American kitsch and cuisine alongside partying singles.
&lt;br/&gt;
&lt;br/&gt;In Short
&lt;br/&gt;The much-copied look of hardwood floors, decorative stained glass, checked tablecloths, brass rails and walls filled with knickknacks has been a staple at this restaurant franchise. Originally a hit for its frisky bar scene, Friday's is now known just as much for its kid-friendly entrees. The menu alternates between typical American fare (salads, potato skins, Angus burgers and grilled chicken) and modestly international cuisine like fajitas, wraps and pot stickers.
&lt;br/&gt; --
&lt;br/&gt;
&lt;br/&gt;I think they missed the part about corporate cookie cutter bar &amp;amp; grill, where all of the staff must wear at least 15 pieces of flair.  
&lt;br/&gt;
&lt;br/&gt;They have discussions on friendster now too.  Kinda like tribes you know?  Except for the fact that the profiles have no idea which discussions that the profilee has participated in.  That may have been a nice feature to implement.  And I saw a testimonial for one of the posters that was created on August 3, 1901.  The glitches are still there, but the site is far more responsive than it once was.  So the PHP folks have a win there, but I think tribe would do pretty well too if we had dozens of app servers serving this little Java-based site.
&lt;br/&gt;
&lt;br/&gt;So now I am tired of looking at Friendster again.  I know that they have millions of users, lots of venture money, ad revenue, and deals to pimp Will Smith movies, but I am here to tell you that Friendster still sucks.&lt;/div&gt;
				&lt;div&gt;
			posted in
			&lt;a href="http://briatribe.tribe.net"&gt;Briatribe&lt;/a&gt;
			- 15 replies
		&lt;/div&gt;</summary>
    <dc:creator>brian</dc:creator>
    <dc:date>2005-02-02T06:14:34Z</dc:date>
  </entry>
  <entry>
    <title>Brian What do you do best?</title>
    <link rel="alternate" href="http://briatribe.tribe.net/thread/7e21d964-0cb4-4057-a40d-fcb7714e9319" />
    <author>
      <name>amisun</name>
    </author>
    <id>http://briatribe.tribe.net/thread/7e21d964-0cb4-4057-a40d-fcb7714e9319</id>
    <updated>2005-03-02T15:25:43Z</updated>
    <published>2005-03-02T09:49:45Z</published>
    <summary type="html">&lt;div&gt;What is the thing you do best?
&lt;br/&gt;&lt;/div&gt;
				&lt;div&gt;
			posted in
			&lt;a href="http://briatribe.tribe.net"&gt;Briatribe&lt;/a&gt;
			- 1 reply
		&lt;/div&gt;</summary>
    <dc:creator>amisun</dc:creator>
    <dc:date>2005-03-02T09:49:45Z</dc:date>
  </entry>
  <entry>
    <title>Flame War...</title>
    <link rel="alternate" href="http://briatribe.tribe.net/thread/63d72978-cc79-43a1-9d56-6b2a7bb9c639" />
    <author>
      <name>brian</name>
    </author>
    <id>http://briatribe.tribe.net/thread/63d72978-cc79-43a1-9d56-6b2a7bb9c639</id>
    <updated>2005-02-26T23:28:07Z</updated>
    <published>2005-02-06T00:29:13Z</published>
    <summary type="html">&lt;div&gt;Well, I have now been educated in how tribe has enhanced another long standing tradition in online communities.  I have, for better or worse, engaged in my first flame war.  I suppose as far as flame wars go it was actually pretty mild.  I mean it didn't last for more than a couple of volleys and the discussion on that thread is now continuing on the innocuous path on which it originally started.  The thread is at 
&lt;br/&gt;
&lt;br/&gt;http://sanfrancisco.tribe.net/thread/383c9b8c-cc25-4f91-ad1a-9bd4ee31869f?tribeid=55390203-2ed8-48f5-8b4b-036a3ec36c89&amp;amp;r=10535
&lt;br/&gt;
&lt;br/&gt;and I only have a couple of entries in it.  This post is not about the argument, but about the meta-argument.  After participating in a couple of exchanges and having taken the time to further reflect about it, I am fascinated at the nature of these types of exchanges and how they actually relate to real life human interactions.  The first thing that got my goat was that I felt that I had been unfairly judged, and that values were being placed on me that I did not deserve.  This judgment, however, did not happen in the conversation itself.  It is something that I have always heard grumblings of in my neighborhood, and have always been very sensitive to.  So in my initial message I was not irate, but I was calling out for some clarificaiton which I promptly got, in the form of positive reenforcement and all-around general feel-good-ness.  However, in my initial post I also provided, how shall we say, a terse summation of an issue that earned the immediate ire of a tribester that I have yet to meet.  She was offended - I responded - she responded - I responded - she responded.  This discussion was barely touched by anyone else.
&lt;br/&gt;
&lt;br/&gt;Now many of you in this tribe have met me, some have known me for years, and all would probably agree that I am a pretty non-combative individual.  Why would this conversation pull me out of that?  I think in many ways this argument was no different than most that people have in real life.  She had a point to make, I had a point to make, I miscommunicated my point and she jumped all over it.  I tried to clarify my point but the damage was already done.  My character had already been established in this conversation.  And established in the monotone of clear text, a style of communication which may be easily interpreted on 2 different computer screens in a completely different light.
&lt;br/&gt;
&lt;br/&gt;And there was also a little bit of tribe special sauce in this one, where it seems like everyone who was reading the discussion knows both of us but we have never met one another.  Add to that the fact that tribe had a party a day or two after this discussion began, and you have so much more than just an anonymous flamewar on the internet.  You have real people with real opinions sitting on ends of a long table and 600 tribe members sitting in between watching the lobby go back and forth.  I got to the tribe party at about 8, and the venerable "Trouble P" was outside having a cigarette.  I stopped and we chatted and within a couple of minutes he brought up the thread.  "You really got your claws out there" he said to me.  And then he assured me that my adversary was the sweetest person and that he hoped she and I could sit down someday and discuss our debate in person.  This was the first of a few discussions I had that night with other folks in the tribe about this.  I didn't really make it a point to talk about it with everyone, but I did mention it in passing a couple times and ended up talking about it at length.  But the discussions had were only tangentially about the topic of the argument.  They were more about the people involved in it.  People were far more concerned that we didn't draw conclusions about the other person I think, than they were about who was wrong or who was right.  Everyone was very careful to assure me that she is a sweet person, even though I never once asserted her not to be.
&lt;br/&gt;
&lt;br/&gt;And what is the point you say?  Well, I don't know exactly.  There is indeed something significant about this interaction to me.  Perhaps it is because it is the first time I have been involved in such an exchange on tribe.  Perhaps it is because it was a topic that was important enough to me to draw me out of a typically jovial shell.  Or perhaps it is because it happened so close to the party, and there were so many people, *real* people, at the party who were at least in some minor way affected by it, or rather worried that I was affected by it.  Maybe they read it and thought less of me.  Maybe they read it and thought less of her.  Maybe they read it and just hoped that this wouldn't mean that I could never be friends with her.  But whatever the point, I can certainly say that the day of the conventional (anonymous) flame war is passed us.  In a system where we participate each and every day, and give something of ourselves with every thought-out post, we are more and more attached to that system as a means of self expression.  Maybe the point is that I have expressed myself, or rather have been perceived, in a way that does not suit me.  And that the lesson for me and anyone else is that doing so on tribe is as serious as doing it in real life.&lt;/div&gt;
				&lt;div&gt;
			posted in
			&lt;a href="http://briatribe.tribe.net"&gt;Briatribe&lt;/a&gt;
			- 7 replies
		&lt;/div&gt;</summary>
    <dc:creator>brian</dc:creator>
    <dc:date>2005-02-06T00:29:13Z</dc:date>
  </entry>
  <entry>
    <title>[Tribe] Alt Binding...</title>
    <link rel="alternate" href="http://briatribe.tribe.net/thread/f2cab4ef-0262-4641-b5c0-079d9c6c1557" />
    <author>
      <name>brian</name>
    </author>
    <id>http://briatribe.tribe.net/thread/f2cab4ef-0262-4641-b5c0-079d9c6c1557</id>
    <updated>2005-02-18T14:31:41Z</updated>
    <published>2005-02-05T23:22:04Z</published>
    <summary type="html">&lt;div&gt;One common (yet unintended) usage that many users have on tribe is that they maintain more than one account, say one for "Work me" and one for "Fun me".  If you are looking for a job, you may not want potential employers to see all your boot fetish pictures.  On the other hand, you may want them to, in which case this post won't hold much interest for you.
&lt;br/&gt;
&lt;br/&gt;A feature for tribe that I have been kicking around on the side is one that allows people to easily maintain multiple accounts on the system.  This feature is not in anyone's product plan, and it isn't even checked into version control, but I have it and I wanted to put it out there to see what you guys thought.  Here is how it works:
&lt;br/&gt;
&lt;br/&gt;1) If you have multiple accounts on tribe, log in to the system as one of them.  Doesn't really matter if it is your "main" account or not, you don't need to even have a main account - just more than one.
&lt;br/&gt;2) A page would be available that you could go to in order to "link" accounts.  Linking an account would entail entering an email address and password of the other account.  If the email/password validation check passes, then the accounts are considered linked.  
&lt;br/&gt;3) Once linked, an avatar of you and one of each of your alts appears on the top of every page, just under the "my tribe.net" links.  Clicking on any one of these avatars will switch you to that user, without you needing to log out and log back in.
&lt;br/&gt;4) There would also be an "our tribe.net" page, that would show you dashboard statistics for each of your alts.  This means that on one page you can see if you have new messages or if your tribes have new messages.  Clicking on any of those links will change you to that user and take you to that page.  So if you have an alt that is in a private tribe and you are logged on as someone else, the "our tribe.net" page may show that your alt has messages waiting in a private tribe.  Clicking on that tribe (just like you would on your homepage today) will have the affect of changing you into that user, then taking you to that tribe.  The "my tribe.net" page would still be available, and would work as it does today for the person you are currently logged in as.
&lt;br/&gt;
&lt;br/&gt;The interesting thing about this feature is that people do it already today.  I have actually heard of people who have NINE alts!  So this isn't actually introducing a new feature per se, it is just streamlining a function that is already there.
&lt;br/&gt;
&lt;br/&gt;What do you guys think?  Is this a worthwhile thing to do?  Would you or any of your friends (or any of your alts ;) pay for such a feature?&lt;/div&gt;
				&lt;div&gt;
			posted in
			&lt;a href="http://briatribe.tribe.net"&gt;Briatribe&lt;/a&gt;
			- 2 replies
		&lt;/div&gt;</summary>
    <dc:creator>brian</dc:creator>
    <dc:date>2005-02-05T23:22:04Z</dc:date>
  </entry>
  <entry>
    <title>Wikipedia as a graph of nodes...</title>
    <link rel="alternate" href="http://briatribe.tribe.net/thread/7f2a9827-1b44-4b56-9314-d48749076a6b" />
    <author>
      <name>brian</name>
    </author>
    <id>http://briatribe.tribe.net/thread/7f2a9827-1b44-4b56-9314-d48749076a6b</id>
    <updated>2005-02-01T01:03:45Z</updated>
    <published>2005-01-06T18:53:53Z</published>
    <summary type="html">&lt;div&gt;John Battelle has a cool post on his blog about tools to visualize colloborative filters - in this case, MusicPlasma.
&lt;br/&gt;
&lt;br/&gt;http://battellemedia.com/archives/001163.php
&lt;br/&gt;
&lt;br/&gt;But this is yet another instance of "related tribes" at work.  People who like this also like that.  People who are in this tribe are also in these tribes.  Here at tribe we have an exceptionally efficient collaborative filtering engine, but lack the visualization tools to make it a real world changer.
&lt;br/&gt;
&lt;br/&gt;But that is a different topic - what I really want to talk about is what a WikipediaPlasma would look like.  Each wikipedia page could be crawled, and pages that link one another could be considered "friends".  I wonder what such a graph would look like, and if "clusters of knowledge" would result.
&lt;br/&gt;
&lt;br/&gt;Personally, I have the chops to do the spidering of wikipedia, but I have no capability whatsoever to create the visualization (in any reasonable amout of time).  Woe to the man who can't make his demos look sexy...&lt;/div&gt;
				&lt;div&gt;
			posted in
			&lt;a href="http://briatribe.tribe.net"&gt;Briatribe&lt;/a&gt;
			- 2 replies
		&lt;/div&gt;</summary>
    <dc:creator>brian</dc:creator>
    <dc:date>2005-01-06T18:53:53Z</dc:date>
  </entry>
  <entry>
    <title>tribe and blogging</title>
    <link rel="alternate" href="http://briatribe.tribe.net/thread/ebe57764-93df-4b45-9027-4f6c93defa96" />
    <author>
      <name>spam</name>
    </author>
    <id>http://briatribe.tribe.net/thread/ebe57764-93df-4b45-9027-4f6c93defa96</id>
    <updated>2005-01-21T20:41:54Z</updated>
    <published>2005-01-15T01:33:06Z</published>
    <summary type="html">&lt;div&gt;I shouldn't be able to do this.  Why?  because it's brian's blog.
&lt;br/&gt;
&lt;br/&gt;At least he should be able to prevent anyone but himself from starting new threads.
&lt;br/&gt;
&lt;br/&gt;It would be very, very cool if tribe could create a tribe type that would be suited for a blog.  Such a tribe would have the following features:
&lt;br/&gt;
&lt;br/&gt;1) only the tribe moderator can start threads, unless the blog owner decides otherwise.
&lt;br/&gt;2) tribe is fully visible from outside the tribe system without requiring a viewer to log into tribe
&lt;br/&gt;3) the blogs tribe ID would be featured in the person's profile page in some fashion.  Perhaps shown as a 4th tabbed page in the profile, and perhaps with "most recent entries" on the basic profile
&lt;br/&gt;4) a user should be able to start a new thread in their tribe blog from their main home page.
&lt;br/&gt;
&lt;br/&gt;probably other stuff, but that's off the top of my head.  Ability to apply different styles to the blog as viewed from outside tribe would be nice.
&lt;br/&gt;
&lt;br/&gt;It would be a great way to increase outside exposure to tribe.net, as well as give members even more of a reason to hang out here.  Why maintain a seperate livejournal when it's all here, and already linked to your friends?
&lt;br/&gt;
&lt;br/&gt;It would also be cool to be able to list the blog tribes you read in a seperate space as the rest of your tribes, if you so choose.&lt;/div&gt;
				&lt;div&gt;
			posted in
			&lt;a href="http://briatribe.tribe.net"&gt;Briatribe&lt;/a&gt;
			- 8 replies
		&lt;/div&gt;</summary>
    <dc:creator>spam</dc:creator>
    <dc:date>2005-01-15T01:33:06Z</dc:date>
  </entry>
  <entry>
    <title>Tribe.net and "folksonomies"...</title>
    <link rel="alternate" href="http://briatribe.tribe.net/thread/e354fb8a-5c53-4370-89c3-bffc0605af04" />
    <author>
      <name>brian</name>
    </author>
    <id>http://briatribe.tribe.net/thread/e354fb8a-5c53-4370-89c3-bffc0605af04</id>
    <updated>2005-01-14T19:23:56Z</updated>
    <published>2005-01-05T16:51:33Z</published>
    <summary type="html">&lt;div&gt;Slashdot has a post yesterday [1] about del.icio.us [2] and Flickr [3] and their use of user-generated, ground up taxonomy generation.  The story contains a link to a thesis [4] on the topic, which contains lots of information about other forms of categorization and classification and brings up the idea that these sorts of user-generated taxonomies, while they have their weaknesses, are actually quite good for allowing uses to browse through available content.
&lt;br/&gt;
&lt;br/&gt;At tribe, we have a few areas where taxonomy is needed:
&lt;br/&gt;- Listings
&lt;br/&gt;- Recommendations and Reviews
&lt;br/&gt;- Tribes
&lt;br/&gt;- Geographic Regions
&lt;br/&gt;
&lt;br/&gt;As many have mentioned (and lamented), our listing taxonomy bears a great resemblance to that of craigslist [5].  This was not by accident - the point of introducing both the Listings hierarchy *and* the Geographic Regions hierarchy was in fact to demonstrate in no uncertain terms that tribe.net is a local product that may be used to connect with local people and find out what is going on, much like craigslist.
&lt;br/&gt;
&lt;br/&gt;The reason that you need to put things into a hierarchy in the first place is to make them easier to find.  Whether we are talking about folders in your filing cabinet, listings on tribe or craigslist, or files on your disk drive, all of those things exist to allow you to quickly narrow your search when looking for an item.  But what would tribe listings be like if they could just be arbitrarily tagged in addition to being categorized.  Would it result in a more interesting browsing experience?  Furthermore, what if you could also tag things like your photos (a la Flickr) as well as the postings you create for the tribes you are in.  Finally, what if on a person's people card, just as on your del.icio.us homepage[6], the tags for your content are available for others to browse.  Could be a very interesting way to allow cross-linking between different content types on tribe...
&lt;br/&gt;
&lt;br/&gt;Another interesting extension of user-generated taxonomies that we already have today on tribe is the related tribes functionality.  This is actually a more advanced version of just manual tagging and relational access to other tribes that share those tags.  Related tribes is geared completely off implicit user behavior, rather than explicit user tagging.  It is more like a collaborative filter, as in "users who liked this also liked that" a la Amazon, but it does in fact server as a better categorization and browsing tool for tribes than does the taxonomy that we have for those tribes.  This could be because the taxonomy is only 1 level deep and that browsing through 3000 tribes about "entertainment" is unwieldy.  But by linking together tribes based on membership, we have in essence allowed completely different types of interests to become tightly linked based on the people who share them.  This is a powerful idea indeed and is one that we hope to leverage further in order to make tribe.net an even more interesting site.  We should be able to suggest listings, recommendations, and other types of content to users based on the listings that their friends are looking at.  The ultimate idea being that in a socially networked environment there are a lot of conclusions that may be drawn programmatically that will surface information that users may not otherwise have found.
&lt;br/&gt;
&lt;br/&gt;[1] http://slashdot.org/article.pl?sid=05/01/04/0117245&amp;amp;tid=95
&lt;br/&gt;[2] http://del.icio.us
&lt;br/&gt;[3] http://www.flickr.com
&lt;br/&gt;[4] http://www.adammathes.com/academic/computer-mediated-communication/folksonomies.html
&lt;br/&gt;[5] http://www.craigslist.org
&lt;br/&gt;[6] http://del.icio.us/bplawler&lt;/div&gt;
				&lt;div&gt;
			posted in
			&lt;a href="http://briatribe.tribe.net"&gt;Briatribe&lt;/a&gt;
			- 2 replies
		&lt;/div&gt;</summary>
    <dc:creator>brian</dc:creator>
    <dc:date>2005-01-05T16:51:33Z</dc:date>
  </entry>
  <entry>
    <title>Netflix is GREEN!</title>
    <link rel="alternate" href="http://briatribe.tribe.net/thread/c7db914e-2cd4-4443-b7b3-e4198cc91629" />
    <author>
      <name>brian</name>
    </author>
    <id>http://briatribe.tribe.net/thread/c7db914e-2cd4-4443-b7b3-e4198cc91629</id>
    <updated>2005-01-14T04:31:25Z</updated>
    <published>2004-11-10T19:15:40Z</published>
    <summary type="html">&lt;div&gt;I'm digging through my mailbox yesterday looking for my 2 new Netflix flix and I see these lime green envelopes.  They are GREEN now!  And not a nice subtle hunter green but a bright obnoxious lime green...
&lt;br/&gt;
&lt;br/&gt;I am sure there was an MBA involved in this decision.&lt;/div&gt;
				&lt;div&gt;
			posted in
			&lt;a href="http://briatribe.tribe.net"&gt;Briatribe&lt;/a&gt;
			- 6 replies
		&lt;/div&gt;</summary>
    <dc:creator>brian</dc:creator>
    <dc:date>2004-11-10T19:15:40Z</dc:date>
  </entry>
  <entry>
    <title>[Tribe] Tribes vs. Usenet...</title>
    <link rel="alternate" href="http://briatribe.tribe.net/thread/e159fc80-591d-4d38-baa2-dac6efe5cd81" />
    <author>
      <name>brian</name>
    </author>
    <id>http://briatribe.tribe.net/thread/e159fc80-591d-4d38-baa2-dac6efe5cd81</id>
    <updated>2005-01-14T01:43:22Z</updated>
    <published>2004-10-17T00:28:29Z</published>
    <summary type="html">&lt;div&gt;Sometimes it seems that tribe.net is "just another usenet".  After all, people have been getting into heated discussions online for many many years.  It sometimes leaves me wondering what we are doing here.  Then, today, I was looking at some of my less visited tribes - tribes that I joined not because I was really interesting in discussing the topic, but because it was just something I like (Morrissey in this case).
&lt;br/&gt;
&lt;br/&gt;Fact is that community sites only allow you to actively participate.  You aren't in the discussion unless you contribute.  However, on tribe you membership in a tribe contributes to your own profile.  The fact that you are there is significant, even if you are not a contributor.
&lt;br/&gt;
&lt;br/&gt;But the most interesting contribution that you make is not that your profile shows that you are interesting.  The most interesting thing is that by expressing your interest in a certain topic you are making your contribution to the "related tribes" feature.  If you connect to all the things you are interested in, then you are implicitly making a contribution to suggesting other interesting tribes to people who visit your tribes.  This is the reason that the "ALL THINGS MORRISSEY" tribe links to The Cure, The Smiths, Morrissey, Brit Pop, etc.  I have only posted to the Morrissey tribe twice, but my presence there lends to that tribe's related tribes all of the things that I like in addition to thinking Morrissey is awesome.
&lt;br/&gt;
&lt;br/&gt;This is a *monumental* improvement over previous communities for the following reason.  For communities to be interesting, people must contribute.  However, a very small portion of people on the internet ever publish (compared to those who "consume").  Tribe, however, allows you to still contribute to the community without actually "publishing".  If we continue to grow features like this, then the site will be a truly unique experience in online communities as it will better demonstrate the taste and interests of each of the participants.&lt;/div&gt;
				&lt;div&gt;
			posted in
			&lt;a href="http://briatribe.tribe.net"&gt;Briatribe&lt;/a&gt;
			- 6 replies
		&lt;/div&gt;</summary>
    <dc:creator>brian</dc:creator>
    <dc:date>2004-10-17T00:28:29Z</dc:date>
  </entry>
  <entry>
    <title>Got a Banjo for Christmas...</title>
    <link rel="alternate" href="http://briatribe.tribe.net/thread/367e7e6e-7f82-4ecf-b10e-9123cc40f3fd" />
    <author>
      <name>brian</name>
    </author>
    <id>http://briatribe.tribe.net/thread/367e7e6e-7f82-4ecf-b10e-9123cc40f3fd</id>
    <updated>2005-01-10T00:59:16Z</updated>
    <published>2005-01-03T06:42:16Z</published>
    <summary type="html">&lt;div&gt;Every time I ever hear bluegrass music and Korin is around, I always say "man I love the banjo.  I wish I could play one."  Bluegrass music just makes me smile, what can I say?  Perhaps I am just a hillbilly at heart.
&lt;br/&gt;
&lt;br/&gt;Now, Korin has called me on this ever present but never achieved dream.  She bought me a banjo for Christmas and I now have no more excuses.  If I don't learn it now, it is because I didn't take the initiative to do so.  The heat is on.
&lt;br/&gt;
&lt;br/&gt;So while I was sitting here in Colorado on what is now an extended holiday vacation (since we missed our flight back to SF by 8 minutes) a new RSS headline from boingboing comes scrolling by:
&lt;br/&gt;
&lt;br/&gt;"More CC-licensed banjo manuals"
&lt;br/&gt;
&lt;br/&gt;Man do I love boingboing.  In my time of need, they come through with just the information I need.  So I thought I better start a thread about my progress with the banjo, just so that if ever there is a month that goes by where I don't touch the thing I will have this thread just sitting here rotting, staring at me saying "you blew it - you have a banjo sitting at home just waiting for attentiion."
&lt;br/&gt;
&lt;br/&gt;So, just for reference, here is the link to the 2 Creative Commons banjo books that boingboing has brought to me completely coincidentally.  Have I mentioned how much I like boingboing?
&lt;br/&gt;
&lt;br/&gt;http://funkyseagull.com/book/tao.html
&lt;br/&gt;
&lt;br/&gt;http://funkyseagull.com/five/five-strings.htm
&lt;br/&gt;
&lt;br/&gt;I've been grinnin' for long enough, time I learned to start pickin'!&lt;/div&gt;
				&lt;div&gt;
			posted in
			&lt;a href="http://briatribe.tribe.net"&gt;Briatribe&lt;/a&gt;
			- 1 reply
		&lt;/div&gt;</summary>
    <dc:creator>brian</dc:creator>
    <dc:date>2005-01-03T06:42:16Z</dc:date>
  </entry>
  <entry>
    <title>[Tribe] Community, "critical mass", and the value of social networks...</title>
    <link rel="alternate" href="http://briatribe.tribe.net/thread/08616191-d56b-47cc-a6cf-3065c65bc489" />
    <author>
      <name>brian</name>
    </author>
    <id>http://briatribe.tribe.net/thread/08616191-d56b-47cc-a6cf-3065c65bc489</id>
    <updated>2005-01-09T19:27:15Z</updated>
    <published>2005-01-09T19:27:15Z</published>
    <summary type="html">&lt;div&gt;The other day at lunch we were talking about craigslist and tribe and other sites on the web that build up a big following of loyal users.  One area of interest for us is the building of critical mass to make our marketplace more useful to everyone.  More people means more listings means more usefulness means more word-of-mouth advertising means more people and so on... 
&lt;br/&gt;
&lt;br/&gt;Craigslist is obviously a very popular Bay Area destination for free online classifieds.  So popular in fact that it has become somewhat difficult to use.  The problem is that while craigslist is the benificiary of an ad hoc community vibe that has developed around it, the application itself is not fundamentally built to facilitate trusted communications among millions of users.  The result is that as craigslist grows, the community vibe declines since there is no way to filter out the noise of a million equal voices.
&lt;br/&gt;
&lt;br/&gt;On the other hand, as Tribe grows we get the opposite effect.  Not only are there more tribes covering more interests and more listings about more local opportunities, but there are more recommendations and most importantly, more reviews of those recommendations.  So as our database of places to go and things to do continues to increase, and member reviews of those places continue to accumulate, we are able to show off the fact that the application *is* fundamentally built to support interactions between millions of users.  Even better is that if someday you find that there are just too many reviews to make this useful, that there are just too many listings to manage, then you may choose to just see listings that are from your friends, friends of friends, and their friends, or maybe just from a certain subset of tribes that you know you are interested in.
&lt;br/&gt;
&lt;br/&gt;With a system that allows people to cluster together in self-selecting groups (i.e. friends and tribes) and by then deducing second order clusters based on those groups (i.e. related tribes) Tribe will *always* be a cozy place to hang out on the internet even when there are millions of members.&lt;/div&gt;
				&lt;div&gt;
			posted in
			&lt;a href="http://briatribe.tribe.net"&gt;Briatribe&lt;/a&gt;
			- 0 replies
		&lt;/div&gt;</summary>
    <dc:creator>brian</dc:creator>
    <dc:date>2005-01-09T19:27:15Z</dc:date>
  </entry>
  <entry>
    <title>Check out the Beastles...</title>
    <link rel="alternate" href="http://briatribe.tribe.net/thread/72e3c287-23ec-4c66-84fa-5ef7ab3becd5" />
    <author>
      <name>brian</name>
    </author>
    <id>http://briatribe.tribe.net/thread/72e3c287-23ec-4c66-84fa-5ef7ab3becd5</id>
    <updated>2004-12-23T08:20:12Z</updated>
    <published>2004-12-23T08:20:12Z</published>
    <summary type="html">&lt;div&gt;See my recommendation in this tribe.  This album just makes me happy.&lt;/div&gt;
				&lt;div&gt;
			posted in
			&lt;a href="http://briatribe.tribe.net"&gt;Briatribe&lt;/a&gt;
			- 0 replies
		&lt;/div&gt;</summary>
    <dc:creator>brian</dc:creator>
    <dc:date>2004-12-23T08:20:12Z</dc:date>
  </entry>
  <entry>
    <title>Lots of new photos from the Thanksgiving roadtrip...</title>
    <link rel="alternate" href="http://briatribe.tribe.net/thread/73a5e2ec-0902-43ca-959b-8ac5bfa360af" />
    <author>
      <name>brian</name>
    </author>
    <id>http://briatribe.tribe.net/thread/73a5e2ec-0902-43ca-959b-8ac5bfa360af</id>
    <updated>2004-12-23T08:19:18Z</updated>
    <published>2004-12-23T08:19:18Z</published>
    <summary type="html">&lt;div&gt;Got some new stuff in the photo album from our roadtrip and flight to St. Louis for Thanksgiving.  The route was:
&lt;br/&gt;
&lt;br/&gt;(in rental car)
&lt;br/&gt;San Francisco -&gt; just short of Yosemite
&lt;br/&gt;Up north of Yosemite almost to Lake Tahoe
&lt;br/&gt;Loop around and go down through Death Valley
&lt;br/&gt;Down to Las Vegas
&lt;br/&gt;Across the Hoover Dam
&lt;br/&gt;On to the Grand Canyon
&lt;br/&gt;On to Bryce Canyon
&lt;br/&gt;Up to Salt Lake City for a plane to St. Louis.
&lt;br/&gt;
&lt;br/&gt;We had a great time on the trip, despite the many mishaps.  Our first route across the Sierras was closed, Death Valley was cold and partially closed, and the Grand Canyon was socked in with fog.  I was a bit put off by the Grand Canyon, but I *really* felt for the people who had come from Europe and Asia.&lt;/div&gt;
				&lt;div&gt;
			posted in
			&lt;a href="http://briatribe.tribe.net"&gt;Briatribe&lt;/a&gt;
			- 0 replies
		&lt;/div&gt;</summary>
    <dc:creator>brian</dc:creator>
    <dc:date>2004-12-23T08:19:18Z</dc:date>
  </entry>
  <entry>
    <title>[SOFTWARE][XML] XPath is too cool...</title>
    <link rel="alternate" href="http://briatribe.tribe.net/thread/b1e727db-a5ee-4b23-974e-1915c0434818" />
    <author>
      <name>brian</name>
    </author>
    <id>http://briatribe.tribe.net/thread/b1e727db-a5ee-4b23-974e-1915c0434818</id>
    <updated>2004-12-20T19:34:09Z</updated>
    <published>2004-12-13T04:08:00Z</published>
    <summary type="html">&lt;div&gt;So I am currently doing a little project where I want to retrieve a web page and programmatically pull stuff out of it.  Not all sites have yet drank the RSS cool-aid, and even if they had there is not guarantee that they will syndicate the dataset that I need.
&lt;br/&gt;
&lt;br/&gt;What to do...
&lt;br/&gt;
&lt;br/&gt;There is an easy way (albeit brittle) to do this.  Retrieve the page with HTTP-Client, Tag balance with NekoHTML, and walk it with XPath.  Lots of open source tools here, but they are pretty easy to tie together and the result is a stunningly compact piece of code that knows how to read web pages.
&lt;br/&gt;
&lt;br/&gt;An easy example is del.icio.us.  Let's say you want to get all of your most recent links from del.icio.us (which you could also do with RSS, but this one is simple so it makes for a quick explanation).
&lt;br/&gt;
&lt;br/&gt;Here is a play-by-play of the Java code that you could use to retrieve a list of links from delicous:
&lt;br/&gt;
&lt;br/&gt;// First, import HTTP client library classes.
&lt;br/&gt;import org.apache.commons.httpclient.HttpClient;
&lt;br/&gt;import org.apache.commons.httpclient.HttpMethod;
&lt;br/&gt;import org.apache.commons.httpclient.methods.GetMethod;
&lt;br/&gt;
&lt;br/&gt;// The NekoHTML parser will assure that the HTML we retrieve is well-formed.
&lt;br/&gt;import org.cyberneko.html.parsers.DOMParser;
&lt;br/&gt;
&lt;br/&gt;// And finally the jakarta-commons XPath package will come in handy...
&lt;br/&gt;import org.apache.commons.jxpath.JXPathContext;
&lt;br/&gt;
&lt;br/&gt;   ...
&lt;br/&gt;
&lt;br/&gt;        // We will first instantiate a HTTP client, and a method we want
&lt;br/&gt;        // to invoke (in this case, GET my del.icio.us page).
&lt;br/&gt;        HttpClient client = new HttpClient();
&lt;br/&gt;        HttpMethod method = new GetMethod("http://del.icio.us/bplawler");
&lt;br/&gt;        DOMParser parser = new DOMParser();
&lt;br/&gt;        try {
&lt;br/&gt;            // execute the method and get the response.
&lt;br/&gt;            int statusCode = client.executeMethod(method);
&lt;br/&gt;            byte[] responseBody = method.getResponseBody();
&lt;br/&gt;
&lt;br/&gt;            // run the response thru a NekoHTML parser.
&lt;br/&gt;            parser.parse(new InputSource(
&lt;br/&gt;              new StringReader(new String(responseBody))));
&lt;br/&gt;            Document doc = parser.getDocument();
&lt;br/&gt;
&lt;br/&gt;            // create a JXPath context with the obtained document.
&lt;br/&gt;            JXPathContext context = JXPathContext.newContext(doc);
&lt;br/&gt;            List items = new ArrayList();
&lt;br/&gt;
&lt;br/&gt;            // use a fancy xpath expression to get at the HTML you want.
&lt;br/&gt;            List l = context.selectNodes("//DIV[@class = 'delPost']");
&lt;br/&gt;            return l;
&lt;br/&gt;        }
&lt;br/&gt;        catch(Exception e)
&lt;br/&gt;        {
&lt;br/&gt;            throw new RuntimeException("Failed to get items.", e);
&lt;br/&gt;        }
&lt;br/&gt;
&lt;br/&gt;That's all there is to it!  If you would like more details on the individual packages, drop me a line!&lt;/div&gt;
				&lt;div&gt;
			posted in
			&lt;a href="http://briatribe.tribe.net"&gt;Briatribe&lt;/a&gt;
			- 1 reply
		&lt;/div&gt;</summary>
    <dc:creator>brian</dc:creator>
    <dc:date>2004-12-13T04:08:00Z</dc:date>
  </entry>
  <entry>
    <title>Lego computer...</title>
    <link rel="alternate" href="http://briatribe.tribe.net/thread/87cdbd01-7774-422f-94c8-7a9961d68bb9" />
    <author>
      <name>brian</name>
    </author>
    <id>http://briatribe.tribe.net/thread/87cdbd01-7774-422f-94c8-7a9961d68bb9</id>
    <updated>2004-11-15T17:11:53Z</updated>
    <published>2004-11-15T17:11:53Z</published>
    <summary type="html">&lt;div&gt;http://anon.razorwire.com/lego/
&lt;br/&gt;
&lt;br/&gt;This link is over on boingboing.tribe.net, and I saw it and immediately had visions of going out and buying cases of lego gears and trying to build a computer out of legos.  I was somewhat disappointed to see that the project is either very new or very inactive - all they have is a NOT gate.  Of course, maybe that is the essence of the challenge!&lt;/div&gt;
				&lt;div&gt;
			posted in
			&lt;a href="http://briatribe.tribe.net"&gt;Briatribe&lt;/a&gt;
			- 0 replies
		&lt;/div&gt;</summary>
    <dc:creator>brian</dc:creator>
    <dc:date>2004-11-15T17:11:53Z</dc:date>
  </entry>
  <entry>
    <title>One angry liberal...</title>
    <link rel="alternate" href="http://briatribe.tribe.net/thread/90f364f6-3328-4da0-ae38-9d2e8cfe88a3" />
    <author>
      <name>brian</name>
    </author>
    <id>http://briatribe.tribe.net/thread/90f364f6-3328-4da0-ae38-9d2e8cfe88a3</id>
    <updated>2004-11-15T16:45:57Z</updated>
    <published>2004-11-11T07:01:59Z</published>
    <summary type="html">&lt;div&gt;http://fuckthesouth.com/
&lt;br/&gt;
&lt;br/&gt;Thanks for the link Elliot!  For those of you 8 readers of my tribe-log (well, the remaining 7 who haven't seen this yet) you may want to avoid the above link if you are averse to seeing dirty words, cause this has a lot of 'em.
&lt;br/&gt;
&lt;br/&gt;Now obviously tribe.net is no place to gauge the political climate of the country, but this whole red state/blue state thing is far more loaded now than I can ever remember.  Having a chasm like this in national politics is strange.  It would be unsettling too if the Democrats were actually, you know, sure about themselves.  Then we might have some real honest-to-God unrest.  
&lt;br/&gt;
&lt;br/&gt;But seriously, I am currently trying to educate myself on why someone would support conservative ideals.  So I have taken to trying to read the other team's playbook - the liberals have plenty of websites full of all kinds of conspiracy theories about the election and corporate robber barons and all that.  The conservatives must have one too right?  The one that I am reading now is
&lt;br/&gt;
&lt;br/&gt;http://www.redstate.org
&lt;br/&gt;
&lt;br/&gt;Descent articles in here about what to do now that they own America.  It is worth a glance anyway, if you can get around all the gloating.&lt;/div&gt;
				&lt;div&gt;
			posted in
			&lt;a href="http://briatribe.tribe.net"&gt;Briatribe&lt;/a&gt;
			- 2 replies
		&lt;/div&gt;</summary>
    <dc:creator>brian</dc:creator>
    <dc:date>2004-11-11T07:01:59Z</dc:date>
  </entry>
  <entry>
    <title>Take the test...</title>
    <link rel="alternate" href="http://briatribe.tribe.net/thread/a22192a2-7f40-47ad-82a7-bb7e3451d3ed" />
    <author>
      <name>brian</name>
    </author>
    <id>http://briatribe.tribe.net/thread/a22192a2-7f40-47ad-82a7-bb7e3451d3ed</id>
    <updated>2004-11-15T05:38:42Z</updated>
    <published>2004-11-11T06:39:24Z</published>
    <summary type="html">&lt;div&gt;and see where you stand!
&lt;br/&gt;
&lt;br/&gt;http://www.politicalcompass.org
&lt;br/&gt;
&lt;br/&gt;And of course share the results!!
&lt;br/&gt;
&lt;br/&gt;BTW, I have cross-posted this to neatstuff.tribe.net, which I think is an awesome tribe for just finding cool stuff on the web.  Check it oot.&lt;/div&gt;
				&lt;div&gt;
			posted in
			&lt;a href="http://briatribe.tribe.net"&gt;Briatribe&lt;/a&gt;
			- 3 replies
		&lt;/div&gt;</summary>
    <dc:creator>brian</dc:creator>
    <dc:date>2004-11-11T06:39:24Z</dc:date>
  </entry>
  <entry>
    <title>[SOFTWARE][James] Wildcard addresses at home..</title>
    <link rel="alternate" href="http://briatribe.tribe.net/thread/bbd4ecde-4472-413a-93b0-083d07a46f1c" />
    <author>
      <name>brian</name>
    </author>
    <id>http://briatribe.tribe.net/thread/bbd4ecde-4472-413a-93b0-083d07a46f1c</id>
    <updated>2004-10-04T17:04:39Z</updated>
    <published>2004-08-30T02:55:47Z</published>
    <summary type="html">&lt;div&gt;Well, I have finally broken down and hopped on the "mail server at home" bandwagon.  Being a Java guy, I thought it would be fun to run James at home, so I downloaded, booted, and tested it in very short order.  It was actually pretty easy to set up, and I was able to set myself up as brian@daflink.net in no time.  I had previously set up daflink.net with an MX record for DNS, and poked a hole thru my firewall to receive mail on port 25.  No muss, no fuss.
&lt;br/&gt;
&lt;br/&gt;However, the other thing that both korin and I wanted to have was the capability to give out email addresses at foo.brian@daflink.net or foo.korin@daflink.net and have those emails delivered to brian or korin as appropriate.  It was not obvious how to do this, but it is in fact a configuration option in the config.xml for James.
&lt;br/&gt;
&lt;br/&gt;james-2.2.0/apps/james/SAR-INF/config.xml
&lt;br/&gt;
&lt;br/&gt;Skip down to the bit about XMLVirtualUsers.  It is hear that you will find examples about 1:n mapping of virtual email addresses to physical.  Even regexps are supported.  I thought I was on my way!  But I just couldn't seem to get these to work as I wanted them to.  But here is the trick:
&lt;br/&gt;
&lt;br/&gt;&amp;amp;lt;mailet match="All" class="XMLVirtualUserTable"&gt;
&lt;br/&gt;   &amp;amp;lt;mapping&gt;*@daflink.net=regex:(.*)brian@daflink.net:brian@daflink.net;
&lt;br/&gt;                                             regex:(.*)korin@daflink.net:korin@daflink.net
&lt;br/&gt;   &amp;amp;lt;/mapping&gt;
&lt;br/&gt;&amp;amp;lt;/mailet&gt;
&lt;br/&gt;
&lt;br/&gt;Pretty obvious when you see it written out, but the part that I had such a hard time with was that I just needed a single rule to account for both Korin and I.  The unfortunate bit was that I needed to download and step thru the source code to figure this out.  And here we see both the blessings and the curses of OS software.  *Clearly* the documentation should have said all this somewhere!  This is a very rudimentary requirement that it seems like most people just starting up a mail server at home would want to have.  On the other hand, it was enlightening to set up the debugger and step thru the code too.  So now I have achieved what I set out to do, and I have a deeper understanding of how James can be used to programmatically process emails in Java - which is my language of choice anyway.&lt;/div&gt;
				&lt;div&gt;
			posted in
			&lt;a href="http://briatribe.tribe.net"&gt;Briatribe&lt;/a&gt;
			- 2 replies
		&lt;/div&gt;</summary>
    <dc:creator>brian</dc:creator>
    <dc:date>2004-08-30T02:55:47Z</dc:date>
  </entry>
  <entry>
    <title>[FEATURE] Tribe Rings, with a twist...</title>
    <link rel="alternate" href="http://briatribe.tribe.net/thread/3344e155-cfa0-48f1-adf4-71873f2f88a8" />
    <author>
      <name>brian</name>
    </author>
    <id>http://briatribe.tribe.net/thread/3344e155-cfa0-48f1-adf4-71873f2f88a8</id>
    <updated>2004-09-30T17:50:56Z</updated>
    <published>2004-09-28T11:17:43Z</published>
    <summary type="html">&lt;div&gt;For some time the idea of "tribe rings" has been out there, discussed on and off by people in search of finding other ways to connect interests together.  The ideas of a tribe ring is provides tribe moderators a way to explicitly create links to other tribes around a common set of interests.  You can then imagine, say, a tribe about camping linking up with tribes about camping in Northern California, tribes about snow camping, or tribes about gourmet camp cooking.  The obvious benefits here are 
&lt;br/&gt;
&lt;br/&gt;1) a self-maintaining taxonomy of tribes would begin to emerge and
&lt;br/&gt;2) cross over tribes (like the gourmet camp cooking tribe) could be linked with both a cooking tribe ring as well as a camping tribe ring, allowing for more fluid navigation through a set of interests.
&lt;br/&gt;
&lt;br/&gt;However, there is another more subtle (and perhaps more difficult to implement) application of this idea if "membership" within a ring is taken into account.  This idea stems from a conversation I had with Korin this past weekend, as well as an experience that Patti had at a conference.  In fact, the 2 events that happened were on absolute opposite ends of the social spectrum, but could easily be services by a more secure notion of tribe rings.
&lt;br/&gt;
&lt;br/&gt;First, Korin and I were talking about how useful an application like tribe.net could be to a large, project-based company like Accenture or IBM.  If members are employees and tribes are projects, then right off the bat you have a great way of keeping current and historical information about what projects you have worked on, discussions about those projects, and how you are related to another member in case you are looking to staff a project and would like to get an referrals through your network for individuals with particular skills.  Now Accenture would not be one bit excited about the idea that all of their projects would be available online for anyone to see, and we have in place the notion of private tribes to account for special interest groups that don't want to be seen by all who join the system.  But imagine if an entire tribe ring was private, not just the tribe, allowing members of the tribes in the ring to freely browse through the tribes that make up the ring.  Unless you were in a tribe in the ring, you would not be able to see anything in the ring, nor would you be able to see on the profiles of those in the ring any of the stuff that pertains to the ring.
&lt;br/&gt;
&lt;br/&gt;This last point is the segue into Patti's weekend experience.  It is probably not a secret that tribe has a pretty big penetration into the BDSM world (huh huh).  It doesn't take a whole lot of tribe-surfing to find something that you may not want to see, if that isn't your cup of tea.  This past weekend, Patti ran into someone who is into the BDSM scene and, while chatting about tribe had 2 other people (also BDSM types) at the same time overhear and say in amazement "you work at tribe?!"
&lt;br/&gt;
&lt;br/&gt;So, to be in a room of individuals who share a common (albeit *extremely* non-mainstream) interest and to have many in the room know of tribe and be fans speaks to the usefulness of the site to join those with common interests together.  However, the very interest itself limits tribe in a couple of critical ways.  First, the usefulness of the site for some people is hindered.  Is tribe where I will put on my BDSM face, or is tribe where I want to put forward my less kinky self and try to network with the "normal" people.  And for the "normal" people, is tribe a place where I really don't belong?  Second, the marketability of the site is impacted because with such interests so relatively easy to uncover, even with the mature checks in place, there are certain advertising and marketing partners that simply cannot have anything to do with us.
&lt;br/&gt;
&lt;br/&gt;But with the "private tribe ring" idea in place, all of this can be addressed in a way that allows those into the scene to be able to freely mingle without necessarily freaking out those that are not in the scene.  Rings could even be set up as securely gated communities, or as open door communities - but with only one door.  In this way, we control entry into the ring at one point (and charge admission at the door?) and if the community is so inclined, people may wander around and look all they want.  Or, in the Accenture use case, we would simply prohibit anyone entry who is not in a tribe in the ring.  Thus, it becomes more a question of granting tribe membership that would allow access, and this is an area that we need to work on anyway.&lt;/div&gt;
				&lt;div&gt;
			posted in
			&lt;a href="http://briatribe.tribe.net"&gt;Briatribe&lt;/a&gt;
			- 5 replies
		&lt;/div&gt;</summary>
    <dc:creator>brian</dc:creator>
    <dc:date>2004-09-28T11:17:43Z</dc:date>
  </entry>
  <entry>
    <title>[TRAVEL] Butterfly House just outside St. Louis...</title>
    <link rel="alternate" href="http://briatribe.tribe.net/thread/4a9f330a-4954-4eb5-9fd8-e5d8164064dc" />
    <author>
      <name>brian</name>
    </author>
    <id>http://briatribe.tribe.net/thread/4a9f330a-4954-4eb5-9fd8-e5d8164064dc</id>
    <updated>2004-09-17T18:11:53Z</updated>
    <published>2004-09-03T21:33:36Z</published>
    <summary type="html">&lt;div&gt;I am in St. Louis visiting family for labor day weekend, and we just got back from the Butterfly House
&lt;br/&gt;
&lt;br/&gt;http://www.butterflyhouse.org
&lt;br/&gt;
&lt;br/&gt;This is actually a pretty cool place to go for an afternoon, provided that you don't mind humid green houses.  The structure is fairly elaborate and well put together.  There is a cool video about the butterfly lifecycle.  But the butterfly room itself is the real attraction.  For $6 admission, you go into this room that has thousands of butterflies from all over the world.  Butterflies everywhere - many great photo opportunities.  I will post some on this tribe once we have uploaded them.&lt;/div&gt;
				&lt;div&gt;
			posted in
			&lt;a href="http://briatribe.tribe.net"&gt;Briatribe&lt;/a&gt;
			- 2 replies
		&lt;/div&gt;</summary>
    <dc:creator>brian</dc:creator>
    <dc:date>2004-09-03T21:33:36Z</dc:date>
  </entry>
  <entry>
    <title>Feature ideas on how to make tribes good blogs...</title>
    <link rel="alternate" href="http://briatribe.tribe.net/thread/f26895ef-405b-4305-88ae-b5166a17202d" />
    <author>
      <name>brian</name>
    </author>
    <id>http://briatribe.tribe.net/thread/f26895ef-405b-4305-88ae-b5166a17202d</id>
    <updated>2004-08-29T06:15:42Z</updated>
    <published>2004-08-29T06:15:42Z</published>
    <summary type="html">&lt;div&gt;1) So I was typing in one of my entries at 3AM on Wednesday and was like "I wish I could save this as a draft and come back later."  That would be nice, especially for longer posts.
&lt;br/&gt;
&lt;br/&gt;2) I think that I am going to start including little things in the subjects to separate geeky stuff [SOFTWARE] from personal stuff [PERSONAL].&lt;/div&gt;
				&lt;div&gt;
			posted in
			&lt;a href="http://briatribe.tribe.net"&gt;Briatribe&lt;/a&gt;
			- 0 replies
		&lt;/div&gt;</summary>
    <dc:creator>brian</dc:creator>
    <dc:date>2004-08-29T06:15:42Z</dc:date>
  </entry>
  <entry>
    <title>MoveOn Piece in Wired...</title>
    <link rel="alternate" href="http://briatribe.tribe.net/thread/167fe182-79c1-40bf-9426-8fd3cd3a7fef" />
    <author>
      <name>brian</name>
    </author>
    <id>http://briatribe.tribe.net/thread/167fe182-79c1-40bf-9426-8fd3cd3a7fef</id>
    <updated>2004-08-26T10:49:19Z</updated>
    <published>2004-08-26T10:49:19Z</published>
    <summary type="html">&lt;div&gt;http://www.wired.com/wired/archive/12.09/moveon.html?pg=1&amp;amp;topic=moveon&amp;amp;topic_set=
&lt;br/&gt;
&lt;br/&gt;This article uses the phrase "social network" quite often.  Clearly organizations like MoveOn could benefit from tribe-like functionality.  But this article unearths the heart of the problem, in that mobilizing the technologically elite isn't what wins elections - it is convincing the unwashed masses that your side is right.
&lt;br/&gt;
&lt;br/&gt;Are movements like MoveOn and the groundswell of support for Matt Gonzalez in the last SF mayoral election just doomed endeavors of starry-eyed idealists?&lt;/div&gt;
				&lt;div&gt;
			posted in
			&lt;a href="http://briatribe.tribe.net"&gt;Briatribe&lt;/a&gt;
			- 0 replies
		&lt;/div&gt;</summary>
    <dc:creator>brian</dc:creator>
    <dc:date>2004-08-26T10:49:19Z</dc:date>
  </entry>
  <entry>
    <title>Software Component Reuse...</title>
    <link rel="alternate" href="http://briatribe.tribe.net/thread/8855dd4e-4b9a-459d-96be-ca4c9941c8be" />
    <author>
      <name>brian</name>
    </author>
    <id>http://briatribe.tribe.net/thread/8855dd4e-4b9a-459d-96be-ca4c9941c8be</id>
    <updated>2004-08-26T10:20:56Z</updated>
    <published>2004-08-26T10:20:56Z</published>
    <summary type="html">&lt;div&gt;&amp;amp;lt;dorky entry&gt;
&lt;br/&gt;
&lt;br/&gt;So in a quiet moment the other day I got to thinking about software re-use, and what makes one piece of software more reusable than another.  After all, the promise of OO programming languages was to make software more reusable, to allow extremely complex programmitic feats to be accomplished simply by decomposing the problem into sets of objects with encapsulated behaviors.
&lt;br/&gt;
&lt;br/&gt;I considered that reuse can be as simple as using someone else's collections framework extension, (http://jakarta.apache.org/commons/collections ) or it may be as complex as using Avalon (http://avalon.apache.org/ ) to accomplish all of your IoC, Component-Oriented deployment needs.  Clearly, more likely to do the former, since that is where the biggest time savings can be found.
&lt;br/&gt;
&lt;br/&gt;You could also consider a database program as a "reusable component".  It certainly does save me a lot of time to be able to download and install mySql and have a database up and running in a few minutes.  This is an example of a VERY large component that provides a service through a well known interface that benefits from lots of people downloading and using it every day.  A database engine is obviously far more complicated that a Java collection class.  In fact, it is so complicate as to be prohibitively difficult to code on my own, and there is almost zero probability that in a reasonable amount of time I would come up with better database software than what is already available for free on the internet.
&lt;br/&gt;
&lt;br/&gt;And more importantly, I don't really care how it works, as long as it meets my needs.
&lt;br/&gt;
&lt;br/&gt;This last point is important.  Software reuse is a 2-way street.  On the production side, the author must have an idea, have sufficient expertise to code it, have the patience to document it, and have the desire to distribute it.  But on the consumption side, I as a potential reuser of the code have to have a similar need and I have to be willing to take on the risk of working with someone else's code.  For some projects, I may decide that I really want to get in and figure out how it works, maybe even give back some bug fixes or new features.  For some code, I may just download it, make sure it works, and never even care about how it does what it does.
&lt;br/&gt;
&lt;br/&gt;At tribe, we use serveral Open Source packages.  The most significant are the following:
&lt;br/&gt;- MySQL
&lt;br/&gt;- Tomcat
&lt;br/&gt;- Turbine
&lt;br/&gt;- Velocity
&lt;br/&gt;- Torque
&lt;br/&gt;- and the dozens of OS jars that thes