Designing Bots: Creating Conversational Experiences


Amir Shevat - 2017
    In this practical guide, author Amir Shevat shows you how to design and build great conversational experiences and delightful bots that makes people s life more fun and productive.You ll explore several real-world bot examples to understand what works and what doesn t, and learn practical design patterns for your own bot-building toolbox. This book is ideal for beginners and intermediate designers, as well as senior professionals exploring the conversational user experience paradigm. No coding experience or prior knowledge of conversational UI is required.Learn what bots are, and understand bot types and major components that compose a botExplore different use-cases of bots and best practices around these use casesExamine real-life examples and learn from their experienceUnderstand the bot anatomy (Onboarding, Notifications, Conversations, Advance UI controls) and their associated design patternsPrototype your own first bot and experiment with user feedback"

Discussing Design: Improving Communication and Collaboration through Critique


Adam Connor - 2015
    Designers are no different, but there are not many resources available that concentrate on these necessary soft-skills. This book provides practical and actionable insights to help your team give and receive constructive criticism. For managers, this book discusses proven tools to set a foundation for your team to stay focused on overall goals, and how to handle negative critiques. As an added bonus, the book also includes a Critique Cheat Sheet so you can quickly reference strategies and tools from top industry experts.

Interactive Data Visualization for the Web


Scott Murray - 2013
    It’s easy and fun with this practical, hands-on introduction. Author Scott Murray teaches you the fundamental concepts and methods of D3, a JavaScript library that lets you express data visually in a web browser. Along the way, you’ll expand your web programming skills, using tools such as HTML and JavaScript.This step-by-step guide is ideal whether you’re a designer or visual artist with no programming experience, a reporter exploring the new frontier of data journalism, or anyone who wants to visualize and share data.Learn HTML, CSS, JavaScript, and SVG basicsDynamically generate web page elements from your data—and choose visual encoding rules to style themCreate bar charts, scatter plots, pie charts, stacked bar charts, and force-directed layoutsUse smooth, animated transitions to show changes in your dataIntroduce interactivity to help users explore data through different viewsCreate customized geographic maps with dataExplore hands-on with downloadable code and over 100 examples

R for Data Science: Import, Tidy, Transform, Visualize, and Model Data


Hadley Wickham - 2016
    This book introduces you to R, RStudio, and the tidyverse, a collection of R packages designed to work together to make data science fast, fluent, and fun. Suitable for readers with no previous programming experience, R for Data Science is designed to get you doing data science as quickly as possible. Authors Hadley Wickham and Garrett Grolemund guide you through the steps of importing, wrangling, exploring, and modeling your data and communicating the results. You’ll get a complete, big-picture understanding of the data science cycle, along with basic tools you need to manage the details. Each section of the book is paired with exercises to help you practice what you’ve learned along the way. You’ll learn how to: Wrangle—transform your datasets into a form convenient for analysis Program—learn powerful R tools for solving data problems with greater clarity and ease Explore—examine your data, generate hypotheses, and quickly test them Model—provide a low-dimensional summary that captures true "signals" in your dataset Communicate—learn R Markdown for integrating prose, code, and results

Thoughtful Interaction Design: A Design Perspective on Information Technology


Jonas Löwgren - 2004
    The shaping of digital artifacts is a design process that influences the form and functions of workplaces, schools, communication, and culture; the successful interaction designer must use both ethical and aesthetic judgment to create designs that are appropriate to a given environment. This book is not a how-to manual, but a collection of tools for thought about interaction design.Working with information technology--called by the authors the material without qualities--interaction designers create not a static object but a dynamic pattern of interactivity. The design vision is closely linked to context and not simply focused on the technology. The authors' action-oriented and context-dependent design theory, drawing on design theorist Donald Sch�n's concept of the reflective practitioner, helps designers deal with complex design challenges created by new technology and new knowledge. Their approach, based on a foundation of thoughtfulness that acknowledges the designer's responsibility not only for the functional qualities of the design product but for the ethical and aesthetic qualities as well, fills the need for a theory of interaction design that can increase and nurture design knowledge. From this perspective they address the fundamental question of what kind of knowledge an aspiring designer needs, discussing the process of design, the designer, design methods and techniques, the design product and its qualities, and conditions for interaction design.

