Programming the SIMPL Way - Second Edition

Download Programming the SIMPL Way - Second Edition PDF Online Free

Author :
Publisher : Lulu.com
ISBN 13 : 0557471311
Total Pages : 414 pages
Book Rating : 4.5/5 (574 download)

DOWNLOAD NOW!


Book Synopsis Programming the SIMPL Way - Second Edition by : John Collins

Download or read book Programming the SIMPL Way - Second Edition written by John Collins and published by Lulu.com. This book was released on 2010-05-31 with total page 414 pages. Available in PDF, EPUB and Kindle. Book excerpt: At its most fundamental, SIMPL is a set of library functions which allow the passing of encapsulated messages between cooperating processes. These processes may be local to one host computer or spread over a network.On another level, SIMPL is an active open source project which began over a decade ago. Over the years this project has accumulated an extensive body of sample code and extensions. Currently SIMPL libraries are supported for C/C++, Python, JAVA and Tcl programming languages. A sample Sudoku puzzle solver project illustrates all these in a single application.

Learn C Programming

Download Learn C Programming PDF Online Free

Author :
Publisher : Packt Publishing Ltd
ISBN 13 : 1789348633
Total Pages : 624 pages
Book Rating : 4.7/5 (893 download)

DOWNLOAD NOW!


Book Synopsis Learn C Programming by : Jeff Szuhay

Download or read book Learn C Programming written by Jeff Szuhay and published by Packt Publishing Ltd. This book was released on 2020-06-26 with total page 624 pages. Available in PDF, EPUB and Kindle. Book excerpt: Get started with writing simple programs in C while learning the skills that will help you work with practically any programming language Key FeaturesLearn essential C concepts such as variables, data structures, functions, loops, arrays, and pointersGet to grips with the core programming aspects that form the base of many modern programming languagesExplore the expressiveness and versatility of the C language with the help of sample programsBook Description C is a powerful general-purpose programming language that is excellent for beginners to learn. This book will introduce you to computer programming and software development using C. If you're an experienced developer, this book will help you to become familiar with the C programming language. This C programming book takes you through basic programming concepts and shows you how to implement them in C. Throughout the book, you'll create and run programs that make use of one or more C concepts, such as program structure with functions, data types, and conditional statements. You'll also see how to use looping and iteration, arrays, pointers, and strings. As you make progress, you'll cover code documentation, testing and validation methods, basic input/output, and how to write complete programs in C. By the end of the book, you'll have developed basic programming skills in C, that you can apply to other programming languages and will develop a solid foundation for you to advance as a programmer. What you will learnUnderstand fundamental programming concepts and implement them in CWrite working programs with an emphasis on code indentation and readabilityBreak existing programs intentionally and learn how to debug codeAdopt good coding practices and develop a clean coding styleExplore general programming concepts that are applicable to more advanced projectsDiscover how you can use building blocks to make more complex and interesting programsUse C Standard Library functions and understand why doing this is desirableWho this book is for This book is written for two very diverse audiences. If you're an absolute beginner who only has basic familiarity with operating a computer, this book will help you learn the most fundamental concepts and practices you need to know to become a successful C programmer. If you're an experienced programmer, you'll find the full range of C syntax as well as common C idioms. You can skim through the explanations and focus primarily on the source code provided.

Processing, second edition

Download Processing, second edition PDF Online Free

Author :
Publisher : MIT Press
ISBN 13 : 0262321866
Total Pages : 662 pages
Book Rating : 4.2/5 (623 download)

DOWNLOAD NOW!


Book Synopsis Processing, second edition by : Casey Reas

