Subscribe: New: All Things O'Reilly
Preview: New: All Things O'Reilly

New: All Things O'Reilly

A resource for the developer who looks to O'Reilly as an independent source of information for open and emerging technologies

Last Build Date: Sat, 19 Aug 2017 04:20:40 PDT

Copyright: Copyright O'Reilly Media, Inc.

Lean Customer Development

Sat, 19 Aug 2017 04:30:40 PDT


How do you develop products that people will actually use and buy? This practical guide shows you how to validate product and company ideas through customer development research—before you waste months and millions on a product or service that no one needs or wants.

Unlocking Financial Data

Fri, 18 Aug 2017 20:31:47 PDT


Investors recognize that technology is a powerful tool for obtaining and interpreting financial data that could give them the one thing everyone on Wall Street wants: an edge. Yet, many don’t realize that you don’t need to be a programmer to access behind-the-scenes financial information from Bloomberg, IHS Markit, or other systems found at most banks and investment firms.

Fabric and Fiber Inventions

Tue, 15 Aug 2017 20:32:29 PDT


In this book you'll create your own fabric inventions as you learn to make wearables, playthings, and decorative items using textile arts--both old and new. Easy projects using will get you started knitting, adding color to your wardrobe with silkscreen and batik, and transforming old clothing into useful items. Then you'll find out how soft circuits can give your creations personality with light, sound, and motion. Fabric and Fiber Inventions will show you how to turn everyday materials into unique designs everybody will love.

Getting Started with Soldering

Mon, 07 Aug 2017 20:34:56 PDT


Getting Started with Soldering not only teaches new makers and experimenters the core principles of soldering, it also functions as an excellent reference and resource for beginners and more advanced makers alike. The book guides readers through the fundamentals of soldering, explains the tools and materials, demonstrates proper techniques, and shows how to fix mistakes or broken connections. It even includes guidance on more advanced techniques such as surface-mount soldering for electronics. From choosing the right soldering iron to making perfect connections, readers will acquire the knowledge and skills needed to form a strong foundation for a lifetime of making.

Programming Voice Interfaces

Fri, 04 Aug 2017 20:35:32 PDT


Get a step-by-step guide for developing voice interfaces for applications and devices connected to the Internet of Things. By allowing consumers to use natural human interactions, you can avoid awkward methods of input and interactivity to provide them with elevated user experiences. This practical book is ideal for software engineers who build applications for the Web, smartphones, as well as embedded systems that dominate the IoT space.

Functional Web Development with Elixir, OTP, and Phoenix

Tue, 01 Aug 2017 04:41:33 PDT


Elixir and Phoenix are generating tremendous excitement as an unbeatable platform for building modern web applications. Make the most of them as you build a stateful web app with Elixir and OTP. Model domain entities without an ORM or a database. Manage server state and keep your code clean with OTP Behaviours. Layer on a Phoenix web interface without coupling it to the business logic. Open doors to powerful new techniques that will get you thinking about web development in fundamentally new ways.

Node 8 the Right Way

Tue, 01 Aug 2017 04:42:33 PDT


Node is the platform of choice for creating modern web services. This fast-paced book gets you up to speed on server-side programming with Node 8, as you develop real programs that are small, fast, low-profile, and useful. Take JavaScript beyond the browser, explore dynamic language features, and embrace evented programming. Harness the power of the event loop and non-blocking I/O to create highly parallel microservices and applications. This expanded and updated second edition showcases the latest ECMAScript features, current best practices, and modern development techniques.

Learn Functional Programming with Elixir

Tue, 01 Aug 2017 04:43:33 PDT


Elixir's straightforward syntax and this guided tour give you a clean, simple path to learn modern functional programming techniques. No previous functional programming experience required! This book walks you through the right concepts at the right pace, as you explore immutable values and explicit data transformation, functions, modules, recursive functions, pattern matching, high-order functions, polymorphism, and failure handling, all while avoiding side effects. Don't board the Elixir train with an imperative mindset! To get the most out of functional languages, you need to think functionally. This book will get you there.

Functional programming offers useful techniques for building maintainable and scalable software that solves today's difficult problems. The demand for software written in this way is increasing - you don't want to miss out. In this book, you'll not only learn Elixir and its features, you'll also learn the mindset required to program functionally. Elixir's clean syntax is excellent for exploring the critical skills of using functions and concurrency.

Start with the basic techniques of the functional way: working with immutable data, transforming data in discrete steps, and avoiding side effects. Next, take a deep look at values, expressions, functions, and modules. Then extend your programming with pattern matching and flow control with case, if, cond, and functions. Use recursive functions to create iterations. Work with data types such as lists, tuples, and maps. Improve code reusability and readability with Elixir's most common high-order functions. Explore how to use lazy computation with streams, design your data, and take advantage of polymorphism with protocols. Combine functions and handle failures in a maintainable way using Elixir features and libraries.

