Thursday 8 November 2007

Belated Readings: Week 8

Studying cooperation and conflict between authors with history flow visualizations

What are the main problems of the Wikipedia as described by the authors, and how does the community deal with them?
Vandalism
: Mainly consist of Mass deletion; Offensive copy; Phony copy; Phony redirection, Idiosyncratic copy. The authors of this paper used their history flow to visually show when a mass deletion occurred. From the version histories, it was noticed that the average response time to correct this was approximately 3 min. across 3574 different articles.

Anonymity vs. authorship: There exist different opinions pertaining authorship and anonymity. Some users prefer to stay anonymous even while contributing substantial information to the available articles. Authorship allows an improved credibility rating where new users contribution could be checked, either for vandalism or perhaps assistance when they are unfamiliar with the community rules and standards.

Negotiation: This occurs when users disagree upon the content and users continuously revert to previous versions. This is resolved with an addition talk meta-page linked to each article which allows users to discuss and resolve their differences regarding the specific article.

Temporal Patterns and Content stability: Due to any user being able to edit the content, there is usually a notable growth in the size of a wiki article. There exist situations where the article size shrinks between edits, and in these cases text has normally been transferred to a new article and is accessed through a redirection link.


A content-driven reputation system for the Wikipedia

What different notions of reputation in Wikipedia do the authors discuss?
Content-Driven Reputation
: This is a system where the “Text life” and the “Edit life” of your contribution determine how your reputation is affected. If your contributions last while other users of with high reputation edits around your contribution and leaves the main part intact, then your reputation is increased with a factor of the co-contributors as well as the age of your contribution. Alternatively, if your contributions are quickly reverted, your reputation is reduced with a factor of the reputation of the user that reverted your contribution.

This reputation system reduces the possibility for users to unfairly affect the reputation of another user. The only way that you can increase or reduce another user’s reputation is when your contribution respective to their contribution withstands the test of time. In effect, you put your own reputation on the line whenever you add or remove content.

Prescriptive, descriptive, and predictive reputation:
This system has a prescriptive, descriptive and predictive value. Prescriptive value is gained when the user follows the prescribed behavior within the system, which is built up by contributing lasting content. Descriptive value implies the quality of the contribution, which is used as guide to the trustworthiness of newly contributed text. And finally, a predictive value, where the future contribution of a user will be rated by the number of recent valuable contributions.

Belated Readings: Week 7

Enterprise 2.0: The Dawn of Emergent Collaboration; and
Corporate Blogging: Building community through persistent digital talk

What opportunities/benefit do the authors claim for introducing Enterprise 2.0/Blogging technologies into the enterprise?

Enterprise 2.0 applications defined by SLATES
KeywordBenefits
SearchEasier to locate information within the intranet
LinksBeneficial when dense link structures reflect opinions of the users
AuthoringCompany wikis and blogs have similar to blogging technologies described below
TagsBetter categorization of content and folksonomies; Assist in tracking useful intranet information
ExtensionsAssist in automatic tagging and categorization of content
SignalsI.e. RSS technologies assist in keeping track of new content


Not all employees within an enterprise will benefit the same amount from Enterprise 2.0 and Blogging utilities. Employees can be split into 3 groups
  1. Contributors or heavy users
  2. Active or medium users
  3. Inactive or low users

Benefits obtained from using blogging technologies can split into the following 3 sections
  1. Work-related and Informational
  2. Improved Social networking and Communication
  3. Other

Belated Readings: Week 6

Building collaboration into IDEs
What are the major collaborative features suggested by the authors?
The question arises as to why it is beneficial to integrate collaboration within IDEs instead of using external tools for the collaboration process? This is addressed by considering the following 3 collaborative processes.

Configuration Management: Integrating this reduces the effort required to perform shared file management operations. Properly done, this provides the functionality that configuration management is as easy as managing files on the local system. This would add similar benefit as integrating the debugger and linker into the same IDE, by saving time and effort using different tools.

Screen Sharing: Problems are often solved by discussing code between developers. Integrated this into the IDE keeps the data within the IDE context and can easily be used for reference afterwards.

E-mail and IM: This ties the informal discussion between developers into formal source code and repository branches. Another great benefit is traceability, where questions and answers about a particular code are available within the idea, reducing the possibility of losing this information within a normal email or server.


