4 ms·
A "prototype" software is sometimes a nice way to name some junk code. When I read that most academics are never going to write production code, they're prototy
by idoubtit 6y ago
A "prototype" software is sometimes a nice way to name some junk code. When I read that most academics are never going to write production code, they're prototyping, they need something to develop fast... it looks like most academics value fast writing more than correctness, which is not my experience.
As an anecdote, a friend of mine is an applied mathematician specializing in PDE and fluid dynamics. He used to code with C++, because that was what was used in the labs where he worked. Then he discovered Python and he thought it was so much easier, and still quite fast thanks to optimized libraries (written in C++ with a Python interface). But after a few months his enthusiasm had disappeared because of the runtime errors of his Python code. He didn't want to go back to full C++, though, and he still codes mostly with Python.
- chadash 6y ago> "He didn't want to go back to full C++, though, and he still codes mostly with Python." Exactly. It seems like he understands the tradeoffs and prefers quick iteration over "correctness". In my experience, for computational "academic" code, the hard part is often coming up with the correct algorithm, not implementing that algorithm correctly. In software engineering, it's often the opposite.
- teraku 6y agoYou said it's not your experience, but then you give an anecdote which says where because fast writing was prioritized, he ended up with runtime errors...