grantholle

grantholle

Veteran Laravel developer looking to expand my skillset

I’m a long-time Laravel developer (since 2012) and find its developer experience really amazing. Coupled with newer tools like Inertia.js (which is backend-agnostic) I’m able to build quite quickly.

However, I’m beginning to feel too comfortable with it to the point I’m too lazy/scared to try something new. I’ve lurked in Elixir + Phoenix communities for a while and love what I hear.

As many of us know, the best way to learn something is to just go for it and start building. Are there any other devs who have come from similar PHP/Laravel backgrounds that have made the switch that have advice? Any caveats/pain points?

A couple features that make Laravel very ergonomic and I’m not sure if Phoenix has equivalent features:

I’m sure I’m missing other things… Thanks!

Most Liked

f0rest8

f0rest8

That’s so awesome to hear about your great experience with Laravel. I’m not familiar with it at all outside of liking several companies that (I think) use it since they work with PHP.

I was going to say what @cmo mentioned in regards to your first note:

Oban is amazing for this, and you could very easily build a simpler version in Elixir (super fast depending on your requirements), but I use Oban for Metamorphic and I think you’ll be super pleased with it as well.

I’m not sure you’ll find as comprehensive an all-in-one-system or “one-stop-shop” (at least, not yet — there are definitely best practices and recommended approaches :blush:). But, for broadcasting, you’ve got an incredible experience on your hands with Phoenix PubSub and LiveView (now 0.17+).

I’d say it’d be pretty easy to build out notifications in your application in LiveView with PubSub and have a super slick “real-time” distributed experience.

I’d recommend watching both Jose Valim’s Elixir 1.13 Elixir Conference video and Chris McCord’s The Future of Full-stack. That will give you a good idea of what people are currently excited about and how ridiculously powerful, and easy-to-use, the Elixir/Phoenix stack is.

For my case, I came to Elixir with very little programming experience, but a vision I believed in, and in no time at all I’ve been able to make my vision a reality. And I found Elixir/Phoenix because I realized that what I wanted to do was way too difficult (if not impossible) for me to achieve with my resources and time in other languages.

Continuing in this vein, for me, the orientation from object-oriented programming to functional programming was the steepest learning curve. But after taking ~17 minutes to follow along with Chris McCord’s demo vlog, I realized that I had found the language and stack that would be my best shot at realizing my dream (even if I didn’t understand any of it).

As a veteran in Laravel/PHP, you will probably find the switch much easier than I did, perhaps immutability/pattern-matching will be odd at first, and I think you’ll quickly grow to love Elixir/Phoenix (even if you still love and decide to keep working with Laravel/PHP).

My experience with Elixir vs other languages (albeit limited) has been this:

Other languages
if you’re doing everything that has been pre-laid out for you, it’s a pretty nice experience. When you start to venture into custom territory it gets less and less pleasant the further along you go.

Elixir/Phoenix
If you’re doing everything that has been pre-laid out for you, it’s a great experience. When you start to venture into custom territory, it gets better and better as you discover how empowered you’ve become.

cmo

cmo

G’day :smiley:

For background jobs there is the postgres backed Oban library, which is rather popular. There are others too.

Mailer is now included with the Phoenix generators. See phx.gen.notifier.

grantholle

grantholle

Thanks so much for these details. I will take a look at those resources.

I also agree that the OO → functional change is so massive. I was thinking about framework features and had completely forgotten about that shift… It’s quite the change.

Last Post!

grantholle

grantholle

I’m not looking for a one-to-one on features, but there are features in Laravel that make some tasks that are common in almost any project incredibly trivial. I don’t have a “Laravel mindset” so much as a deep affection for the tooling it provides me. I am simply looking for similar tooling in Phoenix.

Where Next?

Popular in Discussions Top

ricklove
I was just introduced to Elixir and Phoenix. I was told about the 2 million websocket test that was done 2 years ago. From my research, t...
New
und0ck3d
Hello everyone! A few days ago I’ve created a topic here about how people were creating CMSs with Elixir and Phoenix. I’ve been studying...
New
pillaiindu
In django there is a cache framework backed by memcached. Rails also puts a lot of emphasis on caching, and even the idea of russian-doll...
New
mikl
I wanted to capitalize a string, and tried using String.capitalize(). That generally works well, until you try to capitalize a word like...
New
saif
Hello everyone, Long time lurker first time poster here. I’ve recently begun working on Elixir full-time again! :raised_hands: It’s been...
New
AngeloChecked
What learn first? Rust or Elixir Hi Elixir community! I’m here because i want learn a new language. I’m a junior developer and mainly i ...
New
AstonJ
Can you believe the first professionally published Elixir book was published just 8 years ago? Since then I think we’ve seen more books f...
New

Other popular topics Top

minhajuddin
I have seen a lot of code which picks the first element from a list using Enum.at(0) instead of List.first. Is there a reason why people ...
New
vertexbuffer
Hello, can anybody help here..? I have a list of players and I what to delete an element, but every for loop the list is reverting to ori...
New
Brian
What is the proper way to load a module from a file in to IEX? In the python world, doing something like this pretty standard: from ....
New
chrismccord
Phoenix 1.4.0 released Phoenix 1.4 is out! This release ships with exciting new features, most notably with HTTP2 support, improved deve...
688 31494 112
New
WestKeys
Currently suffering from paralysis by [HTTP client] analysis. This is rather unusual in Elixirland as there tends to be consensus on the ...
New
senggen
Erlang/OTP 25 [erts-13.2.2] [source] [64-bit] [smp:8:8] [ds:8:8:10] [async-threads:1] 15:22:35.803 [error] gen_event {lager_file_backend...
New

We're in Beta

About us Mission Statement