Project Reliability Engineering: Pro Skills for Next Level Maker Projects
- 3h 52m
- Eyal Shahar
- Apress
- 2019
Turn your projects from a weekend hack to a long-living creation! Loosely drawing from the field known in large software companies as Site Reliability Engineering (SRE), this book distills from these disciplines and addresses issues that matter to makers: keeping projects up and running, and providing means to control, monitor, and troubleshoot them.
Most examples use the Raspberry Pi, but the techniques discussed apply to other platforms as well. This book is all about breadth, and in the spirit of making, it visits different technologies as needed. However, the big goal in this book is to create a shift in the reader’s mindset, where weekend hacks are pushed to the next level and are treated as products to be deployed. In that regard, this book can be a stepping stone for hobbyist makers into developing a broader, professional skill set.
First, the book describes techniques for creating web-browser based dashboards for projects. These allow project creators to monitor, control, and troubleshoot their projects in real-time. Project Reliability Engineering discusses various aspects of the process of creating a web dashboard, such as network communication protocols, multithreading, and web design, and data visualization.
Later chapters cover configuration of the project and the machine it’s running on, and additional techniques for project monitoring and diagnosis. These include good logging practices; automatic log and metrics monitoring; and alerting via email and text messages;
A mixture of advanced concepts forms the last chapter of the book, touching on topics such as usage of microservices in complex projects; debugging techniques for object-oriented projects; and fail-safing the project’s software and hardware.
What You’ll Learn
- Monitor and control projects, keep them up and running, and troubleshoot them efficiently
- Get acquainted with available tools and libraries, and learn how to make your own tools
- Expand your knowledge in Python, JavaScript and Linux
- Develop deeper understanding of web technologies
- Design robust and complex systems
Who This Book Is For
Members of the maker community with some development skills.
About the Author
Eyal Shahar is currently based in San Francisco, where he works as an exhibit developer in the New Media Department at the Exploratorium. Eyal started his career as a professional musician, working with some of Israel's most prominent artists for over a decade. His software and hardware engineering experience includes positions in music and art related startups in Tel Aviv, Paris, and San Francisco. Eyal has a B.Sc. in Electrical Engineering from the Tel Aviv University and a Master's in Media, Arts and Sciences from the MIT Media Lab.
The exhibits Eyal makes are strange hybrids: like a maker’s project, they are usually one-offs, often consisting of patches of software written in haste, skipping over industry standards such as passing unit-tests and following design documents. On the other hand, because they live on a museum floor, they must be rock solid. As he developed techniques to monitor and stabilize his exhibits, Eyal realized he was also applying these methods on his personal projects. Eyal is excited at the prospect of making these available to the rest of the maker community.
In this Book
-
The Case for Object-Oriented Programming
-
Our First Web Dashboard
-
The Live Dashboard
-
Dashboard Design
-
Project Configuration
-
Machine Setup
-
Logging
-
Advanced Logging, Monitoring, and Alerting
-
Best Practices