SunSpace – Atlassian Webinar – Q & A

Thanks a lot to all who attending the SunSpace webinar with Atlassian. We had a lot of attendees and Atlassian told me that
the
recorded webcast has been viewed quite a bit already.

We received some questions from Atlassian (thanks Morgan – great webcast organization) which I could not answer during the Webcast.
Instead replying to each person individually I thought I post the
Questions & Answers here. 200902161720.jpg

I appreciate your feedback/comments (which will help improve my blog equity :-) )

and a BIG thank to the twitter community for the great feedback you provided in real time

Q: Can you share what you have used for showing / editing the personal page?

We are using the portal feature from Bubbles in combination with Themebuilder   and have created a set of widgets for the personal spaces of a user. Bubbles has some variable support like %owner% %users% etc. which makes personalization of the myProfile page pretty easy – means we have ONE portal with a set of common widgets for ALL users. When a user logs in the first time – we create the personal space and home page of the user and just add {portal:user} to the home page.

Example: excerpt from the Who am I widget

# shows picture – Confluence macro
{my-picture:showControls=false|showName=false}
# shows Role Communities with medals – Bubbles macro
{menuitem:flat=true}{my-communities:@creator|showLogo=false|communityType=ROLE|showControls=false|showCommonMembership=false|showDescription=false|showRole=false}{menuitem}
# shows user detail – Sun macro
{cache}{user-details:%owner%}{cache}

Q: What is the relationship between SunSpace and the recently announced Glassfish Web Space?

As I explained in the webcast – SunSpace is build on a federated services architecture. That means we can integrated any Web properties into the architecture
We are actively working on the integration of the Community Equity Services (rating/commenting, tagging, equity calculation engine) into Glassfish Web Space.
Please contact me if you want more details.

Q: Do you employ dedicated community moderators/content managers? What is the process for onboarding new groups into this environment from a people perspective

As part of the community methodology we established a community driver model and community. Each community has one or more community driver(s) who actively facilitate the community.
On a global level we facilitate the community of community driver and help them to
– establish common policies (publishing, tagging, measures etc.)
– facilitate best practices among the community drivers
– use the community driver community as a sounding board for feedback and RfE planning   

Q: What is the process for onboarding new groups into this environment from a people perspective

If someone wants to add a new community to SunSpace, she/he has to fill out a template to request a community. We review the template and create the community within 3 business days.
We decided for this model to validate if a similar community already exists – so we can connect other people and communities and avoid replication of work.

Q: Do you feel the contribution equity will work against the goals once the population get too big. people may feel it is not possible to overtake the rest in terms of C.E?

Absolutely – One of the Community Equity widget shows the ranking of a person across all communities. With the Tag Equity model we provide a much granular model e.g. Top Contributors,Top Information, Top Country of a specific community or subject (e.g Java, HPC computing etc.). That means that each individual community can build their specific value system and can leverage the tailored Community Equity Services. (I will post soon a blog post on all the community equity widgets we have today)

Q: Is it possible to share more details on the search. Is it an open source solution too?

(Intranet) search is only as good as the metadata it gets. (e.g. garbage in/ garbage out). The goal of the Community Equity services is to metadata enrich URL’s
That means we automatically add metadata like tags, equity values, author information, hits, rating information etc. to each URL during the content authoring process.

Then we have a simple three step model how we can turn the search in an extremely powerful mashup service:

1. constant feed (RSS/ATOM) of metadata enriched URL’s into to search engine (more or less realtime update of search index)
2. leverage standard search technology (in our case Ultraseek/Verity) to search for terms
3. take the search result as XML stream and post-process the search result to generate dynamic mashup services
as example:
– build tag cloud of search result
– show related communities
– show experts related to search result
– etc.

In theory you can take any search technology as long as we can programatically read the search result and do our “magic’ with the post processing.
Currently we using “perl” for the post processor :-)

We have not yet decided if we open source this technology…

Q: Will the hardware configurations they are using be discussed?

Infrastructure: The architecture is designed for secure deployment in an Intranet or on the Internet. 200902161439.jpg
We use Zeus as the firewall/load-balancer and Appgate for the secure admin access
The hardware is based on Sun X4450 servers for the Web and Application tier and on SPACR M4000 for
back-end tier, search, Zeus and Appgate.

Tuning: We spent a lot of “brain cycles” on tuning the infrastructure, caching model, Java JVM settings, Confluence
and our web services.
We are happy to provide you the infrastructure and consulting for your project :-).

Q: Do you use internal Confluence user accounts, or have you integrated with an external LDAP directory service?

