Hands-On Microservices with Node.jsMicroservices enable us to develop software in small pieces that work together but can be developed separately; this is one reason why enterprises have started embracing them. For the past few years, Node.js has emerged as a strong candidate for developing microservices because of its ability to increase your productivity and the performance of your applications.
Hands-On Microservices with Node.js is an end-to-end guide on how to dismantle your monolithic application and embrace the microservice architecture - right from architecting your services and modeling them to integrating them into your application. We'll develop and deploy these microservices using Docker. Scalability is an important factor to consider when adding more functionality to your application, and so we delve into various solutions, such as Docker Swarm and Kubernetes, to scale our microservices. Testing and deploying these services while scaling is a real challenge; we'll overcome this challenge by setting up de ...
Node.js the Right WayGet to the forefront of server-side JavaScript programming by writing compact, robust, fast, networked Node applications that scale. Ready to take JavaScript beyond the browser, explore dynamic languages features and embrace evented programming? Explore the fun, growing repository of Node modules provided by npm. Work with multiple protocols, load-balanced RESTful web services, express, 0MQ, Redis, CouchDB, and more. Develop production-grade Node applications fast.
JavaScript is the backbone of the modern web, powering nearly every web app's user interface. Node.js is JavaScript for the server. This book shows you how to develop small, fast, low-profile, useful, networked applications. You'll write asynchronous, non-blocking code using Node's style and patterns. You'll cluster and load balance your services with Node core features and third-party tools. You'll work with many protocols, creating RESTful web services, TCP socket clients and servers, and more. ...
Beginning STM32Using FreeRTOS and libopencm3 instead of the Arduino software environment, this book will help you develop multi-tasking applications that go beyond Arduino norms. In addition to the usual peripherals found in the typical Arduino device, the STM32 device includes a USB controller, RTC (Real Time Clock), DMA (Direct Memory Access controller), CAN bus and more.
Each chapter contains clear explanations of the STM32 hardware capabilities to help get you started with the device, including GPIO and several other ST Microelectronics peripherals like USB and CAN bus controller. You'll learn how to download and set up the libopencm3 + FreeRTOS development environment, using GCC. With everything set up, you'll leverage FreeRTOS to create tasks, queues, and mutexes. You'll also learn to work with the I2C bus to add GPIO using the PCF8574 chip. And how to create PWM output for RC control using hardware timers.
You'll be introduced to new concepts that are necessary to master the STM32, such ...
Practical Contiki-NGExplore how to develop and implement wireless server networks (WSN) using Contiki-NG, branded as the operating system for the IoT. The book explains Contiki-NG's advantages in sensing, communication, and energy optimization and enables you to begin solving problems in automation with WSN.
Practical Contiki-NG is a guide to getting started with Contiki-NG programming featuring projects that demonstrate a variety of applications. This book takes a practical and content-driven approach to the latest technologies, including Raspberry Pi, IoT and cloud servers. Readers will go through step-by-step guides and sample scenarios such as sensing, actuating, connectivity, building middleware, and utilizing IoT and cloud-based technologies.
If you're looking to go from zero to hero in using Contiki-NG to build Wireless Sensor Network (WSN) applications then this is the book for you.
Prepare and set up Contiki-NG development; Review the basics of the Contiki-NG platform to build Wireless S ...
Deep Belief Nets in C++ and CUDA C: Volume 2Discover the essential building blocks of a common and powerful form of deep belief net: the autoencoder. You'll take this topic beyond current usage by extending it to the complex domain for signal and image processing applications. Deep Belief Nets in C++ and CUDA C: Volume 2 also covers several algorithms for preprocessing time series and image data. These algorithms focus on the creation of complex-domain predictors that are suitable for input to a complex-domain autoencoder. Finally, you'll learn a method for embedding class information in the input layer of a restricted Boltzmann machine. This facilitates generative display of samples from individual classes rather than the entire data distribution. The ability to see the features that the model has learned for each class separately can be invaluable.
At each step this book provides you with intuitive motivation, a summary of the most important equations relevant to the topic, and highly commented code for threaded computatio ...
Professional Android Open Accessory Programming with ArduinoAndroid Open Accessory is a new, simple, and secure protocol for connecting any microcontroller-empowered device to an Android smartphone or tablet. This Wrox guide shows Android programmers how to use AOA with Arduino, the microcontroller platform, to control such systems as lighting, air conditioning, and entertainment systems from Android devices. Furthermore, it teaches the circuit-building skills needed to create games and practical products that also take advantage of Android technology. ...
Real World Windows 8 App Development with JavaScriptReal World Windows 8 App Development with JavaScript offers you practical advice and hard-earned insights that will help you create and publish apps to a worldwide market.
Led by authors with deep Windows 8 app development experience, you'll learn how to make the most of Microsoft's APIs for hooking into Windows 8 on all devices, including the core ideas of promises and the asynchronous programming model.
Development with JavaScript features real-world examples that emphasize the use of JavaScript and HTML 5 and that also adhere to the stylistic guidelines Microsoft has put in place to maintain a consistent look and feel for all applications on this platform. ...
Learn Python Programming, 2nd EditionLearn Python Programming creates a foundation for those who are interested in developing their skills in Python programming. The book starts with the fundamentals of programming with Python and ends by exploring different topics such as GUIs and real-world apps.
You will begin by exploring the foundations of and fundamental topics on Python and learn to manipulate them. Then, you'll explore different programming paradigms that will allow you to find the best approach to a situation, and you'll also understand how to carry out performance optimization as well as effective debugging.
As you make your way through the chapters, you'll control the flow of a program, and persist and utilize an interchange format to exchange data. You'll also walk through cryptographic services in Python and understand secure tokens. Throughout, the book covers various types of applications, and it concludes with building real-world applications based on all the concepts that you learned.
By the end ...
Machine Learning with Core MLCore ML is a popular framework by Apple, with APIs designed to support various machine learning tasks. It allows you to train your machine learning models and then integrate them into your iOS apps.
Machine Learning with Core ML is a fun and practical guide that not only demystifies Core ML but also sheds light on machine learning. In this book, you'll walk through realistic and interesting examples of machine learning in the context of mobile platforms (specifically iOS). You'll learn to implement Core ML for visual-based applications using the principles of transfer learning and neural networks. Having got to grips with the basics, you'll discover a series of seven examples, each providing a new use-case that uncovers how machine learning can be applied along with the related concepts.
By the end of the book, you will have the skills required to put machine learning to work in their own applications, using the Core ML APIs. ...
Design Patterns and Best Practices in JavaHaving a knowledge of design patterns enables you, as a developer, to improve your code base, promote code reuse, and make the architecture more robust. As languages evolve, new features take time to fully understand before they are adopted en masse. The mission of this book is to ease the adoption of the latest trends and provide good practices for programmers.
We focus on showing you the practical aspects of smarter coding in Java. We'll start off by going over object-oriented (OOP) and functional programming (FP) paradigms, moving on to describe the most frequently used design patterns in their classical format and explain how Java's functional programming features are changing them.
You will learn to enhance implementations by mixing OOP and FP, and finally get to know about the reactive programming model, where FP and OOP are used in conjunction with a view to writing better code. Gradually, the book will show you the latest trends in architecture, moving from MVC to microse ...