Software NetworksThe goal of this book is to describe new concepts for Internet next generation. This architecture is based on virtual networking using Cloud and datacenters facilities. Main problems concern 1) the placement of virtual resources for opening a new network on the fly, and 2) the urbanisation of virtual resource implemented on physical network equipment. This architecture deals with mechanisms capable of controlling automatically the placement of all virtual resources within the physical network.
In this book, we describe how to create and delete virtual networks on the fly. Indeed, the system is able to create any new network with any kind of resource. We will show how this architecture is compatible with new advances in SDN, new high-speed transport protocol like TRILL and LISP, NGN, IMS, Wi-Fi new generation, and 4G/5G networks. Finally, we introduce the Cloud of security and the virtualisation of secure elements (smartcard) that should definitely transform how to secure the Interne ...
The Cucumber for Java BookUntil now it's been difficult for teams developing Java applications to learn how to benefit from Behaviour-Driven Development (BDD). This book changes all that by describing in detail how to use Cucumber to harness the power of plain language specifications in your development process.
In part 1, you'll discover how to use Cucumber's Gherkin DSL to describe the behavior your customers want from the system. You'll also learn how to write Java code that interprets those plain language specifications and checks them against your application. Part 2 guides you through a worked example, using Spring, MySQL, and Jetty. Enhanced chapters teach you how to use Selenium to drive your application and handle asynchronous Ajax calls, and new chapters cover Dependency Injection (DI) and advanced techniques to help keep your test suites fast. Part 3 shows you how to integrate Cucumber with your Continuous Integration (CI) system, work with a REST web service, and even use BDD with legacy applicat ...
Thinking in PromisesImagine a set of simple principles that could help you to understand how parts combine to become a whole, and how each part sees the whole from its own perspective. If such principles were any good, it shouldn't matter whether we're talking about humans on a team, birds in a flock, computers in a datacenter, or cogs in a Swiss watch. A theory of cooperation ought to be pretty universal, so we should be able to apply it both to technology and to the workplace.
Such principles are the subject of Promise Theory, and the focus of this insightful book. The goal of Promise Theory is to reveal the behavior of a whole from the sum of its parts, taking the point of the parts rather than the whole. In other words, it is a bottom-up, constructionist view of the world. Start Thinking in Promises and find out why this discipline works for documenting system behaviors from the bottom-up. ...
Unity UI CookbookWith the increasing interest in game development, it's essential to design and implement a UI that reflects the game settings and shows the right information to the player. The Unity system is used to create complex and aesthetically pleasing user interfaces in order to give a professional look and feel to a game. Although the new Unity UI system is powerful and quite easy to use, by integrating it with C# scripts, it's possible to realize the potential of this system and bring an impressive UI to games.
This guide is an invaluable collection of recipes if you are planning to use Unity to develop a game. Starting with the basic concepts of the UI components, we'll take you all the way through to creating complex interfaces by including animations and dynamics elements.
Based on real-world problems, these recipes will start by showing you how to make common UI elements such as counters and healthbars. You will then get a walkthrough of how to manage time using timers, and will lea ...
RabbitMQ in DepthAt the heart of most modern distributed applications is a queue that buffers, prioritizes, and routes message traffic. RabbitMQ is a high-performance message broker based on the Advanced Message Queueing Protocol. It?s battle tested, ultrafast, and powerful enough to handle anything you can throw at it. It requires a few simple setup steps, and you can instantly start using it to manage low-level service communication, application integration, and distributed system message routing.
RabbitMQ in Depth is a practical guide to building and maintaining message-based applications. This book provides detailed coverage of RabbitMQ with an emphasis on why it works the way it does. You'll find examples and detailed explanations based in real-world systems ranging from simple networked services to complex distributed designs. You'll also find the insights you need to make core architectural choices and develop procedures for effective operational management. ...
Improving Agile RetrospectivesAgile retrospectives help you get to the root of your real problems, so you can solve them quickly and effectively. They're the cornerstone of a successful continuous improvement process, and one of your best tools for triggering positive cultural change.
In Improving Agile Retrospectives, leading agile coach/trainer Marc Loeffler combines practical guidance, proven practices, and innovative approaches for maximizing the value of retrospectives for your team - and your entire organization. You can apply his powerful techniques in any project, agile or otherwise. These techniques offer exceptional value wherever continuous improvement is needed: from "lessons-learned" workshops in traditional project management to enterprise-wide change management.
Loeffler's detailed, results-focused examples help you recognize and overcome common pitfalls, adapt retrospectives to your unique needs, and consistently achieve tangible results. Throughout, he integrates breakthrough concepts, such a ...
A Practical Guide to Linux Commands, Editors, and Shell Programming, 4th EditionLinux is today's dominant Internet server platform. System administrators and Web developers need deep Linux fluency, including expert knowledge of shells and the command line. This is the only guide with everything you need to achieve that level of Linux mastery. Renowned Linux expert Mark Sobell has brought together comprehensive, insightful guidance on the tools sysadmins, developers, and power users need most, and has created an outstanding day-to-day reference, updated with assistance from new coauthor Matthew Helmke.
This title is 100 percent distribution and release agnostic. Packed with hundreds of high-quality, realistic examples, it presents Linux from the ground up: the clearest explanations and most useful information about everything from filesystems to shells, editors to utilities, and programming tools to regular expressions.
Use a Mac? You'll find coverage of the macOS command line, including macOS-only tools and utilities that other Linux/UNIX titles ignore.
F ...
Cross Over to HTML5 Game DevelopmentBreak into the most lucrative platform in the world by adding HTML5 game development to your current skillset. Zarrar Chishti has trained developers from a wide range of programming disciplines to cross over into HTML5 game development. Whatever your vocation, whether it be an Application Databases Systems developer or a Professional Web developer, with this book you will learn to evolve your current coding skills to become eligible for the biggest gaming platform in the world. From the first chapter you will see encouraging results immediately as you power through a challenging and fun project that has been uniquely designed and developed for this book.
With the relentless backing of the giants of the industry including Apple and Google, HTML5 is rapidly becoming the leading technology for game development. Furthermore nearly every mobile device, tablet and PC system offer full support to the latest games developed in HTML5.
Never before has there been such a widely accepted pl ...
Business Process Automation with ProcessMaker 3.1Use this practical, hands-on guide to get started with ProcessMaker. The book provides clear steps for you to walk through and set up ProcessMaker on your own system and make processes run faster and smarter. You will model and build a complete business process for requesting, approving, and reporting expenses.
In the course of building the process, you will understand: The Workflow Designer for modeling business processes using BPMN 2.0; The Dynaform Designer for creating responsive HTML forms; Input and Output documents for capturing supporting documents for business processes and generating standardized documents from the data captured in a process; Triggers for implementing custom business logic and extending ProcessMaker functionality. ...
Practical Scala DSLsBuild domain specific languages (DSLs) using Java's most popular functional programming language: Scala. This book introduces the basics of Scala and DSLs using a series of practical examples. In Practical Scala DSLs, you'll learn to create pragmatic and complete code examples that explain the actual use of DSLs with Scala: a web API and microservices; a custom language; a mobile app; a Forex system; a game; and cloud applications.
At the end of this unique book, you'll be able to describe the differences between external and internal DSLs; understand when and how to apply DSLs; create DSLs using Scala; and even create a DSL using another programming language.
Build DSLs in Scala; Write a web API and microservices; Create a custom language; Apply DSLs to mobile apps development, a Forex trading system, game development, and more; Discover the role of DSLs in cloud development; Integrate DSLs as part of a DevOps program or structure; Build internal and external DSLs. ...