Podcast #128: We chat with Kent C Dodds about why he loves React and discuss what life was like in the dark days before Git. Listen now.
38

I think you can use: https://github.com/erikbern/git-of-theseus It can visualize the amount of code still in use since its conception. This is a graph of the Git codebase itself:


11

On browsing through the of @Niels van Reijmersdal answer, I found this written in the README Markovtsev Vadim implemented a very similar analysis that claims to be 20%-6x faster than Git of Theseus. It's named Hercules and there's a great blog post about all the complexity going into the analysis of Git history. So well lookup Hercules and go through ...


10

When someone asks me to do something and I have questions about what they want, I go back and ask them. That's the most direct way to get an answer. As a manager, I would want these fields: description, i.e. what's the issue and why it's a problem amount of risk if not fixed pervasiveness level of effort to fix, including testing effort associated bug ...


10

Well, SonarQube has a metric actually called Maturity, so, yeah. :)


9

for some one still looking for a answer like me (it took me few hours to resolve). Firstly, go to Quality Profiles Secondly: Select the profile you want then create a new copy of profile (if you already done this step before, go to the third step). Because Sonarqube does not allow us to change the root profile, so if you want to modify the rules set, you ...


8

It's not necessary for QA to do root-cause analysis for every defect they found. It's up to circumstances. And for the level of drill-down, I did not drill to the level of source-code when I tested a Unix binary application. But I did html/css root-cause analysis when I tested a website. As a view of user I represent, I access only the information that a ...


7

As others have said, it depends. My usual method works like this: I find something that doesn't seem right: If it's really obvious (a typo in a high-profile part of a site, an error message that gives the line of code that's failed), I'll check with a developer to see if they're working on that code right now (this is often the case in agile or other ...


5

Follow below steps to disable any rule in SonarQube: Login by admin Go to quality profile & Select java/php profile [whichever is appropriate to you] Enter the rule as key and Search Uncheck the box which will inactive the rule Run Sonar runner command once again to verify the modifications are working properly I have borrowed my answer from here


5

In addition to user246's suggestions, I'd also recommend looking at these areas: presence/absence of unit tests effectiveness of unit tests (that is, do the unit tests cover more than the code paths - they should be covering all the potential logical boundaries as well) presence/absence of higher-level automated tests (including system, API, GUI, ...


3

On newer version of SonarQube (mine is 6.7.4): Go to http://localhost:9000/admin/settings?category=exclusions Scroll to Ignore Issues on Multiple Criteria Add Rule Key Pattern and File Path Pattern Save and re-scan


3

This question is dependent on whether the domain structure is has branching or recursive elements. For example, a simple code containing three function points performed in sequence may have a single path. If those are selected from a case statement, then you could identify the case as one function point (or node) and the number of paths as three (or four ...


2

Jenkins is a continuous integration server, also known as a build server. It takes the source code and builds it, runs tests and execute any other commands you see fit. Afterwards it can report about the status of these commands like success and or failures. Code analysis programs can be started and reported on with Jenkins, but this is not something that ...


2

There is no golden standard for code quality statistics. Also older Stackoverflow questions about code duplication shows these topics are very opinionated. What good or bad statistics are will also differ per product and its complexity. Some might need more comments and or duplicate code. I would not use sonarQube to just rate a project, but to use as a ...


2

Here is the step-by-step procedure to perform the scenario: Setup a Jenkins server if already not using. Goto plugin-manager of Jenkins to install “SonarQube Plugin”. Goto “System-configuration” of Jenkins to provide “SonarQube” server’s details Create a Jenkins job and choose one source code management option (say git). Under build, add “Execute Shell” as ...


2

Perfect, fail fast(er). When the extreme programmers came up with continuous integration the idea was when someone checked in their code a couple of times per day and if that failed their automated build, it should be fixed within 10 minutes. Making sure that all code combines would keep working at all times. Ideally noone should check in anything that ...


2

Personally, I think this is absolutely fine. Since you said you are using feature branches, only builds on top of these branches are failing. Pull requests are only merged when the corresponding build passes, hence, trunk/master is not affected. The example with the missing space may sound a bit pettifogging, but I think having many different comment styles ...


2

You can do this in Administration -> Configuration -> Analysis Scope -> Restrict Scope of Coding Rules. You need to specify the code of the rule (without spaces) and a file path pattern to filter. If you use the maven standard **/src/main/** will work for you. For more information see the docs where it states that you can: ...exclude files/directories ...


1

You can check Codacy. This will give some insight about code.


1

The best tool I know is Codescene https://codescene.io.


1

How about an code review from an experienced senior developer, so that you can focus more on practical tips. Experience is incomparable to any tool at least in the current state of the tools. Having said that, currently for JavaScript , we use linter tools for static code analysis which comes as plugins/extensions in all major IDEs.


1

Try out https://docs.sonarqube.org/display/SONAR/Analyzing+Source+Code Other possible ways If coding guidelines and standard followed. Duplicate code. Coding guidelines followed. Design principle effectiveness .


1

Thoughts on error-prone modules detection One line of "defect prone modules" analysis may use the code complexity analysis to classify a module as "error-prone" or not. This would be based on the fact that a more complex code tend to have more potential bugs. There are several metrics in the code complexity analysis that we can use as parameters for ...


1

Have a graph with number of bugs on the left vertical y axis I would then have lines for factors that are relevant, e.g. lines of code, number of statements, line length, number of variables, global variables, etc. You could also have a formula that multiplies them together to give one line. I would stay away from trying to do multi-dimensional models ...


1

SonarLint can be fully integrated with the IntelliJ or Eclipse without any difficulties. https://github.com/SonarSource/sonarlint-intellij


1

To echo others, it depends and I'd say that it largely depends on the culture at your company. It ultimately comes down to a trade-off between developer time and tester time. The more time you spend digging into the root cause of an issue, the less time you'll spend looking for other issues. However, you will save the developer some time because he/she ...


1

Nobody can really answer it since it depends. Depends on your qualifications, your and your team work load, the dev team work load, the complexity of the issue etc. I work now in a combined engineering type team and I still can't give a definite answer to your question, your best bet is to discuss this with your colleagues and managers.


1

I haven't gone looking for such services, but I doubt that they would work out. Current static analysis tools can deliver very useful information, but they need to be tuned for best results. This tuning is an upfront cost that you have to pay (either by doing it or by paying the vendor to do it for you) once per code base, regardless of how often you run ...


1

CCVisu was designed to vizualize clustering in graphs, and in particular to detect files in a repository that tend to be modified together. It was applied to Mozilla's mail component; you can find an example graph in the manual and in the examples (mozilla-mailnews.log is the input, and I expect the most useful output is SVG). CCVisu is a bit dated and only ...


1

Not sure if this will solve all the issues, but it should help some if you try to include SonarQube http://sonarqube.15.x6.nabble.com/ in your lint process/report. You should be able to customize the results a little more. I personally have not used this, but it seems to be where you are wanting to go.


1

SonarQube is one step in identifying common tech-debt, like code-smells or code-complexity, duplicate-code and lack of test-coverage. The second step is like Kate Paulk suggested to talk the developers as they know where they took shortcuts, build quick-hacks or what the unmaintainable parts of the code are. Log tech-debt and make it transparant: Our team ...


Only top voted, non community-wiki answers of a minimum length are eligible