3 ms·
I've always struggled with how if I want whats best for my resume rather than fix a project that has gone unmaintained / slowed down / is popular but just needs
by zanny 8y ago
I've always struggled with how if I want whats best for my resume rather than fix a project that has gone unmaintained / slowed down / is popular but just needs more hands on deck it makes more sense to start from scratch so you can "put your name on it".
I've made dozens of FOSS contributions over the years but usually its "I want X fixed / working, I'll spend a week learning the codebase and fixing it". Sometimes I can find 2-3 of those in sequence on a project, but while I'd love to hang around in one large codebase (I was active in the Clementine music player for quite a while) a lot of the larger issues in a project like that are structural and would take months to develop and would require your commitment of time in the long term to support and maintain it.
Which I'd be all for, but employers really don't give a crap if you are only the #8 comitter in a project with 10,000 commits. Even if your ~500 is twice as much as you would have made developing your own stripped down clone of the project to call "yours" and get your foot in the door.
Just over the holiday break I was doing some patches for Krita - I'd never worked in the codebase before so there was a lot of exploratory work involved. I implemented the feature I wanted and left dozens of questionable design decisions and undocumented behavior untouched / refactored not because I wanted to but I realized if I want "resume cred" I can't be doing trench work like that. I implemented arbitrary button support for action events because thats something I can bullet point easily. "Refactored the input system to avoid memory leaks, wasted cycles, and streamlined the ergonomics with C++17 features" doesn't turn heads.
It just feels wasteful to have spent probably ~10 hours just reading ~5,000 lines of C++ to learn an entire subsystem of a program and to just leave it at that when you can tell there is a lot more room for improvement but its also much more nuanced. Its why everyone gets feature pull requests and none of the bugs get fixed because most bugs worth fixing are structural ones that would take a lot of effort for little "payoff".