Cloud Debugging and Profiling in Microsoft AzureUse this collection of best practices and tips for assessing the health of a solution. This book provides detailed techniques and instructions to quickly diagnose aspects of your Azure cloud solutions.
The initial chapters of this book introduce you to the many facets of Microsoft Azure, explain why and how building for the cloud differs from on-premise development, and outline the need for a comprehensive strategy to debugging and profiling in Azure. You learn the major types of blades (FaaS, SaaS, PaaS, IaaS), how different views can be created for different scenarios, and you will become familiar with the Favorites section, Cost Management & Billing blade, support, and Cloud Shell. You also will know how to leverage Application Insights for application performance management, in order to achieve a seamless cloud development experience. Application Insights, Log Analytics, and database storage topics are covered. The authors further guide you on identity security with Azure AD and ...
Design and Analysis of Security Protocol for CommunicationThe purpose of designing this book is to discuss and analyze security protocols available for communication. Objective is to discuss protocols across all layers of TCP/IP stack and also to discuss protocols independent to the stack. Authors will be aiming to identify the best set of security protocols for the similar applications and will also be identifying the drawbacks of existing protocols. The authors will be also suggesting new protocols if any. ...
Modern Systems Programming with Scala NativeAccess the power of bare-metal systems programming with Scala Native, an ahead-of-time Scala compiler. Without the baggage of legacy frameworks and virtual machines, Scala Native lets you re-imagine how your programs interact with your operating system. Compile Scala code down to native machine instructions; seamlessly invoke operating system APIs for low-level networking and IO; control pointers, arrays, and other memory management techniques for extreme performance; and enjoy instant start-up times. Skip the JVM and improve your code performance by getting close to the metal.
Developers generally build systems on top of the work of those who came before, accumulating layer upon layer of abstraction. Scala Native provides a rare opportunity to remove layers. Without the JVM, Scala Native uses POSIX and ANSI C APIs to build concise, expressive programs that run unusually close to bare metal. Scala Native compiles Scala code down to native machine instructions instead of JVM bytecode ...
Programming Machine LearningPeel away the obscurities of machine learning, starting from scratch and going all the way to deep learning. Machine learning can be intimidating, with its reliance on math and algorithms that most programmers don't encounter in their regular work. Take a hands-on approach, writing the Python code yourself, without any libraries to obscure what's really going on. Iterate on your design, and add layers of complexity as you go.
Build an image recognition application from scratch with supervised learning. Predict the future with linear regression. Dive into gradient descent, a fundamental algorithm that drives most of machine learning. Create perceptrons to classify data. Build neural networks to tackle more complex and sophisticated data sets. Train and refine those networks with backpropagation and batching. Layer the neural networks, eliminate overfitting, and add convolution to transform your neural network into a true deep learning system.
Start from the beginning and code your ...
Real-Time PhoenixReal-time applications come with real challenges - persistent connections, multi-server deployment, and strict performance requirements are just a few. Don't try to solve these challenges by yourself - use a framework that handles them for you. Elixir and Phoenix Channels provide a solid foundation on which to build stable and scalable real-time applications. Build applications that thrive for years to come with the best practices found in this book.
Understand the magic of real-time communication by inspecting the WebSocket protocol in action. Avoid performance pitfalls early in the development life cycle with a catalog of common problems and their solutions. Leverage GenStage to build a data pipeline that improves scalability. Break your application before your users do and deploy with confidence. Build a real-world project using solid application design and testing practices that help make future changes a breeze. Create distributed apps that can scale to many users with tools li ...
Practical MicroservicesMuch ink has been spilled on the topic of microservices, but all of this writing fails to accurately identify what makes a system a monolith, define what microservices are, or give complete, practical examples, so you're probably left thinking they have nothing to offer you. You don't have to be at Google or Facebook scale to benefit from a microservice-based architecture. Microservices will keep even small and medium teams productive by keeping the pieces of your system focused and decoupled.
Discover the basics of message-based architectures, render the same state in different shapes to fit the task at hand, and learn what it is that makes something a monolith (it has nothing to do with how many machines you deploy to). Conserve resources by performing background jobs with microservices. Deploy specialized microservices for registration, authentication, payment processing, e-mail, and more. Tune your services by defining appropriate service boundaries. Deploy your services effecti ...
Build Websites with HugoDatabase-driven sites bring complexity you might not need, but building a site by hand is too much work. Hugo is a static site generator and web development framework that creates content sites quickly without the overhead or dependencies of a dyanmic web framework. With Hugo, you use HTML templates and Markdown to build static sites you can host anywhere, letting you use the skills you already have.
Develop your own theme using standard HTML and CSS, using Hugo's powerful templating features to organize your site's components. Create your site's content with HTML or Markdown and use Hugo's content templating features to build new content quickly. Build a fully-featured blog with archive pages, tagging, and pagination, and integrate an external commenting system to provide interactivity. Use data from front-matter, site-wide configuration, and external JSON sources to add content, and generate JSON others can use. Integrate JavaScript with your site to create a search engine. Get Hu ...
2D Game Development: From Zero to HeroThis is a small project that aims to gather some knowledge about game development and make it available to everyone.
As well as being a source of knowledge this project aims to be a learning experience for everyone involved too, by gathering contributions from the community, teaching others how to make a game, teaching algorithms but also learning tips and tricks from people who are more experienced. ...
Native Mobile DevelopmentLearn how to make mobile native app development easier. If your team frequently works with both iOS and Android - or plans to transition from one to the other - this hands-on guide shows you how to perform the most common development tasks in each platform. Want to learn how to make network connections in iOS? Or how to work with a database in Android? This book has you covered.
In the book's first part, authors Shaun Lewis and Mike Dunn from O'Reilly's mobile engineering group provide a list of common, platform-agnostic tasks. The second part helps you create a bare-bones app in each platform, using the techniques from part one.
Common file and database operations; Network communication with remote APIs; Application lifecycle; Custom views and components; Threading and asynchronous work; Unit and integration tests; Configuring, building, and running an app on a device. ...
Kubernetes Best PracticesIn this practical guide, four Kubernetes professionals with deep experience in distributed systems, enterprise application development, and open source will guide you through the process of building applications with this container orchestration system. Based on the experiences of companies that are running Kubernetes in production successfully, many of the methods are also backed by concrete code examples.
This book is ideal for those already familiar with basic Kubernetes concepts who want to learn common best practices. You'll learn exactly what you need to know to build your best app with Kubernetes the first time.
Set up and develop applications in Kubernetes; Learn patterns for monitoring, securing your systems, and managing upgrades, rollouts, and rollbacks; Understand Kubernetes networking policies and where service mesh fits in; Integrate services and legacy applications and develop higher-level platforms on top of Kubernetes; Run machine learning workloads in Kubernetes ...