Live data from Hacker News

Elixir 1.9

elixir-lang.org

121–130 of 174 posts

Re: Elixir 1.9

#121

Earlier quoted context omitted.

I’m building a side project in Phoenix right now. For me the learning curve is wondering whether Phoenix has a built-in or “everybody does it this way” solution to the problem I’m facing or whether it’s something I should implement myself. In Rails the answer is always “use this popular gem” and in Go the answer is always “roll your own”. Phoenix is somewhere in the middle.

The good thing about Phoenix is you are not forced to go in any particular convention for everything, you can craft them yourselves from scratch. The bright side of this is you will only every little thing in the implementation and you'll know how to optimize it.

The one time I really want to override something in a Phoenix app was deleting a response header bolted on by Cowboy (I think it was the server header). I couldn't find a work around, so I did something lame like intercept the formatted response and modify it. Some flexibility in that area would have been nice, but it was a pretty niche corner case on a not too important app, so a time crunch hack was my best option.

Re: Elixir 1.9

#122
Besides speed, what are the advantages of Elixir/Phoenix that a lot of fintech startups use them instead of Ruby/Rails?

Re: Elixir 1.9

#123
post #84

Earlier quoted context omitted.

The thing is, nowadays, statically typed languages became so ergonomic, there is really no reason to go with dynamic languages.

Most people who point to Elixir's lack of static typing as a weakness, or believe their productivity would be adversely affected by it, do so because they haven't actually used the language. Anyways, this subject occasionally comes up for discussion in the community. This post sums up my thoughts fairly well: https://elixirforum.com/t/static-vs-dynamic-typing/9824/3

I agree. I've sincerely asked for explanations what is missing when pattern matching is so similar to type inference. Combined with guard clauses and "let it fail" philosophy, what is the problem other than boilerplate? Is it lack of mechanical refactoring? Totally honest question for type enthusiasts, my other posts have been met with silence.

Re: Elixir 1.9

#124
post #39

If anyone is on the fence on learning Elixir / Phoenix (Elixir's most popular web framework library) please do yourself a favor and give it a shot. If you're on a time crunch and want the best bang for your buck on "why bother learning yet another language to write web apps in?" then watch this talk called "The Soul of Erlang and Elixir": https://www.youtube.com/watch?v=JvBT4XBdoUE I'm not affiliated with the languag…

I sometimes joke that microservices are half of Erlang, badly implemented (I guess Greenspun’s Curse is broken?).

Elixir has been second or third on my todo list for a long time. With the scary news from Vue, it might have just jumped the queue.

Re: Elixir 1.9

#125
post #39

If anyone is on the fence on learning Elixir / Phoenix (Elixir's most popular web framework library) please do yourself a favor and give it a shot. If you're on a time crunch and want the best bang for your buck on "why bother learning yet another language to write web apps in?" then watch this talk called "The Soul of Erlang and Elixir": https://www.youtube.com/watch?v=JvBT4XBdoUE I'm not affiliated with the languag…

I sometimes joke that microservices are half of Erlang, badly implemented (I guess Greenspun’s Curse is broken?). Elixir has been second or third on my todo list for a long time. With the scary news from Vue, it might have just jumped the queue.

> Scary news from Vue

Do you have a link?

Re: Elixir 1.9

#126
post #87

Earlier quoted context omitted.

One thing I love about Elixir is I had read the Erlang book from Joe Armstrong ages back, and a lot of ideas and concepts still apply. I just didn't get into Phoenix cause PGSQL is a PITA on Windows, so I have to go back and try with MySQL instead.

You could run PG in either WSL or a Docker container. I currently use Windows (where I spend 99% of my time in WSL) and everything runs great.

Maybe somebody else knows where to wave the dead chicken to make postgres under WSL work well, but my last two tries (Feb 2018, Nov 2018) suggested that trying to do so invites lots of yak-shaving, pain, and poor performance. And that's just using the package manager to install, if you want to build from source, it may not work at all.

Stories to the contrary and hints how to make it work are welcome.

Re: Elixir 1.9

#127
post #84

Earlier quoted context omitted.

The thing is, nowadays, statically typed languages became so ergonomic, there is really no reason to go with dynamic languages.

Imagine typechecking a cluster of nodes all sending messages to each other.

Statically typed languages deal with data un/marshaling all the time. Maybe I’m missing something, but how would this be an issue?

Re: Elixir 1.9

#128
post #125

Earlier quoted context omitted.

I sometimes joke that microservices are half of Erlang, badly implemented (I guess Greenspun’s Curse is broken?). Elixir has been second or third on my todo list for a long time. With the scary news from Vue, it might have just jumped the queue.

> Scary news from Vue Do you have a link?

He's most likely referring to: https://news.ycombinator.com/item?id=20237568

Which is a bunch of FUD (see top comment by EvanYou).

Re: Elixir 1.9

#129
post #39

If anyone is on the fence on learning Elixir / Phoenix (Elixir's most popular web framework library) please do yourself a favor and give it a shot. If you're on a time crunch and want the best bang for your buck on "why bother learning yet another language to write web apps in?" then watch this talk called "The Soul of Erlang and Elixir": https://www.youtube.com/watch?v=JvBT4XBdoUE I'm not affiliated with the languag…

I sometimes joke that microservices are half of Erlang, badly implemented (I guess Greenspun’s Curse is broken?). Elixir has been second or third on my todo list for a long time. With the scary news from Vue, it might have just jumped the queue.

[deleted]

Re: Elixir 1.9

#130
post #28
post #25

Earlier quoted context omitted.

"no one wants a language to stagnate" In the sense of the language itself, I do. The language community should keep growing, libraries, frameworks, etc., but I'd like to see more languages qua languages declare themselves "done" sooner and more often, or failing a sudden cutoff, start seriously raising the bar on the next "new feature". There's a lot of good languages out there that were great in years 5-15 and then…

"no one wants a language ecosystem to stagnate" I used to be so happy when there was a new Java version every year, something new is good, something better is good, some hype is good. Now I am getting old I just want to use the same tools for the next 15 years. I mean it is not like most of the problem we are trying to solves were limited by the languages itself. ( Mostly the ecosystem around it )

Also earlier versions of Java were a pain. The flexibility of a well thought out functional and dynamic language means new syntax to reduce boiler plate or extend generics don't need to be added. Compare Clojure to Scala for extreme examples in the JVM land. Similarly I think modern OO languages seem to be adding new syntax to handle OO complexities, e.g. much of the newest syntax additions to Python3 aren't useful (walrus operator? Well everything is already an expression... Etc).

In the end, I agree that the idea of a language which could be stable for a decade or more sounds fantastic! Given macros could add almost any other required feature should a good idea arise. Plus the BEAM and elixir compiler can continue improving performance and tooling.

Post reply on HN