We use a combination of both. When a user logs in the first time via LDAP , we create the Confluence user on SunSpace and auto-populate
– confluence user
– create a user in our back-end user/group service to provide federated access control across all web services  
– personal space including home page
– add the user to specific groups according her/his profile in LDAP
– and more ..

Q: How do you motivate people who perhaps do not care very much about the ratings on the system? or perhaps the question is how do you identify the critical motivating factors ?

1. easy to use
The entry barrier for rating (or commenting) should be as low as possible. We have a simple rating widget on each page which allows to provide rating feedback with a single click
2. real time feedback
For each page we have an activity feed were the author (or others) can see the latest activities (update,tagging,rating,comment,views,download) around the content
3. Community Equity an Methodology

As discussed in the Webcast – the most important question we need to answer is “What is in it for me?” . Since all social activities (like rating) count for a person’s personal equity, people
are more motivated to provide feedback. But this is not enough. The overall Community Equity model need to be linked to recognition / incentive programs were people get recognized for their community work. And hey – be creative here – getting a distinct T-Shirt for the best community contributor of the month could already make a big difference. :-)

Q: Will sun consider selling this technology for other users?

YES –

1. Consulting – we provide consulting on how to build “vibrant communities” and we can “clone” SunSpace for your business
2. Open Source – we plan to open source the Community Equity Services (rating/commenting, tagging, equity calculation engine) in the next few month.
3. Productization – we plan to productize some of the technology as part of Sun’s web infrastructure offering

Please contact me if you are interested peter.reiser(at)sun.com

Q: Also wondering whether you see a future link to extrernal social networks?

Absolutely – we are looking carefully into the emerging Social networking standards like Open Social , APML , ATOM activity extension and others ..
The Community Equity model is already prepared to add Personal Sociometry Equity (https://blogs.sun.com/peterreiser/entry/community_equity_specification)

Q: What kind of ontologies are involved?

Currently we support folksonomy tagging and so called controlled vocabulary which are focused around product, technology, geographical coverage (Region Country), industry and best practices. Daniela Barbosa from Dow Jones published an great ebook called Folksonomies and Taxonomies Cookbook which includes SunSpace as a use case.

Furthermore as part of our participation in the EU project KIWI, we are actively working on the integration of Semantic Web into our Community Equity model.

Q:I heard Peter from Sun mention that they have configured Confluence to start with the Personal Space of a user (at login). Do you have any idea how that was done?

We added a script to the default home space of SunSpace which redirects the user to her/his personal page

{redirect:~$action.getRemoteUser().getName()}

Q: did you have performance issues – especially with the theme builder and bubbles plugins – and if so, were you able to resolve?

Good question:-) We are constantly fighting with performance bottlenecks versus user expectations/experience. Generally performance is good and theme builder and bubbles are scaling nicely. I would categorize performance challenges as follows:

1. page load (http calls): Increasing functionality and customization is increasing page load trough additional JavaScript, CSS etc. If you have a good network with low latency this should not be a problem.Since SunSpace is used globally – network performance and latency can be an issue. We are addressing by- CSS: we consolidating as much CSS as we can- JavaScript: standardization on a single JavaScript Framework (jquery). (Confluence used to have customized JS libraries which generate a lot of issues (name space etc.) with other applications. I think with Confluence 10x they standardize on jquery as well and I hope that all plugins will be switch to the new model soon…) – Caching: caching,caching.. this helps a lot but with a highly personalized website this can be tricky. If you can – use http instead https as client caching is much better

2.Confluence platform tuning: As describe above we doing a lot of infrastructure tuning. On the application level we carefully monitoring the Confluence cache sizes and adjust if needed. Also we are moving to a clustered infrastructure pretty soon which should balanced the load to different servers. One of the bottlenecks we discovered is the large amount of spaces (> 25’000 users spaces, > 500 global spaces) and Access Control. Since we SunSpace will be accessible from the Internet (Sun employees only – sorry :-( ), we have each single page access controlled and anonymous pages are disabled. We have seen various issues with some macros and actions (e.g. dositesearch, feed, {blog-post} etc.) which seems to do recursive access control across ALL spaces (Global and Personal). Atlassian is aware of these issues and is working on it…

Q: How do you manage people and content they created when some leaves the company in your “people” directory?

Thanks for this questions :-) Unfortunately Confluence has no function to disable a user nor delete a user if she/he made a contribution.Luckily – as part of our Community Equity Services we maintain our own user/group management model to allow Access Control across multiple web services. Every night we running a scheduled job which compares our user table with LDAP and automatically disable users which are not found in LDAP anymore. This disables the users in all web services (attachment etc.) except Confluence. What we can do in Confluence is to display a message on the Profile page that this user does not exist anymore.
Hello Atlassian – please add a disable user function which disables the user in Confluence including email