I've had a tendency to (re)start new personal projects from scratch instead of continuing old ones. I'm up to around 300 dead and abandoned projects. Compounding the problem: "I don't want to manage #include paths, library names, paths, and deal with other build errata - for multiple platforms no less - just to escape a lousy JSON string!". A native nuget package can reduce this to a few clicks, which is much more palatable. I've been doing a lot of reusable build automation to make creating .nupkg s a no-brainer. So far I've figured out how to make decent nuget packages for C++, C#, and Typescript projects.
I'm applying this approach to the creation of a native C++ library for sentry.io (because I'm tired of unreported assertion failures within a company being a problem, ever). I've spun off a lot of terrible v0.0.0 junk: https://www.nuget.org/profiles/MaulingMonkey (follow the "Project Link" for the corresponding Apache 2.0 licensed github repositories)
So far I this includes libraries for unit testing, formatting JSON, enumerating the callstack, and a snprintf wrapper. (I've been muttering "always be shipping" to coworkers and friends - taking the piss out of the phrase "always be closing". A former coworker suggested something even better, which I'm trying to embrace: "always be shipped", hence my willingness to put even v0.0.0 stuff out there.)
Problem: My makefiles for linux builds are absolutely horrific - and I'm not just talking about my propensity to use tabs for non-indentation purpouses: https://github.com/MaulingMonkey/libMmkJsonWriter/blob/dc26d...