Hacker News new | ask | show | jobs
by olivierva 3397 days ago
Slightly off topic: They still can't build proper software. Academics (including mathematicians) are notoriously bad at writhing production grade software. This leads to handovers of 'proof of concepts' to seasoned software developer team who than struggle with the (often complex) mathematics/science behind it. Imho universities should give a bit more attention on how to write quality software; a bit of test driven development and continuous integration is not that hard and would massively improve the quality of the software written by scientists.
6 comments

This is precisely why I dread hiring academic-only profile. Note: I am myself from academia, but I was lucky enough to specialized in CS-related field (NLP). When I wanted to leave academia, Data Science was not a thing where I live and I had to start again at a junior dev position (i.e.: it was that, starving or staying in academia).

Now, I work with a lot of people way smarter than I am, who are mostly useless because they can hardly prototype their stuff in Python or run an SQL query. And they'd expect to only work on the best, cleaned and formatted dataset and only do high-end maths on those. Reality hits hard, we're losing money paying them and they're wasting their time not doing what they like. Add to that the frustration / jealousy that this creates.

In that regard, I like that famous definition for Data Scientist: "A programmer that know more about statistics than most programmers, or a statistician that knows more about programming than most statisticians".

And don't get me started on the general repulsion for understanding the basics of how a business runs from academia. Data Science is all about application.

I've always heard the definition of data scientist as "Somebody who knows less about programming that programmers and less about statistics than statisticians"
As a developer, I assure you that even some developers can't write production quality software. Especially some enterprise developers. They either over engineer and never ship or under engineer and ship crap.
> They still can't build proper software. Academics (including mathematicians) are notoriously bad at writhing production grade software. This leads to handovers of 'proof of concepts' to seasoned software developer team who than struggle with the (often complex) mathematics/science behind it.

So you want employees who can understand complex mathematics and science but are also good software engineers.

Those people exist, but you have to pay to get them.

(As an aside, lots of Ph.D.'s -- especially in CS -- build systems that are as good or better than a lot of industry code. All of the best and worst code I've read has come from Academia.)

My theory of bell curves. Academia accepts a much wider distribution so that it can get some few at the far right. Business hates the variation as it wreaks havoc on building your brand/growth etc and wants the average just to the right of profitable.
Then again, those are things that can easily be thought. The harder parts of programming such as choosing the right abstraction, or coming up with the right approach for solving a problem, or even formulating a problem, are more of mathematical nature.
Reminds me of my first job at a world leading RnD organisation when I took the test code that the lead engineer on a fluids mixing project had written and added some sensible prompts.

His original Code was cli program who's sole prompt was ?

You had to enter integers , 1, 2 3 etc to select the next option - the possibilities for errors where immense - by this time we had scaled to 1:1 tests where the chemicals for a run could cots over 10K£ per run

Ive been involved in projects where this was an issue. The main problem was that operations were not abstracted away from the types or boilerplate.