2 ms·
Why can't we just throw data into a database and have it optimize it? Well I suppose we could. We could probably build a set of tools that optimized a databas
by lsiebert 10y ago
Why can't we just throw data into a database and have it optimize it?
Well I suppose we could. We could probably build a set of tools that optimized a database of separate tables with connections between them. That's not a horrible idea, I'm reasonably sure we do some of that, though we can still reason about things better than algorithms can, much the same way that hand coded assembly can be more efficient for an embedded device then a JVM and byte code.
But the reason we can't just have such a server, graphql and the browser is because not everyone on the internet needs access to everything on a server. Users should have access to their data, not everyones. You need business logic.
I think they are right that rebuilding the same parts of crud apps is a waste of time, but often the parts we rebuild over and over are abstracted into libraries, modules, classes, packages, gems, etc. And you need to build a few crud apps before you see the commonalities that can be abstracted.
We aren't handcoding bytes on a wire with a telegraph key, we aren't writing a web app in assembly, and that's because we build tools and frameworks and languages. But those tools, etc. still need to get built, and are still being improved, and that means the crud app you built in 1990 with perl and CGI and apache running on slackware, while perfectly servicable, isn't as responsive or useful as the app you build today. And even that 1990 app had CPAN... and CPAN was an innovation. And even perl is still used today, in stuff I use everyday, like git on the command line.
I guess what I'm trying to say is that we stand on the rickety shoulders of giants, and being an engineer means both having the beautiful abstraction to build grander visions and see great vistas before us, as well as to cover over the framework with dry wall CRUD and make it look smooth, and also to climb down and into that framework, and write compilers, parsers, databases, machine learning code, virtualization software and software to manage concurrency between network nodes, to create all of the pieces that we create to make those heights scalable.
That said, I'm appreciative of them for sharing their vision, and think they deserve better than to be insulted ad hominem, instead of having what they wrote critiqued.