Inside Ravendb 4.0


Book Description

Oren Eini, CEO of RavenDB, shares everything you need to know about the latest version of his distributed, non-relational document database. This is a book-length blog post, designed not only to give you full knowledge of what RavenDB does, but also all the reasoning behind each feature. Inside RavendB 4.0 explains all the whys, like why RavenDB is a fully transactional, high performance, and NoSQL - one of the few databases on the market to include so much. Based on over a decade of working with databases, Oren discusses why he made it a priority that RavenDB requires as little overhead as possible from its users. It'll give you the knowledge and skills to make efficient use of RavenDB in your systems. Enjoy this easy-read from your favorite Ayende blogger. Beyond simply dry documentation or reference book, Inside RavenDB 4.0 is packed with the musings from one of the pioneers of the NoSQL Database. Features include: * Going Beyond Relational Data Modeling * Distributed Data in a Multi-Node Cluster * The Basics of RavenDB * ACID vs BASE * Querying, Indexing, and CRUD in a Document Model * Creating a Polyglot Architecture with ETL




NoSQL Distilled


Book Description

'NoSQL Distilled' is designed to provide you with enough background on how NoSQL databases work, so that you can choose the right data store without having to trawl the whole web to do it. It won't answer your questions definitively, but it should narrow down the range of options you have to consider.




Exercises for Programmers


Book Description

When you write software, you need to be at the top of your game. Great programmers practice to keep their skills sharp. Get sharp and stay sharp with more than fifty practice exercises rooted in real-world scenarios. If you're a new programmer, these challenges will help you learn what you need to break into the field, and if you're a seasoned pro, you can use these exercises to learn that hot new language for your next gig. One of the best ways to learn a programming language is to use it to solve problems. That's what this book is all about. Instead of questions rooted in theory, this book presents problems you'll encounter in everyday software development. These problems are designed for people learning their first programming language, and they also provide a learning path for experienced developers to learn a new language quickly. Start with simple input and output programs. Do some currency conversion and figure out how many months it takes to pay off a credit card. Calculate blood alcohol content and determine if it's safe to drive. Replace words in files and filter records, and use web services to display the weather, store data, and show how many people are in space right now. At the end you'll tackle a few larger programs that will help you bring everything together. Each problem includes constraints and challenges to push you further, but it's up to you to come up with the solutions. And next year, when you want to learn a new programming language or style of programming (perhaps OOP vs. functional), you can work through this book again, using new approaches to solve familiar problems. What You Need: You need access to a computer, a programming language reference, and the programming language you want to use.




Entity Framework Core in Action


Book Description

Summary Entity Framework Core in Action teaches you how to access and update relational data from .NET applications. Following the crystal-clear explanations, real-world examples, and around 100 diagrams, you'll discover time-saving patterns and best practices for security, performance tuning, and unit testing. Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications. About the Technology There's a mismatch in the way OO programs and relational databases represent data. Entity Framework is an object-relational mapper (ORM) that bridges this gap, making it radically easier to query and write to databases from a .NET application. EF creates a data model that matches the structure of your OO code so you can query and write to your database using standard LINQ commands. It will even automatically generate the model from your database schema. About the Book Using crystal-clear explanations, real-world examples, and around 100 diagrams, Entity Framework Core in Action teaches you how to access and update relational data from .NET applications. You'l start with a clear breakdown of Entity Framework, long with the mental model behind ORM. Then you'll discover time-saving patterns and best practices for security, performance tuning, and even unit testing. As you go, you'll address common data access challenges and learn how to handle them with Entity Framework. What's Inside Querying a relational database with LINQ Using EF Core in business logic Integrating EF with existing C# applications Applying domain-driven design to EF Core Getting the best performance out of EF Core Covers EF Core 2.0 and 2.1 About the Reader For .NET developers with some awareness of how relational databases work. About the Author Jon P Smith is a full-stack developer with special focus on .NET Core and Azure. Table of Contents Part 1 - Getting started Introduction to Entity FrameworkCore Querying the database Changing the database content Using EF Core in business logic Using EF Core in ASP.NET Core web applications Part 2 - Entity Framework in depth Configuring nonrelational properties Configuring relationships Configuring advanced features and handling concurrency conflicts Going deeper into the DbContext Part 3 - Using Entity Framework Core in real-world applications Useful software patterns for EF Core applications Handling database migrations EF Core performance tuning A worked example of performance tuning Different database types and EF Core services Unit testing EF Core applications Appendix A - A brief introduction to LINQ Appendix B - Early information on EF Core version 2.1




