Personally I am using an architecture similar to https://sive.rs/pg in my personal projects and I am very happy with it. It is important that you put data and procedures/views in different schemas so that you can use migrations for your data but automatically delete and recreate the procedures/views during deployment. Also use pgtap or something similar for testing.
That's a cool approach that could work well if you don't need realtime data validation such as in a UI. I would love to find a solution that allows the same validation rules to be used in the DBMS as well as in the backend and frontend code.
I like this point of view but putting logic in the database also has downsides - the tooling in particular is bad. No debugger, hard to write tests, can't canary changes, bad or non-existent autocompletion, lack of linters, etc.
The tooling keeps getting better so I'm bullish on that side.
For canaries there's growing support for branching the database which can help.
But in the end, this like all things requires balance. Putting everything in there can lead to pain down the road, for example I wouldn't follow the http part.
My use case is with app's local sqlite and I have a lot of code transforming the returned rows into JSON. It works but feels slower and to divorced from the data.
In a way I hope this gives more opportunities to PWAs or at least websites that consider the use case of getting "installed" (at least added to home screen).
It's a far cry from native apps and it comes with its own issues. But in my case, the vast majority of apps I use regularly have a competent mobile web interface.
This is of course limited by what the OS will allow as we see with Apple's purposefully poor support for them and Google would likely follow suit. Maybe alternative browsers could offer what's missing.
Maybe there'll be more power behind a Linux distro for Android that puts browser apps and self installs first?
People have a natural desire for ownership in some form, I'm sure we'll find a way. But things do look bleak right now.
This is a cool opportunity as I found my role at JustWatch in a Who is hiring thread like this one ~4 years ago, it's great to be able to extend this to someone else to join my team.
Company - JustWatch delivers data-driven digital marketing for the global entertainment business. From the biggest blockbusters to award-winning shows, major sporting events, and best-selling video games. Not only are we entertainment-obsessed ourselves, but we also run the world's largest streaming guide, giving us unparalleled insights into audience behaviors and content tastes.
You - We are looking for someone with 4+ years of experience ideally in the context of a high-traffic website with a substantial user base. Experience with a modern JS framework, TypeScript, Webpack & Vite, performance monitoring and improvements. Someone with a side project/startup (in-development or live) or entrepreneurial spirit.
Role - The site is built with Vue.js, Node.js, GraphQL and a Go + Kubernetes BE. You'll be working creating, architecting, designing many of the underlying systems we use, improving and maintaining the performance of the site which requires an understanding of the JS framework down to our caching setup and communication with multiple in-house services.
A direct 1:1 skill and experience match isn’t a requirement. If you describe yourself as hard working, learning through chaotic action, and with a focus on creation then do apply.
At JustWatch there's really a culture of ask forgiveness rather than permission. We've got a fast pace of development from features, experiments, and client requests but also a huge respect and attribution of autonomy, trust, and responsibility. All of us on the team have our tasks that we take full ownership of bringing to the finish line while also having side projects we believe are important for the development of the project. If you believe something could and should be done, you can just start doing it.
The team is filled with eager and talented members who would love to learn from your expertise and who I'm sure you'd get to learn from too.