Download or read book Processing, second edition written by Casey Reas and published by MIT Press. This book was released on 2014-12-26 with total page 662 pages. Available in PDF, EPUB and Kindle. Book excerpt: The new edition of an introduction to computer programming within the context of the visual arts, using the open-source programming language Processing; thoroughly updated throughout. The visual arts are rapidly changing as media moves into the web, mobile devices, and architecture. When designers and artists learn the basics of writing software, they develop a new form of literacy that enables them to create new media for the present, and to imagine future media that are beyond the capacities of current software tools. This book introduces this new literacy by teaching computer programming within the context of the visual arts. It offers a comprehensive reference and text for Processing (www.processing.org), an open-source programming language that can be used by students, artists, designers, architects, researchers, and anyone who wants to program images, animation, and interactivity. Written by Processing's cofounders, the book offers a definitive reference for students and professionals. Tutorial chapters make up the bulk of the book; advanced professional projects from such domains as animation, performance, and installation are discussed in interviews with their creators. This second edition has been thoroughly updated. It is the first book to offer in-depth coverage of Processing 2.0 and 3.0, and all examples have been updated for the new syntax. Every chapter has been revised, and new chapters introduce new ways to work with data and geometry. New “synthesis” chapters offer discussion and worked examples of such topics as sketching with code, modularity, and algorithms. New interviews have been added that cover a wider range of projects. “Extension” chapters are now offered online so they can be updated to keep pace with technological developments in such fields as computer vision and electronics. Interviews SUE.C, Larry Cuba, Mark Hansen, Lynn Hershman Leeson, Jürg Lehni, LettError, Golan Levin and Zachary Lieberman, Benjamin Maus, Manfred Mohr, Ash Nehru, Josh On, Bob Sabiston, Jennifer Steinkamp, Jared Tarbell, Steph Thirion, Robert Winter

Programming the Raspberry Pi: Getting Started with Python

Download Programming the Raspberry Pi: Getting Started with Python PDF Online Free

Author :
Publisher : McGraw Hill Professional
ISBN 13 : 0071807845
Total Pages : 193 pages
Book Rating : 4.0/5 (718 download)

DOWNLOAD NOW!


Book Synopsis Programming the Raspberry Pi: Getting Started with Python by : Simon Monk

Download or read book Programming the Raspberry Pi: Getting Started with Python written by Simon Monk and published by McGraw Hill Professional. This book was released on 2012-11-23 with total page 193 pages. Available in PDF, EPUB and Kindle. Book excerpt: Program your own Raspberry Pi projects Create innovative programs and fun games on your tiny yet powerful Raspberry Pi. In this book, electronics guru Simon Monk explains the basics of Raspberry Pi application development, while providing hands-on examples and ready-to-use scripts. See how to set up hardware and software, write and debug applications, create user-friendly interfaces, and control external electronics. Do-it-yourself projects include a hangman game, an LED clock, and a software-controlled roving robot. Boot up and configure your Raspberry Pi Navigate files, folders, and menus Create Python programs using the IDLE editor Work with strings, lists, and functions Use and write your own libraries, modules, and classes Add Web features to your programs Develop interactive games with Pygame Interface with devices through the GPIO port Build a Raspberry Pi Robot and LED Clock Build professional-quality GUIs using Tkinter

Scratch Programming

Download Scratch Programming PDF Online Free

Author :
Publisher :
ISBN 13 : 9781840786125
Total Pages : 0 pages
Book Rating : 4.7/5 (861 download)

DOWNLOAD NOW!


Book Synopsis Scratch Programming by : Sean McManus

Download or read book Scratch Programming written by Sean McManus and published by . This book was released on 2013 with total page 0 pages. Available in PDF, EPUB and Kindle. Book excerpt: An introduction to the programming language helps readers create computer games and animations.

Scratch Programming in easy steps, 2nd edition

Download Scratch Programming in easy steps, 2nd edition PDF Online Free

Author :
Publisher : In Easy Steps
ISBN 13 : 184078900X
Total Pages : 455 pages
Book Rating : 4.8/5 (47 download)

DOWNLOAD NOW!


Book Synopsis Scratch Programming in easy steps, 2nd edition by : Sean McManus

Download or read book Scratch Programming in easy steps, 2nd edition written by Sean McManus and published by In Easy Steps. This book was released on 2019-12-12 with total page 455 pages. Available in PDF, EPUB and Kindle. Book excerpt: The Scratch programming language is widely used in schools and on the Raspberry Pi. Its drag-and-drop commands make it an ideal language for all ages to learn to program. And this popular book, Scratch Programming in easy steps, now fully updated for Scratch 3, is packed with ideas and games that illustrate what’s possible with Scratch. Scratch makes it easy to create your own games, animations, music, art or applications. It’s the perfect way to learn programming because it takes away a lot of the complexity. That means you can focus on having great ideas and bringing them to life. With Scratch Programming in easy steps, 2nd edition as your companion, you’ll learn how to: · Build games that require skill, knowledge or quick fingers · Add music · Create eye-catching visual effects · Keep score · Avoid common pitfalls and learn how to fix bugs Scratch Programming in easy steps, 2nd edition will help you to get creative and become a super Scratcher! Table of Contents: 1. Introducing Scratch 2. Drawing with Scratch 3. Spiral Rider 4. Super Dodgeball 5. Space Opera 6. Quiz Break 7. Evil Robot 8. Space Swarm 9. Physical computing with Scratch 10. Seven shorties 11. Making and sharing projects

