EBookClubs

Read Books & Download eBooks Full Online

EBookClubs

Read Books & Download eBooks Full Online

Book Etudes for Programmers

Download or read book Etudes for Programmers written by Charles Wetherell and published by Prentice Hall. This book was released on 1978 with total page 220 pages. Available in PDF, EPUB and Kindle. Book excerpt: A collection of large—scale problems for “learning by doing.” With detailed and careful analysis of the real world situations surrounding common programming problems. -- Back cover.

Book Invent Your Own Computer Games with Python  4th Edition

Download or read book Invent Your Own Computer Games with Python 4th Edition written by Al Sweigart and published by No Starch Press. This book was released on 2016-12-16 with total page 377 pages. Available in PDF, EPUB and Kindle. Book excerpt: Invent Your Own Computer Games with Python will teach you how to make computer games using the popular Python programming language—even if you’ve never programmed before! Begin by building classic games like Hangman, Guess the Number, and Tic-Tac-Toe, and then work your way up to more advanced games, like a text-based treasure hunting game and an animated collision-dodging game with sound effects. Along the way, you’ll learn key programming and math concepts that will help you take your game programming to the next level. Learn how to: –Combine loops, variables, and flow control statements into real working programs –Choose the right data structures for the job, such as lists, dictionaries, and tuples –Add graphics and animation to your games with the pygame module –Handle keyboard and mouse input –Program simple artificial intelligence so you can play against the computer –Use cryptography to convert text messages into secret code –Debug your programs and find common errors As you work through each game, you’ll build a solid foundation in Python and an understanding of computer science fundamentals. What new game will you create with the power of Python? The projects in this book are compatible with Python 3.

Book Learn to Program

    Book Details:
  • Author : Chris Pine
  • Publisher : Pragmatic Bookshelf
  • Release : 2021-06-17
  • ISBN : 1680508725
  • Pages : 317 pages

Download or read book Learn to Program written by Chris Pine and published by Pragmatic Bookshelf. This book was released on 2021-06-17 with total page 317 pages. Available in PDF, EPUB and Kindle. Book excerpt: It's easier to learn how to program a computer than it has ever been before. Now everyone can learn to write programs for themselves - no previous experience is necessary. Chris Pine takes a thorough, but lighthearted approach that teaches you the fundamentals of computer programming, with a minimum of fuss or bother. Whether you are interested in a new hobby or a new career, this book is your doorway into the world of programming. Computers are everywhere, and being able to program them is more important than it has ever been. But since most books on programming are written for other programmers, it can be hard to break in. At least it used to be. Chris Pine will teach you how to program. You'll learn to use your computer better, to get it to do what you want it to do. Starting with small, simple one-line programs to calculate your age in seconds, you'll see how to write interactive programs, to use APIs to fetch live data from the internet, to rename your photos from your digital camera, and more. You'll learn the same technology used to drive modern dynamic websites and large, professional applications. Whether you are looking for a fun new hobby or are interested in entering the tech world as a professional, this book gives you a solid foundation in programming. Chris teaches the basics, but also shows you how to think like a programmer. You'll learn through tons of examples, and through programming challenges throughout the book. When you finish, you'll know how and where to learn more - you'll be on your way. What You Need: All you need to learn how to program is a computer (Windows, macOS, or Linux) and an internet connection. Chris Pine will lead you through setting set up with the software you will need to start writing programs of your own.

Book Ultralearning

