User Interface Design for Programmers


Joel Spolsky - 2001
    They think that UI design is like graphic design--the mysterious process by which creative, latte-drinking, all-black-wearing people produce cool-looking, artistic pieces. Most programmers see themselves as analytic, logical thinkers instead--strong at reasoning, weak on artistic judgment, and incapable of doing UI design.In this brilliantly readable book, author Joel Spolsky proposes simple, logical rules that can be applied without any artistic talent to improve any user interface, from traditional GUI applications to websites to consumer electronics. Spolsky's primary axiom, the importance of bringing the program model in line with the user model, is both rational and simple.In a fun and entertaining way, Spolky makesuser interfacedesign easy for programmers to grasp. After reading User Interface Design for Programmers, you'll know how to design interfaces with the user in mind. You'll learn the important principles that underlie all good UI design, and you'll learn how to perform usability testing that works."

Learning Python


Mark Lutz - 2003
    Python is considered easy to learn, but there's no quicker way to mastery of the language than learning from an expert teacher. This edition of "Learning Python" puts you in the hands of two expert teachers, Mark Lutz and David Ascher, whose friendly, well-structured prose has guided many a programmer to proficiency with the language. "Learning Python," Second Edition, offers programmers a comprehensive learning tool for Python and object-oriented programming. Thoroughly updated for the numerous language and class presentation changes that have taken place since the release of the first edition in 1999, this guide introduces the basic elements of the latest release of Python 2.3 and covers new features, such as list comprehensions, nested scopes, and iterators/generators. Beyond language features, this edition of "Learning Python" also includes new context for less-experienced programmers, including fresh overviews of object-oriented programming and dynamic typing, new discussions of program launch and configuration options, new coverage of documentation sources, and more. There are also new use cases throughout to make the application of language features more concrete. The first part of "Learning Python" gives programmers all the information they'll need to understand and construct programs in the Python language, including types, operators, statements, classes, functions, modules and exceptions. The authors then present more advanced material, showing how Python performs common tasks by offering real applications and the libraries available for those applications. Each chapter ends with a series of exercises that will test your Python skills and measure your understanding."Learning Python," Second Edition is a self-paced book that allows readers to focus on the core Python language in depth. As you work through the book, you'll gain a deep and complete understanding of the Python language that will help you to understand the larger application-level examples that you'll encounter on your own. If you're interested in learning Python--and want to do so quickly and efficiently--then "Learning Python," Second Edition is your best choice.

Advanced Swift


Chris Eidhof - 2016
    If you have read the Swift Programming Guide, and want to explore more, this book is for you.Swift is a great language for systems programming, but also lends itself for very high-level programming. We'll explore both high-level topics (for example, programming with generics and protocols), as well as low-level topics (for example, wrapping a C library and string internals).

Virtually Human: The Promise—and the Peril—of Digital Immortality


Martine Rothblatt - 2014
    Meet Bina48, the world's most sentient robot, commissioned by Martine Rothblatt and created by Hanson Robotics. Bina48 is a nascent Mindclone of Martine's wife that can engage in conversation, answer questions, and even have spontaneous thoughts that are derived from multimedia data in a Mindfile created by the real Bina. If you're active on Twitter or Facebook, share photos through Instagram, or blogging regularly, you're already on your way to creating a Mindfile—a digital database of your thoughts, memories, feelings, and opinions that is essentially a back-up copy of your mind. Soon, this Mindfile can be made conscious with special software—Mindware—that mimics the way human brains organize information, create emotions and achieve self-awareness. This may sound like science-fiction A.I. (artificial intelligence), but the nascent technology already exists. Thousands of software engineers across the globe are working to create cyberconsciousness based on human consciousness and the Obama administration recently announced plans to invest in a decade-long Brain Activity Map project. Virtually Human is the only book to examine the ethical issues relating to cyberconsciousness and Rothblatt, with a Ph.D. in medical ethics, is uniquely qualified to lead the dialogue.

The Tao of Network Security Monitoring: Beyond Intrusion Detection


Richard Bejtlich - 2004
    This book reducesthe investigative workload of computer security incident response teams(CSIRT) by posturing organizations for incident response success.Firewalls can fail. Intrusion-detection systems can be bypassed. Networkmonitors can be overloaded. These are the alarming but true facts aboutnetwork security. In fact, too often, security administrators' tools can serve asgateways into the very networks they are defending.Now, a novel approach to network monitoring seeks to overcome theselimitations by providing dynamic information about the vulnerability of allparts of a network. Called network security monitoring (NSM), it draws on acombination of auditing, vulnerability assessment, intrusion detection andprevention, and incident response for the most comprehensive approach tonetwork security yet. By focusing on case studies and the application of opensourcetools, the author helps readers gain hands-on knowledge of how tobetter defend networks and how to mitigate damage from security incidents.

Smarter Than Us: The Rise of Machine Intelligence


