Monday, November 5, 2007

IT C515 CSCW - Readings for Week 9

Semantic Web 2.0 / The two cultures: mashing up web 2.0 and the semantic web
What is the relationship between Web 2.0 and the Semantic Web?
How can Semantic Web technologies bring benefit to Web 2.0-style applications?

The vision of the Semantic Web is to extend principles of the Web from documents to data. This extension will allow to fulfill more of the Web’s potential, in that it will allow data to be shared effectively by wider communities, and to be processed automatically by tools as well as manually.


The Semantic Web allows two things.

  • It allows data to be surfaced in the form of real data, so that a program doesn’t have to strip the formatting and pictures and ads off a Web page and guess where the data on it is.
  • It also allows people to write (or generate) files which explains to a machine, the relationship between different sets of data.

The most important thing in semantic web is to be able to define and describe the relations among data (i.e., resources) on the Web.This is not unlike the usage of hyperlinks on the current Web that connect the current page with another one: the hyperlinks defines a relationship between the current page and the target. One major difference is that, on the Semantic Web, such relationships can be established between any two resources, there is no notion of “current” page.


Another major difference is that the relationship (i.e, the link) itself is named, whereas the link used by a human on the (traditional) Web is not and their role is deduced by the human reader. The definition of those relations allow for a better and automatic interchange of data. Resource Description Framework (RDF), which is one of the fundamental building blocks of the Semantic Web, gives a formal definition for that interchange.



On that basis, additional building blocks are built around this central notion. Some examples are

  • Tools to query information described through such relationships (eg, SPARQL)
  • Tools to have a finer and more detailed classification and characterization of those relationships. This ensures interoperability and more complex automatic behaviors. (E.g., RDF Schemas, OWL)
  • For more complex cases, tools are available to define logical relationships among resources and the relationships (for example, if a relationships binds a person to his/her email address, it is feasible to declare that the email address is unique, ie, the address is not shared by several persons). (E.g., OWL, Rules)
  • Tools to extract from, and to bind to traditional data sources to ensure their interchange with data from other sources. (E.g., GRDDL, RDFa)

One aspect of Web 2.0, beyond the exciting new interfaces, is that it pushes intelligence and active agents from the server to the client, more specifically the browser. Development of active client-side application also means that these applications use all kinds of data; data that are on the Web somewhere, or data that is embedded in the page though not necessarily visible on the screen. Examples are microformats type annotation of the page, calendar data on the Web, tagged images or links stored on a web site, etc.


This aspect of Web 2.0, ie, that applications are based on combining various types of data (“mashing up” the data) that are spread all around on the Web coincides with the very essence of the Semantic Web. What the Semantic Web provides is a more consistent model and tools for the definition and the usage of qualified relationships among data on the Web. I.e., both technologies focus on intelligent data sharing. A number of typical Web 2.0 demonstrations and applications emerge that, in the background, use Semantic Web tools combined with AJAX and other, exciting user interface approaches.


In many cases, using RDF-based techniques makes the mashing up process easier, mainly when data collected by one application is reused by another one somewhere down the line. The general nature of RDF makes this “mashup chaining” straightforward, which is not always the case for simpler Web 2.0 applications.

In general Semantic Web could bring to Web 2.0 applications:

  • Reusing data from the web - which basically means that web 2.0 applications can get (collect) data from diffrent web sources.
  • Dynamic data source - by using standard data representation technlogies like RDF, XML, or OWL a web 2.0 application can benefit of having a dynamic feeds from other applications.
  • Personalization of Web sites - This allows users to use information about the reader encoded in open Web standards, which describes an infrastructure that uses an extension of the HTTP GET command in order to send a reference to the reader’s file.
  • Giving back to the web - any information provided by a user to a web 2.0 application can be an input to another web 2.0 application. For this Semantic web helps in such a way that by categorizing and annotating the informtaion so that it will be easy to be searched by web 2.0 applications.

Tuesday, October 30, 2007

IT C515 CSCW - Readings for Week 8

Studying Cooperation and Conflict between Authors with history flow Visualizations
What are the main problems of Wikipedia as described by the authors? How does community deal with them?

