Cracking Codes with PythonLearn 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 ...
Spark: The Definitive GuideLearn how to use, deploy, and maintain Apache Spark with this comprehensive guide, written by the creators of the open-source cluster-computing framework. With an emphasis on improvements and new features in Spark 2.0, authors Bill Chambers and Matei Zaharia break down Spark topics into distinct sections, each with unique goals.
You'll explore the basic operations and common functions of Spark's structured APIs, as well as Structured Streaming, a new high-level API for building end-to-end streaming applications. Developers and system administrators will learn the fundamentals of monitoring, tuning, and debugging Spark, and explore machine learning techniques and scenarios for employing MLlib, Spark's scalable machine-learning library.
Get a gentle overview of big data and Spark; Learn about DataFrames, SQL, and Datasets - Spark's core APIs - through worked examples; Dive into Spark's low-level APIs, RDDs, and execution of SQL and DataFrames; Understand how Spark runs on a cluster ...
Head First Android Development, 2nd EditionIf you have an idea for a killer Android app, this fully revised and updated edition will help you build your first working application in a jiffy. You'll learn hands-on how to structure your app, design flexible and interactive interfaces, run services in the background, make your app work on various smartphones and tablets, and much more. It's like having an experienced Android developer sitting right next to you! All you need to get started is some Java know-how.
Based on the latest research in cognitive science and learning theory, Head First Android Development uses a visually rich format to engage your mind, rather than a text-heavy approach that puts you to sleep. Why waste your time struggling with new concepts? This multi-sensory learning experience is designed for the way your brain really works. ...
Effective Modern C++Coming to grips with C++11 and C++14 is more than a matter of familiarizing yourself with the features they introduce (e.g., auto type declarations, move semantics, lambda expressions, and concurrency support). The challenge is learning to use those features effectively - so that your software is correct, efficient, maintainable, and portable. That's where this practical book comes in. It describes how to write truly great software using C++11 and C++14 - i.e. using modern C++.
Topics include: The pros and cons of braced initialization, noexcept specifications, perfect forwarding, and smart pointer make functions; The relationships among std::move, std::forward, rvalue references, and universal references; Techniques for writing clear, correct, effective lambda expressions; How std::atomic differs from volatile, how each should be used, and how they relate to C++'s concurrency API; How best practices in "old" C++ programming (i.e., C++98) require revision for software development in m ...
Learning Web Design, 5th EditionWith the release of HTML5 and browsers that constantly update, HTML is experiencing a renaissance. CSS3 and the recent upgrades to JavaScript have also helped change the way we build striking and useful sites today. If you're new to web design, the thoroughly updated 5th edition of this no-nonsense guide provides everything you need to know to create professional websites.
Ideal for beginners seeking a design-centric introduction to HTML and related standards, this practical book helps you: Learn the site development process from start to finish; Create a simple (X)HTML page, including links and images; Explore text formatting, colors and backgrounds, page layout, and more in CSS; Get your pages on the web, with information on hosting, domain names, and FTP. ...
Running Lean, 2nd EditionWe live in an age of unparalleled opportunity for innovation. We're building more products than ever before, but most of them fail - not because we can't complete what we set out to build, but because we waste time, money, and effort building the wrong product.
What we need is a systematic process for quickly vetting product ideas and raising our odds of success. That's the promise of Running Lean.
In this inspiring book, Ash Maurya takes you through an exacting strategy for achieving a "product/market fit" for your fledgling venture, based on his own experience in building a wide array of products from high-tech to no-tech. Throughout, he builds on the ideas and concepts of several innovative methodologies, including the Lean Startup, Customer Development, and bootstrapping.
Running Lean is an ideal tool for business managers, CEOs, small business owners, developers and programmers, and anyone who's interested in starting a business project.
Find a problem worth solving, t ...
Getting Started with Dwarf FortressDwarf Fortress may be the most complex video game ever made, but all that detail makes for fascinating game play, as various elements collide in interesting and challenging ways. The trick is getting started. In this guide, Fortress geek Peter Tyson takes you through the basics of this menacing realm, and helps you overcome the formidable learning curve.
The book's focus is the game's simulation mode, in which you're tasked with building a dwarf city. Once you learn how to establish and maintain your very first fortress, you can consult the more advanced chapters on resource management and training a dwarf military. You'll soon have stories to share from your interactions with the Dwarf Fortress universe.
Create your own world, then locate a site for an underground fortress; Equip your party of dwarves and have them build workshops and rooms; Produce a healthy food supply so your dwarves won't starve (or go insane); Retain control over a fortress and dozens of dwarves, their chil ...
Head First RubyWhat's all the buzz about this Ruby language? Is it right for you? Well, ask yourself: are you tired of all those extra declarations, keywords, and compilation steps in your other language? Do you want to be a more productive programmer? Then you'll love Ruby. With this unique hands-on learning experience, you'll discover how Ruby takes care of all the details for you, so you can simply have fun and get more done with less code.
Based on the latest research in cognitive science and learning theory, Head First Ruby uses a visually rich format to engage your mind, rather than a text-heavy approach to put you to sleep. Why waste your time struggling with new concepts? This multi-sensory learning experience is designed for the way your brain really works. ...
Plug-In PHP: 100 Power SolutionsThis practical guide gives you 100 ready-to-run PHP functions for solving most of the main problems you encounter when building a dynamic website with PHP. Every plug-in in the book offers a complete and working solution for a result you can achieve right away, using ready-made code you simply drop into your own program. And there's little or no learning curve, because each one is self-contained and thoroughly documented. ...
Beginning NetBeans IDEBeginning NetBeans IDE is your authoritative guide for getting started learning and using the free and open source NetBeans IDE. Written by Geertjan Wielenga, who has worked on the NetBeans Team since 2004, it shows you what the IDE is all about and how to use it with real-world case studies built from the ground up as you learn all about the IDE.
In this book, you get a tour of the various, essential, and key NetBeans features, including a range of wizards and plug-ins. Then, you start building a more complex Java EE-based application using Maven with the NetBeans IDE. And, you learn how to improve that application by exploring the NetBeans refactoring, testing, debugging, and profiling tools.
After reading and using this guide, you'll come away with a working case study and many insights into how to understand and optimally make use of NetBeans IDE. ...