Download or read book Ultralearning written by Scott Young and published by HarperCollins. This book was released on 2019-08-06 with total page 304 pages. Available in PDF, EPUB and Kindle. Book excerpt: Now a Wall Street Journal bestseller. Learn a new talent, stay relevant, reinvent yourself, and adapt to whatever the workplace throws your way. Ultralearning offers nine principles to master hard skills quickly. This is the essential guide to future-proof your career and maximize your competitive advantage through self-education. In these tumultuous times of economic and technological change, staying ahead depends on continual self-education—a lifelong mastery of fresh ideas, subjects, and skills. If you want to accomplish more and stand apart from everyone else, you need to become an ultralearner. The challenge of learning new skills is that you think you already know how best to learn, as you did as a student, so you rerun old routines and old ways of solving problems. To counter that, Ultralearning offers powerful strategies to break you out of those mental ruts and introduces new training methods to help you push through to higher levels of retention. Scott H. Young incorporates the latest research about the most effective learning methods and the stories of other ultralearners like himself—among them Benjamin Franklin, chess grandmaster Judit Polgár, and Nobel laureate physicist Richard Feynman, as well as a host of others, such as little-known modern polymath Nigel Richards, who won the French World Scrabble Championship—without knowing French. Young documents the methods he and others have used to acquire knowledge and shows that, far from being an obscure skill limited to aggressive autodidacts, ultralearning is a powerful tool anyone can use to improve their career, studies, and life. Ultralearning explores this fascinating subculture, shares a proven framework for a successful ultralearning project, and offers insights into how you can organize and exe - cute a plan to learn anything deeply and quickly, without teachers or budget-busting tuition costs. Whether the goal is to be fluent in a language (or ten languages), earn the equivalent of a college degree in a fraction of the time, or master multiple tools to build a product or business from the ground up, the principles in Ultralearning will guide you to success.

Book How to Design Programs  second edition

Download or read book How to Design Programs second edition written by Matthias Felleisen and published by MIT Press. This book was released on 2018-05-25 with total page 793 pages. Available in PDF, EPUB and Kindle. Book excerpt: A completely revised edition, offering new design recipes for interactive programs and support for images as plain values, testing, event-driven programming, and even distributed programming. This introduction to programming places computer science at the core of a liberal arts education. Unlike other introductory books, it focuses on the program design process, presenting program design guidelines that show the reader how to analyze a problem statement, how to formulate concise goals, how to make up examples, how to develop an outline of the solution, how to finish the program, and how to test it. Because learning to design programs is about the study of principles and the acquisition of transferable skills, the text does not use an off-the-shelf industrial language but presents a tailor-made teaching language. For the same reason, it offers DrRacket, a programming environment for novices that supports playful, feedback-oriented learning. The environment grows with readers as they master the material in the book until it supports a full-fledged language for the whole spectrum of programming tasks. This second edition has been completely revised. While the book continues to teach a systematic approach to program design, the second edition introduces different design recipes for interactive programs with graphical interfaces and batch programs. It also enriches its design recipes for functions with numerous new hints. Finally, the teaching languages and their IDE now come with support for images as plain values, testing, event-driven programming, and even distributed programming.

Book Programming Machine Learning

Download or read book Programming Machine Learning written by Paolo Perrotta and published by Pragmatic Bookshelf. This book was released on 2020-03-31 with total page 437 pages. Available in PDF, EPUB and Kindle. Book excerpt: You've decided to tackle machine learning - because you're job hunting, embarking on a new project, or just think self-driving cars are cool. But where to start? It's easy to be intimidated, even as a software developer. The good news is that it doesn't have to be that hard. Master machine learning by writing code one line at a time, from simple learning programs all the way to a true deep learning system. Tackle the hard topics by breaking them down so they're easier to understand, and build your confidence by getting your hands dirty. Peel away the obscurities of machine learning, starting from scratch and going all the way to deep learning. Machine learning can be intimidating, with its reliance on math and algorithms that most programmers don't encounter in their regular work. Take a hands-on approach, writing the Python code yourself, without any libraries to obscure what's really going on. Iterate on your design, and add layers of complexity as you go. Build an image recognition application from scratch with supervised learning. Predict the future with linear regression. Dive into gradient descent, a fundamental algorithm that drives most of machine learning. Create perceptrons to classify data. Build neural networks to tackle more complex and sophisticated data sets. Train and refine those networks with backpropagation and batching. Layer the neural networks, eliminate overfitting, and add convolution to transform your neural network into a true deep learning system. Start from the beginning and code your way to machine learning mastery. What You Need: The examples in this book are written in Python, but don't worry if you don't know this language: you'll pick up all the Python you need very quickly. Apart from that, you'll only need your computer, and your code-adept brain.

Book Learning to Program

    Book Details:
  • Author : Steven Foote
  • Publisher : Pearson Education
  • Release : 2014
  • ISBN : 0789753391
  • Pages : 336 pages

