Agile Web Development with Rails 5.1Ruby on Rails helps you produce high-quality, beautiful-looking web applications quickly—you concentrate on creating the application, and Rails takes care of the details. Rails 5.1 brings many improvements, and this edition is updated to cover the new features and changes in best practices.
We start with a step-by-step walkthrough of building a real application, and in-depth chapters look at the built-in Rails features. Follow along with an extended tutorial as you write a web-based store application. Eliminate tedious configuration and housekeeping, seamlessly incorporate Ajax and JavaScript, send emails and manage background jobs with ActiveJob, build real-time features using WebSockets and ActionCable. Test your applications as you write them using the built-in unit, integration, and system testing frameworks, internationalize your applications, and deploy your applications easily and securely. New in this edition is support for Webpack and advanced JavaScript, as well as Rails ...
Practical Programming, 3rd EditionNo programming experience required! Incremental examples show you the steps and missteps that happen while developing programs, so you know what to expect when you tackle a problem on your own. Inspired by “How to Design Programs” (HtDP), discover a five-step recipe for designing functions, which helps you learn the concepts—and becomes an integral part of writing programs.
In this detailed introduction to Python and to computer programming, find out exactly what happens when your programs are executed. Work with numbers, text, big data sets, and files using real-world examples. Create and use your own data types. Make your programs reliable, work with databases, download data from the web automatically, and build user interfaces. As you use the fundamental programming tools in this book, you'll see how to document and organize your code so that you and other programmers can more easily read and understand it. This new edition takes advantage of Python 3.6's new features, incl ...
Test-Driven Development with Python, 2nd EditionBy taking you through the development of a real web application from beginning to end, the second edition of this hands-on guide demonstrates the practical advantages of test-driven development (TDD) with Python. You'll learn how to write and run tests before building each part of your app, and then develop the minimum amount of code required to pass those tests. The result? Clean code that works.
In the process, you'll learn the basics of Django, Selenium, Git, jQuery, and Mock, along with current web development techniques. If you're ready to take your Python skills to the next level, this book—updated for Python 3.6—clearly demonstrates how TDD encourages simple designs and inspires confidence.
Dive into the TDD workflow, including the unit test/code cycle and refactoring; Use unit tests for classes and functions, and functional tests for user interactions within the browser; Learn when and how to use mock objects, and the pros and cons of isolated vs. integrated tests; Te ...
Java Game Development with LibGDXLearn to design and create video games using the Java programming language and the LibGDX software library. Working through the examples in this book, you will create 12 game prototypes in a variety of popular genres, from collection-based and shoot-em-up arcade games to side-scrolling platformers and sword-fighting adventure games. With the flexibility provided by LibGDX, specialized genres such as card games, rhythm games, and visual novels are also covered in this book.
Major updates in this edition include chapters covering advanced topics such as alternative sources of user input, procedural content generation, and advanced graphics. Appendices containing examples for game design documentation and a complete JavaDoc style listing of the extension classes developed in the book have also been added.Create 12 complete video game projects;Master advanced Java programming concepts, including data structures, encapsulation, inheritance, and algorithms, in the context o ...
AnsibleThis book is your concise guide to Ansible, the simple way to automate apps and IT infrastructure. In less than 250 pages, this book takes you from knowing nothing about configuration management to understanding how to use Ansible in a professional setting.
You will learn how to create an Ansible playbook to automatically set up an environment, ready to install an open source project. You'll extract common tasks into roles that you can reuse across all your projects, and build your infrastructure on top of existing open source roles and modules that are available for you to use. You will learn to build your own modules to perform actions specific to your business. By the end you will create an entire cluster of virtualized machines, all of which have your applications and all their dependencies installed automatically. Finally, you'll test your Ansible playbooks.
Ansible can do as much or as little as you want it to. Ansible: From Beginner to Pro will teach you the key skills you ...
Swift StyleApple's Swift programming language has finally reached stability, and developers are demanding to know how to program the language properly. Swift Style guides you through the ins and outs of Swift programming best practices. This is the first best practices book for serious, professional Swift programmers and for programmers who want to shine their skills to be hired in this demanding market.
A style guide offers a consistent experience of well-crafted code that lets you focus on the code's underlying meaning, intent, and implementation. This book doesn't offer canonical answers on Swift coding style. It explores the areas of Swift where structure comes into play. Whether you're developing a personal style or a house style, there are always ways to enhance your code choices. You'll find here the ideas and principles to establish or enhance your own best style practices.
Begin with simple syntactical styling. Strengthen code bracing for easy readability. Style your closures for s ...
Scalable Cloud Ops with FugueCloud computing represents the greatest shift in computing in more than a decade. But the promise of the cloud is unrealized. The cloud isn't just about shedding the physical data center - it's about shedding the data center mindset. Cloud infrastructure can be controlled via API calls. This means we can view it as a giant general-purpose computer - and program it. That's where the Fugue operating system and the Ludwig language come in. They automate the creation, operation, enforcement, and termination of infrastructure in the cloud.
This definitive Fugue guide starts with a simple website and moves on to a more robust application with evolving infrastructure needs as you walk through the steps to harnessing the cloud. With Amazon Web Services, launch infrastructure quickly. Debug in design time. Automate deployment and enforcement of your cloud. Centralize your change control process and automate continuous auditing. Rest easy knowing configuration drift, unwanted changes, and inf ...
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#. ...
Coding iPhone Apps for KidsApple'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 ...
Hands-On Machine Learning with Scikit-Learn and TensorFlowThrough a series of recent breakthroughs, deep learning has boosted the entire field of machine learning. Now, even programmers who know close to nothing about this technology can use simple, efficient tools to implement programs capable of learning from data. This practical book shows you how.
By using concrete examples, minimal theory, and two production-ready Python frameworks - scikit-learn and TensorFlow - author Aurélien Géron helps you gain an intuitive understanding of the concepts and tools for building intelligent systems. You'll learn a range of techniques, starting with simple linear regression and progressing to deep neural networks. With exercises in each chapter to help you apply what you've learned, all you need is programming experience to get started.
Explore the machine learning landscape, particularly neural nets; Use scikit-learn to track an example machine-learning project end-to-end; Explore several training models, including support vector machines, deci ...