Book picks similar to
Designing Web Usability by Jakob Nielsen
design
ux
non-fiction
usability
A Smarter Way to Learn JavaScript: The new approach that uses technology to cut your effort in half
Mark Myers - 2013
Master each chapter with free interactive exercises online.
Live simulation lets you see your practice code run in your browser.
2,000 lines of color-keyed sample code break it all down into easy-to-learn chunks.
Extra help through the rough spots so you're less likely to get stuck.
Tested on non-coders—including the author's technophobe wife.
Become fluent in all the JavaScript fundamentals, in half the time.
Display alert messages to the user
Gather information through prompts
Manipulate variables
Build statements
Do math
Use operators
Concatenate text
Run routines based on conditions
Compare values
Work with arrays
Run automated routines
Display custom elements on the webpage
Generate random numbers
Manipulate decimals
Round numbers
Create loops
Use functions
Find the current date and time
Measure time intervals
Create a timer
Respond to the user's actions
Swap images
Control colors on the webpage
Change any element on the webpage
Improvise new HTML markup on the fly
Use the webpage DOM structure
Insert comments
Situate scripts effectively
Create and change objects
Automate object creation
Control the browser's actions
Fill the browser window with custom content
Check forms for invalid entries
Deal with errors
Make a more compelling website
Increase user-friendliness
Keep your user engaged
Hacker's Delight
Henry S. Warren Jr. - 2002
Aiming to tell the dark secrets of computer arithmetic, this title is suitable for library developers, compiler writers, and lovers of elegant hacks.
Practices of an Agile Developer: Working in the Real World
Venkat Subramaniam - 2006
You'll learn pragmatic ways of approaching the development process and your personal coding techniques. You'll learn about your own attitudes, issues with working on a team, and how to best manage your learning, all in an iterative, incremental, agile style. You'll see how to apply each practice, and what benefits you can expect. Bottom line: This book will make you a better developer.
Programming Phoenix: Productive |> Reliable |> Fast
Chris McCord - 2016
Phoenix creator Chris McCord, Elixir creator José Valim, and award-winning author Bruce Tate walk you through building an application that’s fast and reliable. At every step, you’ll learn from the Phoenix creators not just what to do, but why. Packed with insider insights, this definitive guide will be your constant companion in your journey from Phoenix novice to expert, as you build the next generation of web applications.
Frontend Architecture for Design Systems: A Modern Blueprint for Scalable and Sustainable Websites
Micah Godbolt - 2015
This practical book takes experienced web developers through the new discipline of frontend architecture, including the latest tools, standards, and best practices that have elevated frontend web development to an entirely new level.Using real-world examples, case studies, and practical tips and tricks throughout, author Micah Godbolt introduces you to the four pillars of frontend architecture. He also provides compelling arguments for developers who want to embrace the mantle of frontend architect and fight to make it a first-class citizen in their next project.The four pillars include:Code: how to approach the HTML, CSS, and JavaScript of a design systemProcess: tools and processes for creating an efficient and error-proof workflowTesting: creating a stable foundation on which to build your siteDocumentation: tools for writing documentation while the work is in progress
Core J2EE Patterns: Best Practices and Design Strategies
Deepak Alur - 2001
What's been lacking is the expertise to fuse them into solutions to real-world problems. These patterns are the intellectual mortar for J2EE software construction." John Vlissides, co-author of Design Patterns, the "Gang of Four" book"The authors of Core J2EE Patterns have harvested a really useful set of patterns. They show how to apply these patterns and how to refactor your system to take advantage of them. It's just like having a team of experts sitting at your side."Grady Booch, Chief Scientist, Rational Software Corporation "The authors do a great job describing useful patterns for application architectures. The section on refactoring is worth the price of the entire book!"Craig McClanahan, Struts Lead Architect and Specification Lead for JavaServer Faces "Core J2EE Patterns is the gospel that should accompany every J2EE application server...Built upon the in-the-trenches expertise of its veteran architect authors, this volume unites the platform's many technologies and APIs in a way that application architects can use, and provides insightful answers to the whys, whens, and hows of the J2EE platform."Sean Neville, JRun Enterprise Architect, MacromediaDevelopers often confuse learning the technology with learning to design with the technology. In this book, senior architects from the Sun Java Center share their cumulative design experience on Java 2 Platform, Enterprise Edition (J2EE) technology.The primary focus of the book is on patterns, best practices, design strategies, and proven solutions using the key J2EE technologies including JavaServer Pages(TM) (JSP(TM)), Servlets, Enterprise JavaBeans(TM) (EJB(TM)), and Java(TM) Message Service (JMS) APIs. The J2EE Pattern Catalog with 21 patterns and numerous strategies is presented to document and promote best practices for these technologies.Core J2EE Patterns, Second Edition offers the following: J2EE Pattern Catalog with 21 patternsfully revised and newly documented patterns providing proven solutions for enterprise applications Design strategies for the presentation tier, business tier, and integration tier Coverage of servlets, JSP, EJB, JMS, and Web Services J2EE technology bad practices Refactorings to improve existing designs using patterns Fully illustrated with UML diagrams Extensive sample code for patterns, strategies, and refactorings
XML in a Nutshell
Elliotte Rusty Harold - 2001
But you don't need to commit every XML syntax, API, or XSLT transformation to memory; you only need to know where to find it. And if it's a detail that has to do with XML or its companion standards, you'll find it--clear, concise, useful, and well-organized--in the updated third edition of XML in a Nutshell.With XML in a Nutshell beside your keyboard, you'll be able to: Quick-reference syntax rules and usage examples for the core XML technologies, including XML, DTDs, Xpath, XSLT, SAX, and DOM Develop an understanding of well-formed XML, DTDs, namespaces, Unicode, and W3C XML Schema Gain a working knowledge of key technologies used for narrative XML documents such as web pages, books, and articles technologies like XSLT, Xpath, Xlink, Xpointer, CSS, and XSL-FO Build data-intensive XML applications Understand the tools and APIs necessary to build data-intensive XML applications and process XML documents, including the event-based Simple API for XML (SAX2) and the tree-oriented Document Object Model (DOM) This powerful new edition is the comprehensive XML reference. Serious users of XML will find coverage on just about everything they need, from fundamental syntax rules, to details of DTD and XML Schema creation, to XSLT transformations, to APIs used for processing XML documents. XML in a Nutshell also covers XML 1.1, as well as updates to SAX2 and DOM Level 3 coverage. If you need explanation of how a technology works, or just need to quickly find the precise syntax for a particular piece, XML in a Nutshell puts the information at your fingertips.Simply put, XML in a Nutshell is the critical, must-have reference for any XML developer.
Thinking in Java
Bruce Eckel - 1998
The author's take on the essence of Java as a new programming language and the thorough introduction to Java's features make this a worthwhile tutorial. Thinking in Java begins a little esoterically, with the author's reflections on why Java is new and better. (This book's choice of font for chapter headings is remarkably hard on the eyes.) The author outlines his thoughts on why Java will make you a better programmer, without all the complexity. The book is better when he presents actual language features. There's a tutorial to basic Java types, keywords, and operators. The guide includes extensive source code that is sometimes daunting (as with the author's sample code for all the Java operators in one listing.) As such, this text will be most useful for the experienced developer. The text then moves on to class design issues, when to use inheritance and composition, and related topics of information hiding and polymorphism. (The treatment of inner classes and scoping will likely seem a bit overdone for most readers.) The chapter on Java collection classes for both Java Developer's Kit (JDK) 1.1 and the new classes, such as sets, lists, and maps, are much better. There's material in this chapter that you are unlikely to find anywhere else. Chapters on exception handling and programming with type information are also worthwhile, as are the chapters on the new Swing interface classes and network programming. Although it adopts somewhat of a mixed-bag approach, Thinking in Java contains some excellent material for the object-oriented developer who wants to see what all the fuss is about with Java.
Usable Usability: Simple Steps for Making Stuff Better
Eric L. Reiss - 2012
Boasting a full-color interior packed with design and layout examples, this book teaches you how to understand a user's needs, divulges techniques for exceeding a user's expectations, and provides a host of hard won advice for improving the overall quality of a user's experience. World-renowned UX guru Eric Reiss shares his knowledge from decades of experience making products useable for everyone...all in an engaging, easy-to-apply manner.Reveals proven tools that simply make products better, from the users' perspective Provides simple guidelines and checklists to help you evaluate and improve your own products Zeroes in on essential elements to consider when planning a product, such as its functionality and responsiveness, whether or not it is ergonomic, making it foolproof, and more Addresses considerations for product clarity, including its visibility, understandability, logicalness, consistency, and predictability Usable Usability walks you through numerous techniques that will help ensure happy customers and successful products!
User Friendly: How the Hidden Rules of Design Are Changing the Way We Live, Work, and Play
Cliff Kuang - 2019
Spanning over a century of sweeping changes, from women's rights to the Great Depression to World War II to the rise of the digital era, this book unpacks the ways in which the world has been--and continues to be--remade according to the principles of the once-obscure discipline of user-experience design.In this essential text, Kuang and Fabricant map the hidden rules of the designed world and shed light on how those rules have caused our world to change--an underappreciated but essential history that's pieced together for the first time. Combining the expertise and insight of a leading journalist and a pioneering designer, User Friendly provides a definitive, thoughtful, and practical perspective on a topic that has rapidly gone from arcane to urgent to inescapable. In User Friendly, Kuang and Fabricant tell the whole story for the first time--and you'll never interact with technology the same way again.
Cracking the Coding Interview: 150 Programming Questions and Solutions
Gayle Laakmann McDowell - 2008
This is a deeply technical book and focuses on the software engineering skills to ace your interview. The book is over 500 pages and includes 150 programming interview questions and answers, as well as other advice.The full list of topics are as follows:The Interview ProcessThis section offers an overview on questions are selected and how you will be evaluated. What happens when you get a question wrong? When should you start preparing, and how? What language should you use? All these questions and more are answered.Behind the ScenesLearn what happens behind the scenes during your interview, how decisions really get made, who you interview with, and what they ask you. Companies covered include Google, Amazon, Yahoo, Microsoft, Apple and Facebook.Special SituationsThis section explains the process for experience candidates, Program Managers, Dev Managers, Testers / SDETs, and more. Learn what your interviewers are looking for and how much code you need to know.Before the InterviewIn order to ace the interview, you first need to get an interview. This section describes what a software engineer's resume should look like and what you should be doing well before your interview.Behavioral PreparationAlthough most of a software engineering interview will be technical, behavioral questions matter too. This section covers how to prepare for behavioral questions and how to give strong, structured responses.Technical Questions (+ 5 Algorithm Approaches)This section covers how to prepare for technical questions (without wasting your time) and teaches actionable ways to solve the trickiest algorithm problems. It also teaches you what exactly "good coding" is when it comes to an interview.150 Programming Questions and AnswersThis section forms the bulk of the book. Each section opens with a discussion of the core knowledge and strategies to tackle this type of question, diving into exactly how you break down and solve it. Topics covered include• Arrays and Strings• Linked Lists• Stacks and Queues• Trees and Graphs• Bit Manipulation• Brain Teasers• Mathematics and Probability• Object-Oriented Design• Recursion and Dynamic Programming• Sorting and Searching• Scalability and Memory Limits• Testing• C and C++• Java• Databases• Threads and LocksFor the widest degree of readability, the solutions are almost entirely written with Java (with the exception of C / C++ questions). A link is provided with the book so that you can download, compile, and play with the solutions yourself.Changes from the Fourth Edition: The fifth edition includes over 200 pages of new content, bringing the book from 300 pages to over 500 pages. Major revisions were done to almost every solution, including a number of alternate solutions added. The introductory chapters were massively expanded, as were the opening of each of the chapters under Technical Questions. In addition, 24 new questions were added.Cracking the Coding Interview, Fifth Edition is the most expansive, detailed guide on how to ace your software development / programming interviews.
Inclusive Design Patterns - Coding Accessibility Into Web Design
Heydon Pickering - 2016
Should you wish to adopt a framework or employ a processor to speed up your development process, be our guest. However, this book is not about you; it’s about your audience.The Inclusive Design Patterns book covers all the techniques, gotchas and strategies you need to be aware of when building accessible, inclusive interfaces. We’ll explore the document outline, external links and “skip” links, navigation regions and landmarks, labelling and alternative text for illustrations, buttons, tables of contents, JavaScript patterns, touch targets, filter widgets and infinite scrolling and “load more” button and grid display and dynamic content and tab interfaces and password validation and web forms and error messages — and pretty much anything else you need to know about accessibility, including how to prototype with inclusivity in mind, how to deal with legacy browsers and dozens of practical snippets to use when building inclusive interfaces.
Designing Voice User Interfaces: How to Create Engaging and Compelling Experiences
Cathy Pearl - 2016
But how can you design a voice interface for your mobile app so that users can talk to it? And not just to facilitate question-and-answer sessions, but also provide an engaging, compelling experience?With this practical guide, you ll learn basic voice user interface (VUI) principles for designing mobile apps that makes speech an important tool for interaction. You ll learn how to choose the right speech recognition engine, use best methods for testing VUI on mobile, and dive into advanced VUI design topics to make your VUI not just functional but great.Ideal for product managers, UX designers, and VUI designers, this book explains basic VUI principles for mobile app design, and shows you how to measure the performance of your VUI app and improve upon it. You ll also learn how to determine whether using voice for your app is a good idea in the first placeVUI design is not just about making things cool it s about making a user s experience more natural, more powerful, and more human."
Learning Perl
Randal L. Schwartz - 1993
Written by three prominent members of the Perl community who each have several years of experience teaching Perl around the world, this edition has been updated to account for all the recent changes to the language up to Perl 5.8.Perl is the language for people who want to get work done. It started as a tool for Unix system administrators who needed something powerful for small tasks. Since then, Perl has blossomed into a full-featured programming language used for web programming, database manipulation, XML processing, and system administration--on practically all platforms--while remaining the favorite tool for the small daily tasks it was designed for. You might start using Perl because you need it, but you'll continue to use it because you love it.Informed by their years of success at teaching Perl as consultants, the authors have re-engineered the Llama to better match the pace and scope appropriate for readers getting started with Perl, while retaining the detailed discussion, thorough examples, and eclectic wit for which the Llama is famous.The book includes new exercises and solutions so you can practice what you've learned while it's still fresh in your mind. Here are just some of the topics covered:Perl variable typessubroutinesfile operationsregular expressionstext processingstrings and sortingprocess managementusing third party modulesIf you ask Perl programmers today what book they relied on most when they were learning Perl, you'll find that an overwhelming majority will point to the Llama. With good reason. Other books may teach you to program in Perl, but this book will turn you into a Perl programmer.
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.