Not very sure, but actors kinda make sense in multi-threaded environments, so you can forget about Node and Python. In Go, you can replace easily actors with goroutines and channels.
I'm using both Scala/Akka and Elixir in production. Once you get to better know the paradigm, you'll never ever want anyrhing else. And if by niche you understand resilient backends, yes, it's pretty niche then :)
Honestly, I don't know enough Clojure to understand the proposal, and all the explanations are centered around it. My current understanding is that what you propose is an ascribed way of doing things by mixing several pre-existing concepts, like mono-repo, convention over configuration, and some generic dev principles that are universally desirable, like components "ensure encapsulation and composability but at the same time they are simple, easy to reason about, and flexible" - nothing wrong in that, all good principles, but I fail to understand how you enforce it. Because usually every monolith or micro-service out there starts with that in mind, and ends with spaghetti, because dev happens. At least that's my experience with Elixir/Phoenix umbrella apps, which, as per my current understanding, is the closest thing I see to Polylith.
However, I would be very curious about your traffic lights evaluation. Generally, I would consider a "large" app something like 200+ microservices (yes, I'm biased towards that). In your FAQ, you describe and app that needs 4 services. Sorry, that doesn't qualify as a large distributed system.
First, I would really doubt you can find a monorepo which is one language only (sorry, I didn't understood how Polylith would work if I have a codebase that's Scala, Elixir, Rust and Python, by example). Second, I don't understand how you handle builds. Third, I don't understand how you handle deployments and other operational concerns.
I see the bundle size after `npm install -S @rkusa/wasm-sqlite` it's a little bit above 4MB. To my current knowledge, limit is 1MB for workers. I asked one of the companies I work with and that uses CF extensively a few months ago for a limit increase, it took them like almost one month and gave us 2MB. So my question is: what is the limit increase one should ask? What was your experience with that and what I need to ask for if I want to run this?
Other than that, great job, and thanks a lot for sharing with the community. Until now I was trying to get DuckDB to run in a durable object (they also have a WASM bundle), now I have an excellent alternative. Thanks again!
Follow Cal Newport's advice. Be so good they can't ignore you. I'm 54, coding since I was 12. In all these years, I had only one discussion about a potential hire, not so many years ago, where I just walked out, precisly because age came into conversation. Company formely known as Facebook :))
A small observation here. I don't subscribe ever to any Saas that doesn't makes clear its pricing upfront. 'Start for free' is not exactly clear for me. Also, you might want to put up at least an orientation list, what one would expect on the free data feeds and on the paid ones. Just to help your potential users to make an educated decision. Other than that, I think you have a good business case.
Let me describe my experience with contacting youtube. An ad popped up, prompting me to subscribe to the family plan, and since I was getting fed up for a while, I went with it. Surprise, my wife and my daughter couldn't join, for whatever mystic reasons yt considered.
I contacted YT via chat support. While the technology behind their support bots has evolved a lot, they even simulate passing you from one support rep to another, and they show even empathy towards your issues, they aren't able to solve anything. So, about two days lost in training YT bots for me, and stuck with family plan without being able to add my family. Great experience, and pleasant waste of time chatting :))))
54, started at 12 on commodore vic 20. Never did anything else than software dev, various roles, ranging from dev to CTO. Currently architecting and deploying systems in Elixir, Scala and Rust... And I'm so sorry to hear my coding days were over almost 20 years ago :D
Imho, property based testing makes you think a little bit harder about the invariants in your code, witch by itself only it's a win. Then there's this https://groups.google.com/g/leveldb/c/gnQEgMhxZAs
I'm amazed on how much discussion digressed to actix-web. Understandable, seen the latest happenings there, but still... I tried quite a while ago Actix, coming from Erlang/Elixir and Scala/Akka. While the cognitive load of using it was not high, when I started my first test, I noticed one core being maxed out, and all others sleeping, which was kinda unusual for me. I asked why, and the author answered that it uses an event loop, so if you want it otherwise, go away and use something else, like Riker... So I went away :) ... I would assume this kind of behaviour has been corrected meanwhile (I mean the library, not the comms), because otherway, it's just a Node written in Rust. My 2c :)
I absolutely love how that app that's advertised in the writing is primarily targeted at the 25-40 range... Perhaps after 40 they think you don't work hard anymore... For the record, I started writing code for a living more than 30 years ago. I guess I should be safe, by the mind of these clever guys.
I back up the previous hints for Designing data intensive applications and Database internals. I would suggest also to look at Jepsen tests, https://aphyr.com/tags/jepsen, and Adrian Colyer's blog, https://blog.acolyer.org/