The Elements of Computing Systems: Building a Modern Computer from First Principles


Noam Nisan - 2005
    The books also provides a companion web site that provides the toold and materials necessary to build the hardware and software.

Pattern Recognition and Machine Learning


Christopher M. Bishop - 2006
    However, these activities can be viewed as two facets of the same field, and together they have undergone substantial development over the past ten years. In particular, Bayesian methods have grown from a specialist niche to become mainstream, while graphical models have emerged as a general framework for describing and applying probabilistic models. Also, the practical applicability of Bayesian methods has been greatly enhanced through the development of a range of approximate inference algorithms such as variational Bayes and expectation propagation. Similarly, new models based on kernels have had a significant impact on both algorithms and applications. This new textbook reflects these recent developments while providing a comprehensive introduction to the fields of pattern recognition and machine learning. It is aimed at advanced undergraduates or first-year PhD students, as well as researchers and practitioners, and assumes no previous knowledge of pattern recognition or machine learning concepts. Knowledge of multivariate calculus and basic linear algebra is required, and some familiarity with probabilities would be helpful though not essential as the book includes a self-contained introduction to basic probability theory.

Inspired: How to Create Tech Products Customers Love


Marty Cagan - 2008
    The goal of the book is to share the techniques of the best companies. This book is aimed primarily at Product Managers working on technology-powered products. That includes the hundreds of "tech companies" like Google, Facebook, Amazon, Twitter and the like, as well as the thousands of companies moving to leverage technology (financial companies, media companies, retailers, manufacturers, nearly every industry). Inspired covers companies from early stage start-ups to large, established companies. The products might be consumer products or devices, business services for small businesses to enterprises, internal tools, and developer platforms.Inspired is secondarily aimed at the designers, engineers, user researchers and data scientists that work closely with the product managers on product teams at these same companies.

Dreaming in Code: Two Dozen Programmers, Three Years, 4,732 Bugs, and One Quest for Transcendent Software


Scott Rosenberg - 2007
    Along the way, we encounter black holes, turtles, snakes, dragons, axe-sharpening, and yak-shaving—and take a guided tour through the theories and methods, both brilliant and misguided, that litter the history of software development, from the famous ‘mythical man-month’ to Extreme Programming. Not just for technophiles but for anyone captivated by the drama of invention, Dreaming in Code offers a window into both the information age and the workings of the human mind.

Learning SQL


Alan Beaulieu - 2005
    If you're working with a relational database--whether you're writing applications, performing administrative tasks, or generating reports--you need to know how to interact with your data. Even if you are using a tool that generates SQL for you, such as a reporting tool, there may still be cases where you need to bypass the automatic generation feature and write your own SQL statements.To help you attain this fundamental SQL knowledge, look to "Learning SQL," an introductory guide to SQL, designed primarily for developers just cutting their teeth on the language."Learning SQL" moves you quickly through the basics and then on to some of the more commonly used advanced features. Among the topics discussed: The history of the computerized databaseSQL Data Statements--those used to create, manipulate, and retrieve data stored in your database; example statements include select, update, insert, and deleteSQL Schema Statements--those used to create database objects, such as tables, indexes, and constraintsHow data sets can interact with queriesThe importance of subqueriesData conversion and manipulation via SQL's built-in functionsHow conditional logic can be used in Data StatementsBest of all, "Learning SQL" talks to you in a real-world manner, discussing various platform differences that you're likely to encounter and offering a series of chapter exercises that walk you through the learning process. Whenever possible, the book sticks to the features included in the ANSI SQL standards. This means you'll be able to apply what you learn to any of several different databases; the book covers MySQL, Microsoft SQL Server, and Oracle Database, but the features and syntax should apply just as well (perhaps with some tweaking) to IBM DB2, Sybase Adaptive Server, and PostgreSQL.Put the power and flexibility of SQL to work. With "Learning SQL" you can master this important skill and know that the SQL statements you write are indeed correct.

Team Topologies: Organizing Business and Technology Teams for Fast Flow


