# Manboy Since his return to dOrg, Asgeir has mainly contributed to 2 client projects: Tabula and Zodiac; both by Gnosis. However, Zodiac is a whole ecosystem, split into different repositories, each with lots of prominent contributors. Therefore, I am analyzing Tabula in depth; and analyzing Zodiac repos just in terms of contributions and PR reviews. ## Tabula: In-depth analysis ### Statistics: * Total lines: 7,740 * Contribution = 29.88% ### Automated analysis results: - General assessment: https://sonarcloud.io/summary/overall?id=namesty_tabula - Main points of improvement: https://sonarcloud.io/project/issues?authors=asgeir%40cluda.com&resolved=false&severities=CRITICAL%2CMAJOR&types=CODE_SMELL&id=namesty_tabula #### Conclusions and observations - Reliability score should be taken with a grain of salt. It's "D" because it has at least one critical bug. No reliability bugs were committed by Asgeir and they're very easy to correct - There is very little percentage of code duplication; which is very positive - Code Smells rating is "A" which is great - No apparent security bugs or vulnerabilities - Main points of improvement revolve around reducing cyclomatic complexity for certain functions (they contain a lot of deep conditional branching). - Overall, this is an excellent A score. ### Human analysis results: #### Positive highlights: - Code's organized and consistent. There is a clear separation of concerns and responsibilities - Patterns used are overall idiomatic, appropriate and readable - Hacks/suboptimal solutions are properly marked/annotated - Relevant assessments as expected from a TL: https://github.com/gnosis/tabula/issues/192, https://github.com/gnosis/tabula/issues/45 - Good use of comments for implementation details - CI is in place for subgraphs testing in PRs against main branch - Avoids using string literals directly as constants - Commit history is good (denotes context of updated code, is atomic, etc.) #### Points of improvement: - Application code has no tests. Tests not only help to verify things are working correctly, but also push coding towards the pattern of dependency injection (as it makes code easier to test), gives insight on code that may be difficult to consume, exposes unncessary entrypoints, etc. ## Zodiac: Contributions ### Contribution highlights: - Refactor around factory forms was good and relevant: https://github.com/gnosis/zodiac/commit/d914f8639f13ac8ae45273758fc576fdf396100c - Relevant reviews, like https://github.com/gnosis/zodiac-module-reality/pull/76 - Contributed to the simplification of processes and features across the ecosystem. - Clean code across contributions - PRs approved by prominent contributors like Auryn. Nothing in particular strikes me as negative, quite the contrary. It's a bit harder to navigate with deep visibility into zodiac as contributions are atomic across different repositories. But it's pretty clear that by the issues he opens, the PRs he gets merged, the initiatives he takes, and the code he pushes, that he has a very deep and technical thinking and understanding.