Head First Design Patterns


Eric Freeman - 2004
     At any given moment, somewhere in the world someone struggles with the same software design problems you have. You know you don't want to reinvent the wheel (or worse, a flat tire), so you look to Design Patterns--the lessons learned by those who've faced the same problems. With Design Patterns, you get to take advantage of the best practices and experience of others, so that you can spend your time on...something else. Something more challenging. Something more complex. Something more fun. You want to learn about the patterns that matter--why to use them, when to use them, how to use them (and when NOT to use them). But you don't just want to see how patterns look in a book, you want to know how they look "in the wild". In their native environment. In other words, in real world applications. You also want to learn how patterns are used in the Java API, and how to exploit Java's built-in pattern support in your own code. You want to learn the real OO design principles and why everything your boss told you about inheritance might be wrong (and what to do instead). You want to learn how those principles will help the next time you're up a creek without a design pattern. Most importantly, you want to learn the "secret language" of Design Patterns so that you can hold your own with your co-worker (and impress cocktail party guests) when he casually mentions his stunningly clever use of Command, Facade, Proxy, and Factory in between sips of a martini. You'll easily counter with your deep understanding of why Singleton isn't as simple as it sounds, how the Factory is so often misunderstood, or on the real relationship between Decorator, Facade and Adapter. With Head First Design Patterns, you'll avoid the embarrassment of thinking Decorator is something from the "Trading Spaces" show. Best of all, in a way that won't put you to sleep! We think your time is too important (and too short) to spend it struggling with academic texts. If you've read a Head First book, you know what to expect--a visually rich format designed for the way your brain works. Using the latest research in neurobiology, cognitive science, and learning theory, Head First Design Patterns will load patterns into your brain in a way that sticks. In a way that lets you put them to work immediately. In a way that makes you better at solving software design problems, and better at speaking the language of patterns with others on your team.

The Big Switch: Rewiring the World, from Edison to Google


Nicholas Carr - 2008
    In a new chapter for this edition that brings the story up-to-date, Nicholas Carr revisits the dramatic new world being conjured from the circuits of the "World Wide Computer."

JavaScript Enlightenment


Cody Lindley - 2012
    In this concise book, JavaScript expert Cody Lindley (jQuery Cookbook) provides an accurate view of the language by examining its objects and supporting nuances.Libraries and frameworks help you build web applications quickly and efficiently, but when things go wrong or performance becomes an issue, knowing how and why they work is critical. If you're ready to go under the hood and get your hands dirty with JavaScript internals, this is your book. Get a short and digestible summary of ECMA-262, Edition 3, backed by real code you can run instantly Examine the creation of JavaScript objects Learn complex values, primitive values, scope, and inheritance Understand the importance of the head object Work with string, number, and Boolean objects and values Discover how to use the null value and the built-in math object Get into the details--beyond Mozilla's reference guide for JavaScript 1.5

The Fundamentals of Illustration


Lawrence Zeegen - 2005
    Pub Date: 2006 Pages: 176 Publisher: Ava Publishing. SA Click on the Google Preview image above to the read some pages of this book! Creating great illustration work the requires specialist skills and knowledge. and in addition to practical applications. this text teaches a comprehension of basic communication theory and creative strategies. Contents: IntroductionContentsp. 4How to Get the Most from this Bookp. 6Forewordp. 8Introductionp. 10Communicating IdeasThe Blank Sheet of Paperp. 18Why ??Ideasp. 20The iefingp. 24Investigation of the Subject Matterp. 26Gathering Inspirationp . 30ainstormingp. 34Explaining the Visualp. 38Longevityp. 44The Medium is the MessageThe Power of the Pencilp. 50Material Worldp. 55Art School Ethosp. 60Illustration as a Disciplinep. 65A Demanding Lifep. 70Mixing Mediap. 72The Digital Dividep. 74The New Wave of Illustratorsp. 80From Outc...

A Software Engineer Learns HTML5, JavaScript and jQuery


