5 ms·
and yet we barely see any production software from elixir
by arccy 3y ago
and yet we barely see any production software from elixir
- cpursley 3y agoThis is absolutely not true and you know it. Perhaps you’ve heard of Discord, Pinterest, WhatsApp, Spotify, Moz, PepsiCo? I’m sure I’m missing a whole bunch of names as I’m in the bootstrapped world where you’re seeing a lot of Elixir (especially now that LiveView is stable).
- lakomen 3y agoThose are all not using Elixir? Maybe for some obscure cronjob Tell me, why would you pick something that needs 8 servers to do the job Go or Rust could do with only 1?
- cpursley 3y agoFor one, Phoenix is a great web framework (especially with LiveView) and Ecto data layer. Show me any tooling in Rust or Go that is as productive for full stack.
- mplewis 3y agoI’m sure Phoenix is great, but in real-world experience, my former startup tried to use it, found the ecosystem and tooling extremely lacking, encountered severe problems with the learning curve, and pivoted to Rails.
- AlchemistCamp 3y agoStrange. I've dropped into several different startups and gotten people up to speed in days if they were experienced devs. One case was more painful, but much of that was due to engineering being outsourced to a team of contractors and management being from a non-tech industry. Usually the hardest thing for devs I've seen learning Elixir is just getting used to immutability. What were the severe problems with the learning curve your former startup encountered?
- withinboredom 3y ago> Show me any tooling in Rust or Go that is as productive for full stac Allow me to introduce you to this language called PHP.
- moooo99 3y agoWell PHP is certainly neither of those languages
- KingOfCoders 3y agoThe most productive web framework is https://laravel.com/ https://laravel.com/ (or Django or Rails) because it brings most of the things you need to write in other frameworks by yourself. Too many reject it, because, PHP!
- neonsunset 3y agoC# with ASP.NET Core + EF Core, AvaloniaUI or Uno or GTK bindings if that's your preference, Unity or Godot, and more. Can build for Linux, macOS, Windows, Android and iOS, either JIT (better for servers, sometimes GUI/Games) or AOT (better for phones, CLI, serverless). Its build system and CLI tooling is very productive and easy to get started with.
- withinboredom 3y agoMy biggest issue with C# is around communicating with other platforms/systems. In PHP: return base64($myText); is all I need (or sha1(), etc). The standard library (with it's bizarre inconsistencies that you stop noticing after half a decade) is quite complete. In C#, it's much more involved to do these "easy" things. Even reflection is easy in PHP: $class->$dynamicMethod(...$props); I moved away from C# about 3-4 years ago, and I don't miss it.
- neonsunset 3y agoReflection is notoriously problematic in regards to type safety in many languages and often isn't the right tool for the job, including C#. The base64, in most languages, requires importing the right package or namespace. Converting bytes to Base64 is just Convert.ToBase64String/CharArray(bytes). I can't believe someone would seriously and unironically suggest PHP. It does not even compete at the only area it's applicable at being back-end or server-side rendering.
- withinboredom 3y agoIt wasn't always that easy in C#, fwiw. > It does not even compete at the only area it's applicable at being back-end or server-side rendering. I'm not sure what you mean here. I've deleted my blog, but I once published benchmarks showing PHP was faster than C# in some cases. I'm currently working on a reimplementation of some C# stuff in PHP and competing with C# quite well. PHP is written in C; it's quite fast.
- 3y ago
- sethammons 3y agoPhoenix and especially Ecto are fantastic, and liveview is really cool. Having worked in a couple Go organizations and only one Elixir one, I don't agree that this is what makes one productive. These tools save some time. What really saves time is being able to jump into unfamiliar code and be productive. Go is best in class for this after the team can no longer keep the entire code base in their head.
- neonsunset 3y agoOr C# if you would rather use a nicer language but the use case is not critical enough to justify the cognitive price of Rust :)
- KingOfCoders 3y agoSpotify backends are written in Elixir? Link? Would love to read about that.
- cpursley 3y agohttps://prograils.com/elixir-phoenix-liveview-spotify https://prograils.com/elixir-phoenix-liveview-spotify
- deleted 3y ago[deleted]
- KingOfCoders 3y ago"Spotify backends are written in Elixir?" From the article: Spotify is using Elixir for an internal ad debugging portal. So no. Spotify backends are not written in Elixir but: "The listener-facing backend services are done with Java."
- cmckn 3y agoMy impression has always been that they’re a Java house: https://mvnrepository.com/artifact/com.spotify https://mvnrepository.com/artifact/com.spotify But of course most large orgs have a little bit of everything.
- adamors 3y agoThe ecosystem around Elixir/Erlang is just not comparable to what Python/Ruby/Go/Java/.NET/Node even PHP have. Elixir is promoted by enthusiasts a lot but once you start writing a project in it, you’ll realize after a couple of months you are writing a lot of things yourself, popular tools don’t have bindigs, lot of libraries that do exist are abandoned etc. I worked on a Phoenix project that had a Graphql API, we couldn’t integrate it with Apollo Graphql because the Elixir library didn’t support some features, had them in the backlog for years. The company had 20+ other services in different languages, none had this issue.