When adding collaboration features it is necessary to

  • Accommodate a variety of processes, both formal and informal, because requirements between different groups and teams may vary
  • Provide a flexible collection of ways that developers can collaborate to allow groups to choose which features to use
  • Be configurable and extensible by the developers themselves

The following capabilities flexibly accommodate various group dynamics regarding programming
  • Provide peripheral awareness of other programmers and their activities
  • Support a variety of communication mechanisms
  • Integrate with the team's source-code control system and bug tracking system
  • Support "in context" communication, both synchronous and asynchronous
  • Support searching through saved team artifacts and the development history

Thursday 18 October 2007

Assignment 2: Online communities:Wiki-Away - Part III

Final reflection
As was mentioned in the process description section, if the requested articles section was discovered earlier, it would have been possible to add more complex content that would have added to the overall value of Wikipedia. However, the addition of more information on the university is a proud first contribution for a new wikipedian. The format used is on par with the format used by other universities, and the info-box also provides more direct information to other users. There is still quite a lot more information that can be added to offer more value to other users, however the improvement contains the most basic and valuable information pertaining the subject. The second article contribution was basically a more compressed summary of the most important information regarding the website of Ezmo and will definitely be valuable to certain users. It also adds a certain finesse to the article which was previously lacking. Finally, the third article unfortunately added no value to the community and in fact only turned out to be a time consuming process for a particular administrator.

All in all, it is my opinion that contributing information to an online community is a worthwhile experience and helps to get more users actively involved.

Assignment 2: Online communities:Wiki-Away - Part II

Process description:
Unfortunately diarizing has never been a good characteristic of mine, and I find it difficult to see the significance of small disconnected sections. I will therefore attempt to give an overview of the user experience in contributing to an online community, and discuss the separate aspects involved.

During the duration of this assignment I contributed to three articles within Wikipedia. Firstly, I would like to mention that finding a suitable subject on which to contribute to Wikipedia seems difficult. Contributing a new article on something worthwhile initially appears quite difficult. I later realized that there is an entire page devoted to requested articles. This would be the obvious place to look for something interesting on which you already have information about. Unfortunately I discovered this a little too late, and ended up struggling to find something on which to contribute.

That said, the three articles that I contributed to were:
  1. The International University in Germany: link
  2. EZMO link
  3. Social.fm: deleted

The first article that I contributed to was on the university where I am currently studying at. I was shocked when I first realized that there was only a short paragraph on the university as well contact details. This provided the opportunity to instead of struggling on creating an entire new article, to just add to an existing article. As was mentioned in the context post there are several tutorials on editing articles. However, a different philosophy exists where the best way to learn something new is to play with it until it breaks. Unfortunately, or perhaps fortunately, it is not that easy to “break” an article on Wikipedia.

While editing an article there is sandbox in which you can experiment, play, test and preview the article before you save any changes. There is also a capability to view the history of a page and see what was added during each edit. Furthermore, thanks to the many contributors, a spelling or grammar error usually only has a short lifespan before it is corrected. The sandbox was very useful when I tried to add an information box in the top right hand corner. It initially seems a lot more complicated, but soon it was discovered that there are several templates available to assist in creating advanced pages. Another big advantage is that due to the vast availability of content on Wikipedia it is easy to see how to implement something with the aid of an example. For an example another university wiki which had an info-box was opened and edited which lead to the discovery of the readily available templates.

The second big discovery was made during the search on how to create a contents section for an article. Within the help section there exist a “Cheatsheet”, which is very helpful in the formatting of an article. This contains text shortcuts from how to italicize or bold specified text to creating links and also to apply different headings for sections. Furthermore, when more than four headings are used within an article, a content section is automatically created. The content section therefore proved to be a lot easier to create than originally anticipated. As Wikipedia is an encyclopedia, it is necessary to add references to the pages. When the correct “tags” are used to create references, an organized reference section is automatically added at the end of the article. This is of great assistance in keeping the article organized.

