I’m in the applied maths field and I consider myself better at math than coding. At some point during my first year as a postdoc, my supervisor told me, “No, you cannot use package A anymore, but use my C++ open source package I’ve been developing for 10 years. Your funding is binding with this project of developing the package.”
Package A was written in the language I am familiar with, but I had very little experience with C++ at that time. I took this as a challenge, to get better with my long overdue lack of skill with coding.
It turns out that the package has no documents with very little amount of comments, written in C++11 standard with reference to packages that has been last maintained in 2002, has been fiddled around with 3 other PhDs and Postdocs in the past whom I can’t make contact with, and has over 70,000 lines of code in total. It didn’t have some of the features that existed in package A, and I needed to change the very basic part of the code that affects the rest of the package to make it work. This feature was crucial to the mathematical research I’ve been doing with package A.
Fast forward a year later, I’m still unable to even get to the research where I left off with package A, and still working on reading the code and maintaining it (too many bugs in the first place!). With zero publication and no progress, my supervisor started to threaten me with cutting my contract, and I’m feeling exhausted with dealing with this package. I still want to work on the mathematical aspect of the research and I am hesitant about abandoning the project. At the same time, I don’t want to waste my career further. I already feel like my academic career is killed, but I want to save my career in industry. I’d like to make something out of this.
What’s your advice?