Stuart Armstrong - 2014
    The power of an artificial intelligence (AI) comes from its intelligence, not physical strength and laser guns. Humans steer the future not because we're the strongest or the fastest but because we're the smartest. When machines become smarter than humans, we'll be handing them the steering wheel. What promises—and perils—will these powerful machines present? Stuart Armstrong’s new book navigates these questions with clarity and wit.Can we instruct AIs to steer the future as we desire? What goals should we program into them? It turns out this question is difficult to answer! Philosophers have tried for thousands of years to define an ideal world, but there remains no consensus. The prospect of goal-driven, smarter-than-human AI gives moral philosophy a new urgency. The future could be filled with joy, art, compassion, and beings living worthwhile and wonderful lives—but only if we’re able to precisely define what a "good" world is, and skilled enough to describe it perfectly to a computer program.AIs, like computers, will do what we say—which is not necessarily what we mean. Such precision requires encoding the entire system of human values for an AI: explaining them to a mind that is alien to us, defining every ambiguous term, clarifying every edge case. Moreover, our values are fragile: in some cases, if we mis-define a single piece of the puzzle—say, consciousness—we end up with roughly 0% of the value we intended to reap, instead of 99% of the value.Though an understanding of the problem is only beginning to spread, researchers from fields ranging from philosophy to computer science to economics are working together to conceive and test solutions. Are we up to the challenge?A mathematician by training, Armstrong is a Research Fellow at the Future of Humanity Institute (FHI) at Oxford University. His research focuses on formal decision theory, the risks and possibilities of AI, the long term potential for intelligent life (and the difficulties of predicting this), and anthropic (self-locating) probability. Armstrong wrote Smarter Than Us at the request of the Machine Intelligence Research Institute, a non-profit organization studying the theoretical underpinnings of artificial superintelligence.

The Human Use of Human Beings: Cybernetics and Society


Norbert Wiener - 1949
    Norbert Wiener's classic is one in that small company. Founder of the science of cybernetics—the study of the relationship between computers and the human nervous system—Wiener was widely misunderstood as one who advocated the automation of human life. As this book reveals, his vision was much more complex and interesting. He hoped that machines would release people from relentless and repetitive drudgery in order to achieve more creative pursuits. At the same time he realized the danger of dehumanizing and displacement. His book examines the implications of cybernetics for education, law, language, science, technology, as he anticipates the enormous impact—in effect, a third industrial revolution—that the computer has had on our lives.

Information Dashboard Design: The Effective Visual Communication of Data


Stephen Few - 2006
    Although dashboards are potentially powerful, this potential is rarely realized. The greatest display technology in the world won't solve this if you fail to use effective visual design. And if a dashboard fails to tell you precisely what you need to know in an instant, you'll never use it, even if it's filled with cute gauges, meters, and traffic lights. Don't let your investment in dashboard technology go to waste.This book will teach you the visual design skills you need to create dashboards that communicate clearly, rapidly, and compellingly. Information Dashboard Design will explain how to:Avoid the thirteen mistakes common to dashboard design Provide viewers with the information they need quickly and clearly Apply what we now know about visual perception to the visual presentation of information Minimize distractions, cliches, and unnecessary embellishments that create confusion Organize business information to support meaning and usability Create an aesthetically pleasing viewing experience Maintain consistency of design to provide accurate interpretation Optimize the power of dashboard technology by pairing it with visual effectiveness Stephen Few has over 20 years of experience as an IT innovator, consultant, and educator. As Principal of the consultancy Perceptual Edge, Stephen focuses on data visualization for analyzing and communicating quantitative business information. He provides consulting and training services, speaks frequently at conferences, and teaches in the MBA program at the University of California in Berkeley. He is also the author of Show Me the Numbers: Designing Tables and Graphs to Enlighten. Visit his website at www.perceptualedge.com.

The Problem with Software: Why Smart Engineers Write Bad Code


Adam Barr - 2018
    As the size and complexity of commercial software have grown, the gap between academic computer science and industry has widened. It's an open secret that there is little engineering in software engineering, which continues to rely not on codified scientific knowledge but on intuition and experience.Barr, who worked as a programmer for more than twenty years, describes how the industry has evolved, from the era of mainframes and Fortran to today's embrace of the cloud. He explains bugs and why software has so many of them, and why today's interconnected computers offer fertile ground for viruses and worms. The difference between good and bad software can be a single line of code, and Barr includes code to illustrate the consequences of seemingly inconsequential choices by programmers. Looking to the future, Barr writes that the best prospect for improving software engineering is the move to the cloud. When software is a service and not a product, companies will have more incentive to make it good rather than "good enough to ship."

Adobe Photoshop CC Classroom in a Book (2017 Release)


Andrew Faulkner - 2016
    The 15 project-based lessons in this book show users step-by-step the key techniques for working in Photoshop and how to correct, enhance, and distort digital images, create image composites, and prepare images for print and the web. In addition to learning the key elements of the Photoshop interface, this completely revised CC (2017 release) edition covers features like new and improved search capabilities, Content-Aware Crop, Select and Mask, Face-Aware Liquify, designing with multiple artboards, and much more! The online companion files include all the necessary assets for readers to complete the projects featured in each chapter as well as ebook updates when Adobe releases new features for Creative Cloud customers. All buyers of the book get full access to the Web Edition: a Web-based version of the complete ebook enhanced with video and interactive multiple-choice quizzes. As always with the Classroom in a Book, Instructor Notes are available for teachers to download.