Project Management the Agile Way, Second Edition

Download Project Management the Agile Way, Second Edition PDF Online Free

Author :
Publisher : J. Ross Publishing
ISBN 13 : 1604271159
Total Pages : 392 pages
Book Rating : 4.6/5 (42 download)

DOWNLOAD NOW!


Book Synopsis Project Management the Agile Way, Second Edition by : John C. Goodpasture

Download or read book Project Management the Agile Way, Second Edition written by John C. Goodpasture and published by J. Ross Publishing. This book was released on 2015-11-01 with total page 392 pages. Available in PDF, EPUB and Kindle. Book excerpt: “…a well written and content rich book. From a teacher's perspective, using this book in an advanced project management seminar challenges students to understand the application of these concepts.” —Alexander Walton, PMP, IT consultant to the University of California at Berkeley Widely acclaimed as one of the top agile books in its first edition, Project Management the Agile Way has now been updated and redesigned by popular demand. This second edition is in a modular format to facilitate training and advanced course instruction, and provides new coverage of agile, such as hybrid agile methods, the latest public sector practices, and a chapter dedicated to transitioning to agile. It discusses the “grand bargain” between project management and business; the shift in dominance from plans to product and from input to output; and introduces new concepts such as return on benefit. Experienced practitioners and students that want to learn how to make agile work effectively in the enterprise should read this book. Individuals preparing for the PMI Agile Certified Practitioner (PMI-ACP)®examination, and training providers developing courses, will find this second edition quite helpful.

C# Programming in easy steps, 2nd edition

Download C# Programming in easy steps, 2nd edition PDF Online Free

Author :
Publisher : In Easy Steps
ISBN 13 : 1840789158
Total Pages : 372 pages
Book Rating : 4.8/5 (47 download)

DOWNLOAD NOW!


Book Synopsis C# Programming in easy steps, 2nd edition by : Mike McGrath

Download or read book C# Programming in easy steps, 2nd edition written by Mike McGrath and published by In Easy Steps. This book was released on 2020-05-04 with total page 372 pages. Available in PDF, EPUB and Kindle. Book excerpt: C# Programming in easy steps, 2nd edition will teach you to code applications, and demonstrates every aspect of the C# language you will need to produce professional programming results. Its examples provide clear syntax-highlighted code showing C# language basics including variables, arrays, logic, looping, methods, and classes. C# Programming in easy steps, 2nd edition begins by explaining how to install the free Visual Studio Community Edition, to create an environment in which you can quickly begin to create your own executable programs by copying the book's examples. It demonstrates all the C# language basics before moving on to provide examples of Object Oriented Programming. The book concludes by demonstrating how you can use your acquired knowledge to create graphic programs for traditional PC Desktop apps, and also as Universal apps for multiple devices. C# Programming in easy steps, 2nd edition has an easy-to-follow style that will appeal to: · Anyone who wants to begin programming in C# · The programmer who quickly wants to add C# to their skills set · The hobbyist who wants to begin creating apps for their own computer · The student, and to those seeking a career in computing, who need a fundamental understanding of C# programming Updated for Visual Studio 2019 Table of contents: 1. Getting started 2. Storing values 3. Performing operations 4. Making statements 5. Devising methods 6. Handling strings 7. Accessing files 8. Solving problems 9. Creating objects 10. Controlling events 11. Building an application 12. Targeting devices

Coding for Beginners in easy steps, 2nd edition

Download Coding for Beginners in easy steps, 2nd edition PDF Online Free

Author :
Publisher : In Easy Steps Limited
ISBN 13 : 1840789867
Total Pages : 358 pages
Book Rating : 4.8/5 (47 download)

DOWNLOAD NOW!


Book Synopsis Coding for Beginners in easy steps, 2nd edition by : Mike McGrath

