Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

My experience in academic computer science has been the complete opposite.

In industry, what I've seen is that often engineers are scrambling to please managers or customers, with work divided among multiple people, so the code is usually poorly written and undocumented.

In academics, publications are of primary importance, so everything is documented. The longer timescale means there's more time to refine code that's designed for a single, focused problem. The limited scope of the programs used means code quality isn't an issue most of the time.

Also, in theoretical computer science at least, the focus is entirely on rigorous proofs and finding optimal algorithms. While in industry, it's more "get practical things done quickly so we can sell it".



> While in industry, it's more "get practical things done quickly so we can sell it".

That's a pretty short sighted example of industry - I'm sure those examples are out there, but I don't think they're common (or the companies long lived).

Most places I've worked know that they'll have to maintain that code well into the future.

Not really so in academia (publish and forget) - which is why it's rare to see even basic measures taken for modularity and abstraction, e.g. the creation of types to represent entities in the problem domain. I think I've seen that done in Matlab, once.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: