Black Hat Go
Black Hat Go explores the darker side of Go, the popular programming language revered by hackers for its simplicity, efficiency, and reliability. It provides an arsenal of practical tactics from the perspective of security practitioners and hackers to help you test your systems, build and automate tools to fit your needs, and improve your offensive security skillset, all using the power of Go.
You'll begin your journey with a basic overview of Go's syntax and philosophy and then start to explore examples that you can leverage for tool development, including common network protocols like HTTP, DNS, and SMB. You'll then dig into various tactics and problems that penetration testers encounter, addressing things like data pilfering, packet sniffing, and exploit development. You'll create dynamic, pluggable tools before diving into cryptography, attacking Microsoft Windows, and implementing steganography.
You'll Learn how to: Make performant tools that can be used for your own securit ...
PowerShell for Sysadmins
PowerShell is both a scripting language and an administrative shell that lets you control and automate nearly every aspect of IT. In PowerShell for Sysadmins, five-time Microsoft MVP "Adam the Automator" Bertram shows you how to use PowerShell to manage and automate your desktop and server environments so that you can head out for an early lunch.
You'll learn how to: Combine commands, control flow, handle errors, write scripts, run scripts remotely, and test scripts with the PowerShell testing framework, Pester; Parse structured data like XML and JSON, work with common domains (like Active Directory, Azure, and Amazon Web Services), and create a real-world server inventory script; Design and build a PowerShell module to demonstrate PowerShell isn't just about ad-hoc scripts; Use PowerShell to create a hands-off, completely automated Windows deployment; Build an entire Active Directory forest from nothing but a Hyper-V host and a few ISO files; Create endless Web and SQL servers with ...
Autotools, 2nd Edition
The GNU Autotools make it easy for developers to create software that is portable across many Unix-like operating systems, and even Windows. Although the Autotools are used by thousands of open source software packages, they have a notoriously steep learning curve.
Autotools is the first book to offer programmers a tutorial-based guide to the GNU build system. Author John Calcote begins with an overview of high-level concepts and a hands-on tour of the philosophy and design of the Autotools. He then tackles more advanced details, like using the M4 macro processor with Autoconf, extending the framework provided by Automake, and building Java and C# sources. He concludes with solutions to frequent problems encountered by Autotools users.
This thoroughly revised second edition has been updated to cover the latest versions of the Autotools. It includes five new chapters on topics like pkg-config, unit and integration testing with Autotest, internationalizing with GNU tools, the porta ...
Automate the Boring Stuff with Python, 2nd Edition
If you've ever spent hours renaming files or updating hundreds of spreadsheet cells, you know how tedious tasks like these can be. But what if you could have your computer do them for you?
In this fully revised second edition of the best-selling classic Automate the Boring Stuff with Python, you'll learn how to use Python to write programs that do in minutes what would take you hours to do by hand—no prior programming experience required. You'll learn the basics Python and explore Python's rich library of modules for performing specific tasks, like scraping data off websites, reading PDF and Word documents, and automating clicking and typing tasks.
The second edition of this international fan favorite includes a brand-new chapter on input validation, as well as tutorials on automating Gmail and Google Sheets, plus tips on automatically updating CSV files. You'll learn how to create programs that effortlessly perform useful feats of automation to: Search for text in a file or ac ...
Mining Social Media
Did fake Twitter accounts help sway a presidential election? What can Facebook and Reddit archives tell us about human behavior? In Mining Social Media, senior BuzzFeed reporter Lam Thuy Vo shows you how to use Python and key data analysis tools to find the stories buried in social media.
Whether you're a professional journalist, an academic researcher, or a citizen investigator, you'll learn how to use technical tools to collect and analyze data from social media sources to build compelling, data-driven stories.
Learn how to: Write Python scripts and use APIs to gather data from the social web; Download data archives and dig through them for insights; Inspect HTML downloaded from websites for useful content; Format, aggregate, sort, and filter your collected data using Google Sheets; Create data visualizations to illustrate your discoveries; Perform advanced data analysis using Python, Jupyter Notebooks, and the pandas library; Apply what you've learned to research topics on you ...
The Cult of Mac, 2nd Edition
Apple is a global luxury brand whose products range from mobile phones and tablets to streaming TVs and smart home speakers. Yet despite this dominance, a distinct subculture persists, which celebrates the ways in which Apple products seem to encourage self-expression, identity, and innovation.
The beautifully designed second edition of The Cult of Mac takes you inside today's Apple fandom to explore how devotions - new and old - keep the fire burning. Join journalists Leander Kahney and David Pierini as they explore how enthusiastic fans line up for the latest product releases, and how artists pay tribute to Steve Jobs' legacy in sculpture and opera. Learn why some photographers and filmmakers have eschewed traditional gear in favor of iPhone cameras. Discover a community of collectors around the world who spend tens of thousands of dollars to buy, restore, and enshrine Apple artifacts, like the Newton MessagePad and Apple II.
Whether you're an Apple fan or just a casual observe ...
Foundations of Information Security
A high-level survey of the information security field by best-selling author Jason Andress. The book covers the basics of a wide variety of topics, from authentication and authorization to maintaining confidentiality and performing penetration testing.
Using real-world security breaches as examples, Foundations of Information Security explores common applications of these concepts, such as operations security, network design, hardening and patching operating systems, securing mobile devices, as well as tools for assessing the security of hosts and applications.
You'll also learn the basics of topics like: Multifactor authentication and how biometrics and hardware tokens can be used to harden the authentication process; The principles behind modern cryptography, including symmetric and asymmetric algorithms, hashes, and certificates; The laws and regulations that protect systems and data; Anti-malware tools, firewalls, and intrusion detection systems; Vulnerabilities such as buffe ...
Learn to Program with App Inventor
You've swiped and tapped your way through countless apps, but have you ever created one? Now you can, thanks to Learn to Program with App Inventor. In less than an hour, you'll be able to build and run your first app!
App Inventor is a free software for making Android apps. All you need is a PC with an Internet connection to build your app, and a mobile phone for testing. You'll use a simple drag-and-drop interface, which minimizes errors and avoids too much typing.
A certified App Inventor Master Trainer, Logan breaks down each project into logical steps, lists the components you'll need, and then shows you how to create screen designs, control program flow with conditionals and loops, and store data in variables and lists. Once you've tested the app on your phone, you can test what you learned with challenges at the end of each chapter.
You'll build cool apps like: Hi, World!: Use your voice to send a text message; Practice Makes Perfect: Rehearse a speech or dance routine w ...
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 ...