Matthew Skelton - 2019
    But how do you build the best team organization for your specific goals, culture, and needs? Team Topologies is a practical, step-by-step, adaptive model for organizational design and team interaction based on four fundamental team types and three team interaction patterns. It is a model that treats teams as the fundamental means of delivery, where team structures and communication pathways are able to evolve with technological and organizational maturity.In Team Topologies, IT consultants Matthew Skelton and Manuel Pais share secrets of successful team patterns and interactions to help readers choose and evolve the right team patterns for their organization, making sure to keep the software healthy and optimize value streams.Team Topologies is a major step forward in organizational design for software, presenting a well-defined way for teams to interact and interrelate that helps make the resulting software architecture clearer and more sustainable, turning inter-team problems into valuable signals for the self-steering organization.

Quantifying the User Experience: Practical Statistics for User Research


Jeff Sauro - 2012
    Many designers and researchers view usability and design as qualitative activities, which do not require attention to formulas and numbers. However, usability practitioners and user researchers are increasingly expected to quantify the benefits of their efforts. The impact of good and bad designs can be quantified in terms of conversions, completion rates, completion times, perceived satisfaction, recommendations, and sales.The book discusses ways to quantify user research; summarize data and compute margins of error; determine appropriate samples sizes; standardize usability questionnaires; and settle controversies in measurement and statistics. Each chapter concludes with a list of key points and references. Most chapters also include a set of problems and answers that enable readers to test their understanding of the material. This book is a valuable resource for those engaged in measuring the behavior and attitudes of people during their interaction with interfaces.

The Craft of Research


Wayne C. Booth - 1995
    Seasoned researchers and educators Gregory G. Colomb and Joseph M. Williams present an updated third edition of their classic handbook, whose first and second editions were written in collaboration with the late Wayne C. Booth. The Craft of Research explains how to build an argument that motivates readers to accept a claim; how to anticipate the reservations of readers and to respond to them appropriately; and how to create introductions and conclusions that answer that most demanding question, “So what?” The third edition includes an expanded discussion of the essential early stages of a research task: planning and drafting a paper. The authors have revised and fully updated their section on electronic research, emphasizing the need to distinguish between trustworthy sources (such as those found in libraries) and less reliable sources found with a quick Web search. A chapter on warrants has also been thoroughly reviewed to make this difficult subject easier for researchers Throughout, the authors have preserved the amiable tone, the reliable voice, and the sense of directness that have made this book indispensable for anyone undertaking a research project.

Data Science from Scratch: First Principles with Python


Joel Grus - 2015
    In this book, you’ll learn how many of the most fundamental data science tools and algorithms work by implementing them from scratch. If you have an aptitude for mathematics and some programming skills, author Joel Grus will help you get comfortable with the math and statistics at the core of data science, and with hacking skills you need to get started as a data scientist. Today’s messy glut of data holds answers to questions no one’s even thought to ask. This book provides you with the know-how to dig those answers out. Get a crash course in Python Learn the basics of linear algebra, statistics, and probability—and understand how and when they're used in data science Collect, explore, clean, munge, and manipulate data Dive into the fundamentals of machine learning Implement models such as k-nearest Neighbors, Naive Bayes, linear and logistic regression, decision trees, neural networks, and clustering Explore recommender systems, natural language processing, network analysis, MapReduce, and databases

Tapworthy: Designing Great iPhone Apps


Josh Clark - 2010
    Set your app apart with elegant design, efficient usability, and a healthy dose of personality. This accessible, well-written guide shows you how to design exceptional user experiences for the iPhone and iPod Touch through practical principles and a rich collection of visual examples.Whether you're a designer, programmer, manager, or marketer, Tapworthy teaches you to "think iPhone" and helps you ask the right questions -- and get the right answers -- throughout the design process. You'll explore how considerations of design, psychology, culture, ergonomics, and usability combine to create a tapworthy app. Along the way, you'll get behind-the-scenes insights from the designers of apps like Facebook, USA Today, Twitterrific, and many others.Develop your ideas from initial concept to finished designBuild an effortless user experience that rewards every tapExplore the secrets of designing for touchDiscover how and why people really use iPhone appsLearn to use iPhone controls the Apple wayCreate your own personality-packed visuals