5 ms·
Elixir seems to be picking up insane steam right now. Every day or two there is a fascinating Elixir post here and its promise seems too good to resist. Has any
by nighmi 3y ago
Elixir seems to be picking up insane steam right now. Every day or two there is a fascinating Elixir post here and its promise seems too good to resist. Has anyone else latched their cart onto this horse?
- bicx 3y agoI built a fintech backend system using Eljxir a few years ago, and I loved it. However, I had to use Go and Python as a sort of escape hatch when companies offered massively time-saving SDKs in those languages but not Elixir. The ecosystem doesn’t seem to have really grown much since then. Looking around at the state of things, lots of important OSS packages have not been maintained, and that’s concerning. I absolutely love Elixir and the careful thought put into so much of the language and primary frameworks. However, I have become more skeptical that the actual ecosystem will hit critical mass. I really wish it would. I see a lot of articles on HN about Elixir, but my feeling is that it’s just more interesting than the constant stream of JS and Python we’ve had for decades now.
- ch4s3 3y agoIn my experience a lot of OSS elixir libraries are basically done. They get updated if the language changes, but otherwise they just do what they do well and they resist feature creep.
- conradfr 3y agoElixir is one language where you can find a library on Github that has not been updated in 6 years but will work flawlessly. I actually do small PRs to update deps etc on those kinds of repo and people are usually are OK to merge.
- lawik 3y agoAs someone active in the community I wouldn't say there has been any particularly massive ramp up recently. Someone refernced ElixirConf US and some of the news-flow is certainly from that. Elixir has been building a steady steam pressure for a long time and I think steady is still the case. As someone writing about Elixir I will say that it has good traction here as a general rule. I think Erlang appeals to the CS-interested, Elixir appeals to a lot of Ruby and startup folks. The ecosystem also innovates a decent bit. I think it punches above its weight on the HN front page. It is a healthy ecosystem and seems to grow. (edit: a spelling)
- passion__desire 3y agoThat's because HN actively promotes Elixir. Even simple posts with 3 points hit front page.
- justusw 3y agoThat sounds somewhat similar to the “I rewrote X - in Rust”, or “Why isn’t Linux rewritten in Rust?!” posts that get upvoted quite a lot, or used to.
- thibaut_barrere 3y agoWe're using on the French national access point to transportation data (http://transport.data.gouv.fr/?locale=en http://transport.data.gouv.fr/?locale=en, source code at https://github.com/etalab/transport-site https://github.com/etalab/transport-site) and we're not going to switch to another stack ^_^. Plenty of use-cases are made easy by the stack, from regular web work, API (https://transport.data.gouv.fr/swaggerui https://transport.data.gouv.fr/swaggerui) to proxying (https://github.com/etalab/transport-site/tree/master/apps/unlock https://github.com/etalab/transport-site/tree/master/apps/un...) to real-time maps (https://transport.data.gouv.fr/explore https://transport.data.gouv.fr/explore), clustered maps (https://transport.data.gouv.fr/explore/gtfs-stops https://transport.data.gouv.fr/explore/gtfs-stops), XML queries building (https://transport.data.gouv.fr/tools/siri-querier?endpoint_url=https%3A%2F%2Fara-api.enroute.mobi%2Fbibus%2Fsiri&requestor_ref=opendata&query_template=LinesDiscovery https://transport.data.gouv.fr/tools/siri-querier?endpoint_u...)... The maintenance story is very good too. With ML being added (Nx/Axon etc), and mobile apps being in the works (LiveViewNative), it has become my everyday language & stack.
- deleted 3y ago[deleted]
- lkurusa 3y agoWe've been running a large web application backend written in Elixir for over three years now. It's awesome and we've also rewritten some of our microservices to utilize Distributed Erlang. No need for a service mesh this way. :-)
- plondon514 3y agoThe company I started working for a few months ago wrote their whole web app with Elixir/Phoenix LiveView. It's been a real pleasure to work with after years of React and Next.js. The main thing I miss are types though.
- actionfromafar 3y agoAre there no typed languages on BEAM? Or some Typescript style front for Elixir?
- lkurusa 3y agohttps://gleam.run/ https://gleam.run/ Gleam is super promising.
- bryanrasmussen 3y agowhy would you use Gleam instead of Elixir, is there any benefit to using both of them?
- bryanrasmussen 3y agoah ok, reading more compiles to JavaScript, generates typescript definitions, can reuse code from all Beam supported languages. So maybe Gleam as an easier way to integrate JS and Erlang / Elixir?
- victorbjorklund 3y agoThe benefits would be if you prefer gleam:s syntax and static typing. In the end all compile down to the same Erlang byte code that runs on the BEAM so neither has any performance benefits.
- pawelduda 3y agoTypes in Elixir are on the roadmap [1] but I don't think there's concrete ETA For now you have typespecs and dialyzer that tries to infer types and detect incorrect assumptions in code but I found it cumbersome to work with. Testing in Elixir is first class so I prefer that for now. You get doctests (documentation that is also a runnable test), like in Python, which I find very useful when looking at some package source. [1] https://youtu.be/giYbq4HmfGA?si=BjNyOc5cjWWA7ER6 https://youtu.be/giYbq4HmfGA?si=BjNyOc5cjWWA7ER6
- Arubis 3y agoPart of this is that ElixirConf 2023 just finished up, so we’re getting the news output of the talks given and libraries released.
- anoy8888 3y agoSeeing a lot of rust , elixir, JavaScript but not seeing much clojure . Wonder how clojure compares to elixir in terms of developer productivity
- julienmarie 3y agoBeen running our tech stack on Elixir for the last 3 years. I'm the owner of a small e-commerce company where I'm the only tech person (and also the ceo so I can only spend 20% of my time on tech). Why I love it: - The mental model just clicks for me. The syntax is really simple and the semantics are consistent. There is no abstraction. It's all about processing data. - The REPL (IEX) is way more than a REPL. It's "you inside your running program". You can poke around your code, draft it, debug it, right there. You can fire it on prod to understand a bug. Or use LiveBook, think of it like the Elixir version of Jupyter notebooks that can connect to your application. - Real life performance is great, not because of speed but because of concurrency. - The whole developer experience is great. Mix (the build tool, dependency manager, etc.) is simple, awesome. Dependencies are really rarely an issue. - It's rock solid. In 3 years, I never had one downtime. - LiveView is a god send. Not having to switch language for UI work is amazing, performance is great, and it's server side HTML which is amazing for SEO. My website is 99 on lighthouse without any crazy work. - You need heavy computation and performance on some parts? Use rust, via rustler. - You need to scale to multiple servers? It is distributed. Already. Just make sure to not have anti-patterns in your code. - But the real kicker it's in its power due to the OTP platform. I think it's quite complex to grasp how much it's powerful when you haven't experienced it. Need to batch insert statements or rate limit api calls to a 3rd party service who can only accept one call per second per channel? A working simple solution is only 20 lines of code. Need to launch many different workflows running concurrently, keeping their state, recovering when crashing? 100 lines. The exciting developments: - Elixir NX ecosystem (NX, Bumblebee, etc): running and training AI models directly in Elixir, in a distributed way. - Liveview Native and Elixir Desktop: two big initiative to bring Elixir to Desktop and Mobile applications. - Gradual Typesystem. Jose Valim, the creator of Elixir, is working on that right now. I really liked the approach of set-theoretic types and the pragmatism of the approach. Hopefully it will be released in the not too distant future. The "to improve": I have the feeling that the platform (OTP) being the killer app per se of Elixir, the whole marketing of the ecosystem if 100% targeted towards developers. Which is good in many ways. But for the ecosystem to grow I think more initiatives towards business-type applications would be welcome. By example, there is only a few payment gateways libraries existing which is for me a sign of the lack of business audience. Conclusion: Elixir made me a better developer, but most importantly a really productive one.