guitarplayer wrote: ↑Wed Nov 30, 2022 3:47 pm
Have been chatting with team members today about version control, they generally seem not to know what a git repository is, some of them have PhDs from fancy schools.
Ha! That'd be me. (I do know what github is, but I've never used it. I did use another form of version control.)
But overall, yes, the tendency going towards the science side would be to write one's own algos from scratch(*). It actually makes sense because research is not really an incremental process of writing N lines per code per day. It's more an iterative process of writing and rewriting for maximum brain damage. Being forced to use version control (sure whatever), I still kept a separate system of particularly useful versions to cut and paste in. Reversion would never happen because newer versions might contain useful notes.
(*) Wait what? This goes against every principle of engineering! Because you never know what kind of shortcuts the people selling the product might have taken. Even if you can see the code, it might not work as you expected. Unknown-knowns and all that.
Before dunking too much on the science side ... one advantage is that they can explain "why" something is the way it is and where it might break. On the engineering or often the non-phd side, the explanation would be focused on "what" was done, e.g. "After spending all yesterday afternoon reading about Hoffman analysis on the wiki, I downloaded XYZ library and analyzed the data series using the Adler equation seen here."
One of my particularly cruel interview techniques was to ask people to write up the Black-Scholes equation, which of course they had memorized as well as its derivation. But then I'd ask what a particular term meant and what would happen if it was removed. Deer in headlight. The only guy who didn't fail that one was another phd. There's more depth ... but depth also comes at the cost of speed.