The New Normal: explore the limits of the digital world


Peter Hinssen - 2010
    Patients are looking for information coming from a wide range of sources. Products and experiences are being discussed on the internet and shared across social media platforms. UCB is one of the first biopharma companies to acknowledge IT as core to its business strategy and to let the patient take the lead in the online conversation. This book is about the trend spotting and creative thinking needed to prepare ourselves for the world of possibilities awaiting us in the big ocean of the New Normal. Talking about the digital society could soon make you sound old and out of date - such is the pace of change. Advancement in technology is creating a 'new normal' where relationships with consumers are increasingly in a digital form. Businesses need to reinvent themselves to create new interactive business models. Technology is no longer an enabler. It has become a game-changer. Don't even think for a moment that we have arrived in the Digital World. We're probably, at best, halfway. This isn't a discussion about the glass being half-full or half-empty. The past 25 years were about technology getting into the hands of consumers. The next 25 years will see consumers, young and old, making technology part of everyday life. Digital has become the New Normal. An entrepreneur, advisor, lecturer and writer, Peter Hinssen (1969) is one of Europe's most sought-after thought leaders on the impact of technology on society and business. He is frequently called upon to lead seminars and consult on issues related to the adoption of technology by consumers, the impact of the networked digital society, and the Fusion between business and IT.

Letting Go of the Words: Writing Web Content that Works


Janice G. Redish - 2007
    Ironically, I must recommend that you read her every word so that you can find out why your customers won't read very many words on your website -- and what to do about it.-- Jakob Nielsen, Principal, Nielsen Norman Group"There are at least twelve billion web pages out there. Twelve billion voices talking, but saying mostly nothing. If just 1% of those pages followed Ginny's practical, clear advice, the world would be a better place. Fortunately, you can follow her advice for 100% of your own site's pages, so pick up a copy of Letting Go of the Words and start communicating effectively today."--Lou Rosenfeld, co-author, Information Architecture for the World Wide WebOn the web, whether on the job or at home, we usually want to grab information and use it quickly. We go to the web to get answers to questions or to complete tasks - to gather information, reading only what we need. We are all too busy to read much on the web.This book helps you write successfully for web users. It offers strategy, process, and tactics for creating or revising content for the web. It helps you plan, organize, write, design, and test web content that will make web users come back again and again to your site.Learn how to create usable and useful content for the web from the master - Ginny Redish. Ginny has taught and mentored hundreds of writers, information designers, and content owners in the principles and secrets of creating web information that is easy to scan, easy to read, and easy to use.This practical, informative book will help anyone creating web content do it better.Features* Clearly-explained guidelines with full color illustrations and examples from actual web sites throughout the book. * Written in easy-to-read style with many befores and afters.* Specific guidelines for web-based press releases, legal notices, and other documents.* Tips on making web content accessible for people with special needs.Janice (Ginny) Redish has been helping clients and colleagues communicate clearly for more than 20 years. For the past ten years, her focus has been helping people create usable and useful web sites. She is co-author of two classic books on usability: A Practical Guide to Usability Testing (with Joseph Dumas), and User and Task Analysis for Interface Design (with JoAnn Hackos), and is the recipient of many awards.

Make It So: Interaction Design Lessons From Science Fiction


Nathan Shedroff - 2012
    Freed from the rigorous constraints of designing for real users, sci-fi production designers develop blue-sky interfaces that are inspiring, humorous, and even instructive. By carefully studying these "outsider" user interfaces, designers can derive lessons that make their real-world designs more cutting edge and successful.

HBase: The Definitive Guide


Lars George - 2011
    As the open source implementation of Google's BigTable architecture, HBase scales to billions of rows and millions of columns, while ensuring that write and read performance remain constant. Many IT executives are asking pointed questions about HBase. This book provides meaningful answers, whether you’re evaluating this non-relational database or planning to put it into practice right away. Discover how tight integration with Hadoop makes scalability with HBase easier Distribute large datasets across an inexpensive cluster of commodity servers Access HBase with native Java clients, or with gateway servers providing REST, Avro, or Thrift APIs Get details on HBase’s architecture, including the storage format, write-ahead log, background processes, and more Integrate HBase with Hadoop's MapReduce framework for massively parallelized data processing jobs Learn how to tune clusters, design schemas, copy tables, import bulk data, decommission nodes, and many other tasks

Data Jujitsu: The Art of Turning Data into Product


D.J. Patil - 2012
    Acclaimed data scientist DJ Patil details a new approach to solving problems in Data Jujitsu.Learn how to use a problem's "weight" against itself to:Break down seemingly complex data problems into simplified partsUse alternative data analysis techniques to examine themUse human input, such as Mechanical Turk, and design tricks that enlist the help of your users to take short cuts around tough problemsLearn more about the problems before starting on the solutions—and use the findings to solve them, or determine whether the problems are worth solving at all.