This site is all about being a graceful developer. What does “grace” mean, in the context of software engineering? In a nutshell, we think it means a stance and a mindset that embraces surprises, flows with them, and incorporates them into something beautiful. In the day-to-day and week-to-week work of software development, that means nurturing and participating in feedback loops.
We all know that the key to successful software development is iteration and feedback loops, whether that takes the form of the red-green-refactor cycle, or agile project planning. But not all feedback is equally valuable. What are the elements of the best feedback loops? What does it look like to have healthy feedback loops at every scope of software development?
This course starts with an archetype for desirable feedback loops: the humble Read-Eval-Print-Loop (REPL). We’ll talk about the history of REPLs and how they revolutionized early programming environments. We’ll examine the evolution of iterative feedback in software development processes, through the lens of “REPL nature”. We’ll talk about “scientific” processes, and why the proverbial theory/experiment cycle is not sufficient for good science or graceful software development.
Then, we’ll explore what makes for better feedback loops at every level of the software process, from building algorithms up to business intelligence. You’ll finish this course with a new rubric for evaluating and improving the iterative circles you work in every day.
NOTE: Unlike most courses on Graceful.Dev, this one is not video-centric. We’ll add videos as they make sense to enhance the material, but the primary format for topics will be essays.
This course is a Graceful.Dev Garden Path, meaning it is a suggested pathway through a curated selection of standalone topics. Its status is germinating: there’s a little bit of content here, and more is likely in future.