Building Social Web Applications. Establishing Community at the Heart of Your Site - Helion
ISBN: 978-14-493-7941-4
stron: 434, Format: ebook
Data wydania: 2009-09-17
Księgarnia: Helion
Cena książki: 109,65 zł (poprzednio: 127,50 zł)
Oszczędzasz: 14% (-17,85 zł)
Building a web application that attracts and retains regular visitors is tricky enough, but creating a social application that encourages visitors to interact with one another requires careful planning. This book provides practical solutions to the tough questions you'll face when building an effective community site -- one that makes visitors feel like they've found a new home on the Web.
If your company is ready to take part in the social web, this book will help you get started. Whether you're creating a new site from scratch or reworking an existing site, Building Social Web Applications helps you choose the tools appropriate for your audience so you can build an infrastructure that will promote interaction and help the community coalesce. You'll also learn about business models for various social web applications, with examples of member-driven, customer-service-driven, and contributor-driven sites.
- Determine who will be drawn to your site, why they'll stay, and who they'll interact with
- Create visual design that clearly communicates how your site works
- Build the software you need versus plugging in one-size-fits-all, off-the-shelf apps
- Manage the identities of your visitors and determine how to support their interaction
- Monitor demand from the community to guide your choice of new functions
- Plan the launch of your site and get the message out
Osoby które kupowały "Building Social Web Applications. Establishing Community at the Heart of Your Site", wybierały także:
- Zen Steve'a Jobsa 29,67 zł, (8,90 zł -70%)
- ASP.NET MVC. Kompletny przewodnik dla programistów interaktywnych aplikacji internetowych w Visual Studio 86,77 zł, (26,90 zł -69%)
- jQuery, jQuery UI oraz jQuery Mobile. Receptury 57,74 zł, (17,90 zł -69%)
- Scratch. Komiksowa przygoda z programowaniem 36,06 zł, (11,90 zł -67%)
- Baltie. Kurs video. Poziom pierwszy. Elementarz programowania w języku wizualnym 59,00 zł, (26,55 zł -55%)
Spis treści
Building Social Web Applications. Establishing Community at the Heart of Your Site eBook -- spis treści
- Building Social Web Applications
- Dedication
- Preface
- Design As the Primary Approach
- Who This Book Is For
- Who This Book Is Not For
- What Youll Learn
- How This Book Is Organized
- Typographical Conventions Used in This Book
- Safari Books Online
- Wed Like to Hear from You
- How This Book Came About
- Acknowledgments
- 1. Building a Social Application
- Building Applications
- The Distributed Nature of Seemingly Everything
- Real-Time Services
- APIs and Their Importance
- Collective Intelligence: The New Artificial Intelligence
- Summary
- 2. Analyzing, Creating, and Managing Community Relationships
- Analyzing Your Users Relationships
- Relationships with Baby Boomers to Gen-Cers
- Behavior and Interaction-Based Relationships
- Customer-service-driven
- Publisher-driven
- Member-driven
- Contributor-driven
- Pros and Cons of Different Relationship Types
- Analyzing the Essence of Your Communitys Needs
- Apple and Its Many Communities
- Determining Your Sites Purpose
- Creating and Nurturing Relationships
- Summary
- Analyzing Your Users Relationships
- 3. Planning Your Initial Site
- Deciding What You Need
- Building a Web Application
- Choosing Who You Need
- Planning the Life Cycle
- Expecting to Evolve with the Community
- Flickr
- Keeping Your Application Simple
- Avoiding the Line Item Approach
- Getting to the Core Quickly
- Taking Time to Plan
- Iterating
- Showing it off
- Figuring out the verbs
- Expecting to Evolve with the Community
- Communicating During Development
- Managing the Development Cycle
- Feature Prioritization and the Release Cycle
- Choosing a Development Methodology
- Collecting Audience Feedback
- Why Would People Continue to Visit Your Site?
- Summary
- 4. Creating a Visual Impact
- Dynamic Interactions
- The Power of Partial Page Reloads
- Designing Around Community-Generated Internal Pages
- Visual Design and Navigation
- Design First
- Page Types
- Designer Roles and Team Approaches
- Visual design approach
- Software design approach
- Wireframes approach
- Sketching approach
- Copywriting
- Summary
- Dynamic Interactions
- 5. Working with and Consuming Media
- Media Types Affect Consumption Styles
- Analyzing Consumption Patterns
- Collecting Consumption Data
- Media Evolves and Consumption Styles Change
- comment is free
- Amazon: Reader Reviews Encourage Purchases
- New Services Respond to Evolving Needs
- Music
- Photos
- Video
- Summary
- Media Types Affect Consumption Styles
- 6. Managing Change
- Resistance
- Schema Theory
- Congruence
- Adaptation
- Rate of change
- Web Communities and Change
- Schema Theory
- Internal Workflow
- Community Managers
- Summary
- Resistance
- 7. Designing for People
- Making Software for People
- Waterfalls Are Pretty to Look At
- Interaction Design
- Identify Needs with Personas and User-Centered Design
- Talking with Potential Users
- Naming Influences Perspectives
- Common Techniques for UCD
- Running Interaction Design Projects
- Using Agile and UCD Methods
- Beyond UCD
- HCI and Information Architecture
- The Craftsman Approach
- Learning to Love Constraints
- Keeping Experiments Quick
- Figuring Out the Social Aspect
- Subjects, Verbs, and Objects
- Including You, Me, and Her Over There, Plus Him, Too
- Moving Quickly from Idea to Implementation
- Explaining to Others What You Are Doing
- Creating Service Functionality Documents
- Calculating Content Size
- Dont Let Your Users Drown in Activity
- Implementing Search
- Member-Specific Search
- Advanced Search
- Understanding Activity and Viewpoints
- Recipe Books: An Example
- Remembering the Fun
- Twelve Ideas to Take Away
- Summary
- Making Software for People
- 8. Relationships, Responsibilities, and Privacy
- We Are in a Relationship?
- Personal Identity and Reputation
- Handling Public, Private, and Gray Information
- Privacy and Aggregate Views
- See But Dont Touch: Rules for Admins
- Private by Default?
- Setting Exposure Levels
- Managing Access for Content Reuse, Applications, and Other Developers
- Content Reuse
- Dont Give Away Too Much Power
- Licensing Content
- Summary
- 9. Community Structures, Software, and Behavior
- Community Structures
- Publisher-Led
- Interest-Led
- Product-Led
- Supporting Social Interactions
- Non-Text-Based Social Interaction
- Competition: Making Games Social
- Content Creation and Collectives
- Social Microblogging
- Who Is Sharing, and Why?
- Competition Between Peers Skews Interaction
- Talking About Things That Are Easy to Discuss
- How Are They Sharing?
- Being Semiprivate
- Lifestreaming and Social Aggregation
- Overfeeding on Lifestreams
- A Simple Core for Rapid Growth
- Social Software Menagerie
- Blogging
- Community blogging
- Creating a blogging system
- Commenting Is Not the Same As Blogging
- Blogging
- Groups
- Group Formation
- Group Conversation
- Conversing on message boards
- Making message boards
- Group Aggregation Tools
- Collaboration Tools for Groups
- Social Platforms As a Foundation
- Ning and White Label Social Software
- Growing Social Networks
- Summary
- Community Structures
- 10. Social Network Patterns
- Sharing Social Objects
- Relationships and Social Objects
- Determining the Right Social Object
- Published Sites Expect Audiences
- Deep and Broad Sharing
- Capturing Intentionality
- Cohesion
- Filtering Lists by Popularity
- Filtering Lists to Show Recent Content
- Calculating Popularity Across a Site
- Commenting, Faving, and Rating
- Commenting
- Faving or Marking As Favorite
- Rating
- Internal Messaging Systems
- Friending Considered Harmful
- Sharing Events
- Summary
- Sharing Social Objects
- 11. Modeling Data and Relationships
- Designing URLs
- Getting to the Right URL
- Permalinks
- Putting Objects on the Internet
- Issuing Identifiers
- Identifying People
- Using Data-Driven Site Design
- Handling Containment
- Changing Identities and Linking Content
- Identity and Context-Dependent Views
- Exploring a Video Example
- Aggregating Data to Create New Content
- Exploring Groups
- Handling Groups and Privacy
- Handling Privacy and Scaling Issues
- Making the Most of Metadata
- Connecting the Relationship to the Content
- Modeling Relationships
- Entering the Geoworld
- Becoming Brokers of the World
- Considering Time Implications
- Looking Beyond the Web
- Summary
- 12. Managing Identities
- Existing Identities
- Forms of Identification
- Real Names Versus Aliases and Screen Names
- OpenID
- Tips for Account Registration and Verification
- The Need for Profile Pages
- Profile Page Anatomy
- Real-World Profile Pages
- Pownce
- LinkedIn and Nature Network
- Personal network member maximums
- Activity Pages
- Invisibility and Privacy
- Summary
- 13. Organizing Your Site for Navigation, Search, and Activity
- Understanding In-Page Navigation
- Tagging Content
- Searching for People
- Connecting People Through Content
- Providing Activity Pages
- Determining Activity Page Content
- Filtering Activity Lists and the Past
- Using Replies to Create Conversations
- Allowing for Content Initiation Versus Content Follow-Up
- Providing for Email Updates
- Creating RSS Feeds
- Who Stole My Home Page?
- Providing for Site Navigation
- Creating Page Titles
- Summary
- Understanding In-Page Navigation
- 14. Making Connections
- Choosing the Correct Relationship Model for Your Social Application
- Creating the Language of Connections
- Blocking Relationships
- Information Brokers
- Notifications and Invitations
- Invites and Add As Follower Requests
- Secure and Personal Invites
- Pending Invites
- Spam
- Social Network Portability
- Social Graph
- Importing Friends by the Book
- Spamming, Antipatterns, and Phishing
- Address Books, the OAuth Way
- Changing Relationships over Time
- Administering Groups
- Public or Private?
- Regulating Group Creation
- Summary
- Choosing the Correct Relationship Model for Your Social Application
- 15. Managing Communities
- Social Behavior in the Real World
- Starting Up and Managing a Community
- Trolls and Other Degenerates
- Separating Communities
- Encouraging Good Behavior
- Authenticating Through Profile Pages
- Rating Posts and People
- Gaming the System
- Membership by Invitation or Selection
- Rewarding Good Behavior
- Helping the Community Manage Itself
- Moderating a Community
- Intervention and Course Correction
- Premoderation and Libel
- Extreme Measures: Banning Users and Removing Posts
- Absent Landlords Lead to Weak Communities
- Filtering and Automation
- Balancing Anonymity and Pseudo-Anonymity
- Summary
- 16. Writing the Application
- Small Is Good: A Reprise
- How Social Applications Differ from Web Applications
- Agile Methodologies
- Deployment and Version Control
- Testing Live Is Possible, but Use Conditionality
- Test-Driven Development
- Automated Builds Make Management Easier
- Applying Developer Tools to Social Applications
- Making Use of Flexible Development with Your Community
- Infrastructure and Web Operations
- Managing Operations
- Designing Social Applications
- Using Prototypes, Not Pictures
- Assisting Developers with Use Cases
- Designing in Good Behaviors
- Your App Has Its Own Point of View
- How Code Review Helps Reduce Problems
- The Power and Responsibility of Naming
- Being RESTful
- Beyond the Web Interface, Please
- i18n, L10n, and Their Friend, UTF-8
- Bug Tracking and Issue Management
- Tracking Tools
- Prioritizing Issues
- Differentiating Bugs from Feature Requests
- Handling Security
- Rapid User Interfaces
- Rapid Prototyping
- Scaling and Messaging Architectures
- Ajax Helps with Scaling
- Queuing Non-Visible Updates
- Real Time Versus Near Time
- Polling Versus Pushing
- XMPP Messaging
- External Processing: Scaling on the Fly and by the Batch
- Performance Testing
- Languages Dont Scale
- Cache, Then Shard
- Fast and Light Data Storage
- Implementing Search
- Identity and Management of User Data
- OpenID for Identity
- What to Ask for on Registration
- When a User Chooses to Leave
- Admin Users
- Accessing Content via OAuth
- Federation
- Making Your Code Green and Fast
- Building Admin Tools and Gleaning Collective Intelligence
- Social Network Analysis
- Machine Learning and Big Data Sets
- Reputation Systems
- Summary
- 17. Building APIs, Integration, and the Rest of the Web
- On the Internet Versus In the Internet
- Making Your Place Within the Internet
- Why an API?
- Exposing Your Content to Search from the Internet
- Running Services, Not Sites
- Being Open Is Good
- Arguing for Your API Internally
- Implementing User Management and Open Single Sign-On
- Integrating Other Services
- Lightweight Integration Works Best
- Avoiding Data Migration Headaches
- Avoiding Duplication
- Email Notifications: Managing Your Output from Multiple Applications
- Making an API the Core of the Application
- Handling People and Objects, the Stuff of Social Applications
- Designing an API
- RPC
- REST
- XMPP
- Response Formats
- Comparing Social APIs
- Tumblr
- Flickr
- Reviewing the APIs
- Writable APIs
- Extending and Fine-Tuning Your API
- Wrapping API Calls
- Using API Alternatives
- Using HTML Badges
- Interoperability Is Harder with Snowflake APIs
- Sticking with Standards
- Standardizing APIs
- Using OpenSocial
- Creating a Standard
- Managing the Developer Community
- API and Scaling Issues
- Allowing Integration
- Real Time Versus Near Time for APIs
- APIs Can Be Restrictive
- Not Just Your Own API
- Create an API?
- Summary
- 18. Launching, Marketing, and Evolving Social Applications
- Loving and Hating the Home Page
- Your Site Launch
- The Soft-Launch Approach
- The Hard-Launch Approach
- Your Product Name
- A Friendly Invitation
- Financing Your Site
- Offering Premium and Freemium Models
- Marketing
- Achieving and Managing Critical Mass
- Arriving with Context
- Considering Contact Import APIs and Their Importance
- Using Tools and Services for Launch and Support
- Nurturing the First Few Hundred Users
- Encouraging Your Community
- Evolving Your Site
- Remaining in Beta
- Balancing Feature Requests and Issue Management
- Adding Functionality
- Build Something New or Refine the Old?
- Adding Functionality After Refining
- Watching for What Your Community Demands
- Delicious and Boolean search
- Flickr printing and video
- Twitter and @replies
- Keeping Up with the Competition (or Not)
- Avoiding Feature-Led Development
- Encouraging Data-Supported Development
- Making Useful Products (Experience-Led)
- Determining When a Bug Is a Bug
- Staying Focused and Coherent
- Planning for Redesigns and Refactoring
- Establishing the Rhythm of Your Evolving Application
- Summary
- Loving and Hating the Home Page
- Index
- About the Author
- Colophon
- Copyright