Download or read book Learning to Program written by Steven Foote and published by Pearson Education. This book was released on 2014 with total page 336 pages. Available in PDF, EPUB and Kindle. Book excerpt: Learning to Program will help students build a solid foundation in programming that can prepare them to achieve just about any programming goal. Whether they want to become a professional software programmer, learn how to more effectively communicate with programmers, or are just curious about how programming works, this book is a great first step in helping to get there.

Book All of Programming

    Book Details:
  • Author : Andrew Hilton
  • Publisher : Bracy and Hilton
  • Release : 2019-07-02
  • ISBN : 0996718214
  • Pages : 765 pages

Download or read book All of Programming written by Andrew Hilton and published by Bracy and Hilton. This book was released on 2019-07-02 with total page 765 pages. Available in PDF, EPUB and Kindle. Book excerpt: All of Programming provides a platform for instructors to design courses which properly place their focus on the core fundamentals of programming, or to let a motivated student learn these skills independently. A student who masters the material in this book will not just be a competent C programmer, but also a competent programmer. We teach students how to solve programming problems with a 7-step approach centered on thinking about how to develop an algorithm. We also teach students to deeply understand how the code works by teaching students how to execute the code by hand. This is Edition 1 (the second edition, as C programmers count from 0). It fixes a variety of formatting issues that arose from epub conversion, most notably practice exercises are now available in flowing text mode.

Book Connected Code

    Book Details:
  • Author : Yasmin B. Kafai
  • Publisher : MIT Press
  • Release : 2016-09-02
  • ISBN : 026252967X
  • Pages : 200 pages

Download or read book Connected Code written by Yasmin B. Kafai and published by MIT Press. This book was released on 2016-09-02 with total page 200 pages. Available in PDF, EPUB and Kindle. Book excerpt: Why every child needs to learn to code: the shift from “computational thinking” to computational participation. Coding, once considered an arcane craft practiced by solitary techies, is now recognized by educators and theorists as a crucial skill, even a new literacy, for all children. Programming is often promoted in K-12 schools as a way to encourage “computational thinking”—which has now become the umbrella term for understanding what computer science has to contribute to reasoning and communicating in an ever-increasingly digital world. In Connected Code, Yasmin Kafai and Quinn Burke argue that although computational thinking represents an excellent starting point, the broader conception of “computational participation” better captures the twenty-first-century reality. Computational participation moves beyond the individual to focus on wider social networks and a DIY culture of digital “making.” Kafai and Burke describe contemporary examples of computational participation: students who code not for the sake of coding but to create games, stories, and animations to share; the emergence of youth programming communities; the practices and ethical challenges of remixing (rather than starting from scratch); and the move beyond stationary screens to programmable toys, tools, and textiles.

Book Deep Learning for Coders with fastai and PyTorch

Download or read book Deep Learning for Coders with fastai and PyTorch written by Jeremy Howard and published by O'Reilly Media. This book was released on 2020-06-29 with total page 624 pages. Available in PDF, EPUB and Kindle. Book excerpt: 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

Book Crafting Interpreters

    Book Details:
  • Author : Robert Nystrom
  • Publisher : Genever Benning
  • Release : 2021-07-27
  • ISBN : 0990582949
  • Pages : 1021 pages

Download or read book Crafting Interpreters written by Robert Nystrom and published by Genever Benning. This book was released on 2021-07-27 with total page 1021 pages. Available in PDF, EPUB and Kindle. Book excerpt: Despite using them every day, most software engineers know little about how programming languages are designed and implemented. For many, their only experience with that corner of computer science was a terrifying "compilers" class that they suffered through in undergrad and tried to blot from their memory as soon as they had scribbled their last NFA to DFA conversion on the final exam. That fearsome reputation belies a field that is rich with useful techniques and not so difficult as some of its practitioners might have you believe. A better understanding of how programming languages are built will make you a stronger software engineer and teach you concepts and data structures you'll use the rest of your coding days. You might even have fun. This book teaches you everything you need to know to implement a full-featured, efficient scripting language. You'll learn both high-level concepts around parsing and semantics and gritty details like bytecode representation and garbage collection. Your brain will light up with new ideas, and your hands will get dirty and calloused. Starting from main(), you will build a language that features rich syntax, dynamic typing, garbage collection, lexical scope, first-class functions, closures, classes, and inheritance. All packed into a few thousand lines of clean, fast code that you thoroughly understand because you wrote each one yourself.