Wikipedia is one of the most profound web technologies in the decade. Basically the idea of Wikipedia is making the content of the website information open to the whole world to read and write. When we say “read and write”, any user from all over the world can contribute to the specific topic just by clicking the “edit” link which is found on every article. Or any user can create new article, to do so the user should not be a registered user. It would be a good thing to get registered other than being “Anonymous” so that the community will know about it.

In the Wikipedia there are communities of users who monitor the articles written. These communities will monitor the activity of each article and make the improvement. Making Wikipedia open to everyone to edit or add every article it makes it vulnerable to mistakes, ignorance and malice. Because of these issues Wikipedia generously makes public its database of articles, along with all past revisions of those articles, providing a reach record of interaction between authors. Most wikis have archiving systems that record all previous edits of a page and make it simple to revert to an earlier version. If the ease of adding contribution is a distinguishing feature of wiki, so too, paradoxically, is the ease of removing contributions of others by reverting an edit. This method ensures that no permanent harm can be caused by bad editing.

And also Wikipedia has additional mechanisms to control vulnerability nature of it like,
  • Page history” where a user can see the history of each article, on this page there is
    • A link to a saved version
    • A link to the difference between the saved version and the one previous to it, showing what was deleted from and what was inserted to the page
    • Date and time when the change happenedo Who made the change (if the user is anonymous, IP address of the user)
    • Any comments the contributor might have left about the change he/she made
  • recent changes” where the list of recently updated or added articles can be found,
  • watch list” which allows users to keep a watch list of a pages they wish to monitor closely
  • talk pages” where the Wikipedia community discuss topics on “real” pages (article pages)

In addition to these pages to control the quality of articles on the Wikipedia they also created a new visualization method named history flow, designed to show relationships between multiple document versions and visualize how collaborative documents evolve over time. The goal of history flow is to make broad trends in revision histories immediately visible, while preserving details for closer examination.

Wikis are vulnerable to malicious edits or “vandalism”. There are a variety of vandalism happened round Wikipedia articles, the common five types are:
  1. Mass deletion: deletion of all contents of a page
  2. Offensive copy: insertion of vulgarities or slurs
  3. Phony copy: insertion of text unrelated to the page topic
  4. Phony redirection: linking a page to unrelated or offensive terms
  5. Idiosyncratic copy: adding text that is related to the topic of the page but which is clearly one-sided, not of general interest, or inflammatory (biased)

For this kind of vandalism problems history flow has a mechanism.In general the community of Wikipedia by using the above mentioned pages and mechanism tries to keep the information is lot vandalized by any kind of attacks.



A Content-Driven Reputation System for the Wikipedia

What different notions of reputation in Wikipedia do the authors discussed?

Based on this article, authors gain reputation when the edits they perform to Wikipedia articles are preserved by subsequent authors, and they lose reputation when the edits are undone in short order. The lifespan of an edit to a Wikipedia article is inferred from an analysis of the subsequent version of the article. This kind of reputation is called content-driven, since it is computed on the basis of how content evolves, rather than on the basis of user comments or ratings.

And the other type of reputation is user-driven, which is based on users rating each other’s contributions or behavior. For the user-driven mechanism the authors puts two kinds of measures:
  • Text life: how much of the text inserted by author A is still present after author B’s edit
  • Edit life: how much of the reorganization (text reordering and deletions) performed after author A is preserved after author B’s edit.

Based on the results on Text and Edit life the reputation for author A and B will be assigned.


In general a notion of author reputation can serve several purposes in the Wikipedia. Author reputation provides a guide to the value of fresh contributions, which have not yet been vetted by subsequent authors. The reputation of the authors who contributed and vetted the text can be used as a rough guide to the veracity, or trust, of the article. Author reputation can also be used for author management. Highly controversial articles could be protected, preventing low-reputation authors from editing them. Alternatively, editors could be alerted when crucial or controversial articles are edited by low-reputation authors. Furthermore, reputation can constitute an incentive for authors to provide high-quality contributions.

Saturday, October 27, 2007

IT C515 CSCW - Readings for Week 7

Enterprise 2.0: The Dawn of Emergent Collaboration,

