3 ms·
Excessive self-promotion aside, I think high level documents like this are more important than people give them credit for. Computer science is: 1) Daunting to
by CapmCrackaWaka 7y ago
Excessive self-promotion aside, I think high level documents like this are more important than people give them credit for.
Computer science is:
1) Daunting to beginners
2) Changing constantly
It is absolutely a field where people suffer from "I don't know what I don't know". 100-ft overviews of best practices and new buzz-words are refreshing, in my opinion.
The criticisms I have of this document are all preference. I do not want to watch the podcasts or youtube videos, especially if I just want a high level overview of something. A ctrl-f of 'andreaskayy' returns 12 results. This guy's self promotions is everywhere, which is fine for some people, but it makes me think I'm getting 1 man's opinion on everything, and not an unbiased explanation of different technologies/methods.
- hdra 7y ago>Daunting to beginners I agree it is. But just I took a quick look at the book, while I understand the book is not done yet, looking at the table of contents, I doubt this would help. Like, do you have to cover kerberos, IP Subnetting, OSI IP model, Agile, git, REST API, docker, and many more in a single book about "data engineering"? If anything, it would confuse beginners even more. Its like the author tried to cram as many buzzwords as possible into a single book.
- deleted 7y ago[deleted]
- CapmCrackaWaka 7y agoI agree this author seems more interested in self-promotion than anything else. However, I don't think the purpose of this book is to cover these subjects in their entirety. Most of the time, with books like these, I would just like to see definitions, use cases, why it's used, maybe even what it replaced in the space it exists in. Materials like this aren't meant to make you an expert, they are just meant to show you what's out there, why it's out there, and (maybe) what was out there before. They give you context with which to google things. Either way, everyone expects something different from educational materials. I personally would not use this book, but I get the idea he was going for.
- gnulinux 7y agoI disagree with this, please let me share my opinion, but I do not have a strong opinion regarding this. I think fundamentals of CS are crystal clear and are not changing constantly at all. There are ideas, techniques and principles that were set decades ago and are still fundamental. Things like "program is data", certain set of abstract data structures (array, list, map etc), certain algorithms (BFS, DFS, topsort, sort, tree-search etc), certain mathematical methods (proof by induction, least squares, SVD etc), basic software engineering principles (abstraction barrier, abstracting something out, data types, parallelization, runtime polymorphism etc), and system concepts (OS, syscalls, cache, filesystem, database, branch prediction etc) are always there and are very much sufficient for most people to read new ideas on CS. If you have an undergrad degree in CS and studied most of these things and did well, you can pull up any blog post/paper and with sufficient amount of effort, you'll be able to learn new things. CS suffers from a lot of hype. We have a lot novel ideas and they are actually very useful to solve larger problems. This gives the illusion that CS is constantly moving and changing. Whereas, the battle-tested ideas are there and the newer ones are extension of these ideas. My opinion is once these new ideas can be simply explained using CS-primitives I listed above so that someone with BS in CS can understand, they'll be actually widely useful topics. Until then, they're concepts experts playing around with and seeing if they're effective at solving some problems.