Dane Cameron - 2013
    Due to their monopoly position in web browsers, and the fact web browsers have spread from PCs to phones, tablets and TVs; their status will continue to grow and grow. Despite their success, many software engineers are apprehensive about JavaScript and HTML. This apprehensiveness is not completely unfounded; both JavaScript and HTML were rushed in their early years, and driven by commercial rather than engineering interests. As a result, many dubious features crept into these languages. Due to backwards compatibility concerns, most of these features still remain. In addition, many software engineers have used these languages without ever learning them. JavaScript and HTML have low barriers to entry, and this, along with their similarity to other languages, led many software engineers to conclude that there really was nothing much to learn. If you have not used JavaScript and HTML for a number of years, or if you are a programmer or software engineer using other languages, you may be surprised at what they now offer. Browser based web applications are now capable of matching or exceeding the sophistication and scale of traditional desktop applications. In order to create complex web applications however, it is essential to learn these languages. This book takes the point of view that once you have a strong grasp of the fundamentals, the details will take care of themselves. It will not present you with long lists of APIs, or intricate details of every attribute, these can be found in reference manuals. It will focus on the details of each language that are fundamental to understanding how they work. This book will guide you through the process of developing a web application using HTML5, Javascript, jQuery and CSS. It contains the following content: 1. An introduction to the HTML5 markup language, and how it differs from HTML4 and XHTML. 2. An introduction to JavaScript, including an in-depth look at its use of objects and functions, along with the design patterns that support the development of robust web applications. 3. An introduction to jQuery selection, traversal, manipulation and events. 4. An in-depth look at the Web storage and IndexedDB APIs for client side data storage. 5. A guide to implementing offline web applications with the Application Cache API. 6. An introduction to the ways JavaScript can interact with the users file-system using the FileReader API. 7. The use of Web Workers in a web application to execute algorithms on background threads. 8. An introduction to AJAX, and the jQuery API supporting AJAX. 9. An introduction to Server Sent Events and Web Sockets. All subjects are introduced in the context of a sample web application. This book is intended for anyone with at least a superficial knowledge of HTML and programming.

Designing with the Mind in Mind: Simple Guide to Understanding User Interface Design Rules


Jeff Johnson - 2010
    But as the field evolves, designers enter the field from many disciplines. Practitioners today have enough experience in UI design that they have been exposed to design rules, but it is essential that they understand the psychology behind the rules in order to effectively apply them. In "Designing with the Mind in Mind," Jeff Johnson, author of the best selling "GUI Bloopers," provides designers with just enough background in perceptual and cognitive psychology that UI design guidelines make intuitive sense rather than being just a list of rules to follow. * The first practical, all-in-one source for practitioners on user interface design rules and why, when and how to apply them.* Provides just enough background into the reasoning behind interface design rules that practitioners can make informed decisions in every project.* Gives practitioners the insight they need to make educated design decisions when confronted with tradeoffs, including competing design rules, time constrictions, or limited resources.

Strategic Management: Text and Cases


Gregory G. Dess - 1995
    The text is rounded off by rich, relevant, and teachable cases. This text's accessible writing style and wealth of new and updated illustrations, which clarify the most difficult topics, make this text the best resource for your students. The new case selections emphasize variety, currency, and familiar company names. The cases are up-to-date in terms of both financial data and strategic issues. This group of cases gives both instructors and students unparalleled quality and variety. Based on consistent reviewer feedback, these selections combine comprehensive and shorter length cases about well known companies.

Domain-Driven Design: Tackling Complexity in the Heart of Software