By Andrew McAfee

What opportunities/benefit does the author claim for introducing Enterprise 2.0/Blogging technologies into the enterprise?

Currently in most companies collaborate with in the company’s intranet or internet by using email, instant messaging, and others. But still, while using this applications there were some limitations to actually fill the really collaboration with in the company workers.

The new digital platforms for generating, sharing and refining information are already popular on the internet, where they are collectively labeled as “Web 2.0” technologies. Where, Web 2.0 is a kind of buzz word for blogs, wikis, Mashups, online communities, social bookmarking (del.icio.us) and social Networking (Facebook) platforms.


Enterprise 2.0 focuses only on those platforms that companies can buy or build in order to make visible and practices and outputs of their knowledge workers. Enterprise 2.0 is as Harvard Business School Associate Professor Andrew McAfee's definition:

Enterprise 2.0 is the use of emergent social software platforms within companies, or between companies and their partners or customers.


Furthermore Andrew McAfee's uses the acronym SLATES to indicate the six components of Enterprise 2.0 technologies. SLATES in general means, as Dion Hinchcliffe defines it:

SLATES describes the combined use of effective enterprise search and discovery, using links to connect information together into a meaningful information ecosystem using the model of the Web, providing low-barrier social tools for public authorship of enterprise content, tags to let users created emergent organizational structure, extensions to spontaneously provide intelligent content suggestions similar to Amazon's recommendation system, and signals to let users know when enterprise information they care about has been published or updated, such as when a corporate RSS feed of interest changes.


While SLATES forms the basic framework of Enterprise 2.0, it does not negate all of the higher level Web 2.0 design patterns and business models. And in this way, the new Web 2.0 report from O'Reilly is quite effective and diligent in interweaving the story of Web 2.0 with the specific aspects of Enterprise 2.0.


Therefore, in the 21st century

  • Enterprise 2.0 is going to happen in every organization
  • Effective Enterprise 2.0 seems to involve more than just a blogs and wikis
  • Enterprise 2.0 is more a state of mind than a product anybody can purchase
  • More businesses still need to educate their workers on the techniques and best practices of Enterprise 2.0 and social media
  • The benefits of Enterprise 2.0 can be dramatic, but only builds steadily over time
  • Enterprise 2.0 does not seem to put older IT systems out of business

Enterprise 2.0 technologies have the potential to usher in a new era by making both the practices of knowledge work and its outputs more visible. But still there are some challenges implementing it. For instance, busy knowledge workers will not use the new technologies, despite training and prodding. Most people who use the Internet today are not bloggers, Wikipedia’s or taggers. They do not help produce the platform – they just use it. So the question will be, will the situation be any different on company intranets?


The other challenge is that knowledge workers might use Enterprise 2.0 technologies exactly as intended, but this may lead to unintended outcomes. However the question is: Will the change be welcomed?


Because of the challenges these technologies bring with them, there will be significant differences in companies abilities to exploit them. Because of the opportunities the technologies bring, these differences will matter a great deal.


Corporate Blogging:
Building community through persistent digital talk


The real benefit of corporate blogging may be to create an informal mechanism that links disparate, far-flung parts of the organization into constructive contact. Blanchard and Horan talk about two types of virtual communities in an organization —those that reinforce physically compact communities and those that connect completely geographically dispersed communities of interest—and finds the corporate blogging more effective at creating social capital.

Corporate blogs such represent a third type of virtual community whose members are geographically dispersed, but who share a common organizational culture and identity. In such cases, the online community may reinforce the sense of belonging to the organization and consequently build more social capital than the geographically dispersed virtual communities referred to by Blanchard and Horan. That is, such virtual communities may create climate benefits to the organization beyond what social and informational benefits they create for individual participants. For large organizations, this could be especially important.

Blogging appears to create significant social as well as informational benefits for users of the system. The community benefit and the connections created begin as weak ties with values of perspective and information. Over time, stronger ties develop and social benefits are augmented. The persistence of information in blogs provides a valuable tool for executives and others to be able to “see” and learn about concerns and values of the organization. Finally, such internal corporate blogs may have organizational benefits even beyond the sum of these individual benefits.

