3 ms·
> But what have they got to do with software development. Zero. Zilch. Nothing. Absolutely sod all. I don't have all of his questions at hand, but from memory:
by irahul 14y ago
> But what have they got to do with software development.
Zero. Zilch. Nothing. Absolutely sod all.
I don't have all of his questions at hand, but from memory:
1. Basic knowledge of statistics and probability is required for machine learning.
2. His question about zeroing multi-dimension array is to test if you understand the under lying memory model.
3. Do we really need to discuss why you should know how cryptographic hashes work?
4. B-tree has better locality of reference and are de-facto data structure for storage for majority of the cases. Granted, not many people do low level storage, but does that somehow makes it irrelevant to software development?
5. Mutex, rw-locks etc are building blocks of concurrent programs.
I don't know why you are assuming anything which isn't CRUD web development doesn't have anything to do with software development.
- kamaal 14y agoGood points, I think the guide to asking questions on Math, Algorithms and Data structures is to ask real world problems which will require you to use these problems. Its like Math Vs Physics. You can learn the pure math there is out there, but unless you start studying physics you don't quite see how those concepts are applicable to the real world. Similarly, its simple to ask these questions to a programmer. Give him a real world programming problem to solve, and then see how he uses the concepts from math and CS to solve them.
- rufugee 14y agoSo I've covered all of these topics at some point in my career. What I'd love to see is someone like Coursera come out with a "what you should know as a computer scientist/software developer" curriculum...not only for myself, but for those who work for me. I would personally love to go back through a review of the various mathematics which are interesting for computer work, but I'd also LOVE to have a complete curriculum to put promising young developers through. You can teach concepts, but you can't teach attitude/demeanor (at least, not as easily). I know Coursera has released bits of this sort of coursework, but I don't think they've put it in a guided, ordered curriculum form with preqs. If someone puts this together, I'll gladly pay for it.