Social networking has made one thing clear: websites and applications need to provide users with experiences tailored to their preferences. This in-depth guide shows you how to build rich social frameworks, using open source technologies and specifications. You'll learn how to create third-party applications for existing sites, build engaging social graphs, and develop products to host your own socialized experience. Programming Social Apps focuses on the OpenSocial platform, along with Apache Shindig, OAuth, OpenID, and other tools, demonstrating how they work together to help you solve practical issues. Each chapter uncovers a new layer in the construction of highly viral social applications and platforms. Learn how to build applications on top of social containers, and leverage existing user data Map user relationships with a social graph, and extend social links between users Customize your application with user profile information and encourage growth through friendships Build a scalable social application container with OpenSocial and Shindig Dive into advanced OpenSocial topics such as templating and data pipelining methods Protect your container and its users against malicious code
Would you like to gather big datasets, analyze them, and visualize the results, all in one program? If this describes you, then Introduction to Python Programming for Business and Social Science Applications is the book for you. Authors Frederick Kaefer and Paul Kaefer walk you through each step of the Python package installation and analysis process, with frequent exercises throughout so you can immediately try out the functions you’ve learned. Written in straightforward language for those with no programming background, this book will teach you how to use Python for your research and data analysis. Instead of teaching you the principles and practices of programming as a whole, this application-oriented text focuses on only what you need to know to research and answer social science questions. The text features two types of examples, one set from the General Social Survey and one set from a large taxi trip dataset from a major metropolitan area, to help readers understand the possibilities of working with Python. Chapters on installing and working within a programming environment, basic skills, and necessary commands will get you up and running quickly, while chapters on programming logic, data input and output, and data frames help you establish the basic framework for conducting analyses. Further chapters on web scraping, statistical analysis, machine learning, and data visualization help you apply your skills to your research. More advanced information on developing graphical user interfaces (GUIs) help you create functional data products using Python to inform general users of data who don’t work within Python. First there was IBM® SPSS®, then there was R, and now there′s Python. Statistical software is getting more aggressive - let authors Frederick Kaefer and Paul Kaefer help you tame it with Introduction to Python Programming for Business and Social Science Applications.
Want to tap the power behind search rankings, product recommendations, social bookmarking, and online matchmaking? This fascinating book demonstrates how you can build Web 2.0 applications to mine the enormous amount of data created by people on the Internet. With the sophisticated algorithms in this book, you can write smart programs to access interesting datasets from other web sites, collect data from users of your own applications, and analyze and understand the data once you've found it. Programming Collective Intelligence takes you into the world of machine learning and statistics, and explains how to draw conclusions about user experience, marketing, personal tastes, and human behavior in general -- all from information that you and others collect every day. Each algorithm is described clearly and concisely with code that can immediately be used on your web site, blog, Wiki, or specialized application. This book explains: Collaborative filtering techniques that enable online retailers to recommend products or media Methods of clustering to detect groups of similar items in a large dataset Search engine features -- crawlers, indexers, query engines, and the PageRank algorithm Optimization algorithms that search millions of possible solutions to a problem and choose the best one Bayesian filtering, used in spam filters for classifying documents based on word types and other features Using decision trees not only to make predictions, but to model the way decisions are made Predicting numerical values rather than classifications to build price models Support vector machines to match people in online dating sites Non-negative matrix factorization to find the independent features in a dataset Evolving intelligence for problem solving -- how a computer develops its skill by improving its own code the more it plays a game Each chapter includes exercises for extending the algorithms to make them more powerful. Go beyond simple database-backed applications and put the wealth of Internet data to work for you. "Bravo! I cannot think of a better way for a developer to first learn these algorithms and methods, nor can I think of a better way for me (an old AI dog) to reinvigorate my knowledge of the details." -- Dan Russell, Google "Toby's book does a great job of breaking down the complex subject matter of machine-learning algorithms into practical, easy-to-understand examples that can be directly applied to analysis of social interaction across the Web today. If I had this book two years ago, it would have saved precious time going down some fruitless paths." -- Tim Wolters, CTO, Collective Intellect
As data become ′big′, fast and complex, the software and computing tools needed to manage and analyse them are rapidly developing. Social scientists need new tools to meet these challenges, tackle big datasets, while also developing a more nuanced understanding of - and control over - how these computing tools and algorithms are implemented. Programming with Python for Social Scientists offers a vital foundation to one of the most popular programming tools in computer science, specifically for social science researchers, assuming no prior coding knowledge. It guides you through the full research process, from question to publication, including: the fundamentals of why and how to do your own programming in social scientific research, questions of ethics and research design, a clear, easy to follow ′how-to′ guide to using Python, with a wide array of applications such as data visualisation, social media data research, social network analysis, and more. Accompanied by numerous code examples, screenshots, sample data sources, this is the textbook for social scientists looking for a complete introduction to programming with Python and incorporating it into their research design and analysis.
Analyzes cognitive, social and technical issues of end user programming. Drawing on empirical research on existing end user systems, this text examines the importance of task-specific programming languages, visual application frameworks and collaborative work practices for end user computing.
Take advantage of JavaScript’s power to build robust web-scale or enterprise applications that are easy to extend and maintain. By applying the design patterns outlined in this practical book, experienced JavaScript developers will learn how to write flexible and resilient code that’s easier—yes, easier—to work with as your code base grows. JavaScript may be the most essential web programming language, but in the real world, JavaScript applications often break when you make changes. With this book, author Eric Elliott shows you how to add client- and server-side features to a large JavaScript application without negatively affecting the rest of your code. Examine the anatomy of a large-scale JavaScript application Build modern web apps with the capabilities of desktop applications Learn best practices for code organization, modularity, and reuse Separate your application into different layers of responsibility Build efficient, self-describing hypermedia APIs with Node.js Test, integrate, and deploy software updates in rapid cycles Control resource access with user authentication and authorization Expand your application’s reach through internationalization
OpenSocial is a set of common application programming interfaces for Web-based social network applications. As the first book on OpenSocial, this valuable resource discusses the unique area of social networking and the needs and different attributes of social network applications. You?ll get step-by-step instructions for creating OpenSocial applications for multiple platforms and explore application development and deployment using integration technologies like the new Sun Zembly Platform. Plus, you?ll examine newer technologies like the Sun Platform that allows even non-programmers the ability to ?mash up? applications.
Create high-performance, visually stunning 3D applications for the Web, using HTML5 and related technologies such as CSS3 and WebGL—the emerging web graphics standard. With this book, you’ll learn how to use the tools, frameworks, and libraries for building 3D models and animations, mind-blowing visual effects, and advanced user interaction in both desktop and mobile browsers. In two parts—Foundations and Application Development Techniques—author Tony Parisi provides a thorough grounding in theory and practice for designing everything from a simple 3D product viewer to immersive games and interactive training systems. Ideal for developers with Javascript and HTML experience. Explore HTML5 APIs and related technologies for creating 3D web graphics, including WebGL, Canvas, and CSS Work with the popular JavaScript 3D rendering and animation libraries Three.js and Tween.js Delve into the 3D content creation pipeline, and the modeling and animation tools for creating killer 3D content Look into several game engines and frameworks for building 3D applications, including the author’s Vizi framework Create 3D environments with multiple objects and complex interaction, using examples and supporting code Examine the issues involved in building WebGL-based 3D applications for mobile browsers