An open-source developer gave a "best in class" answer to my bug report

 An open-source developer responded to a bug report in a way that has "I take engineering seriously" written all over it. I wish more software engineers gave this as their first response, including myself. This is the response I got from a platform-related defect.

That's certainly an issue! I'll try and add Windows to the CI tests so I can catch and fix these. I should be able to get to it later this week.

just updating to let you know that I'm working on this; the fix should be fairly simple, the harder part is just to get all the windows CI working so that I can confidently support windows/fix other issues that may come up. Should have a release done by end of weekend.

Why does this answer excite me?  

  • It isn't because they replied.  
  • It isn't because they take it seriously. 
  • It isn't because they are going to fix it. 
It excites me because 
  • They intend to fix it in a way that it never comes back and that provides a platform for future testing.

Chain of events to awesomeness

StepDiscussion
I opened a fairly specific bug report around software running on Windows when the development took place on Linux and Mac.The developer could have replied that they don't use Windows or that they didn't have time.  Both would have been valid.
The developer replied they would look into it and that they would add tests and CI This implies a whole level of software quality or software craft that is way better than the usual drop a code snippet in GitHub and write a blog. Only a couple of my projects have unit tests and none have CI?

There are a lot of professional in-house teams that would not jump to an end-to-end solution. How many times have you seen teams do the minimum fix with little or no testing or teams that don't have an interest in expanding their CI/CD environment for functional or additional testing?
The developer updated the bug report that they would consider this resolved when they had a CI environment and unit tests to support the platform.The developer provided an update. The update showed that it was only Done Done when they had tests and a test environment.

This means they know they don't functional regressions.

The actual defect

I reported a defect that the file path character "/" or "\" was incorrectly set when copying files from a windows machine to an SBC or Microcontrol in a Micropython environment.  File paths should have always been /pyboard/foo/bar and when copying from a windows machine they were copied as /pyboard\foo\bar

The actual effort 

  1. The developer created a Windows virtual machine.  
  2. Then they loaded a microcontroller simulator.  
  3. Then they loaded all the supporting libraries into that environment.  
  4. They integrated that virtual machine and emulator with their Continuous Integration / Continuous Development validation environment. 
  5. Then they created a fix on their local machine.  
  6. Committed the code to the repository and verified that their fix worked in the virtual machine and simulator created above.
  7. Set up the CI/CD so that it would spin up when they had future changes so that the test could verify nothing was broken.
  8. Communicated the status of the work and called out any additional issues that delayed the fix.  Most of the delays were in creating the CI/CD environment.

Revision History

Created 2023 01
Added "actual defect" and "actual" effort 2023 02

Comments

Popular posts from this blog

Installing the RNDIS driver on Windows 11 to use USB Raspberry Pi as network attached

Understanding your WSL2 RAM and swap - Changing the default 50%-25%

Almost PaaS Document Parsing with Tika and AWS Elastic Beanstalk