December 25, 2015
Many years have passed after the advent of web 2.0, there have been lots of conferences, journals and articles around it and many individuals on the web and in their handwriting have written a lot about it, and we have experienced many web 2.0 websites specially after virtual social media became popular, but still many don’t have a consensus on what it exactly mean and cast doubt on claims of many websites which have used to count themselves as members of this wild.
In fact, web 2.0, just like many other areas, doesn’t have a specified boundary, but it has some common principals which constitute the core of this wild and we could say that the more of these principals a particular web-app follows, the more similarity to a web 2.0 app it will have. Let’s take a look at some of the most important principles and provide some details and examples of them:
- The Web As Platform
Some companies started their existence on the web and became totally web-based, like Google and Ebay. They have important differences with Microsoft-like companies (considering what Microsoft was at the time of publishing this reading), so that they have multi-user (or better to say many-user) applications, they are not selling software packages, but they give service, they are involved with huge amount of data and they deliver their service over a network, called internet.
Much of the web 2.0 success come from a concept called “the long tail”. It refers to the fact that if the power of many small sites become collected together, it could make an enormous power, the Idea which many successful web-based companies like search engines, advertising networks, web analytics services, etc. makes use of. The author says:
The Web 2.0 lesson: leverage customer-self service and algorithmic data management to reach out to the entire web, to the edges and not just the center, to the long tail and not just the head
- Harnessing Collective Intelligence
So why doing something by inaccurate incomplete automated algorithms, while it could be done by the users in the best way, without any special effort?
For example, in many websites we need to classify our large amount of data. We could define some predefined categories, so that every user who wants to generate new content, uses those categories. but some web 2.0 websites let users to define those classifying points as tags, hashtags and topics. Delicious, Flickr, StackExchange Q&A network by supporting tags, and now social media sites like Facebook and Twitter by supporting hashtags introduce folksonomy instead of static taxonomy-based classifying web content.
As another example, Google translate makes use of contribution of its users to learn more and improve level of its translations.
Or Gmail makes use of “report as spam/fishing” to learn from users which content is likely to be unwanted and bothering for users.
Sites like 4square, Tripadvisor, etc. benefit from user reviews and lots of other examples which benefit from users’ intelligence in other aspects.
- Data is the Next Intel Inside
Web 2.0 apps are almost always involved with large amount of data, so that they are sometimes called infoware rather than software. Many of these web-apps have giant distributed databases spread out in different locations to provide higher level of performance/scalability/reliability/accessibility. This data could be owned by the corporation itself, or owned by the users like online drives such as Google Drive.
- End of the Software Release Cycle
Internet era software is that it is delivered as a service, not as a product. This fact leads to a number of fundamental changes so that the functionality of the application becomes its core competency and because the users are helping us to improve the quality of our service and enrich the data we have they are kind of our co-developers, in a reflection of open source development practices.
- Lightweight Programming Models
Supporting lightweight programming models allow systems to be more loosely coupled. By providing providing a simple programming interface we will let other applications easily communicate with ours, and by using other available services and open-source free software, we would benefit from what they are providing us without having to reinvent the wheel again.
- Software Above the Level of a Single Device
Although even a basic web-app is made of 2 devices, one hosting and one client device, but in web 2.0 we see web applications being used collaboratively by many users, as well as enabling us to work with them with different devices like PCs, web browsers, smart phone apps, tablets and even TVs and other multimedia devices. So we are able to use them from anywhere while synchronizing our data and having access to our last changes to data, if there’s any.
- Rich User Experiences
We can categorize web 2.0 artifacts into several major groups, so we are going to introduce 3 of these groups:
- Social Media: Actually social media isn’t a new concept and it was commonplace in the past. But why is news-making now? Because in 19th and 20th century we had some broadcasting tools like TV and radio that just a small amount of people generated it’s content – which is the opposite side of social media – so now we are again back to social media, but now it’s very cheaper, thanks to internet, with ability to reach your voice to a big audience in a twinkling of an eye. So it’s not a waste of time because it helps us to communicate with each other better and have easier access to public information. It could help some revolutions to take occur because it facilitates communication and coordination, but it actually doesn’t “cause” revolutions and other unwanted (or maybe wanted?!) incident to take place and most important of all, it’s not a fad because it existed in old history. Actually, the mass-media era was a historical anomaly. So we have had equivalent historical instances for all concepts like blogs, microblogs and even Instagram and they were pamphlets, coffeehouses and image albums!
Even though social media might be changed again in the form, like it was changed in modern era, but it will permanently remain.
- Online Wikis: Wikipedia as the major example of online wikis, was founded to bring a free encyclopedia for every individual. it uses free license, so everyone can use it freely, or even for commercial purposes and could copy-paste and share its content. It has no other budget sources except for donations from public, people who use it and love it. However it doesn’t need much funding because most things or self-managed or better to say user managed. So it only have 1 employee which is a software developer and its servers are managed by volunteer system admins and the whole foundation is organized by a ragtag bound of people.
To maintain the quality of service, it mostly relies on some social policies as well as some software features. The most important of them is “neutral point-of-view policy is the most important” so they don’t tend to write the truth about different topics, because everyone could have different ideas about what is the truth. It tends to write “what is evident and what has high-credit references”.
Finally, social rules are left completely open ended in the software. so that there’s not a voting system to decide about which edit should be reverted or not and instead, users write their reasons for the opinion they are holding and by analyzing them, the final decision will be made manually.
- Open-source software community: open-source software is popular because it is transparent, benefits from collective efforts of many individuals to be better and in many cases, provides better quality even compared to commercial products. Examples like Apache and Nginx webservers, MySQL and Postgres DBMSes, and many other development tools verify their more popularity compared to paid products at least in software-base businesses. This fact refers to the “harnessing collective intelligence” principal we mentioned in previous section which shows the power group-work and that’s why a giant search engine like google count more on number of backlinks to a particular website or the click impression rate of its search results than any other factors to provide rankings for websites on different search queries.
Collaboration has been mentioned as one of the biggest challenges for visualization and visual analytics because the problems that analysts face in the real
world are becoming increasingly large and complex and involving a broader scope.
Additionally, interaction with digital information is increasingly becoming a social activity and social media could be good example for this.
We should also mention that traditional visualization techniques and tools are typically designed for a single user interacting with a visualization application on a typical computing device, not to be used in-groups and on novel technological artifacts. For all these reasons, collaborative visualization seems to be a growing area of research end even with more speed in future.
While collaborative visualization benefits from work in other disciplines, there are many challenges, aspects, and issues that are unique to the intersection of collaborative work and visualization which are supposed to be handled in this research area. There are several definitions for collaborative visualization:
There’s an old definition for it which emphasizes the goal of researching in this area:
“Collaborative visualization enhances the traditional visualization by bringing together many experts so that each can contribute toward the common goal of the understanding of the object, phenomenon, or data under investigation.”
But recently, the term social data analysis has been noticed to talk about the social interaction that is a central part of collaborative visualization:
“[Social data analysis is] a version of exploratory data analysis that relies on social interaction as source of inspiration and motivation.”
The authors of the article define collaborative visualization as this:
Collaborative visualization is the shared use of computer-supported, (interactive,) visual representations of data by more than one person with the common goal of contribution to joint information processing activities.
which is derived from a general definition for visualization as:
The use of computer- supported, interactive, visual representations of data to amplify cognition.
Then it provides some important application scenarios of collaborative visualization such as its usage on the web to provide visualization for large amount of data for many users and its applications in scientific research, command and control, environmental planning and mission planning.
In future, we will have more data collected from more variety of sources. We will have more people willing to view and analyze this data simultaneously and they will want to access it through more novel devices. We need to present this data in a manner which is more summarized and more understandable to them.
If you need more information about collaborative visualization, reading this web page could be useful:
It’s been a long time human beings have found group-work to be more effective compared to working in person and obviously teamwork predates computer technology. But the ways things are being done are always changing over time due to demand to achieve more from limited resources like human resource, time, etc. and sometimes to compensate weaknesses of these resources, like limitations on computational and memorization capabilities of humans. Computers and computer networks have supported collaborative work to a large extent lately, because they could enable humans to work remotely and supply computational power and speed they need and also ensure their information could be unforgettably saved while be shared and accessed by any of members from anywhere.
Now let’s get to the question: what is CSCW? Although researchers might not have a consensus on what is its definition exactly and which topics constitute this research area, but we could simply define it like this: “It’s a community of application/system designers/builders and behavioral researchers that work on how collaborative behavior affects technology and vice-versa”. So, could we simply say group-work equals to collaborative work and CSCW and groupware are identical? Well, the answer depends on how we define groups and groupware. we define groupware as “software that support groups” and believe its considerably technology-oriented unlike CSCW. People working on groupware usually do narrow examinations, if any, on various kinds of social forms of collaborative work and have a focus on solving technical issues of providing multi-user software programs, say designing user-friendly interfaces for software to be used by multiple users.
As a result of what CSCW is supposed to be involved with, there become some core issues mainly concerning researchers on this area. “articulating cooperative work” which is more behavior-oriented, “sharing information” which is mainly technology-oriented and “adaptation of technology and social behaviors” which is involved with both concerns. To elaborate these three problems, I want to use an example of my own experiences, when in my undergrad studies some of my colleagues and I decided to work together on a freelance web-based project we got. It was a large project and needed considerable time and effort to be completed. Because we wanted to collaborate and work on this project mostly from home, I will talk about it after writing a few paragraphs about distance work.
One of the most important problems which CSCW is concerned with is distance work. Distance work may refer to team members distributed in different cities of a province or even those who are spread in all around the world. The larger a company or an organization is, the more it is likely to have team members in far distances and that’s because they usually need various branches in different areas of the world and in many cases, specially when it comes to tech companies, it is more affordable for an American or European companies to hire employees from eastern countries due to lower rates of payments. However, there are some downsides with distance work which their severity is likely to be reduced over time, but they will always remain as concerns including:
- invisibility of team members and their physical work to others, which causes both reducing trust and activities to be less realizable
- Differences in timezone, so that members on one side must either join out of normal work hours or commit to work with a considerable delay
- various cultures, national or local legal considerations and institutional values and boundaries, which might affect decision makings and workflows.
According to the diagram above, we could say as the distance increases, timezone and cultural differences grow and matter more.
Team members also don’t have identical social, organizational and technical backgrounds. When they are gathered together to collaborate in work, they all have to follow certain regulations – usually predefined, but are always subject to change – to cooperate better. these regulations are usually determined at organizational level, so although every individual might find the style they have used to more convenient, but they understand in collaborative work following organizational regulations will help the team work better, therefore they easily accept them and adapt themselves to these standards.
To provide an example, in my own experience mentioned in the third paragraph of this post, after deciding to create a team, we had several meetings and discussions, and as a result decided to agree on these regulations for our communication, coordination and standards in various layers and aspects, although we had different backgrounds and preferences almost in all of these at the beginning:
- Technologies and tech standards: We were a team of 5 members with almost completely different technical backgrounds and preferences In aspects like operating system, programming language and database system, programming methodology, naming conventions, style of commenting the code, etc. After several discussions, we decided to go for PHP and Centos distribution of Linux as OS due to being open-source and richer support and community for them in our country, using MySQL as database server because it was a fit for PHP and all of us knew about it, Object-oriented style programming for better team development and for using Laravel framework and MVC design pattern and naming conventions, coding/commenting styles of symphony because we were familiar with them and they were also recommended by Laravel community.
- communication tools: Aside from using Gmail, we were using different instant messaging application like Viber, Telegram and WhatsApp. Due to its simplicity and better speed and better support of file sharing, we decided to a create a telegram group and most of our internal communication was done using this app. However, to communicate with the company, we had a Gmail thread with its representative and most of our communication was done within that and sometimes through phone calls.
- coordination tools: Before starting this project, almost none of us was using shared calendars. But for arranging meetings, putting deadlines and milestones and informing others about our off days, we decided to use Google calendar.
- shared information repositories: Maybe an ideal choice in such situations is using a decentralized code-hosting and version controlling server like Github, but because we didn’t want to pay for a paid Github account to have a private repository and also for privacy concerns, we decided to use our own server and database server to share code and other types of data as well as using Telegram to share general files which were supposed to be seen immediately by other members.
- computational infrastructure: As we were a small-sized temporary team, we didn’t need some kind of private network for our communication, so we just had a sever bought from a general data-center and used encrypted connections to send/receive data to/from this server.
We said that an important part of CSCW research is working on behavioral aspects of collaborative work. Because people involved in collaborative work have close interaction with each other as well as their environment which is to a large extent made of technological tools and we want to study them altogether, a collective and interconnected processes of cognition is required which we call it distributed cognition.
In the article “Distributed Cognition: Toward a New Foundation for Human-Computer Interaction Research”, authors try to make use of distributed cognition as foundation for HCI research. They propose an integrated framework that combines ethnographic observation and controlled experimentation for their research. They believe the traditional view of cognition does not address what actually occurs between humans and computers collectively together, because this view assumes a kind of isolation for individuals from their computational environment in the process of cognition and puts a boundary between them in its examinations, so it only brings computer interfaces into the boundaries of cognition symbolically, not interconnectedly.
In reality, things are happening altogether. There are not separate ‘inside’ and ‘outside’ areas that might come together, every thing is happening at the same moment and what impact computer systems have to people, affects those people’s impact on other people and vice-versa.
December 24, 2015
Welcome to my personal blog. Wonderful things are going to happen in near future. Just Keep in touch.