Introduction
YAML stands for YAML Ain't Markup Language. It is a very popular data serialization format for storing configuration data or exchanging data between people and computers. It is more human readable and concise than XML or JSON. It has now became a key technology for creating complex configurations in various modern technologies like automation, testing, containerization, cloud (AWS, Azure or GCP) deployment, DevOps, etc. Why Learn YAMLLearning about YAML would be very beneficial for today's software engineers. Below is list of some of the popular software tools and frameworks that make extensive use of YAML data format.
- DevOps - CircleCI, Travis CI, Azure DevOps, Jenkins X
- Frameworks: Spring Boot,
- Automation: Chef Automate, Ansible
- Container: Docker, Kubernetes
- Documentation: Swagger,
- and many more..
Who this book is for
If you looking to build expertise in using YAML for your projects? Then this book is right for you.
This book is for developers of all skill levels who wish to stay up to date with YAML. This book is intended for Software Engineers, Full Stack Web Developers, DevOps Engineers, Software Architects, Managers, and anyone who wants to learn about YAML.The main objective of this book is to give you a foundation for using YAML. To do that, it takes you on a journey where we start with basic concepts of data serialization then gradually explore more advanced topics like YAML syntax, anchors, etc.
The following topics will be covered: You will also get to know about various parsers and emitters available in the modern programming languages and list of various tools which are leveraging YAML technology.- Basic concepts and syntax of YAML, including how to use indentation in YAML documents.
- YAML vs JSON and XML and why you should use YAML?
- Using simple and complex data types like list and a key-value pair (or mapping)
- Using advanced features like anchors in a YAML
What you will learn
This book will cover everything you need to know about YAML. It will go through the syntax of this language in detail as per the latest YAML 1.3 Specification and also cover the fundamental principles behind it and how it works. It will also explore several YAML features that include:
- scalar data types (i.e., strings and numbers)
- containers (a list of elements)
- rich data types (i.e., dates and times)
- anchors (a way to create links in YAML documents)
After reading this book, you will be able to:
- Understand what YAML is and how it works
- Know the differences between XML, JSON and YAML
- Learn the basics of the YAML syntax
- Use YAML in your projects to serialize and deserialize data
- Know what tools are available to work with YAM
- Learn how to use anchors in a YAML document
Hi! My name is Tarun Telang. I am a software engineering leader with over 17 years of experience in the software industry. I've worked with some of the world's most renowned software development firms like Microsoft, Oracle, BlackBerry and SAP. I am also having thorough experience working with projects using agile methodologies (including user-centric & mobile first design) and managing cross-functional multi-site teams.
For more than 15 years I have been presenting at conferences related to software technology, actively writing technical articles and blogs to help everyone improve their understanding of key concepts of the software technology.
I hope you will enjoy reading this book as much as I enjoyed writing it. If you have any feedback, feel free to shareHappy YAML'ing!