Eric Evans - 2003
    "His book is very compatible with XP. It is not about drawing pictures of a domain; it is about how you think of it, the language you use to talk about it, and how you organize your software to reflect your improving understanding of it. Eric thinks that learning about your problem domain is as likely to happen at the end of your project as at the beginning, and so refactoring is a big part of his technique. "The book is a fun read. Eric has lots of interesting stories, and he has a way with words. I see this book as essential reading for software developers--it is a future classic." --Ralph Johnson, author of Design Patterns "If you don't think you are getting value from your investment in object-oriented programming, this book will tell you what you've forgotten to do. "Eric Evans convincingly argues for the importance of domain modeling as the central focus of development and provides a solid framework and set of techniques for accomplishing it. This is timeless wisdom, and will hold up long after the methodologies du jour have gone out of fashion." --Dave Collins, author of Designing Object-Oriented User Interfaces "Eric weaves real-world experience modeling--and building--business applications into a practical, useful book. Written from the perspective of a trusted practitioner, Eric's descriptions of ubiquitous language, the benefits of sharing models with users, object life-cycle management, logical and physical application structuring, and the process and results of deep refactoring are major contributions to our field." --Luke Hohmann, author of Beyond Software Architecture "This book belongs on the shelf of every thoughtful software developer." --Kent Beck "What Eric has managed to capture is a part of the design process that experienced object designers have always used, but that we have been singularly unsuccessful as a group in conveying to the rest of the industry. We've given away bits and pieces of this knowledge...but we've never organized and systematized the principles of building domain logic. This book is important." --Kyle Brown, author of Enterprise Java(TM) Programming with IBM(R) WebSphere(R) The software development community widely acknowledges that domain modeling is central to software design. Through domain models, software developers are able to express rich functionality and translate it into a software implementation that truly serves the needs of its users. But despite its obvious importance, there are few practical resources that explain how to incorporate effective domain modeling into the software development process. Domain-Driven Design fills that need. This is not a book about specific technologies. It offers readers a systematic approach to domain-driven design, presenting an extensive set of design best practices, experience-based techniques, and fundamental principles that facilitate the development of software projects facing complex domains. Intertwining design and development practice, this book incorporates numerous examples based on actual projects to illustrate the application of domain-driven design to real-world software development. Readers learn how to use a domain model to make a complex development effort more focused and dynamic. A core of best practices and standard patterns provides a common language for the development team. A shift in emphasis--refactoring not just the code but the model underlying the code--in combination with the frequent iterations of Agile development leads to deeper insight into domains and enhanced communication between domain expert and programmer. Domain-Driven Design then builds on this foundation, and addresses modeling and design for complex systems and larger organizations.Specific topics covered include:Getting all team members to speak the same language Connecting model and implementation more deeply Sharpening key distinctions in a model Managing the lifecycle of a domain object Writing domain code that is safe to combine in elaborate ways Making complex code obvious and predictable Formulating a domain vision statement Distilling the core of a complex domain Digging out implicit concepts needed in the model Applying analysis patterns Relating design patterns to the model Maintaining model integrity in a large system Dealing with coexisting models on the same project Organizing systems with large-scale structures Recognizing and responding to modeling breakthroughs With this book in hand, object-oriented developers, system analysts, and designers will have the guidance they need to organize and focus their work, create rich and useful domain models, and leverage those models into quality, long-lasting software implementations.

Community Building on the Web: Secret Strategies for Successful Online Communities


Amy Jo Kim - 1999
    She discusses important design strategies, interviews influential Web community-builders, and provides the reader with templates and questionnaires to use in building their own communities.

Beginning Programming for Dummies [With CDROM]


Wallace Wang - 1999
    It explores the common parts of every computer programming language and how to write for multiple platforms like Windows, Mac OS X, or Linux. This easily accessible guide provides you with the tools you need to: Create programs and divide them into subprogramsDevelop variables and use constantsManipulate strings and convert them into numbersUse an array as storage spaceReuse and rewrite codeIsolate dataCreate a user interfaceWrite programs for the InternetUtilize JavaScript and Java AppletsIn addition to these essential building blocks, this guide features a companion CD-ROM containing Liberty BASIC compiler and code in several languages. It also provides valuable programming resources and lets you in on cool careers for programmers. With "Beginning Programming of Dummies," you can take charge of your computer and begin programming today

The Psychology of Computer Programming


Gerald M. Weinberg - 1971
    Weinberg adds new insights and highlights the similarities and differences between now and then. Using a conversational style that invites the reader to join him, Weinberg reunites with some of his most insightful writings on the human side of software engineering.Topics include egoless programming, intelligence, psychological measurement, personality factors, motivation, training, social problems on large projects, problem-solving ability, programming language design, team formation, the programming environment, and much more.Dorset House Publishing is proud to make this important text available to new generations of programmers -- and to encourage readers of the first edition to return to its valuable lessons.

Web Design in a Nutshell: A Desktop Quick Reference


