5 ms·
Hi HackerNews!! My name is Javier, and I've just finished a joint BSc degree in Computer Science and Mathematics. As my final degree project in Computer Scienc
by Javierd 5y ago
Hi HackerNews!!
My name is Javier, and I've just finished a joint BSc degree in Computer Science and Mathematics. As my final degree project in Computer Science I researched how to measure quality of software projects, and I created a tool to compare projects depending on the developer's needs or requirements. Once the tool was ready, I decided to make it accessible to everyone by creating a simple user interface and turning it into a free service.
The service itself is available at https://codekhana.xyz https://codekhana.xyz, but first, let me introduce it:
Codekhana offers a simple way for developers to evaluate and improve software quality. Analyze code, find its strengths and weaknesses, and calculate interesting metrics to score the projects according to the developer's priorities.
The collaborative ranking will allow developers to compare multiple libraries and decide which matches their needs best.
Developers can also analyze their private software projects by uploading zip files. Those repositories are not shared with any other user and can only be accessed by the uploader.
Currently, the supported languages are C, C++, Java, Python, and PostgreSQL, but we will be adding more, especially the more requested ones, so leave your comments below. GitHub private repositories and GitLab integration is also coming soon.
I'd love to hear your feedback, questions and suggestions below!
Furthermore, I'm looking for ways to monetize it by adding some more functionality. If somebody has an original idea, I'd love to hear it.
Thanks a lot and I really hope you like it!
- jka 5y agoHey Javier - nice project :) From an application developer perspective, I can see this being very useful when selecting dependencies, and especially when comparing between components that provide similar functionality. From a library author perspective, I have a question: if my component ranked badly on "complexity", for example, is there a way that codekhana could help me navigate to the particular directories/modules of the codebase where there are problems? (this could be a bit like disk usage analysis: for example, you learn that a filesystem consumes 20GB when it should only use 1GB, and so you want to find out where that extra disk usage is coming from)
- Javierd 5y agoI'm really glad you liked it! One of the main purposes was having the ability to compare dependencies and select the most appropriate ones. Answering your question, currently that option is not supported, but it's something I plan to add, so keep tuned!
- lewism 5y agoWell, it looks cool, but how does it work?
- karxxm 5y agoI second this question. Some background information would help. I won’t sign up without knowing what this platform is. Don’t get me wrong, the idea is cool, but just a little, not even to much details, can convince me
- Javierd 5y agoI just answered lewis, if you need more information, let me know. However, you can inspect and analyze open source projects by adding them to the ranking without needing to sign up.
- Javierd 5y agoDuring the analysis phase multiple tools such as pylint, cppcheck, bandit or PMD are used, along with Microsoft AppInspector and much more. We calculate a brunch of metrics that be used to determine certain aspects of software quality. In scientific literature quality is usually measured depending on the project priorities, that's why on the ranking there are three different options. On your custom projects you can weight every item depending on your requirements.