Friday, October 19, 2007

IT C515 CSCW - Readings for Week 6

Building Collaboration into IDE's

Mostly software developments are not done by single developer, but rather it will be a team work. A team may include project managers, Tasters, architects, designers, programmers, and many more individuals. There for in this kind of situation collaboration will be highly needed, despite the fact that collaboration can be taken as time-consuming and problematic. But still there collaboration within the development environment becomes very important. To facilitate this needs there are some major examples mentioned:


  • Configuration Management: - Tools such as CVS (Concurrent Versions System) are the central repositories of the software development team. They are also very structured collaborative tools: They allow developers to exchange, modify, mark, and merge files in a coordinated manner. While powerful, these tools are complex, especially for large development projects. By integrating configuration management into the IDE, we eliminate an extra step to perform shared file management operations.
  • Screen Sharing: - A common occurrence in the course of a developer's workday is to ask a colleague to come over to help figure out a problem with some code. The end result is that the code gets fixed more efficiently than if the programmer had pored over the problem alone. Getting another person's viewpoint is codified in practices such as code reviews, pair programming, and—on a larger scale—open source software development.
  • E-mail and IM: -Taking context up another notch, ad hoc communication tools such as e-mail and IM are often used for development. And also traceability: The questions and answers about a piece of code, which would normally have been hidden away on an e-mail server or lost in a transient IM, would be a form of code annotation that supplements formal documentation.

Integrating collaborative capabilities into the IDE holds great potential for easing programmers' development activities. This integration introduces a number of technical and design challenges. Major issues include:

  • Building for extensibility, interoperability, and flexibility
  • Choosing and designing the "right" set of collaborative features
  • Supporting transitions between individual and group work

Identification of Coordination Requirements:
Implications for the Design of Collaboration and Awareness Tools

The author’s measures of “fit” refer to the match between a particular organizational design and the organization’s ability to carry out the task. And they have traditionally, focused on two factors:

  • The temporal dependencies among tasks that are assigned to organization groups
  • The formal organizational structure as a means of communications and coordination.

The authors extends the method proposed by the standard measures of fit by providing a finer-grain level of analysis and also assessing the role of multiple ways of coordination activities.

Coordination Requirement matrix which is generated by taking Task Assignment and Task Dependencies for each of people, whether or not a task dependency exists or the extent to which each pair of people needs to coordinate their work. Whereas Actual Coordination matrix represents the interactions workers engaged in through different means of coordination. Then, given a particular set of dependencies among tasks, congruence in the portion of coordination activities that actually occurred relative to the total number of coordination activates that should have taken place.

Friday, October 12, 2007

IT C515 CSCW - Assignment 2

Contribute to an online encyclopedia - Part I
Week 1


For this assignment I was thinking to find an interesting topic on Web 2.0. Any article which talks about new web site technology based on web 2.0, and in addition to that I have to find a wiki which talks basically about web technologies. Which this part took a lot of my time. Any ways after gooling so many times I end up using Wikia wiki. This wiki has different categories under for web applications done by web 2.0, such as Del.icio.us , Digg and Flickr.

"Wikia is a community destination supporting the creation and development of wiki communities on any topic people are passionate about. Wikia currently support over 3,000 communities in more than 70 languages. Part of the free culture movement, Wikia content is released under a free content license and operates on the Open Source MediaWiki software. Explore our existing communities or start a new one. In Wikia "Anyone can edit content on Wikia""

Therefore I chose this wiki a good place to contribute my articles. First I registered as a user and posted three articles which are
All three articles talked about web application done using web 2.0 and kind of interesting. I posted the articles on October 8, 2007, and monitoring the activity of it. Upon creating my articles I putted each article under reasonable categories, so that when ever a user starts searching an articles based on category they can find my articles easily. For instance my first article has "Web 2.0", the second article "Ajax and Web 2.0" and the last one has "Web 2.0 and Social Networking" categories.

If a user is registered Wikia will provide a menus like

  • My user page: Where users use it as their home page
  • My Talk: Where users write and talk about an article
  • My Preferences: Where users can add and edit their user profile
  • My Watchlist: Where users follow and monitor the things going on round their articles
  • My Contribution: Where a user sees the list of contributions he/she made
