Home / Companies / Honeycomb / Blog / Post Details
Content Deep Dive

We Learn Systems by Changing Them

Blog post from Honeycomb

Post Details
Company
Date Published
Author
Jessica Kerr (Jessitron)
Word Count
604
Language
English
Hacker News Points
-
Summary

Gaining an understanding of a system, whether it be code or broader social systems, requires active participation and change, as posited by Michael C. Jackson in relation to Kurt Lewin's work on Critical Systems Thinking. This approach contrasts with traditional hard science, which studies systems externally, while in social systems and coding, one becomes part of the system they are studying. By making deliberate changes to a codebase, testing, documenting actions through version control, and analyzing the effects, developers can integrate themselves with the code to better understand and improve it. The process involves close analysis of the situation, documenting changes, continuous monitoring, and careful analysis of outcomes. This iterative process mirrors action research, emphasizing the need for careful documentation and monitoring to ensure desired effects are achieved, particularly as demonstrated in practical applications like those at Honeycomb. Through this participatory approach, developers not only enhance the software's performance but also gain a deeper understanding of the system, which encompasses the code, its users, and the developers themselves.