TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Show HN: Code Climate for JavaScript

63 pointsby brynaryover 11 years ago

13 comments

ianstormtaylorover 11 years ago
Love the idea for the tool, and happy to see it support Javascript. Some feedback:<p>- Let open-source projects still live under an account, instead of being weirdly separated. Just oauth with Github and automatically lint all of my repos. I definitely wouldn&#x27;t mind getting an email for all of them. You&#x27;re making way more work for yourself by splitting open-source vs. private, when I don&#x27;t think you gain much. Companies will still have to use the private system. Look at Travis for a better example of how to do this. This is critical to me using the product, I don&#x27;t want to have to remember the link to these things every time.<p>- Call it &quot;open-source&quot; not &quot;OSS&quot;. Unnecessary abbreviations are confusing. I don&#x27;t ever refer to it as &quot;OSS&quot;, but I&#x27;m sure the people who do still understand &quot;open-source&quot;.<p>- The other benefit to letting me actually have an account for open-source things is that I don&#x27;t have to see the annoying marketing bar all the time when visiting my own repo.<p>- Even though that solves the marketing bar, get rid of the marketing bar. It&#x27;s by far my most hated &quot;feature&quot; of most sites, and I would feel pretty comfortable saying that since your target audience is developers most of them probably aren&#x27;t fans.<p>- The other benefit is that the ignoring patterns don&#x27;t need to be migrated over, they&#x27;re just there. (You&#x27;ll see this pattern a lot, because separating open-source out is a bad abstraction in your app&#x27;s design, so it will lead to tons of other random problems and extra work. I&#x27;m literally doing this right now for Segment.io -- moving from &quot;projects&quot; that exist by themselves to &quot;users&quot; and &quot;organizations&quot; that contain them.)<p>- Have an option not to lint. The linter options are really strict, I use a very lax version of JSHint in Sublime, but I don&#x27;t use .jshintrc because I don&#x27;t want extra bloat files in my repos.<p>- It seems like every time I want to add a new open-source repo I have to navigate to the pricing page a click a tiny link... (If I&#x27;m actually able to have an account for open-source projects, that wasn&#x27;t clear at all from the landing page, it looks like signing up is only if I want to pay for a private team account.)<p>- Add a link to your homepage on your blog. (The old classic.)<p>- Don&#x27;t make your min-width so wide. I mean I&#x27;m a dev with a huge monitor and still I had to open up my window to not feel claustrophobic. No page in your app needs to require that much space. Cutting off source at ~80 characters is perfectly fine. (Actually, lots of your internal pages could benefit from having less space instead.)<p>- Make your climate badge look nicer. Travis&#x27;s badges are disgusting, so no need to copy them exactly ;) (Retina would be nice!)<p>- If the &quot;view on github&quot; button is important (I think it is) then make it look important. I had no idea what it did until clicked it because the icon doesn&#x27;t communicate much. (Plus that &quot;g&quot; is from their old wordmark.)<p>- The search by class name, badge and tweet button are all different sizes so they feel very awkward next to each other.<p>- The site is really slow. It takes ~5 seconds to navigate from the feed page to an individual file by pressing the graph. And around 1 second to &quot;view more&quot; on the snippets of code. Generally this just makes me frustrated and less happy to use the product. (The importance of this is often underrated, I know because our own dashboard has this exact problem.)<p>- Come up with a layout that doesn&#x27;t need to have the repo name overflow with ellipsis. That&#x27;s pretty much one of the most important pieces of text on the page, so it&#x27;s not okay to truncate it.<p>- Get a yellow with more orange in it for &quot;C&quot;. Then it would be possible to still use a white letter. This way your highcharts graphs don&#x27;t break since the labels are all white there.<p>- Be more consistent with your color scheme. The greens and yellows on the tour page aren&#x27;t the same as the in the grading. And they&#x27;re also different from the colors in the source view. And they&#x27;re different from the colors in pricing?<p>- Heyo! Just found the &quot;Solo Plan&quot;, op, nope that doesn&#x27;t solve my problem nevermind.<p>- There&#x27;s probably a more understandable way to organize the table of files by the way they are nested in the codebase. you might want a sort of Github file navigator instead. Or at least files that are in the same folder shouldn&#x27;t be bisected by files that aren&#x27;t.<p>- I have no idea what the complexity numbers mean. Or the duplication numbers (is that lines of code duplicated?) Or the churn numbers. Or what &quot;C&#x2F;M&quot; means. Or the smell numbers. Or why smell is a category, since aren&#x27;t all of these code smell? Should it be lint instead?<p>- Having a file navigator would eliminate the need for paging the files. (Really strongly suggest a file navigator because it will feel very nice to browse the same way as on Github. I don&#x27;t need to see every single file up front. I can just browser through my repo like normal. And then the bad ones are called out on the feed page.<p>- The refresh button is also confusing, why is the commit shown? (I know why now, but in its current state it&#x27;s un-obvious, slash ugly.)<p>- Don&#x27;t abbreviate &quot;Complexity per Method&quot; to &quot;Complexity &#x2F; M&quot; just to then have a tooltip on hover that says &quot;Complexity per Method&quot;.<p>- Lines of code count seems broken. Lines of code per method also just shows exactly the same as LOC, which also seems broken. Same with method count. (for <a href="https://codeclimate.com/github/segmentio/analytics.js/lib/integrations/spinnakr.js" rel="nofollow">https:&#x2F;&#x2F;codeclimate.com&#x2F;github&#x2F;segmentio&#x2F;analytics.js&#x2F;lib&#x2F;in...</a>)<p>- Breakdown over time graph is probably better visualized as a percentage-based stacked area plot.<p>- Churn vs. quality seems pretty useless to me. Can&#x27;t think of why that will help.<p>- GPA is a really bad metric. My co-founder asked (is a low GPA good? because the connection to school GPA isn&#x27;t clear) Just give me an overall grade like &quot;D&quot; for the repo instead. You can still plot the real number over time but I don&#x27;t need to know about it.<p>Hope some of that helps! The product seems very promising. The actual (non-lint) smells it finds are usually pretty good from what I can tell.
评论 #6608516 未加载
cocoflunchyover 11 years ago
Looks nice, but I&#x27;m not sure what to make of this when underscore.js has a 0.0 score (<a href="https://codeclimate.com/github/jashkenas/underscore/trends" rel="nofollow">https:&#x2F;&#x2F;codeclimate.com&#x2F;github&#x2F;jashkenas&#x2F;underscore&#x2F;trends</a>).
评论 #6606733 未加载
评论 #6607901 未加载
bergieover 11 years ago
Looks interesting, but is unfortunately not that useful for projects that include either build artifacts or external dependencies in their repositories. It would be awesome if it utilized some sort of <i>ignore</i> syntax for those.
评论 #6606145 未加载
richthegeekover 11 years ago
This would be great to try out, but unfortunately it doesn&#x27;t seem to work on my code structure!<p>Most of my projects are CoffeeScript residing in &#x2F;src, compiling into an identical structure in &#x2F;lib.<p>I tried it with a small project, and it only picks up the index.js (which is an example script):<p><a href="https://bitbucket.org/bithiive/authio-js-client/" rel="nofollow">https:&#x2F;&#x2F;bitbucket.org&#x2F;bithiive&#x2F;authio-js-client&#x2F;</a><p>Any ideas on what is going on here? Perhaps the &quot;avoiding minified files&quot; is getting in the way?
评论 #6606628 未加载
gavingmillerover 11 years ago
We use Code Climate for Ruby and were in on the alpha for JavaScript. It is an amazing product, the support is great, and I can&#x27;t recommend it enough!!
评论 #6606267 未加载
scrabbleover 11 years ago
Looking at the Code Climate page it has taken me a while to figure out what Code Climate actually is, and I&#x27;m still not terribly sure.<p>It&#x27;s also given me the thought that a site where people can sign up to submit code for review and have their code reviewed by someone, which might work well for single developers or very small teams.
评论 #6606347 未加载
nonchalanceover 11 years ago
There are some issues which make me question the usefulness for a javascript project:<p>For browser-based scripts, usually a minified and an unminified version are made available. That unminified version is usually the product of a script that concatenates other, smaller scripts. This leads to a perceived high level of duplication (because, after all, they are the same functions and code). For whatever reason, even in private mode, the exclude patterns are not followed.<p>Also, the linter is much more aggressive than jshint&#x2F;jslint (in many cases, for no good reason). For example, in a function whose sole purpose is to do bit twiddling (interpreting a set of bytes as an IEEE 754 double), the linter complains `Unexpected use of &#x27;&amp;&#x27;`. (the original line was `c3 = (e3 &amp; 3) &lt;&lt; 6 | e4;`). Akin to JSHint flags, there should be flags to control the linter.
评论 #6606763 未加载
Segmentationover 11 years ago
I see jQuery in the example. Since jQuery is open source, can we see the jQuery Code Climate page? Or is it private? (and why?) Maybe I&#x27;m just misunderstanding.<p>Edit - I think I found it, once realizing the URL matched Github. <a href="https://codeclimate.com/github/jquery/jquery" rel="nofollow">https:&#x2F;&#x2F;codeclimate.com&#x2F;github&#x2F;jquery&#x2F;jquery</a>
moondownerover 11 years ago
How does it compare to using Sonar with the JavaScript plugin? (not in a Sonar vs Code Climate way, but specifically for JS)<p><a href="http://www.sonarsource.com/products/plugins/languages/javascript/" rel="nofollow">http:&#x2F;&#x2F;www.sonarsource.com&#x2F;products&#x2F;plugins&#x2F;languages&#x2F;javasc...</a>
woutr_beover 11 years ago
I would love to give this a try, but I feel the price is a bit steep for a single developer. Will there be smaller plans in the future that only allows 1 user?
评论 #6645875 未加载
etlerover 11 years ago
I tried it out, but forgot that it wouldn&#x27;t work with our project because it&#x27;s all in coffeescript! Oops.
ethanazirover 11 years ago
bootstrap: 0.51 ??? meteor: 0.85 may need some tweaks.
elwellover 11 years ago
Want CoffeeScript