Jennifer Niederst Robbins - 1998
    Since the last edition of this book appeared five years ago, there has been a major climate change with regard to web standards. Designers are no longer using (X)HTML as a design tool, but as a means of defining the meaning and structure of content. Cascading Style Sheets are no longer just something interesting to tinker with, but rather a reliable method for handling all matters of presentation, from fonts and colors to the layout of the entire page. In fact, following the standards is now a mandate of professional web design.Our popular reference, Web Design in a Nutshell, is one of the first books to capture this new web landscape with an edition that's been completely rewritten and expanded to reflect the state of the art. In addition to being an authoritative reference for (X)HTML and Cascading Style Sheets, this book also provides an overview of the unique requirements of designing for the Web and gets to the nitty-gritty of JavaScript and DOM Scripting, web graphics optimization, and multimedia production. It is an indispensable tool for web designers and developers of all levels.The third edition covers these contemporary web design topics:Structural layer: HTML 4.01 and XHTML 1.0 (9 chapters), including an alphabetical reference of all elements, attributes and character entities Presentation layer: Ten all-new chapters on Cascading Style Sheets, Level 2.1, including an alphabetical reference of all properties and values. Behavior layer: JavaScript and scripting with the Document Object Model (DOM) Web environment: New web standards, browsers, display devices, accessibility, and internationalization Web graphics optimization: Producing lean and mean GIF, JPEG, PNG, and animated GIFs Multimedia: Web audio, video, Flash, and PDFOrganized so that readers can find answers quickly, Web Design in a Nutshell, Third Edition helps experienced designers come up to speed quickly on standards-based web design, and serves as a quick reference for those already familiar with the new standards and technology. There are many books for web designers, but none that address such a wide variety of topics. Find out why nearly half a million buyers have made this the most popular web design book available.

A Framework for Human Resource Management


Gary Dessler - 2001
    It offers Web exercises for every chapter, password protected instructor support material and syllabus manager.

Release It!: Design and Deploy Production-Ready Software (Pragmatic Programmers)


Michael T. Nygard - 2007
    Did you design your system to survivef a sudden rush of visitors from Digg or Slashdot? Or an influx of real world customers from 100 different countries? Are you ready for a world filled with flakey networks, tangled databases, and impatient users?If you're a developer and don't want to be on call for 3AM for the rest of your life, this book will help.In Release It!, Michael T. Nygard shows you how to design and architect your application for the harsh realities it will face. You'll learn how to design your application for maximum uptime, performance, and return on investment.Mike explains that many problems with systems today start with the design.

Photography Demystified: Your Guide to Gaining Creative Control and Taking Amazing Photographs


David McKay - 2016
    “Photography Demystified—Your Guide to Understanding Photography, Gaining Creative Control and Taking Amazing Photographs!” has been designed to resolve your frustrations and photography difficulties. This book will give you the tools, education and practical applications needed to understand how to take great pictures! PLUS, a section entirely dedicated to assignments has been included! Video tutorials are also available at no charge! http://mckaylive.com/bonus/Along with my wife Ally, I own McKay Photography Academy. Leading hundreds of photographic tours around the world, I have taught over twelve thousand people just like you how to excel in photography. Having earned my Master of Photography and Photographic Craftsmen degrees from Professional Photographers of America, the leading photography organization in the world, I have been a full time professional photographer for over twenty nine years and am passionate about teaching others how to achieve great results in their photography. My motivation is to see that everyone can enjoy photography and take the frustration out of the process!Beginning photographers, camera buffs, photo enthusiast, and many others who struggle with understanding photography concepts, exposure, and their camera manuals have already experienced my proven methods of teaching beginner’s photography. This book will do the same for you!•Terry L from Santa Cruz, CA says: “Taking someone off automatic settings to manual settings can be daunting at times. Fortunately, I have had the experience of learning from David McKay. David has taken me further into the world of photography than I could have ever imagined.”•Keith W from Austin, TX writes: “David is one of those rare individuals that combine passion, extensive knowledge and a laid-back style in teaching photography. What else can I say; it is refreshing to learn from someone this talented.” •Steve of Steve Scurich Photography in Santa Barbara,CA states: “The ability to take decades of complex photography knowledge and boil it down into concepts that are clear, understandable and easy to implement, is David’s gift to the world. Personally, I am forever grateful for the inspiration and encouragement he’s given me.”•Denise Mann from San Antonio, TX says: “David McKay is passionate about photography and equally as passionate about teaching it to those eager to learn.”•Jeff G from Sacramento CA says: “David McKay is a great photographer—not every photographer can be a great educator, David is! David is able to take complicated topics and break them down to something easy to digest and practical to implement—you are inspired to go out and use what you just learned!”•Kara from San Jose, CA writes: “You can’t help but to feel his love for photography and his passion for teaching.