Community and social computing
rawn 100000R0P5 440 Visits
As our developerWorks Community Editor, I'm faced with issues which are part talent management and part information management. Aside from all the regular issues of focusing effort and developing content to build a stronger community, I'm facing a happy problem of having so many enthusiatic contributors: what happens when there's too much to read?
It isn't hard to see this problem is evident; just try googling on a topic and see how many hits you get. Would you really want to read anything more than 100 entries?
In talking with James Snell and others a few weeks ago regarding corporate blogs, wikis and other such tools, we agreed that there are typically two ways of looking at who should contribute. We both agree everyone should be able to do so; but when you start running into large numbers, how do you organize this information?
First, there's the top-down approach where you pick the topics and find people to contribute to each category. This is quite commonly used; dW does this in our many zones.
Then there's also a bottom-up approach where you want topic experts to self-emerge from a population.
This second approach is harder to figure out, but the answer may not be as complicated, especially when you have a large population and numbers on your side.
I think the idea lies in building a Reputation network, modeled on trust. Each individual essentially would rate how a particular interaction with a potential expert turned out (in two types of trust, which I'll discuss later). You can then average all the trust ratings per candidate to determine their reputation. The number of interactions combined with this average trust rating describes their reputation.
Those with higher reputations automatically emerge as "experts" in whatever categories they want to focus on. The process is democratic and self-emergent within the community. For that matter it also automatically helps to define topic areas that people are interested in.
That's the basic principle. I'm quite sure there are many ways of looking at this, so I'd be curious to hear counterpoints.
rawn 100000R0P5 578 Visits
I came across an interesting article in the current issue of THE FUTURIST magazine titled Extra-Preneurship: Reinventing Enterprise for the Information Age. The article by David Pearce Snyder, former CIO of the US Internal Revenue Service, starts out:
"Information technologies are toppling traditional hierarchical business-management systems. The new model for twenty-first-century management will be extra-preneurship--virtual networks based on collaboration and self-actualization that will add value to all current and future jobs. THE FUTURIST's Lifestyles Editor describes what this shift will mean for individuals, corporations, and the world economy."
What I found interesting was not the expounding on Linux, the open-source model, etc., that we have all heard before but the need to consider that the nature of how people work is changing. In particular the idea of "extra-preneurship" where the traditional structure of businesses are transforming into virtual collaborative networks.
I gainsay, this has relevance to one of my other continuing interests of service-orientation in business (and technical models).
Think of it: consider the specialization of work functions into specific tasks or task areas, each as a type of service. On the pure software level, services are very strictly defined, but on a business level, they exist as well. A combination of services therefore becomes a process flow (in business and in software).
A virtual collaboration can also be thought of as a workflow of processes and services, from simple levels such as consulting, to more complex multi-organization workgroups (e.g., standards organizations).
These collaborations are specific communities and uses of a community model. In fact, they integrate their human element services (thoughts, interactions, communications, contracts,
expertise, etc.), with software services (blogs, forums, instant messaging, wikis, etc.)
From a high-level, these services blend across each other into useful workflows that are arranged and rearranged per the needs of the users themselves. This is the same process that applies service-orientation to business and IT operations.
What may be missing is a development environment to build such communities with such workflows. Just like we have tools for business analysts to define process flows, and developer tools to define sequence diagrams, we need tools that allow a user to build such workflows out of the available members of a community, the available software services of the community, and the necessary means to arrange them together and define rules of behavior.
rawn 100000R0P5 452 Visits
The basis of community in my mind is in the interaction between people. The tools, mechanisms, processes, and communications we use are the outward expression of these interactions. A community really lies on a subliminal level in the form of the trust we develop directly with other members of the community.
For the most part, this trust is an implicit factor that we associate mentally with another entity (a person or a group). However, to externalize this factor into a meaningful measurement that many others can relate to can only be a rough approximation. Beyond that, to normalize that measurement across anyone, anywhere reduces it to a lowest common denominator of trust.
This is still important, however. By indicating how you would rate trust between yourself and another person, and by sharing this rating with others, you describe the relationship network around you. Metcalfe's law states that the usefulness, or utility, of a network equals approximately the square of the number of users of the system. This is useful in understanding the context in interactions between people. Context after all makes the difference between princes and purloiners.
You can build a complex directed graph by combining the various relationship networks of all the individuals in a community. However, that just becomes increasingly complex with each person you add. From Metcalfe's law, the possible number of connections is squared, making huge numbers of connections.
A simpler way is to create an aggregate trust rating per person across all the ratings they receive from others. Each entity thus has a single rating factor.
Actually, two rating factors really. You need to ask after the result of any interaction:
1. Helpfulness - Was this knowledge source helpful? Do you trust that they were providing the information in good faith and for your benefit?
2. Usefulness - Was the information provided by the knowledge source useful to you? Did the information help? Can you put it to use?
A person can be a source of useful information but be too busy to help people get that info. On the other hand, a person can truly want to help but not really know much about a subject.
How do you apply these ratings? Keep it simple: rate 1 through 5, lowest to highest, on each of these factors per interaction you have with someone.
What you really end up getting over time, is a measure of the reputation of an entity as well as the number of people they interact with. By measuring recurring interactions with the same knowledge source, you can also measure how loyal people are to that source.
rawn 100000R0P5 500 Visits
I spent the weekend watching the 4th of July Independence Day fireworks from our new house with friends. We bought a lot which is about 1.5 miles behind this hill where the City of Tucson shoots its fireworks from, so we got an excellent view. The housing subdivision is all sold out but so far we're the only house on the hill. Our neighbors is a community that allows only those over 55, so we're the youngest people on the block by about 20 years.
It feels slightly lonely even when near so many homes. We bought a large acre lot so we wouldn't have to be too close to our neighbors. Many subdivisions here have houses within 10 feet of each other. That's too little privacy, even in suburbia, especially when you're new.
Sometimes blogs feel the same. There are so many bloggers out there but not everyone crosses the street to meet the neighbors. It is not possible to know and follow everyone around; it is difficult enough to even follow several dozen blogs.
However, the secret is in how people interact in the first place. We are only starting to investigate better means of social networking and understand what actually drives people to connect. If you read Duncan Watt's Six Degrees: The Science of a Connected Age, or Malcolm Gladwell's The Tipping Point, you can start to understand the mechanics of social behavior. These plus about another 12 books are my summer reading right now.
rawn 100000R0P5 468 Visits
Science fiction movies and TV shows have come a long way from simple puppets and men in ape suits. It even seems like the industry is starting to become nostalgic about those old movies (e.g., Spielberg's remake of War of the Worlds, and upcoming King Kong by Peter Jackson).
A friend of mine brought around a hilarious B-movie spoof called The Lost Skeleton of Cadavra (None Can Stand Its Mental Power!). It was complete schlock, with such classicly idiotic dialogue like "Yes, honey, I am a scientist and now I shall go do science." B-movie's typically have bad dialogue, cheesy plotlines and very cheap effects. (This one had an evil skeleton that walked around puppetlike which you could obviously recognize as left over from a medical school model).
Some B movies can still excel. To get away from the stigma of B movies, they are now sometimes called "independent films", although I'm not sure if that does it any good.
Ever since watching Clerks, a decade ago, I've found a whole new respect for these movies. Made on a budget of $27,000 I believe at a convenience store that the director actually worked at, it was the first independent film which I thought should have gotten an Oscar for best screenplay.
Take George Romero. Dawn of the Dead is still considered one of the best zombie (B) movies of all time. But it spawned a whole new generation of such movies from the Evil Dead series to the absolutely hilarious Shaun of the Dead. With his new release (that I have not yet seen) Land of the Dead, Romero was honored with an ovation at the pretigious Cannes film festival this year.
On US TV, the remake of the Battlestar Galactica series loses the idealistic, sophomoric drama, and heavy stock footage reuse from the late 1970s series, for a significantly more hard-hitting drama that poses the tough questions that sci-fi at its best tries to bring forward.
Like War of the Worlds, the Battlestar Galactica series has a non-human force that easily overwhelms the skills and ability of humanity. In this case, this force is the Cylon "race" of intelligent robots that humankind created to handle warfare. After many smaller wars, the Cylons retreat for years eventually returning with new self-designed models that are very humanlike. More significantly, they develop the notion that God has created them to replace humans with a more organized civilization.
These are the tough questions that the legends of sci-fi like Asimov, Niven, Wells, and others posed. Too often today, the sci-fi stories are simply covered up with cute relationship drama, and special effects (e.g., the new Star Wars series spent too much time on these elements rather than building a deep story).
Whether probing the classic futuristic themes or just providing entertainment, many of these same shows have developed a very healthy community of faithful followers. Some of them have even become some of the biggest brands in entertainment (e.g., Star Trek, Star Wars, etc.)
If you follow Douglas Atkin's theory as described in The Culting of Brands, many leading brands have similar features whether it is a company, an organization or a religion. These include ideas like:
Atkins' talks about how such activities exist in many leading organizations like JetBlue, Apple Computers, Harley Davidson and others.
Can you see any of Atkins' elements in movie and TV show fan followings?
- rawn[Read More]
rawn 100000R0P5 477 Visits
I saw a truly priceless rug today. We stopped by after lunch at a rug store next to the restaurant just to look. After looking over a number of 8x10 rugs, the owner took us up to his safe where he keeps the heirloom ones. He pointed out a particular antique rug which is one of two remaining in the world. It's about 500 years old from Tabriz, Iran, and probably over 30 feet long. According to him there is no real price on it but the only other one is in a museum in Europe. I couldn't tell the difference from a $9,000 rug but that's art. It's worth whatever price you put on it if someone wants it bad enough.
It's amusing to cosnider there's very little parallel for it in the software world. When developers create something from their minds, we sometimes call it "a work of art". The cost can be high but we don't really sit there and appreciate it as much.
Consider the idea of service-oriented computing where you build an "application" from a combination of components or applications each described as a service. It's no where near the analog of a painter's choices when it comes to colors, even if it does take as much thought, exasperation and suffering. But I guess I can take consolation in that the term "starving developer" hasn't caught on with the general public.
rawn 100000R0P5 499 Visits
Marshall Goldsmith has an interesting observation in this month's Fast Company (print edition): Can you listen?
He gives the example of what differentiates great leaders like attorney David Boies: he knows how to listen.
Here's a way of testing yourself:
Sit in a quiet place, close your eyes, and count slowly up to 50. If you can listen to yourself only counting and not thinking of anything else, you might possibly be a good listener.
rawn 100000R0P5 487 Visits
As Grady pointed out, DARPA has it's Grand Challenge to build autonomous vehicles that can drive themselves. I'm rooting for the Stanford Racing Team simply because they use a Volkswagen T-reg named Stanley.
I remember back in the 1980s looking at an illustrated book about the future with descriptions on how robots will become part of our everyday lives in the 21st century. Although we don't quite have androids doing our shopping yet, we do have self-driving cars, vacuum cleaners, lawn mowers, bomb sniffers, pets, flying spybots, and even soccer players. These ordinary robots make the old Disneyland Tomorrowland ride look like a joke. We're catching up to our futures already. Now if only that moonbase was ready with a basketball court.
I was talking to Bobby Woolf earlier today regarding the different generations of what we all call the Web. Bobby blogged on Web 2.0, the current conversation on a move from a focus on content to one around APIs. There are blog sites, conferences and other activities all around how services are present the great idea of how to work with the Web.
Bobby describes three generations:
I've tested the Web since 1990, starting with a very early
text-based browser that Berners-Lee first released that predated even Lynx. Then Mosaic, Mosaic 2.0, Netscape's alpha browsers, Netscape Navigator, Spyglass Mosaic, HotJava (Sun's original Java-based browser), Opera, Mozilla, and a few others. Over the years, I think there were probably a few other "generations" that came and went:
The benefit of the services Web is that it ties applications in more obvious and neutral ways that specific programming APIs, scripting languages and plug-ins. More significantly as Bobby indicated it brings a widely considered design pattern of the Model-View-Controller (the Observor-Observable pattern to be accurate); the separation of a presentation element from a communicating element and the execution elements of the design. Most programmers are familar with it and its benefits. The news now is that business people are beginning to take notice of its benefits too.
PS: Know any other trends in information presentation and interaction on the Web that came, went or stuck-around?
In this case, I'm talking about the idea that people can be arranged into a series of steps in a process, in machine-like order, repeating the same job over and over again without complaint. This is the basis of modern manufacturing, and in fact one of the common thoughts of socialism: people should be assigned to the jobs they are best at and all contribute to the greater operation/good.
What this misses entirely is the fact of human nature. People often want to find easier ways in the system, or even want to share the ideas they discover with others. Whether a mechanical or a bureaucratic process, many of us just want to get things done. Sometimes circumventing the system is a bad idea while other times it leads to new advantages. In either case, it is still innovative thinking.
We generally want input from others when we have innovative thoughts. We want their feedback or just share the concept to see if it is useful and viable. If useful, let's face it, some of us just like the glory.
However, this kind of innovative thinking still needs help, encouragement, comparison and critique, if it is to survive. This is where it helps to find other like-minded individuals to discuss the idea with. It could be as simple as a quicker route to work, but we still may wish to share it with others.
Longer term projects or those with wider implications mean that the group that we want to discuss it with needs to survive longer and be accorded the time, tools and means to consider such ideas.
More interestingly, they also need to develop the trust amongst its members to be working to the greater good, rather than for particular individual's benefit.
We should get past the thought that we can't just be cogs within the great machine of industry. Raw process oriented development still requires human interaction and consideration. Gathering into groups to discuss methods and ideas has been with us since ancient times; it's about time we recognized that as formal parts of our jobs. Finally, trust is an underlying lubricant of innovation,
The U.S. Army has a useful phrase: Ground Truth, the truth of a matter as it actually exists on the "ground". It's also called by a number of other terms such as the "real stuff from the trenches", "where the rubber meets the road", etc.; pick a cliche. I found this out in Don Cohen and Laurence Prusak's excellent book In Good Company: How Social Capital makes Organizations Work.
The ground truth indicates that the actual matter of a deployment may be different or call for actions other than prescribed procedures, pre-planned processes, etc. In reality, this is quite common in software development and deployment too.
More significantly, understanding or learning the ground truth comes from experience and direct participation. This understanding varies depending upon the specific situation but can be something that occurs again and again for others.
This kind of knowledge really lies in the hands of those on the ground themselves. In many cases, the knowledge itself is not easily describable in a simple, generic repeatable manner but requires a lot of qualification.
To paraphrase Fox Mulder: the ground truth is out there.
The only practical way to get to it is to help people to communicate and participate in discussion. And that is just what we want to aim for in developerWorks Community.
Okay, this is my reason why and a sort of apology for not posting frequently...
We're moving house in Tucson, from our central neighborhood near the Univ. of Arizona to the west side of town, near the Tucson mountains. It has a nice view of the city and mountains, with little critters running around (chipmunks, bunnies, quail and scorpions). It's not too far out, only about 15 minutes in the other direction but in a place that isn't significantly urbanized yet.
Our house finally finished building after 2 years of work, only delayed by about 150% in time (15 months). Thank goodness for fixed price contracts.
The building delay, although they would not admit it, is by my guess, probably from haphazard project management. I had at least three builders/supervisors over that time, due to changes in the organization, the acquisition of our builder by Lennar Homes nationally, and changing building codes.
Mostly we lost a lot of time because the first project manager just didn't keep up with changing regulations by the city (resulting in 6 months in delay to catalog saguaro cactus). Then they didn't quite plan how to create a building pad (because of hillside development) appropriately. Finally, there was a nation-wide backlog in available concrete and building materials (another 2-3 months. Luckily for him, the builder/PM got promoted.
Even in the beginning, it seemed like the builder just did not have enough base support. E.g., they have a lot but limited set of options even for a semi-custom home, but they never really put much of the info about the options into their option planning & pricing software. This is just raw data input ($10/hr at worst) that could have saved them quite a bit of time researching.
When you consider that they were trying to do semi-custom homes alongside their regular subdivision homes (with more limited choices), it seemed more like an afterthought than proper planning.
But I'm beginning to understand why large homebuilders these days prefer to do subdivisions with limited options/ modifications, and why there are so many of these subdivisions around. A friend calls them unimaginative "pink ghettos".
I guess sacrificing some uniqueness for the sake of getting a home built quickly might have been a good idea.
rawn 100000R0P5 479 Visits
CNet has a story on Google jumping into the developer business. Actually, the gist of the story is the same for most companies that have tools: Google is expanding and publishing its APIs for developing with its tools. This is no different than Amazon's Web services APIs or the eBay SDK, or any number of other company's with software APIs
However, Google is on the spotlight right now, primarily pitched against MS as their competition (to play up the err... Goliath vs Goliath story I guess). It's combination of service offerings from different areas (Sidebar, Google Talk, etc.) are now starting to come together into something more cohesive. I wonder what Yahoo thinks of that (see Yahoo Groups).
rawn 100000R0P5 449 Visits
A while ago, I was talking to a number of World of Warcraft players and describing how the virtual gold/money of their MMORPG relates to real dollars.
adland had a posting directly to this effect pointing to the tracking that the GameUSD site performs on this US Dollar to game economy exchange rates.
Because virtual economies in these games do not have limitations or a balancing relationship to its money supply, combined with the fact that people are willing to spend real cash to purchase virtual items for games, there is an inferred exchange rate that is destabilizing.
The running joke is that given enough time and players, World of Warcraft, Everquest II, or any of the leading games can actually have a severe impact on real world currencies.
Time for me to really put more work into my medieval trade empire game. :)