Driving Digital Strategy


Book Description

Digital transformation is no longer news--it's a necessity. Despite the widespread threat of disruption, many large companies in traditional industries have succeeded at digitizing their businesses in truly transformative ways. The New York Times, formerly a bastion of traditional media, has created a thriving digital product behind a carefully designed paywall. Best Buy has transformed its business in the face of Amazon's threat. John Deere has formed a data-analysis arm to complement its farm-equipment business. And Goldman Sachs and many others are using digital technologies to reimagine their businesses. In Driving Digital Strategy, Harvard Business School professor Sunil Gupta provides an actionable framework for following their lead. For over a decade, Gupta has studied digital transformation at Fortune 500 companies. He knows what works and what doesn't. Merely dabbling in digital or launching a small independent unit, which many companies do, will not bring success. Instead you need to fundamentally change the core of your business and ensure that your digital strategy touches all aspects of your organization: your business model, value chain, customer relationships, and company culture. Gupta covers each aspect in vivid detail while providing navigation tips and best practices along the way. Filled with rich and illuminating case studies of companies at the forefront of digital transformation, Driving Digital Strategy is the comprehensive guide you need to take full advantage of the limitless opportunities the digital age provides.




Go in Action


Book Description

Summary Go in Action introduces the Go language, guiding you from inquisitive developer to Go guru. The book begins by introducing the unique features and concepts of Go. Then, you'll get hands-on experience writing real-world applications including websites and network servers, as well as techniques to manipulate and convert data at speeds that will make your friends jealous. Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications. About the Technology Application development can be tricky enough even when you aren't dealing with complex systems programming problems like web-scale concurrency and real-time performance. While it's possible to solve these common issues with additional tools and frameworks, Go handles them right out of the box, making for a more natural and productive coding experience. Developed at Google, Go powers nimble startups as well as big enterprises—companies that rely on high-performing services in their infrastructure. About the Book Go in Action is for any intermediate-level developer who has experience with other programming languages and wants a jump-start in learning Go or a more thorough understanding of the language and its internals. This book provides an intensive, comprehensive, and idiomatic view of Go. It focuses on the specification and implementation of the language, including topics like language syntax, Go's type system, concurrency, channels, and testing. What's Inside Language specification and implementation Go's type system Internals of Go's data structures Testing and benchmarking About the Reader This book assumes you're a working developer proficient with another language like Java, Ruby, Python, C#, or C++. About the Authors William Kennedy is a seasoned software developer and author of the blog GoingGo.Net. Brian Ketelsen and Erik St. Martin are the organizers of GopherCon and coauthors of the Go-based Skynet framework. Table of Contents Introducing Go Go quick-start Packaging and tooling Arrays, slices, and maps Go's type system Concurrency Concurrency patterns Standard library Testing and benchmarking




The Mikado Method


Book Description

