The SparkFun Guide to Processing
Processing is a free, beginner-friendly programming language designed to help non-programmers create interactive art with code.
The SparkFun Guide to Processing, the first in the SparkFun Electronics series, will show you how to craft digital artwork and even combine that artwork with hardware so that it reacts to the world around you. Start with the basics of programming and animation as you draw colorful shapes and make them bounce around the screen.
With a little imagination and Processing as your paintbrush, you'll be on your way to coding your own gallery of digital art in no time! Put on your artist's hat, and begin your DIY journey by learning some basic programming and making your first masterpiece with The SparkFun Guide to Processing. ...
The GNU Make Book
GNU make is the most widely used build automation tool, but it can be challenging to master and its terse language can be tough to parse for even experienced programmers. Those who run into difficulties face a long, involved struggle, often leaving unsolved problems behind and GNU make's vast potential untapped.
The GNU Make Book demystifies GNU make and shows you how to use its best features. You'll find a fast, thorough rundown of the basics of variables, rules, targets, and makefiles. Learn how to fix wastefully long build times and other common problems, and gain insight into more advanced capabilities, such as complex pattern rules. With this utterly pragmatic manual and cookbook, you'll make rapid progress toward becoming a more effective user.
GNU make is known for being tricky to use, but it doesn't have to be. If you're looking for a deeper understanding of this indispensable tool, you'll find The GNU Make Book to be an indispensable guide. ...
Cracking Codes with Python
Learn how to program in Python while making and breaking ciphers - algorithms used to create and send secret messages!
After a crash course in Python programming basics, you'll learn to make, test, and hack programs that encrypt text with classical ciphers like the transposition cipher and Vigenère cipher. You'll begin with simple programs for the reverse and Caesar ciphers and then work your way up to public key cryptography, the type of encryption used to secure today's online transactions, including digital signatures, email, and Bitcoin.
Each program includes the full code and a line-by-line explanation of how things work. By the end of the book, you'll have learned how to code in Python and you'll have the clever programs to prove it!
You'll also learn how to: Combine loops, variables, and flow control statements into real working programs; Use dictionary files to instantly detect whether decrypted messages are valid English or gibberish; Create test programs to make sur ...
Learn Java the Easy Way
Java is the world's most popular programming language, but it's known for having a steep learning curve. Learn Java the Easy Way takes the chore out of learning Java with hands-on projects that will get you building real, functioning apps right away.
You'll start by familiarizing yourself with JShell, Java's interactive command line shell that allows programmers to run single lines of code and get immediate feedback. Then, you'll create a guessing game, a secret message encoder, and a multitouch bubble-drawing app for both desktop and mobile devices using Eclipse, an industry-standard IDE, and Android Studio, the development environment for making Android apps.
As you build these apps, you'll learn how to: Perform calculations, manipulate text strings, and generate random colors; Use conditions, loops, and methods to make your programs responsive and concise; Create functions to reuse code and save time; Build graphical user interface (GUI) elements, including buttons, menus, pop ...
Practical Packet Analysis, 3rd Edition
It's easy to capture packets with Wireshark, the world's most popular network sniffer, whether off the wire or from the air. But how do you use those packets to understand what's happening on your network?
Updated to cover Wireshark 2.x, the third edition of Practical Packet Analysis will teach you to make sense of your packet captures so that you can better troubleshoot network problems. You'll find added coverage of IPv6 and SMTP, a new chapter on the powerful command line packet analyzers tcpdump and TShark, and an appendix on how to read and reference packet values using a packet map.
Practical Packet Analysis will show you how to: Monitor your network in real time and tap live network communications; Build customized capture and display filters; Use packet analysis to troubleshoot and resolve common network problems, like loss of connectivity, DNS issues, and slow speeds; Explore modern exploits and malware at the packet level; Extract files sent across a network from packet ...
Coding iPhone Apps for Kids
Apple's Swift is a powerful, beginner-friendly programming language that anyone can use to make cool apps for the iPhone or iPad. In Coding iPhone Apps for Kids, you'll learn how to use Swift to write programs, even if you've never programmed before.
You'll work in the Xcode playground, an interactive environment where you can play with your code and see the results of your work immediately! You'll learn the fundamentals of programming too, like how to store data in arrays, use conditional statements to make decisions, and create functions to organize your code - all with the help of clear and patient explanations.
Once you master the basics, you'll build a birthday tracker app so that you won't forget anyone's birthday and a platform game called Schoolhouse Skateboarder with animation, jumps, and more!
As you begin your programming adventure, you'll learn how to: Build programs to save you time, like one that invites all of your friends to a party with just the click of a but ...
The Arduino Inventor's Guide
The Arduino microcontroller makes it easy to learn about electronics, but it can be hard to know where to start. The 10 projects in this book will teach you to build, code, and invent with the super-smart Arduino and a handful of parts.
First, you'll master the basics with a primer that explains how a circuit works, how to read a wiring schematic, and how to build and test projects with a solderless breadboard. Then you'll learn how to make your hardware move, buzz, flash, and interact with the world using motors, LEDs, sensors, and more as you build these 10 projects:The classic first Arduino project: blinking an LED;A miniature traffic light;An LED screen that displays animated patterns and shapes;A fast-paced button-smashing game to test your reflexes;A light-sensitive, color-changing night-light;A challenging ball-balancing game;A temperature-sensing mini greenhouse with an automated fan and vent;A motorized ...
You've mastered the basics, conquered the soldering iron, and programmed a robot or two; now you've got a set of skills and tools to take your Arduino exploits further. But what do you do once you've exhausted your to-build list?
Arduino Playground will show you how to keep your hardware hands busy with a variety of intermediate builds, both practical and just-for-fun. Advance your engineering and electronics know-how as you work your way through these 10 complex projects:A reaction-time game that leverages the Arduino's real-time capabilities;A tool for etching your own printed circuit boards;A regulated, variable-voltage power supply;A kinetic wristwatch winder decked out with LEDs;A garage parking assistant that blinks when your vehicle is perfectly parked;A practical and colorful pH meter;A ballistic chronograph that can measure the muzzle velocity of BB, Airsoft, and pellet guns;A battery saver that prevents a ...
The Hardware Hacker
For over a decade, Andrew "bunnie" Huang, one of the world's most esteemed hackers, has shaped the fields of hacking and hardware, from his cult-classic book Hacking the Xbox to the open-source laptop Novena and his mentorship of various hardware startups and developers. In The Hardware Hacker, Huang shares his experiences in manufacturing and open hardware, creating an illuminating and compelling career retrospective.
Huang's journey starts with his first visit to the staggering electronics markets in Shenzhen, with booths overflowing with capacitors, memory chips, voltmeters, and possibility. He shares how he navigated the overwhelming world of Chinese factories to bring chumby, Novena, and Chibitronics to life, covering everything from creating a Bill of Materials to choosing the factory to best fit his needs.
Through this collection of personal essays and interviews on topics ranging from the legality of reverse engineering to a comparison of intellectual property practices b ...
Gray Hat C#
Learn to use C#'s powerful set of core libraries to automate tedious yet important tasks like fuzzing, performing vulnerability scans, and analyzing malware. With some help from Mono, you'll write your own practical security tools that will run on Windows, OS X, Linux, and even mobile devices.
After a crash course in C# and some of its advanced features, you'll learn how to: Generate shellcode in Metasploit to create cross-platform and cross-architecture payloads; Automate Nessus, OpenVAS, and sqlmap to scan for vulnerabilities and exploit SQL injections; Write a .NET decompiler for OS X and Linux; Parse and read offline registry hives to dump system information; Automate the security tools Arachni and Metasploit using their MSGPACK RPCs.
Streamline and simplify your workday by making the most of C#'s extensive repertoire of powerful tools and libraries with Gray Hat C#. ...
This practical guide to modern encryption breaks down the fundamental mathematical concepts at the heart of cryptography without shying away from meaty discussions of how they work. You'll learn about authenticated encryption, secure randomness, hash functions, block ciphers, and public-key techniques such as RSA and elliptic curve cryptography.
You'll also learn: Key concepts in cryptography, such as computational security, attacker models, and forward secrecy; The strengths and limitations of the TLS protocol behind HTTPS secure websites; Quantum computation and post-quantum cryptography; About various vulnerabilities by examining numerous code examples and use cases; How to choose the best algorithm or protocol and ask vendors the right questions.
Each chapter includes a discussion of common implementation mistakes using real-world examples and details what could go wrong and how to avoid these pitfalls.
Whether you're a seasoned practitioner or a beginner looking to dive i ...