In general almost in most of the Wikipedias give such kind of user menus. And any user can edit or add any comments to a given article. Therefor by the help of this menus I will try to follow what will happen to my articles for the coming two weeks.

But unfortunately until October 12, I did not see any activity under my articles. This might be the wiki I picked is not that much famous and has no many visitors or people who are visiting didn't know how to comment or edit the articles. Any ways I emailed to my friends to visit this articles and comment on it. And am waiting to see the changes.

I'll keep you posted.

Contribute to an online encyclopedia - Part II
Week 2
Ok, today is October 15, 2007. I checked my postings status and I got something interesting. Two of my articles has been rated, it was a kind of interesting to know the articles I wrote has been read. Any ways Goodbye Passwords, Hello Vidoop got three out of five and AjaxWindows The break through WebOS got four out of five, it is nice ha. Even though my last article didn't got any thing :). But still am having a hard time to get where to see who actually saw the articles and who made any correction. And am working on it. I'll keep on posted on that one and any new things going to happen in the coming week.

Contribute to an online encyclopedia - Part III
Week 2

Today is October 18, 2007. I again checked my articles, but unfortunately nothing has happened. And I tried to investigate why. Basically Wikia's interface and functionalities are easy to use and straight forward. And rating an article is extrimly easy it is just clicking on the stars which are located bellow an article. The only thing I found is that under each article there is a link "Share it" which allows a user to send an email to a friend or anybody to see the article. But unfortunately this functionality does not work. I tried to send and email to a friend and the email never reaches. May be this can be one of the problems for which the articles cannot be seen by a lot of users. Other than that I could not find any problem with the system. My only guess can be, may be Wikia is not that famous or my articles are not that intrusting to attract many users to comment on it.

In addition to that starting from October 15, 2007 I have been monitoring an article on Wikipedia. I did not add or edit anything to the article, I was just watching who did what things. The article was "Queen of Sheba" which is the origin of my name "Makeda". On this page people where making some minor changes such us correcting dates, adding additional definitions, and others since October 15 till now (October 18). In Wikipedia anybody can edit an article as long as they know how to edit an article by using annotation (which is the way you manage how the edited page will look like) and the IP address of the person will be recored as an author. If the user is a registered user instead of IP address the users' name will be recorded. Furthermore Wikipedia has a strict rule on copyrighted materials. It is stated as

"Any of the trademarks, service marks, collective marks, design rights, personality rights or similar rights that are mentioned, used or cited on this site are the property of their respective owners. Unless otherwise stated, Wikimedia sites are neither endorsed by nor affiliated with any of the holders of such rights, nor can Wikimedia grant rights to use otherwise protected materials. Your use of any such incorporeal property is at your own risk."

The full rule how to use the Wikipedia can be found under this link.

Contribute to an online encyclopedia - Conclusion
Week 2


Now it is October 18, 2007 8:00 PM, still nothing happened on my articles in Wikia. But on the other hand my other article the one I only monitor the activity "The Queen of Sheba" on Wikipedia has very little modification. And also the things changed yesterday are replaced with the original one. Basically what happens in the Wikipedia community, there are a group of authors who over look the current and recent changes on every article. And if any of this authorized authors thinks the added information is irrelevant, redundant, or unnecessary they will delete any changes made by other users. Therefor most of the time this situation will make the user frustrated.

This was one of my reasons for not writing my articles on Wikipedia, not because do not want but the expectation of the Wikipedia authors communities is very high and also now a days Wikipedia is highly viewed all over the world and any article on it has to be proven heavily.

In general I have learned a lot for the past two weeks on how Wikipedia works. And a Wiki can offer a lot of things for collaborative work, because the general idea of Wiki is anybody from any ware can edit or add any kind of article and people all over the world can contribute to it or learn from it. In addition to that I have learned the value of users in the Wikipedia community. As mentioned above my article was not that much viewed or commented on. But imagine if a lot of people contribute to those articles, how Wikia will be rich in information.

Wednesday, October 10, 2007

