4 ms·
I think that the future of most software engineering is stateless. We will still have state, just it will live only in data stores (like Postgres) or infrastru
by pharmakom 4y ago
I think that the future of most software engineering is stateless.
We will still have state, just it will live only in data stores (like Postgres) or infrastructure components (like Kafka). Most dev work will be writing declarative code for manipulating and providing access to such systems.
I even think this will reach front end development, where the UI is an access layer to a local datastore.
- wongarsu 4y agoThis is how most web frontend and backend development was done for a couple decades, with PHP which (conceptually) starts a new interpreter instance for each request, and discards all state afterwards (and before PHP there was PERL and other cgi-bin scripts that actually started a new process each time), and HTML pages that lose all state on every page transition. If anything, the currently popular state of having very little request isolation inside nodejs servers and long-running SPAs is the anomaly. And at least on the server side this didn't come about from a desire to have more state, it's just an accidental side effect.
- dgb23 4y agoThat’s a wasteful approach though. Ideally you want your auth, validation/parsing, routing, db connection etc. all ready to go when a request comes in. There are parts that ought to be stateless and parts that shouldn’t.
- HervalFreire 4y agoThat future is already here. All WebApps abstract state to some external program. Bare in mind this is only for web dev. Many other things outside of web dev cannot abstract state so easily. For example: The person who programs the database itself must deal with state.
- stevewodil 4y agoThe Frontend local data store is essentially what a lot of state management libraries offer. Look at how you store and dispatch changes in something like redux. I think this type of pattern (not necessarily redux specifically) is definitely the future of Frontend state if it’s not already the current paradigm
- chrisweekly 4y agoIt is already the dominant paradigm. React: f(State) => UI Redux: (State, Action) => newState
- flangola7 4y agoHow does inference fit into this?
- pharmakom 4y agoinference?
- giovannibonetti 4y agoThat is exactly the premise of a pure functional programming language like Elm. https://elm-lang.org/ https://elm-lang.org/
- pharmakom 4y agoFull stack Elm would be nice, but there’s also F#, OCaml, Haskell that can all do more.