To learn software design skills as a researcher physicist, it's essential to understand that software design is best learned by doing and adapting to the social context of the project, rather than following formal rules or guidelines. Key recommendations include practicing, paying attention to boundaries, testing, and Conway's Law, and considering resources such as the Boundaries talk by Gary ...