IT C515 CSCW - Readings for Week 5

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

What information needs exist and how severe are they?

In an area with a lot of developers working in one application software the need for information is very high. For instance in a scenario like, five developers works on one application and submitted their application to testers so that they can work on fixing bugs. Based on the bug report from the testers the developers’ will starts working on fixing the bugs. In this case if those developers did not communicate face-to-face, via e-mail, or through IM there will be no way to know who is working on what. And sometimes in addition to the tasters report users might personally go to the developer and tell him/her the problem he/she got on the system. And if the developer fixes that problem without notifying the other developers, he/she might encounter losing of data. Therefore, in this kind of situation a lot of problems can happen. Such as, two developers working on the same thing and one might lose a data because of that, and also it will be very hard to control versions or repletion of work might occur. In addition to that there will be a waste of time.

Furthermore this will lead to a bad developing scheme. Therefore, information is very much needed in a way to avoid any version control problems, fulfilling developing time deadlines, and customer satisfaction. I can say the need of information especially in the collaborative work is a very sever thing.

Coordination in Software Development by Kraut and Streeter

Basically when we say coordination it means people work in a together to achieve a common goal. So when doing this there might be obstacles related to coordinating all the resources. Some of the obstacles are listed bellow

Scale

Software Developments are mostly large, which will be difficult to be handled with one person. There will be a lot of challenges in software system integration for big software development companies because the applications size might be very big and it also might take a lot of time to finish. Effort of this scale always leads to different section of independence across geographic, organizational, and social boundaries. Even though these sections increase efficiency in a large group, it also creates new coordination task. Having different section to a project limits people’s breadth of experience, leading to errors, narrowness and insufficient opportunities, and also can reduce the motivation to interact with others and to accept new ideas.

Uncertainty

Well basically uncertainty in software development happens most of the times. Since when developers starts working on a certain project they cannot actually say they have every documents on had before starting the project. The requirement for the project can be added or canceled anytime and this increases the uncertainty of a given project.

Interdependence

Basically when we see the nature of a given software development it has high interdependence with its previous application or its future application. Therefore if there is no good interdependence between the hierarchies of sub-projects, it will lead the overall output of the project to failure.

Informal communication

Informal communication within a software company might increase help to get to the desired goal. This is because informal communication is easy to remember and summarize it for future use by using some kind of artifacts. Unfortunately, for the large software development projects informal communication is almost impossible to achieve because of the large size of these projects, the inefficiencies of pair wise face to face communication may prevent the use of informal communication.

Thursday, October 4, 2007

IT C515 CSCW - Reading for Week 4

Groupware and Social Dynamics:
Eight Challenges for Developers

Groupware is introduced as software which lies in the midst of the range between single-user applications and large organizational information systems. Examples include e-mail, instant messaging, group calendaring and scheduling, and electronic meeting rooms. The developers of groupware today come mostly from a single-user background, and hence many do not realize the social and political factors crucial to developing groupware.


The challenges for developing groupware technologies and be defined as
  • Disparities in who does work to make an application succeed and who benefits from it, which can be solved by designing processes that create benefits for all group members;
  • Challenges in obtaining a critical mass of users, which can be solved by reducing reduce work required for all users and build in incentives;
  • Social, political, and motivational currents that software must navigate, which can also be solved by contextual inquiry, domain familiarity or understanding;
  • Providing the flexibility required by often surprisingly variable work routines, which can be solved by studying actual work practice and allow exceptions;
  • The challenge of designing infrequently used features to be unobtrusive but accessible when needed, this also can be solved by adding groupware features to existing single-user applications then creating awareness and access to infrequently used features;
  • Underestimated Difficulty of Evaluating Groupware;
  • Lack of intuition for the needs of groups and their diverse members, which can be solved by contextual inquiry or domain understanding; and
  • A New Challenge for Product Developers, which can be also solved by adding groupware to existing applications and by observing other systems good design (by understanding the environment of use, yet again contextual inquiry) and by developed adoption strategy.

Groupware should strive to directly benefit all group members, build off of existing successful applications if possible, develop thoughtful adoption strategies, and be rooted in an understanding of the physical, social, and political environment of use.