The last difficulty associated with the first article arose with the addition of the university logo. This originally proved to be a confusing process, but a quick search within the encyclopedia quickly revealed an article which assists with this. An image is then basically treated as a new article and to display the image within the article uses similar tags as when you link to another internal article. This article was left for a day, and when I next logged on to Wikipedia a notice was displayed that there is a new message for me. This message was basically concerning the image that I uploaded. When adding content to Wikipedia it is important to adhere to copyright laws, and in this case, it was necessary to provide information on why the logo could be used under the fair use clause which allows the use of this image. This is necessary as other articles can also link to the image and display the image and might lead to serious copyright issues. In the case that no information was provided on the image page, the image would be deleted within a week to protect Wikipedia. This notice were created by a bot, and also lead to the realization that several other bots constantly run on the wiki and prevents users from making unnecessary mistakes.

Unfortunately, the second article that was contributed to was not nearly as big a contribution, but was mainly an info-box. As was mentioned within the previous section, there are several templates available that allows for the quick creation of these info-boxes. This article was mainly chosen as the name appeared on a technology review webpage. It was anticipated that other users might also contribute to this article during the time assignment time, but unfortunately that has not occurred.

The third article that was added was purely used as an experiment. Another name that appeared on a technology review list was used to create the article. There was in fact very little information added at the beginning, also with the hope that other users might contribute and that the process might be observed. The name Social.fm was basically only a name change from Mercora to Social.fm. Unfortunately, before any other users were capable of contributing to it, someone tagged it to be speedily deleted. It turns out that there are certain criteria which allow a page to be tagged for speedy deletion. Another message was sent to my talk page on Wikipedia which warned of tag. It also provides instruction on what to do before it is deleted to notify administrators to wait a little while longer before deleting it. Instructions on how to proceed in the case that the article was already deleted is also provided within this particular message. Even though this was not the response that was expected, it still provided valuable information on the functioning of Wikipedia.

Lastly, to provide a little more information on the process, each article allows users to add watch tags. When a page has been tagged to be watched, it keeps users up to date on any changes that occur on those articles from the date it was tagged. When a user is logged in there is a small link “my watchlist” in the top right corner of Wikipedia which displays list wise what changes occurred to the separate articles. The last interesting observation was the speed at which certain information is updated. Within the search to update something useful to the community, information regarding the availability of the IPhone in France was investigated. Within an hour of the release of the article on the internet the respective article was already updated with the corresponding information. This only provided confirmation of active community that contributes to Wikipedia.

Tuesday 16 October 2007

Assignment 2: Online communities:Wiki-Away - Part I

Description of the context: Wikipedia

Wikipedia is a multilingual, web-based, free content encyclopedia project and Wikipedia's articles provide links within the articles to guide the user to related pages with additional and explanatory information.

There are currently approximately 2 million articles in English and every day thousands of visitors from around the world edit and create new articles to increase the knowledge base held by this encyclopedia. Most articles can be edited by anyone, with the exception of a select few, simply by clicking the edit this page link. This is in fact one of the strong points of Wikipedia, however it is also the biggest downfall of the encyclopedia. Users with a deep knowledge base on a particular subject can easily contribute information on their subject with ease, but this gives also rise to vandalism and wrong information. Fortunately, the software on which Wikipedia is powered by (mediaWiki) easily allows the rollback of information to previous articles.

With thanks to the large contributing community of Wikipedia, there is also no need to worry about accidentally damaging Wikipedia when adding or improving articles, as other editors are always around to advise or correct obvious errors. There are also several administrators that constantly ensure the behavior of the contributors conforms to the policies and guidelines.

Wikipedia is broadly considered as reliable as Encyclopedia Britannica with similar error rates on major and minor omissions and errors within the articles. Thanks to the requirements of academic citations of sources allows Wikipedia to be a good starting point for research. However, due to the changing nature of wiki’s together with the possible of huge omissions and uncorrected vandalism, it is difficult to hold up against scrutiny when using Wikipedia as the main source of any research paper.

Most articles in Wikipedia start as stubs, but can become featured articles after many contributions. When contributing to Wikipedia, it is important to keep the five pillars of Wikipedia in mind. These five principles are:
  • Wikipedia is an encyclopedia
  • Wikipedia is free content
  • Wikipedia works by building consensus
  • Wikipedia has a code of conduct
  • Wikipedia does not have firm rules, apart from these five pillars

Furthermore, the key policies and guidelines of Wikipedia are
  1. Wikipedia works by building consensus
  2. Wikipedia is an encyclopedia
  3. Respect other contributors
  4. Respect copyrights
  5. Avoid bias
  6. Include only verifiable information

