Book picks similar to
Electronic Formulas, Symbols & Circuits by Forrest M. Mims III


electronics
engineering-technology
self-help-education
ham-radio-electronics

Cooking for Geeks: Real Science, Great Cooks, and Good Food


Jeff Potter - 2007
    Author and cooking geek Jeff Potter helps you apply curiosity, inspiration, and invention to the food you prepare. Why do we bake some things at 350°F / 175°C and others at 375°F / 190°C? Why is medium-rare steak so popular? And just how quickly does a pizza cook if you “overclock” an oven to 1,000°F / 540°C? This expanded new edition provides in-depth answers, and lets you experiment with several labs and more than 100 recipes— from the sweet (a patent-violating chocolate chip cookie) to the savory (pulled pork under pressure).When you step into the kitchen, you’re unwittingly turned into a physicist and a chemist. This excellent and intriguing resource is for inquisitive people who want to increase their knowledge and ability to cook.• Discover what type of cook you are and learn how to think about flavor• Understand how protein denaturation, Maillard reactions, caramelization, and otherreactions impact the foods we cook• Gain firsthand insights from interviews with researchers, food scientists, knife experts, chefs, and writers—including science enthusiast Adam Savage, chef Jaques Pépin, and chemist Hervé This

Java Concurrency in Practice


Brian Goetz - 2005
    Now this same team provides the best explanation yet of these new features, and of concurrency in general. Concurrency is no longer a subject for advanced users only. Every Java developer should read this book."--Martin BuchholzJDK Concurrency Czar, Sun Microsystems"For the past 30 years, computer performance has been driven by Moore's Law; from now on, it will be driven by Amdahl's Law. Writing code that effectively exploits multiple processors can be very challenging. Java Concurrency in Practice provides you with the concepts and techniques needed to write safe and scalable Java programs for today's--and tomorrow's--systems."--Doron RajwanResearch Scientist, Intel Corp"This is the book you need if you're writing--or designing, or debugging, or maintaining, or contemplating--multithreaded Java programs. If you've ever had to synchronize a method and you weren't sure why, you owe it to yourself and your users to read this book, cover to cover."--Ted NewardAuthor of Effective Enterprise Java"Brian addresses the fundamental issues and complexities of concurrency with uncommon clarity. This book is a must-read for anyone who uses threads and cares about performance."--Kirk PepperdineCTO, JavaPerformanceTuning.com"This book covers a very deep and subtle topic in a very clear and concise way, making it the perfect Java Concurrency reference manual. Each page is filled with the problems (and solutions!) that programmers struggle with every day. Effectively exploiting concurrency is becoming more and more important now that Moore's Law is delivering more cores but not faster cores, and this book will show you how to do it."--Dr. Cliff ClickSenior Software Engineer, Azul Systems"I have a strong interest in concurrency, and have probably written more thread deadlocks and made more synchronization mistakes than most programmers. Brian's book is the most readable on the topic of threading and concurrency in Java, and deals with this difficult subject with a wonderful hands-on approach. This is a book I am recommending to all my readers of The Java Specialists' Newsletter, because it is interesting, useful, and relevant to the problems facing Java developers today."--Dr. Heinz KabutzThe Java Specialists' Newsletter"I've focused a career on simplifying simple problems, but this book ambitiously and effectively works to simplify a complex but critical subject: concurrency. Java Concurrency in Practice is revolutionary in its approach, smooth and easy in style, and timely in its delivery--it's destined to be a very important book."--Bruce TateAuthor of Beyond Java" Java Concurrency in Practice is an invaluable compilation of threading know-how for Java developers. I found reading this book intellectually exciting, in part because it is an excellent introduction to Java's concurrency API, but mostly because it captures in a thorough and accessible way expert knowledge on threading not easily found elsewhere."--Bill VennersAuthor of Inside the Java Virtual MachineThreads are a fundamental part of the Java platform. As multicore processors become the norm, using concurrency effectively becomes essential for building high-performance applications. Java SE 5 and 6 are a huge step forward for the development of concurrent applications, with improvements to the Java Virtual Machine to support high-performance, highly scalable concurrent classes and a rich set of new concurrency building blocks. In Java Concurrency in Practice , the creators of these new facilities explain not only how they work and how to use them, but also the motivation and design patterns behind them.However, developing, testing, and debugging multithreaded programs can still be very difficult; it is all too easy to create concurrent programs that appear to work, but fail when it matters most: in production, under heavy load. Java Concurrency in Practice arms readers with both the theoretical underpinnings and concrete techniques for building reliable, scalable, maintainable concurrent applications. Rather than simply offering an inventory of concurrency APIs and mechanisms, it provides design rules, patterns, and mental models that make it easier to build concurrent programs that are both correct and performant.This book covers:Basic concepts of concurrency and thread safety Techniques for building and composing thread-safe classes Using the concurrency building blocks in java.util.concurrent Performance optimization dos and don'ts Testing concurrent programs Advanced topics such as atomic variables, nonblocking algorithms, and the Java Memory Model