Download or read book Coding for Beginners in easy steps, 2nd edition written by Mike McGrath and published by In Easy Steps Limited. This book was released on 2022-06-27 with total page 358 pages. Available in PDF, EPUB and Kindle. Book excerpt: Coding for Beginners in easy steps, 2nd edition will appeal to anyone, of any age, who wants to begin coding computer programs. Use this guide to help you quickly create a programming environment on your computer, then, in easy steps, learn how to: · Write Python code to create your programs · Store information in data structures · Control program flow using control structures · Create re-usable blocks of program code · Code powerful algorithms and classes for Object Oriented Programming (OOP) All features are illustrated using the Python language color-coding convention, and all code is available to download free – making it even easier! Includes comparison examples in C, C++ and Java to give you a rounded view of computer coding. Ideal for newcomers to programming, including youngsters needing to learn coding for the school curriculum – all in easy steps! Table of Contents 1. Getting Started 2. Saving Data 3. Performing Operations 4. Making Lists 5. Controlling Blocks 6. Creating Functions 7. Sorting Algorithms 8. Importing Libraries 9. Managing Text 10. Programming Objects 11. Building Interfaces 12. Developing Apps 13. Transferring Skills

Human Factors in Simple and Complex Systems, Second Edition

Download Human Factors in Simple and Complex Systems, Second Edition PDF Online Free

Author :
Publisher : CRC Press
ISBN 13 : 142006360X
Total Pages : 656 pages
Book Rating : 4.4/5 (2 download)

DOWNLOAD NOW!


Book Synopsis Human Factors in Simple and Complex Systems, Second Edition by : Robert W. Proctor

Download or read book Human Factors in Simple and Complex Systems, Second Edition written by Robert W. Proctor and published by CRC Press. This book was released on 2008-04-22 with total page 656 pages. Available in PDF, EPUB and Kindle. Book excerpt: In terms of simple and complex systems, it is a whole new world out there. At the initial publication of this book, fourteen years ago, the web was in its infancy, DVDs did not exist, cell phones were few and far between, and the information superhighway was just a blip upon the horizon. If you used the terms "social engineering," you were most likely a political scientist, and if you were "phishing" you might be listening to a rock band. The second edition of a bestseller, Human Factors in Simple and Complex Systems provides the necessary understanding of the breadth and depth of human factors issues that influence the design, implementation, and evaluation of products and systems. Emphasizing the close relationship between basic theory and application, the authors delineate a framework for the research process, present an integrated view of the current state of knowledge, and examine how these factors can be applied to system design. The new edition addresses such concepts as situation awareness and highlights topics of interest, with a special focus on computer applications and human-computer interaction. See what’s new in the Second Edition New topics, such as situational awareness, that capture the tremendous changes in human factors and ergonomics Tightly integrates basic research and application, strengthening the link between knowledge and practice Each chapter includes a separate box that discusses a topic of current interest related to human interaction with computers and recent technology Demonstrating a general approach to solving a broad range of system problems, the book provides coverage of the theoretical foundation on which the discipline of human factors is built. Structured around human information processing, it covers the full range of contemporary human factors and ergonomics, then shows you how to apply them.

Introduction to Programming Using Processing, Second Edition

Download Introduction to Programming Using Processing, Second Edition PDF Online Free

Author :
Publisher : Lulu.com
ISBN 13 : 1312079282
Total Pages : 506 pages
Book Rating : 4.3/5 (12 download)

DOWNLOAD NOW!


Book Synopsis Introduction to Programming Using Processing, Second Edition by : Mark Meysenburg

Download or read book Introduction to Programming Using Processing, Second Edition written by Mark Meysenburg and published by Lulu.com. This book was released on 2014-04-07 with total page 506 pages. Available in PDF, EPUB and Kindle. Book excerpt: Written in an informal, conversational, and humorous style, the second edition of Introduction to Programming Using Processing makes learning programming a fun experience. The freely-available Processing language is ideal for a first course in programming. The simple-to-access graphics and multimedia capabilities of the language let students develop eye-catching, animated programs, instead of traditional programs that print text to the console. The text takes a "classes-later" approach, focusing on basics, using objects, selection, iteration, topdown design, and arrays, before writing classes. Every example is presented in the context of the RADIS (Requirements / Analyze / Design / Implement / Support) framework, with considerable attention paid to design. Other positive habits, like good commenting practice and coding style, are emphasized as well.

Exploratory Programming for the Arts and Humanities, second edition

Download Exploratory Programming for the Arts and Humanities, second edition PDF Online Free

Author :
Publisher : MIT Press
ISBN 13 : 0262360764
Total Pages : 385 pages
Book Rating : 4.2/5 (623 download)

DOWNLOAD NOW!


Book Synopsis Exploratory Programming for the Arts and Humanities, second edition by : Nick Montfort

