Ansible is a different tool than Nix. It's been specifically designed to fit your exact use case. If ansible works for you and your team, there's no reason to drop it.
I've never had a moment using nix where I've felt "wow I couldn't do this with any other tool". That's not really the benefit of nix. The benefit is the flexibility of the idea and the tooling.
It's a flexible enough platform where I can use one config to manage 5+ computers in my house with various operating systems. I can use it to easily setup all my dependencies for my work projects. I can use it to build my work projects. I can use it to create vms to test those projects on. I can use it to build 3rd party projects without any instruction.
All that required was a few months of pain learning the fundamentals of nix and I've received the rest for free pretty much. It's the epitome of upfront work for long lasting benefit in my opinion.
For hobby, I use functional languages, and I find the techniques are the important bits to remember. Most modern languages let you easily stand on functional programming theory. You don't need to know Haskell. Everyone's brain works differently, but the idea of small, simple and occasionally flexible parts building a whole works for me. As opposed to the large complex do it all shape shifting machine.
I've bookmarked your project years ago to attempt implementing webrtc fully in a niche programming language. But I think I may have vastly underrated how difficult this is.
What language? Would love to help :) especially with AI Coding I think it would be a lot more accessible these days.
ex_webrtc is super cool. They have a cool built-in dashboard/analytics flow. It is way more 'operations friendly' then Pion it seems. I haven't used it heavily myself though.
To fly a plane with 300+ passengers you still only need 2-3 pilots. That has remained consistent with the invention of autopilot. While we might still need a few human engineer experts, maybe we only need a few for small to medium sized companies? That may not eliminate the career for the top % but it effectively does for the vast majority of engineers.
When you do fully value-oriented programming in Rust (i.e. no interior mutability involved) that's essentially functional programming. There's mutable, ephemeral data involved, but it's always confined to a single well-defined context and never escapes from it. You can even have most of your code base be sans-IO, which is the exact same pattern you'd use in Haskell.
I actually like rust more than Haskell, but `You can even have most of your code base be sans-IO, which is the exact same pattern you'd use in Haskell.` glosses over the fact that in Haskell it's enforced at compile time.
Another argument as to why rust isn't the forever-language. My forever language should include effects!
Even rust has need of this. For example, I want a nopanic effect I can put on a function which makes it a compile error for anything that function calls to panic.
Though I think it's the closest language right now, ideally you have something that is close to "zero-overhead" as your forever language.
I really like how flix.dev looks, but there's always a little nagging at the back of my head that something like rust will always produce more performant software.
> Even rust has need of this. For example, I want a nopanic effect I can put on a function which makes it a compile error for anything that function calls to panic.
This!
This apart from build times is my biggest request for the language.
Isn’t Rust a pretty good functional language? It has most of the features that enable safe, correct code without being anal about immutability and laziness that make performance difficult to predict.
What if there is simply nothing that can be done? I don't mean to sound defeatist, but what if there are some things that truly are like pandora's box. We can't put the lid back on. All we can do is educated people on how to use the tools correctly
What about Elm? I think most people could grasp the elm architecture in an afternoon. To me this MVU style is pretty much perfect for UI.
I think a lot of the time React appears complex and hacky is because we tried to solve world hunger with one component. I've worked on plenty of React projects that were very easy to scale, modify and iterate because they focused so heavily on small independent stateless components.
Elm is awesome until you try to use it in an actual app. The amount of pain we went through trying to make a basic web app with a sidebar and a few pages... I don't remember the specifics, it was a few years ago, but I don't think Elm has changed much since then (it was 0.18).
The ease in which you can get away with these tactics ad infinitum is starting to make me a pessimist. It feels like it takes almost an entire population of unified people, that are diligently advocating on behalf of themselves, to compete with a ruling class that has the resources to stay on the offense forever.
The ruling class doesn't even have to actively communicate and conspire with one another (although they do). Their independent attempts to undermine and control government furthers the agenda of all private businesses.
It would help if Americans educated themselves on the basics of taxes. They would realize quickly how W-2 income employees pay a very high tax rate when you factor in FICA vs high wealth individuals who pay little to no FICA or income taxes. Add in the benefit of compound interest, cheap margin loans, and you have an incredibly unfair system. It's also why many wealthy individuals argue for a "smaller" government & less taxes. They travel private, go to private schools & prefer to avoid anything "public".
All this is with just the very basics, not counting step up basis, trusts or anything slightly complicated.
I feel like you're fighting the fallacy of "the rich" being collectively blamed for every problem, by giving them credit for everything instead.
We know that none of the goods you listed would be available to the masses unless there was profit to be gained from them. That's the point.
I have a hard time believing a large group being motivated and mutually benefiting towards progression of x thing would result in worse outcomes than a few doing so. We just have never had an economic system that could offer that, so you assume the greedy motivations of a few is the only path towards progress.
> We just have never had an economic system that could offer that
Please propose it yourself.
> you assume the greedy motivations of a few is the only path towards progress
No. I assume the greedy motivations of the many is the best path towards progress. Any other attempts to replace this failed miserably. Ignoring human nature in ideologies never works.
That's extremely difficult. I just don't assume something is impossible because it hasn't been done yet. Especially when there is an active battle to undermine and destroy such ideas by almost every powerful entity on earth.
I've never had a moment using nix where I've felt "wow I couldn't do this with any other tool". That's not really the benefit of nix. The benefit is the flexibility of the idea and the tooling.
It's a flexible enough platform where I can use one config to manage 5+ computers in my house with various operating systems. I can use it to easily setup all my dependencies for my work projects. I can use it to build my work projects. I can use it to create vms to test those projects on. I can use it to build 3rd party projects without any instruction.
All that required was a few months of pain learning the fundamentals of nix and I've received the rest for free pretty much. It's the epitome of upfront work for long lasting benefit in my opinion.