Lastly, for new contributors there are a series of tutorials available that quickly and efficiently explain how to edit articles. As was mentioned previously, creating an account is not a requirement, however it is easy to create an account and allows you to build up a reputation for contributing worthwhile content.

Thursday 11 October 2007

Information Needs in Collocated Software Development Teams by Ko et al.

What information needs exist and how severe are they?
The questions below has been organized under 7 headings and the frequency and importance of the questions can be viewed in the figures below.

  1. Writing Code
  2. c1) What data structures or functions can be use to implement this behaviour?
    c2) How do I use this data structure of function?
    c3) How can I coordinate this with this other data structure or function?

  3. Submitting a change
  4. s1) Did I make any mistakes in my new code?
    s2) Did I follow my team's conventions?
    s3) Which changes are part of this submission?

  5. Triaging bugs
  6. b1) Is this a legitimate problem?
    b2) How difficult will this problem be to fix?
    b3) Is it worth fixing?

  7. Reproducing the Failure
  8. r1) What does the failure look like?
    r2) In what situations does this failure occur?

  9. Understanding behavior
  10. u1) What code could have caused this behaviour?
    u2) What's statistically related to this code?
    u3) What code caused this program state?

  11. Reasoning about design
  12. d1) What is the purpose of this code?
    d2) What is the program supposed to do?
    d3) Why was this code implemented this way?
    d4) What are the implications of this change?

  13. Maintaining awareness
  14. a1) How have resources I depend on changed?
    a2) What have my coworkers been doing?
    a3) What information was relevant to my task?


Figure 1: Types of information developers sought with search times, percepted importance, availability and accuracy.

Figure 2: Type of information developers sought and the frequency and outcomes of searches, and sources. Common sources are in bold.

Coordination in Software Development by Kraut and Streeter

What characteristics of software development do cause coordination problems?

1.) Scale
Software systems are usually extremely large and requires a high level of coordination. This level of coordination is very difficult to obtain in large companies and project teams. Projects of this scale usually leads to specialization groups and a division of the team according to geographic, organizational and social boundaries. These barriers and specialized groups reduces the willingless for interoperability of the team and limits the level of experience each member gains.

2.) Uncertainty
Uncertainty is also a large factor and also increase the problems generated due to the large scale. Since most software systems are unique with none or few previous implementations and applications in the specific field it leads to uncertainty. Furthermore, the functionality requirements of a software system often change during the development phase as the users realize what the software is capable of. Specifications are also usually unclear or incomplete due to limited availability of specific domain knowledge. Sometimes it is necessary for developers and achitects to make discission without having all the information readily available due to low levels of coordination. Lastly, software uncertainty is also caused since different subgroups involved in its development often have different views on what the software should be capable of.

3.) Interdependence
Software systems requires precise integration of the different components and modules. Unexpected problems may occur due to unanticipated interaction between the software modules and can have disastrous consequences.

4.) Informal communication
Several tools have been developed over the last couple of years to improve the productivity of the individual programmer, however these tools does not specifically address coordination problems. Informal coordination such as personal, peer-oriented and interactive communication may be necessary to face problems associated with uncertainty. However, as mentioned above a large cause for uncertainty is the scale of software systems. This large scale makes it difficult for informal communication to occur. Furthermore, in the situations in which it can occur, speach which is the primary medium for this type of communication, may be too imprecise to describe the tight coupling necessary between different software modules.

Thursday 4 October 2007

Groupware and Social Dynamics: Eight Challenges for Developers

The huge software markets created by standalone PC's used to be restricted to single-user applications. However, this changed as computers became interconnected through networks which opened the markets for group applications. The main problems arises from the fact that the biggest interest in groupware development is found among developers and users of commercial off-the-shelf products, who used to focus om single-user applications.

In general, an organization may adapt to a large computer system, but a small application program must adapt to the organization. Groupware is seen as a small application in comparison with MIS software. Due to the social and political factors at work in group settings, achieving groupware acceptance is much trickier than single-user product acceptance.