Download or read book Exploratory Programming for the Arts and Humanities, second edition written by Nick Montfort and published by MIT Press. This book was released on 2021-05-18 with total page 385 pages. Available in PDF, EPUB and Kindle. Book excerpt: A new edition of a book for anyone who wants to learn programming to explore and create, with exercises and projects to help readers learn by doing. This book introduces programming to readers involved with the arts and humanities; there are no prerequisites, and no previous knowledge of programming is assumed. Nick Montfort reveals programming to be not merely a technical exercise within given constraints but a tool for sketching, brainstorming, and inquiry. He emphasizes programming's exploratory potential--its facility to create new kinds of artworks and to probe data for new ideas. The book is designed to be read alongside the computer, allowing readers to program while making their way through the chapters. It offers practical exercises in writing and modifying code and outlines "free projects" that allow learners to pursue their own interests.

Technology Made Simple for the Technical Recruiter, Second Edition

Download Technology Made Simple for the Technical Recruiter, Second Edition PDF Online Free

Author :
Publisher : iUniverse
ISBN 13 : 1532064985
Total Pages : 225 pages
Book Rating : 4.5/5 (32 download)

DOWNLOAD NOW!


Book Synopsis Technology Made Simple for the Technical Recruiter, Second Edition by : Obi Ogbanufe

Download or read book Technology Made Simple for the Technical Recruiter, Second Edition written by Obi Ogbanufe and published by iUniverse. This book was released on 2019-04-27 with total page 225 pages. Available in PDF, EPUB and Kindle. Book excerpt: If you’re a technical recruiter who wants to keep your skills up to date in the competitive field of technical resource placement, you need a detailed guidebook to outpace competitors. This technical skills primer focuses on technology fundamentals—from basic programming terms to big data vocabulary, network lingo, operating system jargon, and other crucial skill sets. Topics covered include: •sample questions to ask candidates, •types of networks and operating systems, •software development strategies, •cloud systems administration and DevOps, •data science and database job roles, and •information security job roles. Armed with indispensable information, the alphabet soup of technology acronyms will no longer be intimidating, and you will be able to analyze client and candidate requirements with confidence. Written in clear and concise prose, Technology Made Simple for the Technical Recruiter is an invaluable resource for any technical recruiter.

Murach's Python Programming (2nd Edition)

Download Murach's Python Programming (2nd Edition) PDF Online Free

Author :
Publisher :
ISBN 13 : 9781943872749
Total Pages : 564 pages
Book Rating : 4.8/5 (727 download)

DOWNLOAD NOW!


Book Synopsis Murach's Python Programming (2nd Edition) by : Joel Murach

Download or read book Murach's Python Programming (2nd Edition) written by Joel Murach and published by . This book was released on 2021-04 with total page 564 pages. Available in PDF, EPUB and Kindle. Book excerpt: If you want to learn how to program but dont know where to start, this is the right book and the right language for you. From the first page, our self-paced approach will help you build competence and confidence in your programming skills. And Python is the best language ever for learning how to program because of its simplicity and breadthtwo features that are hard to find in a single language. But this isnt just a book for beginners! Our self-paced approach also works for experienced programmers, helping you learn Python faster and better than youve ever learned a language before. By the time youre through, you will have mastered the key Python skills that are needed on the job, including those for object-oriented, database, and GUI programming. To make all of this possible, section 1 presents an 8-chapter course that will get anyone off to a great start with Python. Section 2 builds on that base by presenting the other essential skills that every Python programmer should have. Section 3 shows you how to develop object-oriented programs, a critical skillset in todays world. And section 4 shows you how to apply all of the skills that youve already learned as you build database and GUI programs for the real world.

Agile Project Management in easy steps, 2nd edition

Download Agile Project Management in easy steps, 2nd edition PDF Online Free

Author :
Publisher : In Easy Steps
ISBN 13 : 1840787031
Total Pages : 355 pages
Book Rating : 4.8/5 (47 download)

DOWNLOAD NOW!


Book Synopsis Agile Project Management in easy steps, 2nd edition by : John Carroll

