Live data from Hacker News

Phoenix 1.3.0 Released

phoenixframework.org

101–110 of 143 posts

Re: Phoenix 1.3.0 Released

#101
It's truly amazing when you see the numbers yourself, as Elixir/Phoenix produces some wicked TTFB(time to first byte) speed and concurrent performances you can't get from other languages.

I wouldn't be surprised to see one elixir server replacing 5x - 10x servers.

Re: Phoenix 1.3.0 Released

#102
I use Phoenix with all my newer projects. The performance is stellar. I single-handedly was able to create what many startups out there have built with 100s of thousands of engineers[1] in a short period of time. This may be possible with Rails too, but then, I found a lot of things are much more convenient to get done in Phoenix than in Rails - For example, Contexts (nested models), Routes, etc.

When I started with Phoenix I was anxious that the experience was going to be just like when I first tried out Play/Scala, but no. To my surprise, my experience was fantastic. Truly, this framework allows you to focus on your business problems rather than fighting with configurations/conventions.

One of the best decisions the team has made is introducing the concept of contexts from DDD[2]. Initially, I was pretty confused, but now, I simply cannot imagine myself going back once that I've understood it. It's basically breaking down your business into smaller tiny modules, like I've done in [1]. The other thing I love about Phoenix is the concept of umbrella applications. I'm not sure if Rails has an equivalent, but I think this alone is worth exploring Phoenix for.

I don't even have micro-services in my architecture yet, but because of these patterns, I'll be able to break out and scale my application if I require to, in the future.

Phoenix has proven to me that it can not only scale performance-wise, but also architecture-wise. Last time I tried developing [1], it was in PHP and I had to hire 5 devs to get it done..6 months later and we still weren't done. However, in just a matter of weeks, I was able to finish a complete working prototype of this mammoth application, with UI and frontend. As for my production setup, I use Docker + AppEngine (using a custom VM) and it has served me really well. The performance is top notch and everything works so flawless.

As for the language itself, I really love Elixir. I simply cannot imagine going back. It really forces you to think differently about your code. Last time I tried to learn a functional language, it was Scala - also a beautiful language on top of the JVM. But, the problem is, it's so academic in the sense that even a good book on scala had 400+ pages. Some of them had 700+ pages. But Elixir isn't like that, you can pick up the language in a matter of weeks (YMMV, it took me 2) AND build a project in no time.

For Elixir, if you're coming from a Ruby background, you'll be able to pick it up fairly easy. However, you will find it challenging when you hit a situation where you would have used a traditional for loop, but in Elixir, you would be forced to re-architect your code. And that's a good thing.

[1] https://news.ycombinator.com/item?id=14785209

[2] https://martinfowler.com/bliki/BoundedContext.html

Re: Phoenix 1.3.0 Released

#103
post #16
post #10

Earlier quoted context omitted.

I'm a django guy. I have no experience with functional programming. What would a transition to phoenix + elixir look like for me?

Go into it with the attitude of 'deferal of gratitude'. In other words it might look painful for a while but when various things click you get your holy s moments and you'll never go back. I've worked in a lot of java, php, python, c# etc frameworks and there are very specific reasons this is near always better long term. A lot of it comes back to elixir simply solving the correct problems. Learn elixir using the eli…

You mean `deferral of gratification`. I couldn't help myself.

Re: Phoenix 1.3.0 Released

#104

Earlier quoted context omitted.

As a .NET developer by day, I'm curious what you like about Elixir over C#/.NET? I have a copy of Elixir in Action on my nightstand, I just haven't had a chance to crack it open yet.

I wouldn't say I like things over C#/.NET (I love C# and use it for mobile/desktop devel, but I've never used it for web).. but I'll list some things I like about Elixir: Erlang's concurrency model is amazing. It's like having micro-microservices running inside your virtual machine. And you can distribute across nodes. Nothing else really has this kind of thing. Pattern matching is beautiful and it's easy to use. Oth…

I believe these are referred to Railway-Oriented Programming. I've seen several other examples for Elixir (incl. ones using macros), but by far this is the 'cleanest' syntax :)

Here's a similar construct in Scala:

    (for {
      user    ...
    }

Re: Phoenix 1.3.0 Released

#105

Would you suggest to choose Elixir / Phoenix for an api for a startup? Is it too risky now, or good enough + very attractive?

I use it for my own small startup + my work uses it as well. Couldn't recommend it hard enough. Elixir 1.5 (just released) improves Developer Experience and makes things a little easier to debug.

Highly recommended, but as always ignore the hype/recommendations and do your own research.

Re: Phoenix 1.3.0 Released

#106
post #71

Earlier quoted context omitted.

Another great resource that was recently released is the Phoenix Inside Out series by Shankar: https://shankardevy.com/phoenix-book/ I just got it a few days ago and I'm about 30% into the first book. What I can say so far is that the author's approach resonates really well with me. Going through the book feels like sitting next to a colleague, who is introducing you to Phoenix and is really knowledgeable in the topi…

> If you have previous experience in another MVC framework and are interested in Phoenix I highly recommend this series (at least based on what I've read so far). Do you need Elixir experiences too? I've done MVC and have some functional experiences. I've seen this book but wasn't sure if it was for me and decided to do exercism's elixir exercises before buying this book. thanks

I think you should be fine, especially considering you have some functional experience. In the second chapter of the book, the author goes over Elixir from scratch. By the end of the chapter you should have a working knowledge of the language. Even beyond this chapter, the author takes time to dissect and explain the more complicated looking code. It really does feel quite approachable to anyone with a few years of programming experience.

Re: Phoenix 1.3.0 Released

#107

Earlier quoted context omitted.

I wouldn't say I like things over C#/.NET (I love C# and use it for mobile/desktop devel, but I've never used it for web).. but I'll list some things I like about Elixir: Erlang's concurrency model is amazing. It's like having micro-microservices running inside your virtual machine. And you can distribute across nodes. Nothing else really has this kind of thing. Pattern matching is beautiful and it's easy to use. Oth…

I believe these are referred to Railway-Oriented Programming. I've seen several other examples for Elixir (incl. ones using macros), but by far this is the 'cleanest' syntax :) Here's a similar construct in Scala: (for { user ... }

Or you could just call it what it is: a monad

Re: Phoenix 1.3.0 Released

#108

Earlier quoted context omitted.

As a .NET developer by day, I'm curious what you like about Elixir over C#/.NET? I have a copy of Elixir in Action on my nightstand, I just haven't had a chance to crack it open yet.

I wouldn't say I like things over C#/.NET (I love C# and use it for mobile/desktop devel, but I've never used it for web).. but I'll list some things I like about Elixir: Erlang's concurrency model is amazing. It's like having micro-microservices running inside your virtual machine. And you can distribute across nodes. Nothing else really has this kind of thing. Pattern matching is beautiful and it's easy to use. Oth…

Do-notation strikes again.

Re: Phoenix 1.3.0 Released

#109
post #50

Would you suggest to choose Elixir / Phoenix for an api for a startup? Is it too risky now, or good enough + very attractive?

It's used by fairly big projects/Companies bet365, Bleacher Report, New Relic,Discord, PagerDuty, Puppet labs, FireEye etc.

I had not heard New Relic was using it

Re: Phoenix 1.3.0 Released

#110

It's truly amazing when you see the numbers yourself, as Elixir/Phoenix produces some wicked TTFB(time to first byte) speed and concurrent performances you can't get from other languages. I wouldn't be surprised to see one elixir server replacing 5x - 10x servers.

In some cases, more like 30x - 75x:

http://www.techworld.com/apps-wearables/how-elixir-helped-bl...

Post reply on HN