Finally have been trying out https://github.com/boyter/scc for counting (unique) lines of code, comments, DRYness and complexity and getting a better and more aggregated overview of the scale of my https://thi.ng/umbrella monorepo. SCC is really much better and faster than what I've been using previously (cloc) and also provides more meaningful results, including COCOMO project stats.

So selected current data points for this mega repo (incl. 214 projects and 185 example projects):

Estimated Cost to Develop (organic) $10,032,312
Estimated Schedule Effort (organic) 33.03 months
Estimated People Required (organic) 26.98

(This is equivalent of 74 years for one person and an assumed salary of $56k/year... Considering the repo in this form is only 8+ years old, that literally makes me a 9.25x developer 🙃)

#TypeScript
Files: 5,439
Lines of code: 323,816 (unique 161,337)
Comment lines: 85,303

#Zig
Files: 46
Lines of code: 4,828
Comment lines: 2,332

Markdown (aka #Documentation)
Files: 423
Lines: 66,370 (unique 31,330)

#ThingUmbrella #OpenSource #CodeAnalysis

GitHub - boyter/scc: Sloc, Cloc and Code: scc is a very fast accurate code counter with complexity calculations and COCOMO estimates written in pure Go

Sloc, Cloc and Code: scc is a very fast accurate code counter with complexity calculations and COCOMO estimates written in pure Go - boyter/scc

GitHub
@toxi $56K a year? US?
@bit101 Yeah, it's because the standard COCOMO model is pretty old and was meant to not be US-centric. But yeah, with recent US salaries that number would be much, much larger. Even so, I've never managed (or worked towards) monetizing even close to 1% of this...
@toxi Yes, a kid just graduating college would be asking more than 2x that. At least they would have a year or two ago. Job market is pretty tight right now.
@toxi Anyway, amazing work you've done. I remember looking at your code ages ago. Always been on my radar.
@bit101 Thank you, Keith! Seeing some of the stuff you've been sharing about your Go libs, I also see some thematic overlap & similar trajectory (and excitement!) there... 🤝🤩

@toxi yes, for the first part of my creative coding career, I didn't create reusable libraries for myself. But I've been working on that for the last 10+ years.

The two main libs I have - one is for rendering only. The other is math, color, random, noise, geometry, etc.

The rendering one has a bit over 7k lines, and the other one is almost 50k. Plus a handful of other special use ones.

@toxi Unlike yours, which is stuff that I assume a lot of other people use, mine are really just for me. They're open and available, but I'm kind of glad nobody uses them because I'm liable to make all kinds of breaking changes. :)
@toxi now imagine how much more you could achieve with a slop machine (just joking, please don’t, it’s nice to read and use code that somebody cared to write)