Download or read book Agile Project Management in easy steps, 2nd edition written by John Carroll and published by In Easy Steps. This book was released on 2015-07-29 with total page 355 pages. Available in PDF, EPUB and Kindle. Book excerpt: Agile Project Management in easy steps, now in its second edition, explains the key principles, techniques, and processes to ensure your agile project is a success. This edition of the book has been updated to reflect progress and refinement of agile methods over recent times. It explains the key principles, techniques and processes of agile project management, working through an entire project, explaining the main activities and deliverables including: Pre-project start-up and terms of referenceFeasibility assessment and the business caseEstablishing the foundations for successIterative development and the evolving solutionImplementation and post-project assessment It includes additional coverage of business analysis, user experience, feature-driven development and agile projects in large programmes and enterprises. An essential guide for anyone new to agile projects and a valuable source of inspiration for the more experienced. It also includes downloadable templates to get you started. Chapters: Agile ProjectsAgile Project ManagementScrumDSDMExtreme ProgrammingLean DevelopmentFeature-Driven DevelopmentGetting StartedFoundationsDevelopmentDeploymentPost ProjectAgile Projects at Scale

Release It!

Download Release It! PDF Online Free

Author :
Publisher : Pragmatic Bookshelf
ISBN 13 : 1680504525
Total Pages : 490 pages
Book Rating : 4.6/5 (85 download)

DOWNLOAD NOW!


Book Synopsis Release It! by : Michael T. Nygard

Download or read book Release It! written by Michael T. Nygard and published by Pragmatic Bookshelf. This book was released on 2018-01-08 with total page 490 pages. Available in PDF, EPUB and Kindle. Book excerpt: A single dramatic software failure can cost a company millions of dollars - but can be avoided with simple changes to design and architecture. This new edition of the best-selling industry standard shows you how to create systems that run longer, with fewer failures, and recover better when bad things happen. New coverage includes DevOps, microservices, and cloud-native architecture. Stability antipatterns have grown to include systemic problems in large-scale systems. This is a must-have pragmatic guide to engineering for production systems. If you're a software developer, and you don't want to get alerts every night for the rest of your life, help is here. With a combination of case studies about huge losses - lost revenue, lost reputation, lost time, lost opportunity - and practical, down-to-earth advice that was all gained through painful experience, this book helps you avoid the pitfalls that cost companies millions of dollars in downtime and reputation. Eighty percent of project life-cycle cost is in production, yet few books address this topic. This updated edition deals with the production of today's systems - larger, more complex, and heavily virtualized - and includes information on chaos engineering, the discipline of applying randomness and deliberate stress to reveal systematic problems. Build systems that survive the real world, avoid downtime, implement zero-downtime upgrades and continuous delivery, and make cloud-native applications resilient. Examine ways to architect, design, and build software - particularly distributed systems - that stands up to the typhoon winds of a flash mob, a Slashdotting, or a link on Reddit. Take a hard look at software that failed the test and find ways to make sure your software survives. To skip the pain and get the experience...get this book.

Introduction to Computation and Programming Using Python, second edition

Download Introduction to Computation and Programming Using Python, second edition PDF Online Free

Author :
Publisher : MIT Press
ISBN 13 : 0262529629
Total Pages : 466 pages
Book Rating : 4.2/5 (625 download)

DOWNLOAD NOW!


Book Synopsis Introduction to Computation and Programming Using Python, second edition by : John V. Guttag

Download or read book Introduction to Computation and Programming Using Python, second edition written by John V. Guttag and published by MIT Press. This book was released on 2016-08-12 with total page 466 pages. Available in PDF, EPUB and Kindle. Book excerpt: The new edition of an introductory text that teaches students the art of computational problem solving, covering topics ranging from simple algorithms to information visualization. This book introduces students with little or no prior programming experience to the art of computational problem solving using Python and various Python libraries, including PyLab. It provides students with skills that will enable them to make productive use of computational techniques, including some of the tools and techniques of data science for using computation to model and interpret data. The book is based on an MIT course (which became the most popular course offered through MIT's OpenCourseWare) and was developed for use not only in a conventional classroom but in in a massive open online course (MOOC). This new edition has been updated for Python 3, reorganized to make it easier to use for courses that cover only a subset of the material, and offers additional material including five new chapters. Students are introduced to Python and the basics of programming in the context of such computational concepts and techniques as exhaustive enumeration, bisection search, and efficient approximation algorithms. Although it covers such traditional topics as computational complexity and simple algorithms, the book focuses on a wide range of topics not found in most introductory texts, including information visualization, simulations to model randomness, computational techniques to understand data, and statistical techniques that inform (and misinform) as well as two related but relatively advanced topics: optimization problems and dynamic programming. This edition offers expanded material on statistics and machine learning and new chapters on Frequentist and Bayesian statistics.