Home | Amazing | Today | Tags | Publishers | Years | Account | Search 
Grokking Simplicity: Taming complex software with functional thinking

Buy
Grokking Simplicity is a friendly, practical guide that will change the way you approach software design and development.

Summary
Distributed across servers, difficult to test, and resistant to modification—modern software is complex. Grokking Simplicity is a friendly, practical guide that will change the way you approach software design and development. It introduces a unique approach to functional programming that explains why certain features of software are prone to complexity, and teaches you the functional techniques you can use to simplify these systems so that they’re easier to test and debug.

Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications.

About the technology
Developers rightly fear the unintended complexity that infects most code. This book shows you how to write software that keeps complexity close to its inherent minimum. As you write software you should distinguish between code that alters your system’s state, and code that does not. Once you learn to make that distinction, you can refactor much of your state-altering “actions” into stateless “calculations.” Your software will be simpler.

About the book
The book also teaches you to solve the complex timing bugs that inevitably creep into asynchronous and multithreaded code. In ad­vanced sections of the book you learn how composable abstractions help avoid repeating code and open up new levels of expressivity.

What's inside
    Patterns for simpler code
    Powerful time modeling approaches to simplify asynchronous code
    How higher-order functions can make code reusable and composable

About the reader
For intermediate and advanced developers building complex software. Exercises, illustrations, self-assessments, and hands-on examples lock in each new idea.

About the author
Eric Normand is an expert software developer who has been an influential teacher of functional programming since 2007.

Table of Contents
1 Welcome to Grokking Simplicity
2 Functional thinking in action
PART 1 - ACTIONS, CALCULATIONS, AND DATA
3 Distinguishing actions, calculations, and data
4 Extracting calculations from actions
5 Improving the design of actions
6 Staying immutable in a mutable language
7 Staying immutable with untrusted code
8 Stratified design, part 1
9 Stratified design, part 2
PART 2 - FIRST-CLASS ABSTRACTIONS
10 First-class functions, part 1
11 First-class functions, part 2
12 Functional iteration
13 Chaining functional tools
14 Functional tools for nested data
15 Isolating timelines
16 Sharing resources between timelines
17 Coordinating timelines
18 Reactive and onion architectures
19 The functional journey ahead
(HTML tags aren't allowed.)

Integrated Operations in the Oil and Gas Industry: Sustainability and Capability Development
Integrated Operations in the Oil and Gas Industry: Sustainability and Capability Development
The concept of a capability platform can be used to argue how firms engage networked relationships to embed learning/performance into distinctive practices rather than focusing only on technology. In fact the capability language allows us to unpack the role of technology by emphasizing its interaction with people, process, and...
Clinical Cases in Psychiatry: Integrating Translational Neuroscience Approaches
Clinical Cases in Psychiatry: Integrating Translational Neuroscience Approaches

This case series book offers a practical and accessible approach to psychiatry, addressing major clinical problems ranging from psychosis to aging effects, each of which is tackled as it arises in everyday settings. With its emphasis on everyday practice strongly linked to underlying theory, the book combines clinical knowledge with...

Data Science Revealed: With Feature Engineering, Data Visualization, Pipeline Development, and Hyperparameter Tuning
Data Science Revealed: With Feature Engineering, Data Visualization, Pipeline Development, and Hyperparameter Tuning

This book introduces you to the world of data science. It reveals the proper way to do data science. It covers essential statistical and programming techniques to help you understand data science from a broad perspective. Not only that, but it provides a theoretical, technical, and mathematical foundation for problem-solving using data...


Learning in 3D: Adding a New Dimension to Enterprise Learning and Collaboration
Learning in 3D: Adding a New Dimension to Enterprise Learning and Collaboration

Praise for Learning in 3D

"Learning is the key to our future and powerful learning will result from immersive, interactive, and creative 3D designs. Tony O'Driscoll and Karl Kapp have written a disruptive book about a disruptive technology that we all need to explore. This is a must read!" —Elliott Masie, chair,...

Fourier Series and Orthogonal Polynomials (Dover Books on Mathematics)
Fourier Series and Orthogonal Polynomials (Dover Books on Mathematics)
This text illustrates the fundamental simplicity of the properties of orthogonal functions and their developments in related series. Begins with a definition and explanation of the elements of Fourier series, and examines Legendre polynomials and Bessel functions. Also includes Pearson frequency functions and chapters on orthogonal,...
Test and Analysis of Web Services
Test and Analysis of Web Services
The service-oriented approach has become more and more popular, now allowing highly integrated and yet heterogeneous applications. Web services are the natural evolution of conventional middleware technologies to support Web-based and enterprise-level integration.

The highly dynamic characteristics of service-oriented applications means...

©2021 LearnIT (support@pdfchm.net) - Privacy Policy