Book Learn Programming

    Book Details:
  • Author : Antti Salonen
  • Publisher : Createspace Independent Publishing Platform
  • Release : 2018-08-17
  • ISBN : 9781722834920
  • Pages : 490 pages

Download or read book Learn Programming written by Antti Salonen and published by Createspace Independent Publishing Platform. This book was released on 2018-08-17 with total page 490 pages. Available in PDF, EPUB and Kindle. Book excerpt: This book is aimed at readers who are interested in software development but have very little to no prior experience. The book focuses on teaching the core principles around software development. It uses several technologies to this goal (e.g. C, Python, JavaScript, HTML, etc.) but is not a book about the technologies themselves. The reader will learn the basics (or in some cases more) of various technologies along the way, but the focus is on building a foundation for software development. The book is your guided tour through the programming jungle, aiming to provide some clarity and build the foundation for software development skills. The book web site is https: //progbook.org/

Book Computer Programming for Beginners

Download or read book Computer Programming for Beginners written by Kevin Cooper and published by Independently Published. This book was released on 2019-12-12 with total page 635 pages. Available in PDF, EPUB and Kindle. Book excerpt: Are you ready to chart a new course in your programming career? Are you ready but don't know where to begin? Do not worry, because these books give you the fundamentals of programming languages. This guide is what you need to learn to program easily and quickly from an expert with over 10+ years' experience. All you need is a bit of patience and planning. The books cover topics such as: The Complete Introduction Guide for Learning the Basics of C, C#, C++, SQL, JAVA, JAVASCRIPT, PHP, and PYTHON The concepts of different programming languages Variables of the different programming language Where the language is applicable in our today world What are the things you need to know about artificial intelligence? How you can start with machine learning and Why you need to understand the fundamentals; the jars of machine learning and how many they are; what the roadmaps to machine learning are What the types of machine learning are, and what their impacts are to amplify various elements of business operations In addition a book explains Python in detail with the help of detailed coding examples that are usually not available in Python beginner-level books and that will make your journey easier. Python is a robust programming language and supports both functional and object-oriented concepts. We took a lot of care and we tried to explain a lot of concepts that are important for the success of an entry-level programmer. Along with all these basic concepts, we have tried to give some practical examples which can help the reader understand the concepts better. We will discuss in detail the best parts of the book: Brief history of Python and different development environments available Detailed reading about conditionals and loops along with programming code Functions, modules, and object-oriented programming in detail The books are well arranged for easy understanding. Don't forget to brush up your knowledge by going through the exercise pages. So what are you waiting for? Let the programming begin! Invest in your future! Click the "Buy Now" button at the top of this page and get your copy of "Computer Programming for Beginners" now!

Book Get Programming

    Book Details:
  • Author : Ana Bell
  • Publisher : Simon and Schuster
  • Release : 2018-03-27
  • ISBN : 1638355924
  • Pages : 645 pages

