Make Your Own PuzzleScript Games!
PuzzleScript is a free, web-based tool you can use to create puzzle games. In a PuzzleScript game, you move objects around to solve problems and play through the levels.
In Make Your Own PuzzleScript Games! you'll learn how to use PuzzleScript to create interactive games - no programming experience necessary! Learn the basics like how to make objects, create rules, and add levels. You'll also learn how to edit, test, and share your games online.
Learn how to: Decorate your game with fun backgrounds; Write rules that define how objects interact; Add obstacles like laser guns and guards; Herd cats and even pull off a robot heist!
With colorful illustrations and plenty of examples for inspiration, Make Your Own PuzzleScript Games! will take you from puzzle solver to game designer in just a few clicks! ...
Raspberry Pi Projects for Kids
The Raspberry Pi is an inexpensive, pocket-sized computer that will help you build and code your own hardware projects.
Raspberry Pi Projects for Kids will show you how to harness the power of the Raspberry Pi to create 12 cool projects using simple code and common materials like a webcam, microphone, and LED lights. Step-by-step instructions and detailed diagrams guide you through each project.
After a brief introduction to the Python programming language, you'll learn how to: Create an LED night-light that turns itself on and off; Set up a Raspberry Pi camera to take selfies and videos; Set up a webcam to stream video to your cell phone; Manipulate environments in Minecraft; Hijack local radio waves to play your own songs and recordings; Configure Raspberry Pi to send texts to a cell phone; Track your family members locations via wi-fi and Bluetooth; Create an MP3 player; Set up a camera to take motion-triggered photos of wildlife; Control the electronics in your home with your ...
C++ Crash Course
C++ is one of the most widely used languages for real-world software. In the hands of a knowledgeable programmer, C++ can produce small, efficient, and readable code that any programmer would be proud of.
Designed for intermediate to advanced programmers, C++ Crash Course cuts through the weeds to get you straight to the core of C++17, the most modern revision of the ISO standard. Part 1 covers the core of the C++ language, where you'll learn about everything from types and functions, to the object life cycle and expressions. Part 2 introduces you to the C++ Standard Library and Boost Libraries, where you'll learn about all of the high-quality, fully-featured facilities available to you. You'll cover special utility classes, data structures, and algorithms, and learn how to manipulate file systems and build high-performance programs that communicate over networks.
You'll learn all the major features of modern C++, including: Fundamental types, reference types, and user-defined ty ...
The Rust Programming Language
The Rust Programming Language is the official book on Rust: an open source systems programming language that helps you write faster, more reliable software. Rust offers control over low-level details (such as memory usage) in combination with high-level ergonomics, eliminating the hassle traditionally associated with low-level languages.
The authors of The Rust Programming Language, members of the Rust Core Team, share their knowledge and experience to show you how to take full advantage of Rust's features - from installation to creating robust and scalable programs. You'll begin with basics like creating functions, choosing data types, and binding variables and then move on to more advanced concepts, such as: Ownership and borrowing, lifetimes, and traits; Using Rust's memory safety guarantees to build fast, safe programs; Testing, error handling, and effective refactoring; Generics, smart pointers, multithreading, trait objects, and advanced pattern matching; Using Cargo, Rust's b ...
The Secret Life of Programs
Many coders are unfamiliar with the underlying technologies that make their programs run. But why should you care when your code appears to work? Because you want it to run well and not be riddled with hard-to-find bugs. You don't want to be in the news because your code had a security problem.
Lots of technical detail is available online but it's not organized or collected into a convenient place. In The Secret Life of Programs, veteran engineer Jonathan E. Steinhart explores - in depth - the foundational concepts that underlie the machine. Subjects like computer hardware, how software behaves on hardware, as well as how people have solved problems using technology over time.
You'll learn: How the real world is converted into a form that computers understand, like bits, logic, numbers, text, and colors; The fundamental building blocks that make up a computer including logic gates, adders, decoders, registers, and memory; Why designing programs to match computer hardware, especia ...
Your Linux Toolbox
Get the most out of your Linux system using tools you already have! These illustrated zines by Julia Evans will teach you how simple it can be to tame the powerful beast called Linux. And for the first time, her tips and tricks are together in one place.
Find out what your programs are doing and why. Understand how your system's parts talk to each other and what to do when they bicker. And see how a cat GIF travels from a distant server to your very own screen.
Includes 7 zines: So You Want to Be a Wizard; Bite-Size Linux! Networking, ACK! Let's Learn tcpdump! Linux Debugging Tools You'll Love; Spying on Your Programs with strace; Profiling & Tracing with perf. ...
Python Crash Course, 2nd Edition
This is the 2nd edition of the best selling Python book in the world. Python Crash Course, 2nd Edition is a straightforward introduction to the core of Python programming. Author Eric Matthes dispenses with the sort of tedious, unnecessary information that can get in the way of learning how to program, choosing instead to provide a foundation in general programming concepts, Python fundamentals, and problem solving. Three real-world projects in the second part of the book allow readers to apply their knowledge in useful ways.
Readers will learn how to create a simple video game, use data visualization techniques to make graphs and charts, and build and deploy an interactive web application. Python Crash Course, 2nd Edition teaches beginners the essentials of Python quickly so that they can build practical programs and develop powerful programming techniques. ...
Bayesian Statistics the Fun Way
Probability and statistics are increasingly important in a huge range of professions. But many people use data in ways they don't even understand, meaning they aren't getting the most from it. Bayesian Statistics the Fun Way will change that.
This book will give you a complete understanding of Bayesian statistics through simple explanations and un-boring examples. Find out the probability of UFOs landing in your garden, how likely Han Solo is to survive a flight through an asteroid belt, how to win an argument about conspiracy theories, and whether a burglary really was a burglary, to name a few examples.
By using these off-the-beaten-track examples, the author actually makes learning statistics fun. And you'll learn real skills, like how to: How to measure your own level of uncertainty in a conclusion or belief; Calculate Bayes theorem and understand what it's useful for; Find the posterior, likelihood, and prior to check the accuracy of your conclusions; Calculate distributions ...
Micro:bit for Mad Scientists
The BBC micro:bit is a tiny, inexpensive, and surprisingly powerful computer that you can use to build cool things and experiment with code. The 30 simple projects and experiments in this book will show you how to use the micro:bit to build a secret science lab - complete with robots, door alarms, lie detectors, and more - as you learn basic coding and electronics skills.
Here are just some of the projects you'll build: A light-controlled guitar you can play just by waving your hand; A working lie detector; A self-watering plant care system; A two-wheeled robot; A talking robotic head with moving eyes; A door alarm made with magnets.
Learn to code like a Mad Scientist! ...
A Beginner's Guide to 3D Modeling
A Beginner's Guide to 3D Modeling is a project-based, straightforward introduction to computer-aided design (CAD). You'll learn how to use Autodesk Fusion 360, the world's most powerful free CAD software, to model gadgets, 3D print your designs, and create realistic images just like an engineering professional - with no experience required!
Hands-on modeling projects and step-by-step instructions throughout the book introduce fundamental 3D modeling concepts. As you work through the projects, you'll master the basics of parametric modeling and learn how to create your own models, from simple shapes to multipart assemblies. Once you've mastered the basics, you'll learn more advanced modeling concepts like sweeps, lofts, surfaces, and rendering, before pulling it all together to create a robotic arm.
You'll learn how to: Design a moving robotic arm, a door hinge, a teapot, and a 20-sided die; Create professional technical drawings for manufacturing and patent applications; Model sp ...
Real-World Bug Hunting
Learn how people break websites and how you can, too. Real-World Bug Hunting is the premier field guide to finding software bugs. Whether you're a cyber-security beginner who wants to make the internet safer or a seasoned developer who wants to write secure code, ethical hacker Peter Yaworski will show you how it's done.
You'll learn about the most common types of bugs like cross-site scripting, insecure direct object references, and server-side request forgery. Using real-life case studies of rewarded vulnerabilities from applications like Twitter, Facebook, Google, and Uber, you'll see how hackers manage to invoke race conditions while transferring money, use URL parameter to cause users to like unintended tweets, and more.
Each chapter introduces a vulnerability type accompanied by a series of actual reported bug bounties. The book's collection of tales from the field will teach you how attackers trick users into giving away their sensitive information and how sites may reveal ...