Learn techniques that matter to make code that lives harmoniously with the language.

What You Need:

You'll need a computer and Elixir 1.4 or newer version installed. No previous functional programming or Elixir experience is required. Some experience with any programming language is recommended.

Python Testing with pytest

Tue, 01 Aug 2017 04:44:33 PDT


Do less work when testing your Python code, but be just as expressive, just as elegant, and just as readable. The pytest testing framework helps you write tests quickly and keep them readable and maintainable - with no boilerplate code. Using a robust yet simple fixture model, it's just as easy to write small tests with pytest as it is to scale up to complex functional testing for applications, packages, and libraries. This book shows you how.

Release It!

Tue, 01 Aug 2017 04:45:33 PDT


A single dramatic software failure can cost a company millions of dollars - but can be avoided with simple changes to design and architecture. This new edition of the best-selling industry standard shows you how to create systems that run longer, with fewer failures, and recover better when bad things happen. New coverage includes DevOps, microservices, and cloud-native architecture. Stability antipatterns have grown to include systemic problems in large-scale systems. This is a must-have pragmatic guide to engineering for production systems.

Programming Clojure

Tue, 01 Aug 2017 04:46:33 PDT


Drowning in unnecessary complexity, unmanaged state, and tangles of spaghetti code? In the best tradition of Lisp, Clojure gets out of your way so you can focus on expressing simple solutions to hard problems. Clojure cuts through complexity by providing a set of composable tools--immutable data, functions, macros, and the interactive REPL. Written by members of the Clojure core team, this book is the essential, definitive guide to Clojure. This new edition includes information on all the newest features of Clojure, such as transducers and specs.

The UI Patterns Workbook

Tue, 01 Aug 2017 04:47:33 PDT


This book is a concise guide to tested, proven design patterns for solving common recurring user interface problems, so that you don't have to reinvent the wheel and can instead focus on spending time on the truly unique parts of your designs. It will teach you how to find a pattern you can apply to a given UI problem. You'll learn how to deconstruct patterns in order to understand them in depth, discover how to use an internal pattern library, and how to spot anti-patterns. You'll also see how patterns can be mixed and matched to create easy-to-use interfaces.

  • Find the right pattern for your problem
  • Deconstruct patterns, and learn the best practices that inform them
  • Spot common anti-patterns

Zero to Maker

Tue, 01 Aug 2017 04:48:33 PDT


Zero to Maker is the career guide for the maker movement. Fun and readable, it's the fastest way to understand and join in our digital manufacturing future.

The book follows author David Lang's headfirst dive into the maker world and shows how he grew from an unskilled beginner to be a successful entrepreneur. You'll discover how to navigate this new community of makers, and find the best resources for learning the tools and skills you need to be a dynamic maker in your own right.

