Release It! 2nd EditionIf you're a software developer, and you don't want to get alerts every night for the rest of your life, help is here. With a combination of case studies about huge losses - lost revenue, lost reputation, lost time, lost opportunity - and practical, down-to-earth advice that was all gained through painful experience, this book helps you avoid the pitfalls that cost companies millions of dollars in downtime and reputation. Eighty percent of project life-cycle cost is in production, yet few books address this topic.
This updated edition deals with the production of today's systems - larger, more complex, and heavily virtualized - and includes information on chaos engineering, the discipline of applying randomness and deliberate stress to reveal systematic problems. Build systems that survive the real world, avoid downtime, implement zero-downtime upgrades and continuous delivery, and make cloud-native applications resilient. Examine ways to architect, design, and build software - parti ...
Learning Apache DrillApache Drill enables interactive analysis of massively large datasets, allowing you to execute SQL queries against data in many different data sources - including Hadoop and MongoDB clusters, HBase, or even your local file system - and get results quickly. With this practical guide, analysts and data scientists focused on business or research applications will learn how to incorporate Drill capabilities into complex programs, including how to use Drill queries to replace some MapReduce operations in a large-scale program.
Drill committers Charles Givre and Paul Rogers provide an introduction to Drill and its ability to handle large files containing data in flexible formats with nested data structures and tables. You'll discover how this capability fills a gap in the Hadoop ecosystem.
Additional topics show you how to:Prepare and organize data to maximize Drill performance;Set expectations for Drill performance on different data types and volumes;Reconcil ...
Angular: Up and RunningThis book will demystify Angular as a framework, as well as provide clear instructions and examples on how to get started with writing scalable Angular applications.
Angular: Up & Running covers most of the major pieces of Angular, but in a structured manner that is generally used in hands-on training. Each chapter takes one concept, and use examples to cover how it works. Problems to work on (with solutions) at the end of each chapter reinforce the learnings of each chapter and allow readers to really get hands-on with Angular. ...
Mastering Modular JavaScriptTackle two aspects of JavaScript development, modularity and ECMAScript 6 (ES6). With this practical guide, frontend and backend Node.js developers alike will learn how to scale out JavaScript applications by breaking codebases into smaller modules. Author Nicolas Bevacqua also covers features in ES6 - the latest version of the specification that includes JavaScript - that support modularization.
If you're a frontend developer or backend Node.js developer with a working knowledge of JavaScript, this book is for you. It's ideal for semi-senior developers, senior developers, technical leaders, and software architects. ...
Exploring Java 9Discover all the new features and changes in Java 9, including module systems - JPMS or Project Jigsaw. This book covers the whole Java application development life cycle. You'll review all the important concepts, including module descriptor, unnamed module, automatic module, and command line tools.
Exploring Java 9 also serves as a practical guide for migration to module systems. Code samples from real-world scenarios solidify a foundation for learning and development and allow you to apply best practices in actual development.
Additionally, you'll learn about concurrency, ECMAScript 6 features in Nashorn and Parser API, stack-walking API, Stream and Optional, utilities classes, and I/O. And it's now possible to build modularized applications in Java. You'll see how JPMS affects not only the JDK itself, but also applications that are developed upon it. ...
Pro C# 7This essential classic title provides a comprehensive foundation in the C# programming language and the frameworks it lives in. Now in its 8th edition, you'll find all the very latest C# 7.1 and .NET 4.7 features here, along with four brand new chapters on Microsoft's lightweight, cross-platform framework, .NET Core, up to and including .NET Core 2.0. Coverage of ASP.NET Core, Entity Framework (EF) Core, and more, sits alongside the latest updates to .NET, including Windows Presentation Foundation (WPF), Windows Communication Foundation (WCF), and ASP.NET MVC.
Dive in and discover why Pro C# has been a favorite of C# developers worldwide for over 15 years. Gain a solid foundation in object-oriented development techniques, attributes and reflection, generics and collections as well as numerous advanced topics not found in other texts (such as CIL opcodes and emitting dynamic assemblies). With the help of this book you'll have the confidence to put C# into practice and explore the .NE ...
Arduino PlaygroundYou'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 ...
Learn Java the Easy WayJava 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 ...
React Native CookbookTackling an app development project on multiple platforms is usually an arduous task, but with React Native, you can build cross-platform mobile apps that look and behave just like native apps built with Swift or Java. If you're familiar with JavaScript, the recipes in this cookbook will help you understand the React Native ecosystem, deal with design and hardware issues, take on the deployment process, and write maintainable code.
How do you organize a project? Or design an app that can access a device's camera? Based on author Jonathan Lebensold's personal journey through the app development process, the recipes in this cookbook will not only provide you with quick answers, they can also inspire you to come up with your own solutions.
Examine the software tools you'll use to build a React Native app; Leverage components and JavaScript libraries in the React ecosystem; Design cross-platform apps that balance UX, platform conventions, and technical complexity; Get common use case ...
Think Data StructuresIf you're a student studying computer science or a software developer preparing for technical interviews, this practical book will help you learn and review some of the most important ideas in software engineering - data structures and algorithms - in a way that's clearer, more concise, and more engaging than other materials.
By emphasizing practical knowledge and skills over theory, author Allen Downey shows you how to use data structures to implement efficient algorithms, and then analyze and measure their performance. You'll explore the important classes in the Java collections framework (JCF), how they're implemented, and how they're expected to perform. Each chapter presents hands-on exercises supported by test code online.
Use data structures such as lists and maps, and understand how they work; Build an application that reads Wikipedia pages, parses the contents, and navigates the resulting data tree; Analyze code to predict how fast it will run and how much memory it will ...