Designing Social Interfaces


Christian Crumlish - 2009
    Designing sites that foster user interaction and community-building is a valuable skill for web developers and designers today, but it's not that easy to understand the nuances of the social web. Now you have help. Christian Crumlish and Erin Malone share hard-won insights into what works, what doesn't, and why. You'll learn how to balance opposing factions and grow healthy online communities by co-creating them with your users.Understand the overarching principles you need to consider for every website you createLearn basic design patterns for adding social components to an existing siteRein in misbehaving users on an active community siteBuild a social experience around a product or service and invite people to joinDevelop a social utility without having to build an entirely new infrastructureEnable users of your site's content to interact with one anotherOffer your members the opportunity to connect in the real worldLearn to recognize and avoid antipatterns: emergent bad practices in the social network and social media space

Programming Ruby: The Pragmatic Programmers' Guide


Dave Thomas - 2000
    When Ruby first burst onto the scene in the Western world, the Pragmatic Programmers were there with the definitive reference manual, Programming Ruby: The Pragmatic Programmer's Guide.Now in its second edition, author Dave Thomas has expanded the famous Pickaxe book with over 200 pages of new content, covering all the improved language features of Ruby 1.8 and standard library modules. The Pickaxe contains four major sections:An acclaimed tutorial on using Ruby.The definitive reference to the language.Complete documentation on all built-in classes, modules, and methodsComplete descriptions of all 98 standard libraries.If you enjoyed the First Edition, you'll appreciate the expanded content, including enhanced coverage of installation, packaging, documenting Ruby source code, threading and synchronization, and enhancing Ruby's capabilities using C-language extensions. Programming for the World Wide Web is easy in Ruby, with new chapters on XML/RPC, SOAP, distributed Ruby, templating systems, and other web services. There's even a new chapter on unit testing.This is the definitive reference manual for Ruby, including a description of all the standard library modules, a complete reference to all built-in classes and modules (including more than 250 significant changes since the First Edition). Coverage of other features has grown tremendously, including details on how to harness the sophisticated capabilities of irb, so you can dynamically examine and experiment with your running code. Ruby is a wonderfully powerful and useful language, and whenever I'm working with it this book is at my side --Martin Fowler, Chief Scientist, ThoughtWorks

The Software Craftsman: Professionalism, Pragmatism, Pride


Sandro Mancuso - 2014
    Why? Too many organizations still view software development as just another production line. Too many developers feel that way, too--and they behave accordingly. In The Software Craftsman: Professionalism, Pragmatism, Pride, Sandro Mancuso offers a better and more fulfilling path. If you want to develop software with pride and professionalism; love what you do and do it with excellence; and build a career with autonomy, mastery, and purpose, it starts with the recognition that you are a craftsman. Once you embrace this powerful mindset, you can achieve unprecedented levels of technical excellence and customer satisfaction. Mancuso helped found the world's largest organization of software craftsmen; now, he shares what he's learned through inspiring examples and pragmatic advice you can use in your company, your projects, and your career. You will learn Why agile processes aren't enough and why craftsmanship is crucial to making them work How craftsmanship helps you build software right and helps clients in ways that go beyond code How and when to say "No" and how to provide creative alternatives when you do Why bad code happens to good developers and how to stop creating and justifying it How to make working with legacy code less painful and more productive How to be pragmatic--not dogmatic--about your practices and tools How to lead software craftsmen and attract them to your organization What to avoid when advertising positions, interviewing candidates, and hiring developers How developers and their managers can create a true culture of learning How to drive true technical change and overcome deep patterns of skepticism Sandro Mancuso has coded for startups, software houses, product companies, international consultancies, and investment banks. In October 2013, he cofounded Codurance, a consultancy based on Software Craftsmanship principles and values. His involvement with Software Craftsmanship began in 2010, when he founded the London Software Craftsmanship Community (LSCC), now the world's largest and most active Software Craftsmanship community, with more than two thousand craftsmen. For the past four years, he has inspired and helped developers to organize Software Craftsmanship communities throughout Europe, the United States, and the rest of the world.

A Theory of Fun for Game Design


Raph Koster - 2004
    It features a novel way of teaching interactive designers how to create and improve their designs to incorporate the highest degree of fun. As the book shows, designing for fun is all about making interactive products like games highly entertaining, engaging, and addictive. The book's unique approach of providing a highly visual storyboard approach combined with a narrative on the art and practice of designing for fun is sure to be a hit with game and interactive designers.At first glance A Theory of Fun for Game Design is a book that will truly inspire and challenge game designers to think in new ways; however, its universal message will influence designers from all walks of life. This book captures the real essence of what drives us to seek out products and experiences that are truly fun and entertaining. The author masterfully presents his engaging theory by showing readers how many designs are lacking because they are predictable and not engaging enough. He then explains how great designers use different types of elements in new ways to make designs more fun and compelling. Anyone who is interested in design will enjoy how the book works on two levels--as a quick inspiration guide to game design, or as an informative discussion that details the insightful thinking from a great mind in the game industry.

