Home / Companies / Gremlin / Blog / February 2021

February 2021 Summaries

3 posts from Gremlin

Filter
Month: Year:
Post Summaries Back to Blog
In the "Break Things on Purpose" podcast episode, Veronica Lopez, a Senior Software Engineer at Digital Ocean, shares her experiences with distributed systems and chaos engineering. The conversation highlights her journey as one of the early adopters of Golang in Mexico, dealing with unexpected scaling issues during a bank's rewards program, and how it led to a deeper understanding of distributed systems. Veronica discusses the importance of fault tolerance, particularly through languages like Erlang and Elixir, which inherently support fault-tolerant architecture due to their origins in telecommunications. She emphasizes the need for balancing swift deployment with robust fault tolerance strategies and advocates for learning from past failures to build resilient systems. The episode also touches on her excitement about solving unique infrastructure challenges at Digital Ocean, encouraging developers to explore existing solutions and innovate within their technical landscapes.
Feb 25, 2021 5,057 words in the original blog post.
Fault injection is a technique used to introduce deliberate failures into systems to test their resilience, originating from hardware testing where engineers subjected devices to harmful conditions to gauge their functionality under stress. Over time, this practice evolved into software fault injection, allowing engineers to simulate faults in applications and test error-handling mechanisms. Notably, Netflix's Chaos Monkey and Failure Injection Testing (FIT) platform popularized the application of fault injection in cloud infrastructures, laying the groundwork for modern Chaos Engineering. Chaos Engineering extends fault injection by using it strategically to observe system responses to controlled failures, thereby enhancing reliability. Tools like Gremlin support this by offering structured failure simulations, helping organizations uncover and address potential failure modes, validate monitoring and incident response processes, and reduce the risk of production outages. Ultimately, fault injection aims to improve system reliability by identifying vulnerabilities that traditional testing might miss and preparing teams to effectively handle real-world failures.
Feb 16, 2021 1,152 words in the original blog post.
In the episode of the "Break Things on Purpose" podcast, Steve Francia, Google's Product and Strategy Lead for the Go programming language, discusses his journey in open source software and the development of Hugo, a static site generator. Francia shares how his desire to minimize time spent on WordPress updates led him to create Hugo using Go, which offered faster performance than existing options like Jekyll. He emphasizes the importance of embracing Go's simplicity and learning its idiomatic practices, recommending resources like the Go standard library and learn.go.dev for new learners. Francia also reflects on the challenges and insights gained from transitioning from a community member to a core team member, highlighting the importance of maintaining stability in Go by being selective about changes and contributions. He underscores how this approach ensures a high-quality, reliable core while balancing the need to foster an engaged contributor community.
Feb 10, 2021 2,518 words in the original blog post.