Show HN: Lucidcode- A Copilot to Understand Codebases https://ift.tt/6ltIpPG
Show HN: Lucidcode- A Copilot to Understand Codebases Hello HN, I am building a devtool to understand existing codebases. The idea originates from my time at big tech as well as various attempts to get involved in open source projects. When I was in college I wanted to improve my coding skills by contributing to opensource projects. I would pickup a bug or feature request but I always found myself stuck at the very first step. I did not understood where and how to begin contributing. I once submitted a patch in firefox which was labeled "Good first issue" but that was still very handheld. The assigner told me exactly which files I need to update and what changes are needed. It took me a week to push the patch. But I didn't feel good about it because the guy could have done the same task himself in 10 minutes and he had to spend significantly more time telling me to what to do. Then for years, I made very few contributions and that too where I knew how the project is organized by working on it as part of my day job. I found similar issue while working at Amazon. Very often you need to work on projects handled by other teams or code which are not being maintained. And the problem boils down to where do I even begin. Which components are responsible for what. Once you understand that, it is significantly easier to figure out what needs to be done. Plus many big tech companies follow something called bus factor. The logic goes like like this: if one of the team mate is hit by a bus the development of the project should not stall. So you need to abandon project which you just understood well. So you often end working on new codebase all the time. Lucid code is my attempt to solve this problem. It helps you quickly figure out which parts of code are responsible for what. To test the utility of my tool, I decided to contribute to an opensource project which I was not familiar with and see how long that takes. I choose manim to do so. I was able to get a high level overview of the codebase in couple of hours. And I was able to create a custom animation in another hour or so. Biggest help I found was that at no point I was completely lost. As of now, the tool is not so good that helping you bug fixes as a lot of bugs are situational error(xyz happens when the value of abc is 123 etc). These are more suited to setting up the environment, firing up the debugger and reproducing the bug. But I have plans to extend tool to help in this kind of situation as well. I would love to get your feedback and suggestions. You can try the tool for free without the need of a signup. Please try it and let me know here or at pushpankar@lucidcode.ai. Thank you, Pushpankar https://ift.tt/YKEtG3g September 10, 2024 at 07:36AM
No comments