I agree with you, though the title was misleading. (I was hoping to find a list of great companies/start-ups I can join besides Google.) In a non-academic situation (at work), we should stop buying that $1000 new-fangled machine that performs 10 times faster than a $1 machine that already works for us. (I set aside marketing considerations, where about the only way we win a project is by selling hype.)
The following is in the context of my teaching Big Data (I see you teach too!); just helping your discussion by throwing in perspectives from the other end of the spectrum. In short, it’s not always a bad thing to study how the giants solve their off-the-charts use cases.
(Further context: I’ve recently been tasked to update a traditional database course with modern Big Data concepts.)
Improve what you can measure, learn what you can’t measure. We often don’t have the time/resources/competence to actually measure a problem, so we rely on others who have measured. What you’re asking for — to understand the problem before working on it — is actually quite a tall order for many people. The moment people find themselves able to understand their problem, they usually become an expert in that field. Knowledge comes in a cascade, unfortunately for victims of the knowledge gap, which further highlights the need for bold and adventurous endeavors in education.
Back to basics, link to basics. We can’t satisfactorily explain to our students why we’re not teaching NoSQL/Hadoop; ignoring current technologies in favor of sticking to the basics (RDBMS) will be stubbornly parochial of us. We decided to teach current technologies by linking them strongly back to the basics. For eg, we emphasized the basic Memory Hierarchy (fast L1/L2 cache to slow magnetic disks), in order to show how Hadoop’s use of networking (slower than magnetic disks) could paradoxically mean faster performance. With some simple math, our students could then calculate a use case (hint: volume of data) that can benefit from Hadoop’s paradoxical use of slow networking. (I leave aside transaction differences between NoSQL and SQL, keeping this comment short.)
New technologies have their place and use cases. We can’t just ignore them, even in traditional undergrad courses. Of course, integrating new technologies into traditional undergrad curriculum would mean more work for teachers:
- Improve explanation of old topics, make knowledge transfer more concise and efficient.
- Study new technologies, understand their use cases.
- Find links (and/or contrasts) between old topics and new technologies.
Companies (that aim to grow) should spend 25% of their manhour budget on learning, so the above academic situation applies to companies too.