The Art of Innovation: Lessons in Creativity from IDEO, America's Leading Design Firm


Tom Kelley - 2001
    At many companies, being first with a concept and first to market are critical just to survive. In The Art of Innovation, Tom Kelley, general manager of the Silicon Valley based design firm IDEO, takes readers behind the scenes of this wildly imaginative and energized company to reveal the strategies and secrets it uses to turn out hit after hit.IDEO doesn't buy into the myth of the lone genius working away in isolation, waiting for great ideas to strike. Kelley believes everyone can be creative, and the goal at his firm is to tap into that wellspring of creativity in order to make innovation a way of life. How does it do that? IDEO fosters an atmosphere conducive to freely expressing ideas, breaking the rules, and freeing people to design their own work environments. IDEO's focus on teamwork generates countless breakthroughs, fueled by the constant give-and-take among people ready to share ideas and reap the benefits of the group process. IDEO has created an intense, quick-turnaround, brainstorm-and-build process dubbed "the Deep Dive."In entertaining anecdotes, Kelley illustrates some of his firm's own successes (and joyful failures), as well as pioneering efforts at other leading companies. The book reveals how teams research and immerse themselves in every possible aspect of a new product or service, examining it from the perspective of clients, consumers, and other critical audiences.Kelley takes the reader through the IDEO problem-solving method:> Carefully observing the behavior or "anthropology" of the people who will be using a product or service> Brainstorming with high-energy sessions focused on tangible results> Quickly prototyping ideas and designs at every step of the way> Cross-pollinating to find solutions from other fields> Taking risks, and failing your way to success> Building a "Greenhouse" for innovationIDEO has won more awards in the last ten years than any other firm of its kind, and a full half-hour Nightline presentation of its creative process received one of the show's highest ratings. The Art of Innovation will provide business leaders with the insights and tools they need to make their companies the leading-edge, top-rated stars of their industries.From the Hardcover edition.

Test-Driven Development: By Example


Kent Beck - 2002
    While some fear is healthy (often viewed as a conscience that tells programmers to be careful!), the author believes that byproducts of fear include tentative, grumpy, and uncommunicative programmers who are unable to absorb constructive criticism. When programming teams buy into TDD, they immediately see positive results. They eliminate the fear involved in their jobs, and are better equipped to tackle the difficult challenges that face them. TDD eliminates tentative traits, it teaches programmers to communicate, and it encourages team members to seek out criticism However, even the author admits that grumpiness must be worked out individually! In short, the premise behind TDD is that code should be continually tested and refactored. Kent Beck teaches programmers by example, so they can painlessly and dramatically increase the quality of their work.

M.C. Escher: Visions of Symmetry


Doris Schattschneider - 1990
    It deals with one powerful obsession that preoccupied Escher: what he called "the regular division of the plane," the puzzlelike interlocking of birds, fish, lizards, and other natural forms in continuous patterns. Schattschneider asks, "How did he do it?" She answers the question by analyzing Escher's notebooks." Visions of Symmetry includes many of Escher's masterworks, as well as hundreds of lesser-known examples of his work. This new edition also features a foreward and an illustrated epilogue that reveals new information about Escher's inspiration and shows how his ideas of symmetry have influenced mathematicians, computer scientists, and contemporary artists.

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.