This nonfiction text explains the ever-increasing presence of technology and its concepts, namely coding, to young readers. A very simple explanation paired with photographs makes the world of coding very kid-friendly.
The classic guide to how computers work, updated with new chapters and interactive graphics "For me, Code was a revelation. It was the first book about programming that spoke to me. It started with a story, and it built up, layer by layer, analogy by analogy, until I understood not just the Code, but the System. Code is a book that is as much about Systems Thinking and abstractions as it is about code and programming. Code teaches us how many unseen layers there are between the computer systems that we as users look at every day and the magical silicon rocks that we infused with lightning and taught to think." - Scott Hanselman, Partner Program Director, Microsoft, and host of Hanselminutes Computers are everywhere, most obviously in our laptops and smartphones, but also our cars, televisions, microwave ovens, alarm clocks, robot vacuum cleaners, and other smart appliances. Have you ever wondered what goes on inside these devices to make our lives easier but occasionally more infuriating? For more than 20 years, readers have delighted in Charles Petzold's illuminating story of the secret inner life of computers, and now he has revised it for this new age of computing. Cleverly illustrated and easy to understand, this is the book that cracks the mystery. You'll discover what flashlights, black cats, seesaws, and the ride of Paul Revere can teach you about computing, and how human ingenuity and our compulsion to communicate have shaped every electronic device we use. This new expanded edition explores more deeply the bit-by-bit and gate-by-gate construction of the heart of every smart device, the central processing unit that combines the simplest of basic operations to perform the most complex of feats. Petzold's companion website, CodeHiddenLanguage.com, uses animated graphics of key circuits in the book to make computers even easier to comprehend. In addition to substantially revised and updated content, new chapters include: Chapter 18: Let's Build a Clock! Chapter 21: The Arithmetic Logic Unit Chapter 22: Registers and Busses Chapter 23: CPU Control Signals Chapter 24: Jumps, Loops, and Calls Chapter 28: The World Brain From the simple ticking of clocks to the worldwide hum of the internet, Code reveals the essence of the digital revolution.
INTERNATIONAL BESTSELLER • Inspired by her popular TED Talk, the founder and CEO of Girls Who Code urges women to embrace imperfection and live a bolder, more authentic life. “A timely message for women of all ages: Perfection isn’t just impossible but, worse, insidious.”—Angela Duckworth, bestselling author of Grit Imagine if you lived without the fear of not being good enough. If you didn’t care how your life looked on Instagram. If you could let go of the guilt and stop beating yourself up for making human mistakes. Imagine if, in every decision you faced, you took the bolder path? As women, too many of us feel crushed under the weight of our own expectations. We run ourselves ragged trying to please everyone, pass up opportunities that scare us, and avoid rejection at all costs. There’s a reason we act this way, Saujani says. As girls, we were taught to play it safe. Well-meaning parents and teachers praised us for being quiet and polite, urged us to be careful so we didn’t get hurt, and steered us to activities at which we could shine. As a result, we grew up to be women who are afraid to fail. It’s time to stop letting our fears drown out our dreams and narrow our world, along with our chance at happiness. By choosing bravery over perfection, we can find the power to claim our voice, to leave behind what makes us unhappy, and to go for the things we genuinely, passionately want. Perfection may set us on a path that feels safe, but bravery leads us to the one we’re authentically meant to follow. In Brave, Not Perfect,Saujani shares powerful insights and practices to help us let go of our need for perfection and make bravery a lifelong habit. By being brave, not perfect, we can all become the authors of our best and most joyful life.
As the second book in the Anyone Can Code series, Algorithmic Thinking focuses on the logic behind computer programming and software design. With a data-centred approach, it starts with simple algorithms that work on simple data items and advances to more complex ones covering data structures and classes. Examples are given in C/C++ and Python and use both plain text and graphics applications to illustrate the concepts in different languages and forms. With the advances in artificial intelligence and automated code generators, it is essential to learn about the logic of what a code needs to do, not just how to write the code. Anyone Can Code: Algorithmic Thinking is suitable for anyone who aims to improve their programming skills and go beyond the simple craft of programming, stepping into the world of algorithm design.
Get more out of your legacy systems: more performance, functionality, reliability, and manageability Is your code easy to change? Can you get nearly instantaneous feedback when you do change it? Do you understand it? If the answer to any of these questions is no, you have legacy code, and it is draining time and money away from your development efforts. In this book, Michael Feathers offers start-to-finish strategies for working more effectively with large, untested legacy code bases. This book draws on material Michael created for his renowned Object Mentor seminars: techniques Michael has used in mentoring to help hundreds of developers, technical managers, and testers bring their legacy systems under control. The topics covered include Understanding the mechanics of software change: adding features, fixing bugs, improving design, optimizing performance Getting legacy code into a test harness Writing tests that protect you against introducing new problems Techniques that can be used with any language or platform—with examples in Java, C++, C, and C# Accurately identifying where code changes need to be made Coping with legacy systems that aren't object-oriented Handling applications that don't seem to have any structure This book also includes a catalog of twenty-four dependency-breaking techniques that help you work with program elements in isolation and make safer changes.
Widely considered one of the best practical guides to programming, Steve McConnell’s original CODE COMPLETE has been helping developers write better software for more than a decade. Now this classic book has been fully updated and revised with leading-edge practices—and hundreds of new code samples—illustrating the art and science of software construction. Capturing the body of knowledge available from research, academia, and everyday commercial practice, McConnell synthesizes the most effective techniques and must-know principles into clear, pragmatic guidance. No matter what your experience level, development environment, or project size, this book will inform and stimulate your thinking—and help you build the highest quality code. Discover the timeless techniques and strategies that help you: Design for minimum complexity and maximum creativity Reap the benefits of collaborative development Apply defensive programming techniques to reduce and flush out errors Exploit opportunities to refactor—or evolve—code, and do it safely Use construction practices that are right-weight for your project Debug problems quickly and effectively Resolve critical construction issues early and correctly Build quality into the beginning, middle, and end of your project
Deep learning is often viewed as the exclusive domain of math PhDs and big tech companies. But as this hands-on guide demonstrates, programmers comfortable with Python can achieve impressive results in deep learning with little math background, small amounts of data, and minimal code. How? With fastai, the first library to provide a consistent interface to the most frequently used deep learning applications. Authors Jeremy Howard and Sylvain Gugger, the creators of fastai, show you how to train a model on a wide range of tasks using fastai and PyTorch. You’ll also dive progressively further into deep learning theory to gain a complete understanding of the algorithms behind the scenes. Train models in computer vision, natural language processing, tabular data, and collaborative filtering Learn the latest deep learning techniques that matter most in practice Improve accuracy, speed, and reliability by understanding how deep learning models work Discover how to turn your models into web applications Implement deep learning algorithms from scratch Consider the ethical implications of your work Gain insight from the foreword by PyTorch cofounder, Soumith Chintala
For more than 40 years, Computerworld has been the leading source of technology news and information for IT influencers worldwide. Computerworld's award-winning Web site (Computerworld.com), twice-monthly publication, focused conference series and custom research form the hub of the world's largest global IT media network.
This textbook gives a complete and modern introduction to mathematical logic. The author uses contemporary notation, conventions, and perspectives throughout, and emphasizes interactions with the rest of mathematics. In addition to covering the basic concepts of mathematical logic and the fundamental material on completeness, compactness, and incompleteness, it devotes significant space to thorough introductions to the pillars of the modern subject: model theory, set theory, and computability. Requiring only a modest background of undergraduate mathematics, the text can be readily adapted for a variety of one- or two-semester courses at the upper-undergraduate or beginning-graduate level. Numerous examples reinforce the key ideas and illustrate their applications, and a wealth of classroom-tested exercises serve to consolidate readers' understanding. Comprehensive and engaging, this book offers a fresh approach to this enduringly fascinating and important subject.