Lang reveals how he became a pro maker after losing his job, and how the experience helped him start OpenROV, a DIY community and product line focused on underwater robotics. It all happened once he became an active member of the Maker movement. Ready to take the plunge into the next Industrial Revolution? Now including full-color photos, this revised and updated guide provides a clear and inspiring roadmap.

  • Take an eye-opening journey from unskilled observer to engaged maker
  • Learn how to join this community, get access to tools and experts, and pick up new skills
  • Use a template for building a maker-based entrepreneurial lifestyle and prepare yourself for the careers of the future

  • Make: High-Power Rockets

    Tue, 01 Aug 2017 04:49:33 PDT


    Make: High-Power Rockets is for all the science geeks who look at the moon and try to figure out where Neil Armstrong walked, watch in awe as rockets lift off, and want to fly their own model rockets. Starting with an overview of mid- and high-power rocketry, readers will start out making rockets with F and G engines, and move on up to H engines.

    Testing in Go

    Mon, 31 Jul 2017 14:46:34 PDT


    Having access to a reliable and comprehensive test suite for your applications isn’t a luxury anymore—it’s a requirement. This video is the first in a series of "Testing in Go" videos that teach you how to test your Go applications and make certain that what you ship works the first time. Designed for basic or intermediate level Go developers who want to start writing tests, write better tests, or increase the coverage of their current test suites, this course provides complete step-by-step instruction on how to write testable code.

    • Learn all about Go's testing package and tools
    • Understand how to test code in Go with internal tests
    • Explore the mechanics of writing tests for your Go code
    • Discover how to simplify your Go test cases by using table-driven tests
    • Get exposed to Go's external tests and their usage
    • Learn to scope tests to cover your code and not the code in the standard library or other packages

    Brian Ketelsen is the founder of the Gopher Academy, the parent group that manages GopherCon, the Go programming language conference. A prolific open source enthusiast, he has contributed to many of Go's largest projects, including Docker, Kubernetes, etcd, SkyDNS, Kong, Go-Kit, and Goa. Brian holds a bachelor’s degree in computer science from American InterContinental University.

    Understanding Convolutional Neural Networks (CNNs)

    Mon, 31 Jul 2017 14:47:34 PDT


    Convolutional neural networks (CNNs) enable very powerful deep learning based techniques for processing, generating, and sensemaking of visual information. These are revolutionary techniques in computer vision that impact technologies ranging from e-commerce to self-driving cars. This course offers an in-depth examination of CNNs, their fundamental processes, their applications, and their role in visualization and image enhancement. The course covers concepts, processes, and technologies such as CNN layers and architectures. It also explains CNN image classification and segmentation, deep dream and style transfer, super-resolution, and generative adversarial networks (GANs). Learners who come to this course with a basic knowledge of deep learning principles, some computer vision experience, and exposure to engineering math should gain the ability to implement CNNs and use them to create their own visualizations.

    • Discover the connections between CNNs and the biological principles of vision
    • Understand the advantages and trade-offs of various CNN architectures
    • Survey the history and evolution of CNN's on-going development
    • Learn to apply the latest GAN, style transfer, and semantic segmentation techniques
    • Explore CNN applications, visualization, and image enhancement

    Nell Watson serves on the Faculty of AI & Robotics at Singularity University and is Dean of Cognitive Science at Exosphere Academy. She founded Poikos (now QuantaCorp), where she created a computer vision technology for body scanning using stereophotogrammetry techniques. Nell is a Fellow of the British Computing Society, a chartered IT professional, and a global lecturer on machine learning.

    Create an Azure SQL Data Warehouse in Minutes

    Mon, 31 Jul 2017 14:48:34 PDT


    Microsoft's Azure SQL Data Warehouse is a massively parallel processing (MPP) distributed database system that integrates across the Cortana Intelligence Suite platform. In this video, you'll learn about MPP, how to create a data warehouse instance in minutes, and how to establish supporting databases and tables. You’ll explore Azure SQL data warehouse's underlying architecture and learn how to adapt your data warehouse designs and loading strategies to take advantage of the scale that is available. The video includes a working case study that demonstrates the creation and loading of a data warehouse from start to finish. You’ll also learn how to utilize key features of Azure SQL DW and discover how to load, import, and export data using various methods.

    • Understand the concept of MPP—massively parallel processing
    • Explore the underlying architecture of the Azure SQL data warehouse
    • Learn how to create and populate an Azure SQL data warehouse instance
    • Learn how to create the supporting databases and tables
    • Discover ways to leverage the performance of Azure SQL Data Warehouse at scale

    Chris Testa-O'Neill works with the Cortana Intelligence Suite (CIS) and Microsoft R Server product lines as part of Microsoft's Analytics and Data Science team. A long term contributor to SQL Bits, Chris was a Microsoft Most Valuable Professional for six years and has authored a wide range of Microsoft Learning Experience courses since 2007.

    Information Management Using Azure Data Factory

    Mon, 31 Jul 2017 14:49:34 PDT


    Azure Data Factory (ADF) is a component of Microsoft's Cortana Intelligence Suite. It is a cloud-based data movement service that allows you to prepare, analyze, publish, and monitor your data, and run pipelines on a specified schedule. In this video, you’ll learn how to utilize all elements of the ADF to help you manage data at scale in the cloud and on premises. We’ll cover how to set up your environment to transfer data between your on-premise server, the Azure data store, and your Azure Machine Learning models, and how to use visualizations that indicate the lineage and dependencies between your data pipelines. You’ll also learn how to set up monitoring alerts so you can identify issues easily and quickly.

    • Understand how the ADF fits within the overall Cortana Intelligence Suite
    • Discover how the ADF is used to load and manage data
    • Learn to utilize visualizations that indicate lineage and dependencies between data pipelines
    • Discover how to set up monitoring alerts to identify pinpoint issues in the pipeline
    • Learn to create an ADF instance and load data into a SQL data warehouse using ADF
    • Explore methods for loading data into a machine learning model
    • Learn to create datasets, data pipelines, and linked services using ADF

    Chris Testa-O'Neill works with the Cortana Intelligence Suite (CIS) and Microsoft R Server product lines as part of Microsoft's Analytics and Data Science team. A long term contributor to SQL Bits, Chris was a Microsoft Most Valuable Professional for six years and has authored a wide range of Microsoft Learning Experience courses since 2007.

    Introduction to the Microsoft Cortana Intelligence Suite for Advanced Analytics

    Mon, 31 Jul 2017 14:50:34 PDT


    The Cortana Intelligence Suite is an advanced analytics platform designed for BI developers, data scientists, features engineers, and business analysts. This course provides a description of the technologies that make up the Cortana Intelligence Suite and an explanation of the Azure Team Data Science Process, a systematic approach to building intelligent applications that takes into account business understanding, data acquisition, modeling, and deployment. In addition, the course reviews four critical types of advanced analytics and demonstrates how each can be applied to business today.

    • Understand the Cortana Intelligence Suite technologies, their purposes, and relations to each other
    • Learn how to use the Azure Team Data Science Process to plan intelligent applications projects
    • Discover four key types of advanced analytics to consider when planning data projects

    Chris Testa-O'Neill works with the Cortana Intelligence Suite (CIS) and Microsoft R Server product lines as part of Microsoft's Analytics and Data Science team. A long term contributor to SQL Bits, Chris was a Microsoft Most Valuable Professional for six years and has authored a wide range of Microsoft Learning Experience courses since 2007.

    Learn How to Build Intelligent Data Applications With Amazon Web Services (AWS)

    Mon, 31 Jul 2017 14:51:34 PDT


    This course shows you how to use a range of AWS services to create intelligent end-to-end applications that incorporate ingestion, storage, preprocessing, machine learning (ML), and connectivity to an application client or server. The course is designed for data scientists looking for clear instruction on how to deploy locally developed ML applications to the AWS platform, and for developers who want to add machine learning capabilities to their applications using AWS services. Prerequisites include: Basic awareness of Amazon Simple Storage Service (S3), Elastic Compute Cloud (EC2), and Amazon Elastic MapReduce; as well as some knowledge of ML concepts like classification and regression analysis, model types, training and performance measures; and a general understanding of Python.

    • Understand how to use Amazon Web Service's best-in-class streaming analytics and ML tools
    • Learn about Amazon data pipelines: A very lightweight way to deploy an ML algorithm
    • Explore Redshift and RDS: Databases that stage input data or store model outputs
    • Discover Kinesis: A streaming data ingestion service that performs streaming analytical functions
    • Learn to apply streaming and batch analytical processing to prepare datasets for ML algorithms
    • Gain experience building ML models using Amazon Machine Learning and calling them using Python

    John Hearty is a data scientist with Relic Entertainment who specializes in using Amazon Web Services to develop data infrastructure and analytics solutions. He is the author or co-author of three highly regarded books on machine learning (e.g., Packt Publishing's "Advanced Machine Learning with Python") and holds a Master's degree in Computer Science from Liverpool John Moores University.

    Learning CSS Transitions

    Mon, 31 Jul 2017 14:52:34 PDT


    A link that underlines itself when you hover over it. A menu that flies in when you tap on a button. A word that gets bigger when you click it. These are just a few of the animation effects today's web developers employ to make a user interface (UI) more memorable, engaging, and fun. Designed for learners with a basic familiarity with CSS, HTML, and JavaScript, this course teaches you how to use CSS transitions, the tool that makes these types of animations possible.

    • Understand the different ways to animate CSS property changes
    • Learn how to control property changes caused by user interactions or by changes in code
    • Explore cubic-bezier timing functions and transition syntax
    • Understand the interplay between transitions and JavaScript
    • Gain experience creating UI animations like smooth sliding menus and more

    Kirupa Chinnathambi has spent most of his life trying to teach others to love web development as much as he does. When he isn't writing on or talking about web development, he spends his waking hours helping make the web more awesome as a program manager with the web platform team at Microsoft. Kirupa holds a Bachelor's degree in computer science from MIT.

    Making Things Smart

    Mon, 31 Jul 2017 14:53:34 PDT


    Making Things Smart teaches the fundamentals of the powerful ARM microcontroller by walking beginners and experienced users alike through easily assembled projects comprised of inexpensive, hardware-store parts.

    Current ARM programming books take a bland, textbook approach focused on complex, beginner-unfriendly languages like C or ARM Assembler. Making Things Smart uses Espruino (JavaScript for Hardware), flattening the learning curve.

    Project Management for Humans

    Mon, 31 Jul 2017 14:54:34 PDT


    Project management—it’s not just about following a template or using a tool, but rather developing personal skills and intuition to find a method that works for everyone. Whether you’re a designer or a manager, Project Management for Humans will help you estimate and plan tasks, scout and address issues before they become problems, and communicate with and hold people accountable.

    Functional Programming: A PragPub Anthology

    Mon, 31 Jul 2017 14:55:34 PDT


    Explore functional programming and discover new ways of thinking about code. You know you need to master functional programming, but learning one functional language is only the start. In this book, through articles drawn from PragPub magazine and articles written specifically for this book, you'll explore functional thinking and functional style and idioms across languages. Led by expert guides, you'll discover the distinct strengths and approaches of Clojure, Elixir, Haskell, Scala, and Swift and learn which best suits your needs.