The eight challenges for groupware developers are:

  1. There exist a disparity in the work and benefit of different users - Electronic calendar example
  2. A critical mass for groupware is required and according to the prisoner's dilemma if everyone furthers his own goal the critical mass will not be reached.
  3. There is often a disruption of social processes that can lead to rejection of the groupware. It is extremely important for groupware developers to work with representative users whenever possible.
  4. Exception handling - Most systems requires ad hoc solutions and it is difficult to implement these features within the groupware.
  5. Unobtrusive accessibility - Infrequently used features must not obstruct more frequently used features. However, they must be known and accessible to users.
  6. Difficulty of evaluation - It is difficult to relaibly capture complex but important social, motivational, economic and politicial dynamics.
  7. Failure of intuition - Good intuition for multi-user applications is unlikely to be found anywhere in a product development environment. Experience is based on single-user applications.
  8. The adoption process - Consultation is not packaged with shrinkwrapped software and groupware adoption is a much more complex process than that of of-the-shelf wordprocessors.

The following methods may help in overcoming behavioural and social challenges.

  • Extend the use of single-user applications by adding groupware features
  • Find niches where existing groupware succeeds
  • Build on projects that have fared better in the past
  • Find ways to provide direct benefits for all group members
  • Educate managers and developers about groupware


Thursday 27 September 2007

Belated Readings: Week 3

Computer-Supported Cooperative Work: History and Focus - Jonathan Grudin

What factors and developments led to the establishment of the area of CSCW?
Started with office automation where it was tried to extend word processors and spreadsheets to support groups. It was found that technology alone was not enough, and that it would be necessary to research group dynamics and how people work in groups in order to create successful groupware application. Initial developments consisted of desktop conferencing, videoconferencing and email. Typical related studies that supported the establishment of CSCW were CAD/CAM, CASE and MUDs.

What are the differences between US and EU research traditions in CSCW?
USEurope
Small-system/product developmentLarge-system/internal development
R&D sponsored by Computer industry, research labs and University; R&D more intertwinedMostly Government sponsored
Focus on Experimental, observational and sociological dataFocus on large-scale systems development
Others build technology and they look for ways to use itDriven by philosophy, social, economic, or political theory
Empirical:Experiments by social psychologists looking at group activity among teams of studentsContributions: Explicitly grounded in the writings of philosophers, social theorists and economists.

Collaborative Computing: The Next Millenium - Jay Nunamaker


What does Nunamaker tell about the role of anonymity in groupware systems?

Traditionally the requirements gathering process documented each person’s contribution every step of the way. This stifles both innovation and criticism, since no one wanted to get a reputation for rocking the boat. To prevent this stifling of ideas Nunamker suggested anonymity during the idea-gathering phase of meetings. The anonymity was obtained by allowing each person the use of a computer during the meeting to type their contributions to the meeting, which appeared, anonymously, on everyone else’s screen.

This allowed people who tended to remain silent in meetings, from shyness or intimidation, could now share their ideas freely. It also avoided constant bickering and shooting down of hostile participants ideas.
The net effect of these meetings was to generate more and better ideas faster .

Unfortunately, the very anonymity that allows freedom of expression can also be abused. To avoid this type of chaos, the anonymity should be conditional. There are times when you want participants to be anonymous and times when you don’t.

Friday 21 September 2007

Belated Readings: Week 2

Distance Matters

What are the major differences between co-located and distant work? Why does "distance matter"?

When trying to bridge co-located and distance located workgroups, it is necessary to realize the key characteristics of co-located teams. These are:

1. Rapid Feedback
2. Multiple Channels
3. Personal information
4. Nuanced information
5. Shared local context
6. Informal “hall” time before and after
7. Co-reference
8. Individual control
9. Implicit cues
10. Spatiality of reference

Groupware in the market currently only supports characteristics 2, 3, 4 and 6 of the above list, and even then, it is supported poorly. Future groupware would at least be able to provide most of these characteristics; however the following factors will continue to provide resistance

1. Lack of common ground, context and trust
2. Different time zones
3. Culture differences


What do you think: will it be possible to make distributed teams as efficient as collocated ones in the future?

Within the global environment today, it is necessary to work across countries and time zones. Unfortunately, we are forced to accept the current solutions. In my opinion, distributed teams will never become as efficient as the co-located teams. It would rather be necessary to look at the added value provided by distributed teams, which will force the work environment to accept these collaborative solutions.

Thursday 20 September 2007

Objective

This blog will mainly be used to post answers to the discussion of certain scientific papers made available through the CSCW class.