Show HN: We manage your code duplication. We want your bugs to stay fixed(qamine.com)
qamine.com
Show HN: We manage your code duplication. We want your bugs to stay fixed
http://www.qamine.com
20 comments
You just made my day, kind sir :)
We work really hard to hear these kinds of things. Thank you!
Can't decide if that went over your head or you're trolling back...
But seriously, this seems to be checking for the antithesis to good code and I imagine a lot of programmers here are thinking 'you shouldn't need it!'. So sell it a bit more as your website doesn't.
On the code bases you've beta tested this on, do you really identify this kind of percentage of replication? Isn't that a sign the code is bad and should be abstracted or does this help in another way?
I'd want to see some real life examples on your site somewhere on some public repos, where are they!
But seriously, this seems to be checking for the antithesis to good code and I imagine a lot of programmers here are thinking 'you shouldn't need it!'. So sell it a bit more as your website doesn't.
On the code bases you've beta tested this on, do you really identify this kind of percentage of replication? Isn't that a sign the code is bad and should be abstracted or does this help in another way?
I'd want to see some real life examples on your site somewhere on some public repos, where are they!
I've been finding that the messaging part is tricky. But you're right; we are still finding the perfect way for us to message what we do.
The thing is that, we've been finding that the average project on github (specially those using ruby and javascript) doesn't have a huge amount of code duplication (I'm really thinking about making a blog post about it). However we believe that there is duplicate code that:
1) You don't have time to refactor 2) The overhead of refactoring is too big
So for all these cases, we believe you should be able to live with the code you have and not make any inconsistencies.
Showing real life examples is definitely interesting.Will improve.
Thank you for this.
1) You don't have time to refactor 2) The overhead of refactoring is too big
So for all these cases, we believe you should be able to live with the code you have and not make any inconsistencies.
Showing real life examples is definitely interesting.Will improve.
Thank you for this.
Hi HN, I am working on debugging/log analysis service for developers that is designed to plug into continuous integration and act as the first filter for incoming crash/exception logs.
My submission never made it to HN front-page, but I would love any feedback on it. It's at www.bisect.cc. Thanks.
(Jaime, your service is really the kind of functionality that is missing from dev toolbox. Great job at solving real-world problems!)
My submission never made it to HN front-page, but I would love any feedback on it. It's at www.bisect.cc. Thanks.
(Jaime, your service is really the kind of functionality that is missing from dev toolbox. Great job at solving real-world problems!)
Hey sax, I have a comment. Most people will stop reading at:
Bisect allows users to test program state against expected values. Tests results are used as bisection READING STOPS HERE points to narrow-down towards the root-cause of the underlying issue.
The top three paragraphs still don't really explain what this does. Summarize, and show an example. That way, people will use it and come back to it.
Bisect allows users to test program state against expected values. Tests results are used as bisection READING STOPS HERE points to narrow-down towards the root-cause of the underlying issue.
The top three paragraphs still don't really explain what this does. Summarize, and show an example. That way, people will use it and come back to it.
Nayefc, thanks. Your comment was enlightening and makes total sense. Will fix.
Thank you sir. Glad to have you on board of this post :D
The more the merrier.
Sounds like a great service...my only suggestion for the launch page is to show some examples of what the service will flag...I have a good idea of what it might catch but I'm sure you have even more interesting examples
That's a great idea. We want to add an interface screenshot or a demo to the first screen. However, we had a tradeoff between what is more clean and what gives more information. We will be revising that to give more information.
Thank you for your words!
Hi! I'm Jaime and me and my team built this.
Please bear with us since it's our first big opening on hacker news and our servers are kinda smallish.
If you can't register your projects don't worry as everything is recorded and I will try to personally attend every one. Eventually it will start analyzing.
Working non stop to serve you :)
I've been using QAmine for a while now, and honestly you don't realise how much you need this until you use it. It finds stuff you will never find. I can see this becoming essential to my workflow.
Awaiting a Sublime Text plugin or growl integration, as email is not really in my workflow.
Awaiting a Sublime Text plugin or growl integration, as email is not really in my workflow.
So you're the one!
Aha, awesome stuff. Thank you for your love. Please let me know if you ever need anything ([email protected]/jaime.fjorge) If Qamine is essential to you, I would love to give you extra credit/bugs and a hug for that testemonial.
Thank you for sharing the love!
Aha, awesome stuff. Thank you for your love. Please let me know if you ever need anything ([email protected]/jaime.fjorge) If Qamine is essential to you, I would love to give you extra credit/bugs and a hug for that testemonial.
Thank you for sharing the love!
Looks cool, is there Python or BitBucket support coming soon?
We actually support python experimentally. I forgot to add Python and Objective C to the web site. Please feel free to try it on your python repos (I apologize in advance for any delays in the analysis)
Wow, your servers must really be getting pounded right now. A much better problem then no traffic at all.
Congratulations!
A few commments:
1) When you first login, I have no idea what to do. When I clicked on my profile, the tour kicked in and was very helpful. Why no tour on the first screen?
2) The red X button for each repository is a little weird. It makes it look like the repository isn't eligible, or there's an error. Probably should do something different there.
3) When I click the red X button it turns blue with a clock icon, and then after some time turns back to the red button again. As a user I have no idea what's happening. As a dev, I can only imagine you're getting pounded and something's failing in the background.
Congratulations!
A few commments:
1) When you first login, I have no idea what to do. When I clicked on my profile, the tour kicked in and was very helpful. Why no tour on the first screen?
2) The red X button for each repository is a little weird. It makes it look like the repository isn't eligible, or there's an error. Probably should do something different there.
3) When I click the red X button it turns blue with a clock icon, and then after some time turns back to the red button again. As a user I have no idea what's happening. As a dev, I can only imagine you're getting pounded and something's failing in the background.
Thank you. The engineer is me is screaming while the other quarter is happy for the attention :)
Regarding your points:
1) You're right. This is our first iteration of our UI. We need to work on that. However we should have a small tour on the first screen.. I'll check it afterwards
2) Indeed it is. Some users (very recently) told me that it looks like the repo is on by default. We need to change that. Good spot.
3) It tries to register with my code analysis server. But because it's burning up with so many requests, it times out.
Sorry about that. We will increase the capacity for situations like these.
Thanks for the feedback. I'll try to spot your registrations and make them work.
Thanks for the feedback. I'll try to spot your registrations and make them work.
A few little things that could help it:
1) When I signed in, there were initially no projects shown. I had to refresh to see anything.
2) When I click to start analysis, the application just loads... for ages and then crashes ('An error occurred in the application and your page could not be served. Please try again in a few moments.') I'm sure that's just teething issues, but it would be nice to have some kind of ajax loading icon to show the application is thinking :-)
1) When I signed in, there were initially no projects shown. I had to refresh to see anything.
2) When I click to start analysis, the application just loads... for ages and then crashes ('An error occurred in the application and your page could not be served. Please try again in a few moments.') I'm sure that's just teething issues, but it would be nice to have some kind of ajax loading icon to show the application is thinking :-)
Great feedback.
Sorry about both of those. The first one is because it takes a little amount of time to get the repos from github.
The second one is because people are signing in like crazy. Really sorry. one the next few day everything should be working properly.
Thank you for the time to write that.
Thank you for the time to write that.
Thanks! No worries. It's a cool product keep it up :-)
From a UX perspective, I don't think anyone in your target audience would have a problem with the fact that it takes a little time to pull the repo. I'd just add a small badge that says something along the line of "Give us just a minute, we're still synchronizing your repositories." If the sync time is suitably short, you could even autorefresh every few seconds.
Check out CloudFlare - they do a great job with this exact situation in their record import screen.
Check out CloudFlare - they do a great job with this exact situation in their record import screen.
$200/month sounds like a lot of money for just code duplication. Something like Sonar (http://www.sonarsource.org/) goes a long way and has a lot more code quality rules than just code duplication. There are a lot more indicators to good code than just duplication. Guess hosted is the way to go these days.
This is the value for our subscription. However we have a starting plan that is free for you to use up to 5 issues per month.
What we have seen is that startups don't have more than 5-10 clone detection inconsistency issues. So we want basically to provide that value for you for free. And, as soon as you outgrow that number because you have 1) a larger team 2) more code, you will be able to afford the subscription.
What we have seen is that startups don't have more than 5-10 clone detection inconsistency issues. So we want basically to provide that value for you for free. And, as soon as you outgrow that number because you have 1) a larger team 2) more code, you will be able to afford the subscription.
I would like to see one of these tools start supporting some other hosting option than Github.
We will eventually support bitbucket.
We would love to also support tools that are closer to us (like IDEs for instance) and continuous integration tools.
Thanks for the feedback!
Thanks for the feedback!
This is a great example of awesome support. Look at Jaime's responses in this thread. He's handled everything perfectly. It barely even matters that this is a really cool idea just waiting to get gobbled up by Github.
Perfect would have been to have my servers responding better to this stress. But hey.. we're learning to make it better next time.
Thank you for your kind words!
Thank you for your kind words!
Just getting "Invalid result from WS" after selecting a private repo.
Also, the product tour really isn't very useful at three steps. Seems like a more streamlined 'onboarding' experience is what you are after.
Also, the product tour really isn't very useful at three steps. Seems like a more streamlined 'onboarding' experience is what you are after.
Sorry, the servers are already at full capacity.
However, I registered your repo registration.
Thanks for the feedback. That's exactly what I'm looking for.
Thanks for the feedback. That's exactly what I'm looking for.
I was about to sign up, and the auth page said "update your public and private repos"
is this a github default? Because I now simply dont know exactly what oAuth I am giving away so I dont want to give it.
help?
is this a github default? Because I now simply dont know exactly what oAuth I am giving away so I dont want to give it.
help?
We will never update your private repos.
what we do is we add a robot account that listens to your commits. We never commit anything yourselves.
I will add a panic button to the interface so that every time you want, you will be able to opt out and all your code is deleted from my code analysis server.
Here's my email and skyp: [email protected] jaime.fjorge Feel free to contact me regarding that.
I guess this is more an issue with GitHub OAuth permissions which are not fine grained enough. What you want is read-access to all repositories.
I would not give anyone access to all my private repositories, however.
I would not give anyone access to all my private repositories, however.
SVN support would be great. We run an ops consultancy business, I can think of a few customers who could really do with this tool, but all of them use svn.
I suspect this isn't a coincidence.
I suspect this isn't a coincidence.
Excellent point.
SVN is definitely also on our roadmap. A couple of companies already asked for it. We already have a prototype version of SVN integration running..
Would love to have it running on your clients. Let's talk about it ([email protected])
SVN is definitely also on our roadmap. A couple of companies already asked for it. We already have a prototype version of SVN integration running..
Would love to have it running on your clients. Let's talk about it ([email protected])
Quick Update: My mongo instance on the code analysis server failed. Need to restart it. Sorry for the lack of results. Working on it.
Great project that Jaime have in his hands. I used myself on my RoR projects and it's very useful. Nice work, keep it up ;)
Looks like it only pulled in some of my repos, but many are missing from the list. Is there a way to refresh the list?
If you added new repos, please sign out and sign in (sorry for the hack) as it will pull again your repo list.
Other wise, please email me: [email protected] And I will help you sort that out.
My personal private repos are missing, but some private repo's I've clone show.
For PHP, why would we use your service over PHPCPD and PHPMD?
Great question.
Those tools evidence your code duplication (saying the lines and code regions). We, however, show you when those code regions were changed inconsistently.
We basically want to show you the effects of code duplication by introducing time whereas those tools don't have the concept of time.
If you ran those tools every single time you commit to see if you forgot to change a code region, you don't need us. If you're interested in having that ran for you, that's where we come in.
Thank you for your question. I hope to have answer it?
Those tools evidence your code duplication (saying the lines and code regions). We, however, show you when those code regions were changed inconsistently.
We basically want to show you the effects of code duplication by introducing time whereas those tools don't have the concept of time.
If you ran those tools every single time you commit to see if you forgot to change a code region, you don't need us. If you're interested in having that ran for you, that's where we come in.
Thank you for your question. I hope to have answer it?
Any idea when you'll support Bitbucket?
In some months from now. If there are enough people to use it, it will be faster.
Because it is growing, however, I can assure you that it will be our next integration :) Sign up (or ping me: [email protected]) and I'll update you.
Thanks for the interest!
Because it is growing, however, I can assure you that it will be our next integration :) Sign up (or ping me: [email protected]) and I'll update you.
Thanks for the interest!
Thanks! Can't wait to try it.
awesome support by @jaimefjorge here on HN. Good job and congrats on the product... love it! Don't get gobbled up by Github just yet ;)
Objective C?
We support it. Just forgot to list it on the web site.
Be sure to register.
I heard if you don't repeat yourself then you don't run into this kind of thing, but agile startup nodejs ninjas have no time for that