3 ms·
> But isn't this getting overboard? Naive bayes, with a relevant dataset, does a very fine job of data classification(sentiment analysis, spam detection...). A
by irahul 14y ago
> But isn't this getting overboard?
Naive bayes, with a relevant dataset, does a very fine job of data classification(sentiment analysis, spam detection...). Also, almost everyone who isn't a liberal arts major would have come across Bayes theorem in high school or college.
The question about A/B testing is solving simple linear equations. I believe anyone in 10th grade or above should be able to solve it.
Hashing and MAC are pretty much application level security - they don't require intrinsic knowledge of how; what and why is something an application developer should know.
That leaves us with that harmonic progression thingy and padding. Padding, I think, is to avoid cryptanalysis(extrapolating from what you know is a part of knowing things:)).
Overall, I won't say he is going overboard with his questions. If anything, to anyone familiar with the topics, his questions are pretty trivial. The only thing under contention is if the topics he considers relevant are actually relevant.
- mattmanser 14y agoBut what have they got to do with software development. Zero. Zilch. Nothing. Absolutely sod all. From the OP's original post, after seeing the questions over the days, his claim: If you can't answer the majority of the questions on these four papers, and you're working or intend to work as a software developer, you should ask yourself why — most likely you're either you're missing something you really should know, or you're lucky enough to be working within a narrow area where your deficit doesn't matter So far almost none of the questions on any of the days have been the slightest bit 'important' in software development.
- 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.
- jaimzob 14y agoThey all have something to do with software development in specific situations. But the assertion is that this set of "exam papers" represent the canonical body of development knowledge and if you don't know the majority of answers off the top of your head you shouldn't be a developer, or at least should be grateful your ignorance has gone unnoticed. I find that assertion ... questionable.