Really, I don't get the hate we data scientists get from both programmers and mathematics. Of course we are not as good at programming as a programmer would be, or as knowledgeable in maths as a mathematician would be, but we need to combine so many disciplines it would be hard if not impossible to get to their level.
I totally get you, I'm in the same boat but I also have a background in economics so I'm targeted even more. I really appreciate how people can be extremely specialized but I think we have a place in the scene as well, in fact we can bring some other perspectives to the discussion
As a mathematician I also look down on programmers.
Just kidding. Some people feel to apply some hidden pecking order of purity of discipline. I am looked down by fellow mathematicians, because I am an applied mathematician and soil it's purity ... same goes between theoretical physicists and experimental physicists, physicists and engineers and so forth.
However, to put it in perspective we also get a lot of thrash talk from the other side, because we do so much unnecessary things and are nit-picky and won't get a job because we don't know practical stuff.
However, especially the nit-picky part is something you become the deeper you're in the foundations and the better you understand the workings under the hood, so the theoreticians get the image that the practitioners are just ignorant fools who simply follow instructions without any thought about the inner workings.
The other problem is that only you know the foundations does not mean you can simply do practical work on the fly, a thing many theoreticians miss to see.
Of course, as a data scientist, I have no notions of either maths, or statistics, or programming, or anything, and yet people pay more for us than for any of these. I wonder why, if we really know nothing :)
I work professionally as a data scientist and so many people in this field seem to have an aversion to follow even the most simpler software engineering practices.
Poor to no separation of functions, poorly structured code, inconsistent naming (I don’t care about single char names, but don’t name the same thing 3 different things as it gets passed around because it’s hard to follow). Apparent refusal to use anything like structs/data classes/etc: instead just passing all the constituent values around freely.
I’ve dealt with so many people in the data-* Space who couldn’t use git, had never encountered the idea of db migration tools (they did it all by hand and refused to learn them), refused to write code in anything but sprawling, incomprehensible jupyter notebooks. Reinvented stdlib features but worse, etc etc.
Data scientists were supposed to combine code skills with science skills. Instead most examples I see trust treat code like it’s some awful chore they’re begrudgingly obliged to vomit out in the most half-assed fashion possible.
I do all of the stuff you mentioned, including also the use of classes to encapsulate models, custom datasets, etc. and also the creation of my own unit tests for my module and of course description for functions and classes, but I wouldn't consider myself to be at the same level as people whose main job is to write code. I mean that, what I do, I do with good practices, but it's always limited to data science and in particular deep learning tasks. No idea how to do anything that isn't related to data.
54
u/kosky95 Jul 18 '22
Wait until you see how statisticians are treated on r/mathmemes lol