Automate the Boring Stuff with Python: Practical Programming for Total Beginners


Al Sweigart - 2014
    But what if you could have your computer do them for you?In "Automate the Boring Stuff with Python," you'll learn how to use Python to write programs that do in minutes what would take you hours to do by hand no prior programming experience required. Once you've mastered the basics of programming, you'll create Python programs that effortlessly perform useful and impressive feats of automation to: Search for text in a file or across multiple filesCreate, update, move, and rename files and foldersSearch the Web and download online contentUpdate and format data in Excel spreadsheets of any sizeSplit, merge, watermark, and encrypt PDFsSend reminder emails and text notificationsFill out online formsStep-by-step instructions walk you through each program, and practice projects at the end of each chapter challenge you to improve those programs and use your newfound skills to automate similar tasks.Don't spend your time doing work a well-trained monkey could do. Even if you've never written a line of code, you can make your computer do the grunt work. Learn how in "Automate the Boring Stuff with Python.""

The New Kingmakers: How Developers Conquered the World


Stephen O’Grady - 2013
    In a 1995 interview, the late Steve Jobs claimed that the secret to his and Apple’s success was talent. “We’ve gone to exceptional lengths to hire the best people,” he said, believing that the talented resource was twenty-five times more valuable than an average alternative. For Microsoft founder Bill Gates, the multiple was even higher:A great lathe operator commands several times the wage of an average lathe operator, but a great writer of software code is worth 10,000 times the price of an average software writer.While the actual number might be up for debate, the importance of technical talent is not. The most successful companies today are those that understand the strategic role that developers will play in their success or failure. Not just successful technology companies – virtually every company today needs a developer strategy. There’s a reason that ESPN and Sears have rolled out API programs, that companies are being bought not for their products but their people. The reason is that developers are the most valuable resource in business.How did we get here? How did developers become the most important constituency in business seemingly overnight? The New Kingmakers explores the rise of the developer class, its implications and provides suggestions for navigating the new developer-centric landscape.

Programming Collective Intelligence: Building Smart Web 2.0 Applications


Toby Segaran - 2002
    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

Prototyping: A Practitioner's Guide


Todd Zaki Warfel - 2009
    Prototypes help you to flesh out design ideas, test assumptions, and gather real-time feedback from users. With this book, Todd Zaki Warfel shows how prototypes are more than just a design tool by demonstrating how they can help you market a product, gain internal buy-in, and test feasibility with your development team. TESTIMONIALS "When someone asks me about prototyping, I'll be pointing them to this book from now on." â��Kim Goodwin: VP Design, Cooper; author, Designing for the Digital Age "Todd's text offers a comprehensive view of prototyping--from the role of prototypes in socializing decision making and achieving organizational buy-in, to the actual pragmatics of creating interactive artifacts. This is a solid book for those 'in the trenches'--the designers doing the actual work that ends up in the actual products we use every day." â��Jon Kolko: Editor-in-Chief, interactions; Associate Creative Director, Frog "If you design applications and are stuck in the land of task flows and wireframes, you really need to pick up a copy of Prototyping: A Practitioner's Guide. Todd offers practical, hands-on advice to jump start your prototyping and make your designs truly interactive before they are built." â��Dan Saffer: Principal, Kicker Studios; author of Designing for Interaction and Designing Gestural Interfaces "Whether you're prototyping to explore ideas or to communicate them, Todd Zaki Warfel's smart, accessible guide will give you the tools you need." â��Jesse James Garrett: Author, The Elements of User Experience; President, Adaptive Path

Solving Product Design Exercises: Questions & Answers


Artiom Dashinsky - 2018
    Prepare for your next job interview."Redesign the NYC metrocard system. Design a dashboard for a general practitioner. Redesign an ATM".Learn how to solve and present exercises like these, that top startups use to interview designers for product design and UI/UX roles. Today top companies are looking for business-minded designers who are not just focused on visuals. With this book you can practice this kind of mindset, prepare for job interview, learn how to interview other designers and find concepts for projects for your portfolio. What will you learn from this book:- Prepare for the design interview — prepare for the design exercise and learn more about how tech companies hire product designers.- Improve your portfolio — use product challenges to showcase in your porfolio instead of unsolicited visual redesigns.- Step up your design career — practice your product design skills to become a better designer and prepare for your next career move.- Interview designers — learn how to interview designers to evaluate their skills in the most efficient and scalable way.What’s inside?- A 7-step framework for solving product design exercises- 30+ examples of exercises similar to exercises used by Google, Facebook, Amazon etc.- 5 full solutions for product design exercises- 5 short interviews with design leaders that worked at Apple, Google, Pinterest, IDEO etc.