Download or read book Get Programming written by Ana Bell and published by Simon and Schuster. This book was released on 2018-03-27 with total page 645 pages. Available in PDF, EPUB and Kindle. Book excerpt: Get Programming: Learn to code with Python teaches you the basics of computer programming using the Python language. In this exercise-driven book, you'll be doing something on nearly every page as you work through 38 compact lessons and 7 engaging capstone projects. By exploring the crystal-clear illustrations, exercises that check your understanding as you go, and tips for what to try next, you'll start thinking like a programmer in no time. This book works perfectly alongside our video course Get Programming with Python in Motion, available exclusively at Manning.com: www.manning.com/livevideo/get-programming-with-python-in-motion Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications. What's Inside Programming skills you can use in any language Learn to code—no experience required Learn Python, the language for beginners Dozens of exercises and examples help you learn by doing About the Reader No prior programming experience needed. Table of Contents LEARNING HOW TO PROGRAM Lesson 1 - Why should you learn how to program? Lesson 2 - Basic principles of learning a programming language UNIT 1 - VARIABLES, TYPES, EXPRESSIONS, AND STATEMENTS Lesson 3 - Introducing Python: a programming language Lesson 4 - Variables and expressions: giving names and values to things Lesson 5 - Object types and statements of code 46 Lesson 6 - Capstone project: your first Python program-convert hours to minutes UNIT 2 - STRINGS, TUPLES, AND INTERACTING WITH THE USER Lesson 7 - Introducing string objects: sequences of characters Lesson 8 - Advanced string operations Lesson 9 - Simple error messages Lesson 10 - Tuple objects: sequences of any kind of object Lesson 11 - Interacting with the user Lesson 12 - Capstone project: name mashup UNIT 3 - MAKING DECISIONS IN YOUR PROGRAMS Lesson 13 - Introducing decisions in programs Lesson 14 - Making more-complicated decisions Lesson 15 - Capstone project: choose your own adventure UNIT 4 - REPEATING TASKS Lesson 16 - Repeating tasks with loops Lesson 17 - Customizing loops Lesson 18 - Repeating tasks while conditions hold Lesson 19 - Capstone project: Scrabble, Art Edition UNIT 5 - ORGANIZING YOUR CODE INTO REUSABLE BLOCKS Lesson 20 - Building programs to last Lesson 21 - Achieving modularity and abstraction with functions Lesson 22 - Advanced operations with functions Lesson 23 - Capstone project: analyze your friends UNIT 6 - WORKING WITH MUTABLE DATA TYPES Lesson 24 - Mutable and immutable objects Lesson 25 - Working with lists Lesson 26 - Advanced operations with lists Lesson 27 - Dictionaries as maps between objects Lesson 28 - Aliasing and copying lists and dictionaries Lesson 29 - Capstone project: document similarity UNIT 7 - MAKING YOUR OWN OBJECT TYPES BY USING OBJECT-ORIENTED PROGRAMMING Lesson 30 - Making your own object types Lesson 31 - Creating a class for an object type Lesson 32 - Working with your own object types Lesson 33 - Customizing classes Lesson 34 - Capstone project: card game UNIT 8 - USING LIBRARIES TO ENHANCE YOUR PROGRAMS Lesson 35 - Useful libraries Lesson 36 - Testing and debugging your programs Lesson 37 - A library for graphical user interfaces Lesson 38 - Capstone project: game of tag Appendix A - Answers to lesson exercises Appendix B - Python cheat sheet Appendix C - Interesting Python libraries

Book C  Smorgasbord

    Book Details:
  • Author : Filip Ekberg
  • Publisher : CreateSpace
  • Release : 2012-07-30
  • ISBN : 9781468152104
  • Pages : 278 pages

Download or read book C Smorgasbord written by Filip Ekberg and published by CreateSpace. This book was released on 2012-07-30 with total page 278 pages. Available in PDF, EPUB and Kindle. Book excerpt: C# Smorgasbord covers a vast variety of different technologies, patterns and best practices that any C# developer should master. Looking at everything from testing strategies to compilation as a service and how to do really advance things in runtime; you get a great sense of what you as a developer can do. By taking his personal views and his personal experience, Filip digs into each subject with a personal touch and by having real world problems at hand; we can look at how these problems could be tackled. No matter if you are an experienced .NET developer, or a beginner, you will most certainly find a lot of interesting things in this book. The book covers important patterns and technologies that any developer would benefit from mastering. Explore your possibilities Improve your skills Be Inspired to challenge yourself Is there a digital version(ebook)? Yes there is! Everyone that purchases the printed copy will get the ebook for free. Instructions for how to receive the ebook is inside the printed book. Table of Contents Introduction to Parallel Extensions Productivity and Quality with Unit Testing Is upgrading your code a productive step? Creating a challenge out of the trivial tasks Asynchronous programming with async and await Dynamic programming Increase readability with anonymous types and methods Exploring Reflection Creating things at runtime Introducing Roslyn Adapting to Inversion of Control Are you Mocking me? Who this book is for This book is for those developers that find themselves wanting to explore C# but do not know how or where to start looking. Each chapter contains hands on code examples that can be compiled and tested on your machine. Although each chapter has code samples, you do not need to use a computer to appreciate the content of this book. The code samples are divided into smaller portions of code, so that you can follow each example and the thoughts around it in an easy way. No matter if you are an experienced .NET developer or a beginner, you will most certainly find a lot of interesting things in this book. The book covers important patterns and technologies that any developer would benefit from mastering. It is not required that you have worked with C# before but being familiar to the fundamentals in any of the .NET programming languages will help you on the way. If you are just now starting to learn C#, this can be a great way for you to learn about different techniques, best practices, patterns and how to think in certain scenarios. But if you have worked with C# development for many years, this book can give you a refreshing view on how to always improve and challenge yourself into becoming a better software engineer.