Summary The Mikado Method is a book written by the creators of this process. It describes a pragmatic, straightforward, and empirical method to plan and perform non-trivial technical improvements on an existing software system. The method has simple rules, but the applicability is vast. As you read, you'll practice a step-by-step system for identifying the scope and nature of your technical debt, mapping the key dependencies, and determining the safest way to approach the "Mikado"—your goal. About the Technology The game "pick-up sticks" is a good metaphor for the Mikado Method. You eliminate "technical debt" —the legacy problems embedded in nearly every software system— by following a set of easy-to-implement rules. You carefully extract each intertwined dependency until you expose the central issue, without collapsing the project. About the Book The Mikado Method presents a pragmatic process to plan and perform nontrivial technical improvements on an existing software system. The book helps you practice a step-by-step system for identifying the scope and nature of your technical debt, mapping the key dependencies, and determining a safe way to approach the "Mikado"—your goal. A natural by-product of this process is the Mikado Graph, a roadmap that reflects deep understanding of how your system works. This book builds on agile processes such as refactoring, TDD, and rapid feedback. It requires no special hardware or software and can be practiced by both small and large teams. Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications. What's Inside Understand your technical debt Surface the dependencies in legacy systems Isolate and resolve core concerns while creating minimal disruption Create a roadmap for your changes About the Authors Ola Ellnestam and Daniel Brolund are developers, coaches, and team leaders. They developed the Mikado Method in response to years of experience resolving technical debt in complex legacy systems. Table of Contents PART 1 THE BASICS OF THE MIKADO METHOD Meet the Mikado Method Hello, Mikado Method! Goals, graphs, and guidelines Organizing your work PART 2 PRINCIPLES AND PATTERNS FOR IMPROVING SOFTWARE Breaking up a monolith Emergent design Common restructuring patterns




NoSQL for Mere Mortals


Book Description

NoSQL for Mere Mortals is an easy, practical guide to succeeding with NoSQL in your environment. Students are guided step-by-step through choosing technologies, designing high-performance databases, and planning for long-term maintenance. The author introduces each type of NoSQL database, shows how to install and manage them, and demonstrates how to leverage their features while avoiding common mistakes that lead to poor performance and unmet requirements. He uses four popular NoSQL databases as reference models: MongoDB, a document database; Cassandra, a column family data store; Redis, a key-value database; and Neo4j, a graph database.




Learning Progressive Web Apps


Book Description

Use Service Workers to Turbocharge Your Web Apps “You have made an excellent decision in picking up this book. If I was just starting on my learning path to mastery of Progressive Web Apps, there are not many folks I would trust more to get me there than John.” —Simon MacDonald, Developer Advocate, Adobe Software developers have two options for the apps they build: native apps targeting a specific device or web apps that run on any device. Building native apps is challenging, especially when your app targets multiple system types—i.e., desktop computers, smartphones, televisions—because user experience varies dramatically across devices. Service Workers—a relatively new technology—make it easier for web apps to bridge the gap between native and web capabilities. In Learning Progressive Web Apps, author John M. Wargo demonstrates how to use Service Workers to enhance the capabilities of a web app to create Progressive Web Apps (PWA). He focuses on the technologies that enable PWAs and how to use those technologies to enhance your web apps to deliver a more native-like experience. Build web apps a user can easily install on their local system and that work offline or on low-quality networks Utilize caching strategies that give you control over which app resources are cached and when Deliver background processing in a web application Implement push notifications that enable an app to easily engage with users or trigger action from a remote server Throughout the book, Wargo introduces each core concept and illustrates the implementation of each capability through several complete, operational examples. You’ll start with simple web apps, then incrementally expand and extend them with state-of-the-art features. All example source code is available on GitHub, and additional resources are available on the author’s companion site, learningpwa.com. Register your book for convenient access to downloads, updates, and/or corrections as they become available. See inside book for details.




NHibernate 3.0 Cookbook


Book Description

This book contains quick-paced self-explanatory recipes organized in progressive skill levels and functional areas. Each recipe contains step-by-step instructions about everything necessary to execute a particular task. The book is designed so that you can read it from start to end or just open up any chapter and start following the recipes. In short this book is meant to be the ultimate "how-to" reference for NHibernate 3.0, covering every major feature of NHibernate for all experience levels. This book is written for NHibernate users at all levels of experience. Examples are written in C# and XML. Some basic knowledge of SQL is assumed.