Book Computer Programming for Absolute Beginners

Download or read book Computer Programming for Absolute Beginners written by Joakim Wassberg and published by Packt Publishing Ltd. This book was released on 2020-07-31 with total page 430 pages. Available in PDF, EPUB and Kindle. Book excerpt: Get to grips with the building blocks of programming languages and get started on your programming journey without a computer science degree Key FeaturesUnderstand the fundamentals of a computer program and apply the concepts you learn to different programming languagesGain the confidence to write your first computer programExplore tips, techniques, and best practices to start coding like a professional programmerBook Description Learning how to code has many advantages, and gaining the right programming skills can have a massive impact on what you can do with your current skill set and the way you advance in your career. This book will be your guide to learning computer programming easily, helping you overcome the difficulties in understanding the major constructs in any mainstream programming language. Computer Programming for Absolute Beginners starts by taking you through the building blocks of any programming language with thorough explanations and relevant examples in pseudocode. You'll understand the relationship between computer programs and programming languages and how code is executed on the computer. The book then focuses on the different types of applications that you can create with your programming knowledge. You'll delve into programming constructs, learning all about statements, operators, variables, and data types. As you advance, you'll see how to control the flow of your programs using control structures and reuse your code using functions. Finally, you'll explore best practices that will help you write code like a pro. By the end of this book, you'll be prepared to learn any programming language and take control of your career by adding coding to your skill set. What you will learnGet to grips with basic programming language concepts such as variables, loops, selection and functionsUnderstand what a program is and how the computer executes itExplore different programming languages and learn about the relationship between source code and executable codeSolve problems using various paradigms such as procedural programming, object oriented programming, and functional programmingWrite high-quality code using several coding conventions and best practicesBecome well-versed with how to track and fix bugs in your programsWho this book is for This book is for beginners who have never programmed before and are looking to enter the world of programming. This includes anyone who is about to start studying programming and wants a head start, or simply wants to learn how to program on their own.

Book Learn to Code by Solving Problems

Download or read book Learn to Code by Solving Problems written by Daniel Zingaro and published by No Starch Press. This book was released on 2021-06-29 with total page 392 pages. Available in PDF, EPUB and Kindle. Book excerpt: Learn to Code by Solving Problems is a practical introduction to programming using Python. It uses coding-competition challenges to teach you the mechanics of coding and how to think like a savvy programmer. Computers are capable of solving almost any problem when given the right instructions. That’s where programming comes in. This beginner’s book will have you writing Python programs right away. You’ll solve interesting problems drawn from real coding competitions and build your programming skills as you go. Every chapter presents problems from coding challenge websites, where online judges test your solutions and provide targeted feedback. As you practice using core Python features, functions, and techniques, you’ll develop a clear understanding of data structures, algorithms, and other programming basics. Bonus exercises invite you to explore new concepts on your own, and multiple-choice questions encourage you to think about how each piece of code works. You’ll learn how to: Run Python code, work with strings, and use variables Write programs that make decisions Make code more efficient with while and for loops Use Python sets, lists, and dictionaries to organize, sort, and search data Design programs using functions and top-down design Create complete-search algorithms and use Big O notation to design more efficient code By the end of the book, you’ll not only be proficient in Python, but you’ll also understand how to think through problems and tackle them with code. Programming languages come and go, but this book gives you the lasting foundation you need to start thinking like a programmer.