Elixir Forum Update 2023: Celebrating Ten Years of Elixir!

Hello everyone :039:

What an incredible year we’ve had! And what an incredible ten years Elixir has had!

In case you weren’t aware Elixir turned 10 last year, and what started as a twinkle in José’s eye has now spawned thousands of ideas and projects through us all, with each having their own ripple effect across the universe - perhaps in ways some of us might never have imagined! But more on that in a bit, first let’s give you a bit of a forum update!

Within the next two or three weeks we‘ll have served a staggering 70,000,000 pages!! We’ve also sent out a cool 7M emails and are receiving over 10,000 click-throughs every day just from our top ten traffic sources! And let’s not forget we’ve given away an amazing $100,000 worth of prizes as well! :003:

Elixir has gone from strength to strength, and you really have been a big part of why it has. If you’re ever in doubt just look at other similarly aged and hyped languages that have fallen by the wayside - a notable difference has been you, your enthusiasm, and the buzz and excitement you’ve helped generate on places like this - something which also helps create that all important self-perpetuating loop. So even if you haven’t created a library or sent a PR, your presence and contributions no matter how small you think they may have been have played an important role. You’ve helped make the community bigger, stronger and more enticing, by creating the sort of buzz, activity and usefulness that make communities like these attractive. It’s why people have been saying things like this:

Thank you Christian - and thank you and well done each and every one of you - we know we say it every year but please don’t forget how much a part of the Elixir success story you’ve been :purple_heart:

Of course this is just one piece of the puzzle, and we’re certainly going to cover some of the others in a moment, but let’s first share what we’ve got in store for you on the forum this year!

A new chat room!

We’re finding that sometimes it would be useful to have an ephemeral area on the forum - for those occasions where you’re just thinking out loud or need a faster paced medium to discuss certain topics, so we’ll be trialling a chat room :grin:

The great thing about an integrated chat is that we can do things like move useful discussions to forum threads, have group based (user-created) chats, and even public channels for certain topics or projects you’re working on. Need a publicly joinable channel to work on some new framework or project? Or one for users in your country or city? We got ya covered!

To begin with the chat room will kick off with:

  • A general Elixir channel for Elixir/community related chat that everyone can see and take part in.
  • The ability to create your own personal chat groups.
  • The ability to join a public/joinable channel.
  • The ability to request the creation of a public/joinable channel for your project or other topics/locales, etc.

If you’d like us to create a channel for your country/city or a project you’re working on, just let us know! See the chat room info thread for the full details - and please don’t forget to pay particular attention to the rules :innocent:

Expansion of sections!

With the Elixir landscape expanding year on year we’ve added a few more sections to our Frameworks category. Namely, a Hologram Forum, an Elixir Desktop Forum and an Ash Framework Forum. We’ve also expanded the Nerves Forum to three sections (one for news, another for chat, and one for questions) and we’ll do this for any of the project forums in the #Frameworks category once the forum reaches at least 200 threads.

What’s the criteria for getting such a section created? These sections are usually created for frameworks or tools/platforms that can potentially serve as an inroad into Elixir. In other words a tool that people might opt to use (i.e, come to) Elixir, and this is usually a framework of some sort. While usually only add these for projects that have proven themselves, if we feel the project has the potential to be an important avenue into Elixir we can fast track them on a trial basis (but the groundwork should be complete first).

New Elixir Proposals & Suggestions sections!

As the community grows so does the variety of suggestions and feedback. Since Elixir is pretty much ‘done’ we wanted a way to separate the types of proposals that are more likely to be included, and those that may just end up being an interesting discussion.

So we now have two dedicated sections for proposals and suggestions, and the old ‘General Ecosystem Chat’ section will move there too as a general ecosystem feedback section:

  • Proposals (Small/Easy)
  • Proposals (Large/Difficult)
  • General Ecosystem Feedback

All of these will include details about the types of proposals or ideas that should be posted in them. If you just want quick feedback on an idea please use the chat room - that’s part of the reason why we added it.

New Phoenix Proposals & Suggestions sections!

With the Phoenix user base growing by the day, we thought it’s about time we added dedicated Proposals and Feedback sections for it. However again, if you’re just thinking out loud please use the chat room.

All in all, our new additions and changes look like this:

Our Giveaways!

Our giveaways are back!

For those of you who want even more chances to win, we have similar giveaways on Devtalk and the Erlang Forums too!

2023 Discounts!!

We’ve got some super discounts lined up for you again this year:

  • 35% off any ebook published by PragProg!
    Simply use our Devtalk coupon code devtalk.com

  • 35% off any ebook, print book or video published by Manning!
    Simply use our Devtalk coupon code devtalk.com

  • 10% off ElixirCasts… for life!
    Simply use coupon code elixirforum

  • 20% off ANY Pragmatic Studio course!
    Simply use our Devtalk coupon code devtalk.com

  • 10% off AppSignal… for 12 months!
    Simply use coupon code elixirforum

Members of the Year is back!

Our MOTY scheme is one of our most loved initiatives and it’s back again this year! Some of you might remember that last year we were going to revert back to a monthly MOTM, but the end of year version went down so well that we’re now going to keep it as an annual event! :003:

We’ll have 50 MOTYs again this year, and remember, these are awarded purely based on forum participation - so get involved! :024:

2022 Members of the Year!

With over 20K members it’s difficult to whittle this list down to just 50 because we have so many amazing members - so please forgive us if we missed you! We’ve done our best to select based on the most active posters, those with the most accepted solutions and ‘likes’, etc.

If you’re named here thank you and well done - and please read the bit at the end as we have an ebook for you!

@03juan

@adamu

@al2o3cr

@APB9785

@axelson

@BartOtten

@bdarla

@benwilson512

@brainlid

@cblavier

@cjbottaro

@cmo

@derek-zhou

@derpycoder

@dimitarvp

@egze

@Eiji

@eksperimental

@Exadra37

@Fl4m3Ph03n1x

@fuelen

@gregvaughn

@hauleth

@hissssst

@ityonemo

@joey_the_snake

@JohnnyCurran

@kartheek

@kenny-evitt

@kip

@kokolegorille

@LostKobrakai

@lud

@mindok

@moogle19

@msimonborg

@Nicd

@NobbZ

@sbuttgereit

@Sebb

@Sergio

@shahryarjb

@sodapopcan

@sorentwo

@stefanchrobot

@stefanluptak

@stevensonmt

@tomkonidas

@trisolaran

@zachallaun

:041: :041: :041: :041: :041:

As a thank you, we have an ebook for each of our winners! We have 25 books from PragProg and 25 from Manning so if you are listed above, please PM @AstonJ with your first choice from one publisher and your second choice from the other, as well as your full name, country of residence and email address - we’ll then allocate these on a first come first serve basis :023: (They don’t have to be an Elixir book either, they can be any book so long as they are published by either PragProg or Manning.)

Forum plans for 2023

With the addition of the chat room and other expansions mentioned above the forum is now set-up to serve us well for the foreseeable future. Other than adding chat channels or framework sections as detailed above it’s unlikely that we’ll be introducing any other major changes moving forward. This is because as mentioned last year we will be launching our own community platform at some point :blush: but we’ll talk more about when the time is right, for now, we want to keep the focus of this thread on…

Celebrating Ten Years of Elixir :048:

Hasn’t time just flown by?

Can you remember when Elixir was first announced?

In a way it seems just like yesterday, but when you take into account how much has been achieved it really does feel like it’s been around for eons. This is of course thanks to a number of factors, so let’s take a trip down memory lane and have a go at unraveling some of that.

We all know the story of Elixir begins with José, but just like Elixir has spawned so many cool things through each of us, the idea of Elixir itself was spawned via Erlang.

For those of you new to Elixir, Elixir runs on the Erlang Virtual Machine, and just like Elixir has all these cool features that have been worked on by José, the Elixir Core Team and many members of the community, Erlang too has decades of the same - the Erlang folk just happen to have been focusing on general architecture and the sort of stuff that goes on under the hood, you know, all that good stuff which gives Elixir its raw power :star_struck: While Ruby blessed Elixir with some of her beauty and warmth that’s pretty much where the similarities with her end, because under the hood Elixir is very much Erlang’s baby.

So that covers Elixir’s heritage. Elixir certainly stands on the shoulders of giants - but Elixir’s own story is no less impressive, and it all starts from that little twinkle in José’s eye all those years ago.

When he saw Erlang he said he loved everything he saw, but missed the absence of everything he didn’t - and so Elixir was born with a vision, which he and the rest of the core team (and everyone else involved) have been evolving and working fastidiously on ever since. While it’s definitely been a community effort, you can’t help but admire and appreciate the people who have gone above and beyond in making Elixir what it is. Take José for example. It’s clear that Elixir has become his life’s work - he didn’t just create Elixir, but eats sleeps and breathes it - being on the core teams of Phoenix, Plug, Ecto, Nx, Livebook and more! He’s also a regular conference speaker, guest on podcasts and even one of our biggest posters on the forum. No part of Elixir has been untouched and no matter which aspect of Elixir you are interested in, José is almost always involved or never far away. Congratulations on your baby’s 10th birthday and thank you for everything José! We all came together because of you and we hope you’re just as happy with us as the Elixir community as we are of you as its creator :orange_heart:

José’s not alone of course, where would we be without the almost 20-strong Erlang Core Team who work on so many of the hard problems on the virtual machine, or Hex and Ecto which were both created by Eric, or Phoenix and LiveView which Chris works so tirelessly on, and then you have the rest of the Elixir Core Team like Fernando and Andrea (who himself is on the core team of Plug, Broadway, StreamData, Redix and more!) and that’s just current core team members and official or semi official tools - we also have all the community driven tools and projects too! It would be near impossible to name them all or everyone else who has helped Elixir get where it is today, whether they are book authors and publishers, conference organisers and speakers, bloggers, podcasters, library and framework authors, screencasters, teachers, forum posters and moderators… in fact the list is so long that this is where we’d like you to come in!! :052:

We’d love for you to join us in celebrating ten years of Elixir by sharing your own personal story, perhaps taking a moment to mention anyone who’s made an impact on you or your journey :smiling_face_with_three_hearts:

Maybe you could tell us who or what drew you in and who welcomed you when you got here? Which libraries, tools or Elixir/Erlang-centric methodologies or ideas got you hooked? Maybe you’d just like to give a shout out to someone who’s work you’ve been admiring from afar or perhaps you’d like to share your excitement about the future of Elixir (Nx, anyone!?) Whatever it is, whatever brought you to Elixir and whatever keeps you here - please let us know - we’d love to hear!

To help kick off the celebrations and to thank the Elixir Core Team for everything they do, we’re sending each of them a bottle of elixir (bubbly! :clinking_glasses:) We’re also including Robert and Chris because Phoenix has been the biggest inroad into Elixir for almost as long as Elixir has been around itself, and where would Elixir be without Erlang, of which Robert is a father - he’s also helped validate Elixir as a serious contender by being an active part of the community since pretty much the beginning. And for the rest of you, and we know there’s a HUGE number of you who are worthy of recognition and reward, well, watch this space, because if everything goes to plan we’ll hopefully have something to reward you for all of your hard work, love and support over the years too! :hugs:

Ok we better wrap this up as otherwise it’ll be another ten years by the time you reach the end of it! Please always remember how important you are and please don’t forget to share your Elixstory.

We hope you all have a wonderful 2023 as well as another amazing decade - may it be 1000X bigger, better and even more groundbreaking for us all :partying_face:

66 Likes

I can think only about one thing: Intuition

The destiny of being a programmer was programmed into me - I just “know it” and nobody could had a word in this topic. Before I know Elixir I have tried many languages and GUI libraries, but none of them were close to my expectations. All the time I had “something” in my mind, but can’t name it, for example:

  • When I tried C/C++ together with GTK+/Qt and other toolkits I wanted to have “every button in separate process”, but at that time I have no idea about Erlang’s virtual machine and therefore I guessed that I mean OS processed - weird, no?

  • When I tried PHP first thing I wanted to work on was WebSocket connection. For some reason I never considered a WebSocket message to be big. A huge blob/bulk actions looked weird to me. I wanted to have tons of tiny messages - ideally if one message sends data to only one class (i.e. component).

  • What’s even more funny all the time I was thinking “Why I need to do everything around” - I should focus on features I want to introduce. I wanted to scream to world that programming should be different, but I felt kind of stupid as that sounds like a newbie in programming tries to teach millions of senior developers. :sweat_smile:

The biggest problem for me was only the fact that I can’t name it properly and therefore every time my research have failed. Someone from my first job changed everything. He was carefully listening all I said and he firmly stated that I must at least try Elixir. Just by entering elixir-lang.org front page my intuition immediately reacted: That's it! and I become Elixir’s developer. :smiling_imp:

Thanks to José Valim and whole Elixir community every year was full of exciting news. I just can’t be bored hearing about all your hard work! :heart: For me by joining Elixir community I was able to make my dreams come true much sooner than I could ever expect. :tada: Hope that every next year would be only better and other people could say the same thing. :clinking_glasses:

16 Likes

Thank you so much for the unexpected Members of the Year inclusion. There are a lot of very kind and very smart people on that list. It is a bit intimidating to see myself in their midst. I will continue to try and meet the standards the Elixir community has for technical development and community building.


I first read about Elixir when I was bed-bound, recovering from surgery on my neck after suffering a spinal cord injury. I had been tinkering around with learning programming for a couple of years, first with some very basic Ruby and Python tutorials and then straight into Rust. Rust made me feel incredibly stupid. Lifetimes and immutability and typespecs were all foreign concepts that I just could not grok.

When I injured my spinal cord my hands didn’t work like they should. I couldn’t reach keys while typing, at least not consistently or quickly. I couldn’t even hold a book in bed to read for more than a few minutes at a time. So I was in the midst of feeling mentally inadequate from bashing my head against concepts in Rust and feeling physically defeated.

Elm was getting a lot of publicity around that time, showing up in my newsfeeds and stuff. In the course of reading about Elm I found people talking about using Elm and Elixir together to do functional style web development. So when I was laid up, unable to really do much of anything, I looked up the official Elixir documentation.

I had never really read any text about programming that just made sense and felt inviting. I read all of the docs and tutorials on my phone in bed. Then I read the Phoenix “getting started” tutorial. It all just felt intuitive and comfortable.

When I started to recover and could actually try writing code again, all the concepts of immutability and functional methods like map and reduce just made so much more sense. The biggest thing that has kept me writing Elixir since then, however, has been the community that Jose and Chris and Aston and everyone else have built. People in the Rust community were consistently kind and helpful, but the overall vibe was also one of superiority. The Elixir community seems organized more around a sense of comfortability. Rather than “how do you make this fast and mathematically sound?” the guidance is “how do you make this easy to understand and use?” That has been huge and has been a large reason why I have been able to grow my intellectual curiosity and dig out of the head space that physical and mental frustration had me in for a long time.

I will probably never be a professional developer or even a meaningful contributor to open source libraries, but I am indebted to Jose and the entire Elixir community in a way I will never be able to repay.

16 Likes

I would just like to say that I’ve never seen an open source maintainer, especially as one as prominent as Jose, be so humble and engaging with the community. I see him treat everyone’s ideas as if they’re worth listening to, no matter who is talking. He’s also really good at taking beating from the Elixir detractors. He always remains classy and respectful and keeps chugging along.

That was the main thing I wanted to say. The posters above and the ones to come will do more than a good enough job praising the language itself.

17 Likes

I had toyed with Elixir from about 2016 (I think) but didn’t really dive in until I learned about LiveView. Phoenix contexts, Phoenix in general, and Elixir’s syntax and unique flavour of functional programming made me a convert.

A bit of a longwinded story about LiveView:

I’m not one of those people who thinks JavaScript is the worst thing in the world. I’ve always seen it as the DOM’s fun and quirky DSL and actually really enjoy writing little client-side widgets. Then that day came when I learned about Angular and couldn’t understand it. I don’t mean that I didn’t understand how it worked, I mean I couldn’t understand why anyone would want to do such a thing, and I still don’t really. I mean, I do, but I don’t. From then on I started to get really jaded by web dev.

A few years ago I was on a team that was forced to use React on the frontend talking to a Rails API backend through GraphQL (Apollo). What a Rube Goldberg machine that was. GraphQL is actually really neat but we were writing an API for ourselves with no plans of ever opening it up, so it was pretty useless. It was a shift-scheduling app (so a Gantt chart) and one of the biggest customer requests was to make the app concurrent. I fully acknowledge that we were lacking a bit of expertise in Apollo which is why we couldn’t deliver it quicker, but I found LiveView around time and I was able to put together a concurrent proof-of-concept of our app by myself in under a day. A day!! I made up my mind I was going to work in Elixir from then on.

From there I found a job writing Elixir but unfortunately it turned out to be a really terrible fit and only lasted 8 months. If anyone is hiring, please lemme know, lol.

From this forum, I wanna shout out @dimitarvp. He’s always been very encouraging, usually through likes, when I say stuff that makes sense but just as telling are his lack of likes when I’m talking out my ass—and I know he’s reading those because he likes messages around mine :sweat_smile: Of course there are a lot of great people around here but don’t want to get into a big list. Speaking of lists, though, I was also very surprised and humbled that I was included in the MOY this year, so thanks for that!

11 Likes

José Valim, Chris McCord & Saša Jurić,

Thank you for saving my life.

Start of last year, I was done with tech. I started learning art and made up my mind to completely move over to design, game art, and any such field where I can feel at ease. I was serious as well, and I was not doing it at the whim of my ADHD-addled brain. I purchased an iPad Pro and got an iPad pencil and learning materials to accompany my journey.

It was because tech has let me down, throughout my life. Deprecations, instability, unmaintainable, unscalable, memory oozing mess made me feel like, if I create something for others I’m definitely going to have to keep that tower of Jenga from falling apart. It’s like architecting my own personal hell. And if I continue to work for others, then I’m going to have to juggle knives throughout my life!

I kept running from one tool to another because they failed me. From Adobe Flash to Unity, Angular to React, JavaScript to Rust, and on and on it went. It felt like, I was yak shaving my life away!

Why can’t I just have a single tool like writers or artists do? Why can’t I just master one tool and be able to do everything I desired?

8 months back, I came across PhoenixFramework, and started watching the conference talks:

All your talks made it clear to me, that there is hope, that software can be reliable, can keep running without faltering, can be maintained, can recover itself, and can be scaled.

Since then, I have been learning, grokking courses, and binge-watching talks going back to 2014!

And I’m in awe by the plethora of products that emerged, and the sheer number of ideas that materialized, in a fraction of your lifetime. It just makes me wish I discovered Elixir & Phoenix in its infancy.

I’m filled with fire, I feel passion for software engineering again and I feel like I can do everything I wanted, and all that’s because of you.

Thank You,
Abhijit


P.S. Thanks for including me in the Members of the Year listing. :upside_down_face:

17 Likes

Let me tell you about my story and how I discovered Elixir. I am an embedded software developer, and although I played with Ruby on Rails sometimes, I’ve never done anything useful besides a parse.

Two years ago, doing my daily embedded system job, using some scripts for code generation while complaining about Python and how messed up the language is, I decided to search for an alternative, I knew some Ruby but I was looking for something faster, that can be scripted and compiled at the same time. And this is how I found Elixir. I tried out, bought the book “Programming Elixir 1.6” and started to do my small projects. Shortly, I learned about Phoenix and Nerves, and that blew my mind.

I must confess, at the begging, it was hard, because my brain thinks in Object Oriented programming, but the beauty of the language push me forward. The whole framework feels right, the tools work smoothly, the documentation is abundant and up to date, and the Elixir Forum is heaven. Having the chance to discuss or read about some topics with experts is exciting. You don’t feel alone and the community grows every day.
But the cherry on the cake was when I saw José’s answers in StackOverflow. Priceless.

A year later, after getting confident with functional programming, I started looking for a job as an Elixir developer. Unfortunately, there are only Senior positions and nobody wanted an Embedded developer (hardcore C).

I didn’t give up. In June 2022, I took the decision that I had to quit my job if I really wanted to do this. I started studying full-time Elixir and Phoenix with the “Pragmatic Studio” courses. It was fantastic, and at that point understood that the change was worth it.

Three months later I found a job as Elixir developer for a small startup. I am starting from scratch but I am happier than ever.

To José, Chris, Eric, and the Elixir, Ecto and Phoenix core teams. To those heroes that created this beautiful framework, and I mean it because building all this software architecture, the tools, and writing the corresponding documentation requires passion, time, patience, and a lot of effort. I want to thank you, you are my heroes.

And to all those who contributed to this framework, I want to thank you!

13 Likes

I had been doing PHP exclusively on a cool but very nieche CMS – processwire –, but still following a few of the people in the laravel community, particularly Adam Wathan. I really liked a lot of his programming takes and I think I had just read his “Refactoring to Collections” when he did one or two livestreams trying out elixir – this was around mid 2016. I found it really intriguing even though he mostly showed some functional concepts and maybe some Enum stuff – he wasn’t experienced in elixir as well. From there I joined the elixir slack, bought a book or two – most importantly Elixir in Action by @sasajuric – and joined this forum. Elixir in Action really opened my eyes to what the beam and elixir are capable of and also how so. Also all the helpful people on the forum and the slack helped a lot getting going.

About a year later I made the decision to port a project I was working on at the time to phoenix. It was prev. built in said niche cms and hard to scale there. This was shortly after phoenix 1.3 was released. It certainly was a messy time porting this while also getting my feet wet in “actual work” with elixir, but the project is still around and continues to be maintainable, which I’m not sure the previous iteration would’ve been able to do as easily. It’s been mostly elixir for me since then.

What I find really interesting is that both of the “technologies” I got deeply invested in – processwire and elixir – fostered a great forum culture with helpful people around. They surely operate on vastly different scales, but at the core they feel very similar. @AstonJ you certainly deserve the praise for running this awesome forum.

I’ll finish with a proverb commonly recited in the processwire community:

Give a man a fish and you feed him for a day; teach a man to fish and you feed him for a lifetime.

I feel like many people in the elixir community live by that idea as well. We don’t shy away from difficult things or hide them away in magic boxes of “don’t question the decisions we made for you”, but we try to educate people and make it easy for them to make their own decisions – that’s what fosters real growth.

15 Likes

“If I try to centralise and I try to do everything on my own; I won’t be able to do it.”
José Valim (~2018), Elixir: The Documentary

To the core maintainers, the contributors, to anyone who has dotted an i or crossed a t in the docs - I thank you; you all changed my life.

Up until only a few years ago, I could not write code (some might argue that I still cannot :sweat_smile:) but, after working in tech in one way shape or form for 30 years, it was just those few years ago I expressed an interest in and was given a very lucky and generous opportunity to ‘give code a go’. Nervous and for the first time in a long time feeling out of my depth, I had a year with the objective to prove my value or return to my previous role.

The work was to update and maintain a web application with a React front-end - right, I’ve heard of this - and an Elixir back-end - who? Whether I’d heard of either, it was irrelevant because I still couldn’t write any code! Thankfully, the front-end changes were cosmetic, and it was easy enough - mostly - to establish a way forward using the existing codebase. The back-end was different, there were updates to authentication, a postgres database (:heart: Ecto!), deprecations etc. I googled Elixir…

And fell in love.

Here are a few elements that have stuck in my mind as I’ve explored Elixir:

:heart: The mini documentary (silly perhaps, but it resonated a lot with me)
:heart: Phoenix and Liveview - Chris, the core team and contributors are legends
:heart: Documentation!
:heart: Awe of the many forum contributors, here are a few I recognise on a regular basis - nobbz, lostkobrakai, dimitarvp, benwilson512, nicd and of course astonj and the mod team
:heart: It really did start to click for me when I took Pragmatic Studio’s Elixir course
:heart: ElixirConf EU 2022 stands out because I turned up with the biggest case of Imposter syndrome but left feeling invigorated by everything and met some great people (thanks for looking after me chriseyre)
:heart: I was able to contribute a minor fix to a library (thanks moogle19 for the support)
:heart: https://exercism.org/ and their Elixir track
:heart: Hugo’s Elixir Radar has always been excellent https://elixir-radar.com/

And so much more - great books, blogs, podcasts and courses - thank you all for the insights and support.

At the risk of getting overly fulsome, I’ll finish with: I made it past that first year.

Sincerely, thank you.

“But if we say, you know, everybody can contribute a small part to this and everybody together… decentralise - [we] can do that and bring the community forward. Then we have a chance of actually making a lasting impact. Beautiful.”
José Valim (~2018), Elixir: The Documentary

11 Likes

Hi @josevalim. I want to thank you for all the hard work you have put into Elixir. It is incredible how much value you have created, how many people people now have jobs, how many businesses exist, how many people are inspired to become developers. Truly amazing.

I started learning Elixir around the time you streamed the Advent of Code in 2018. It was an awesome experience to watch you explain things. As Elixir became my passion, I observed more and more how you interact with the community, how you respond to GitHub issues, how you answer on the forum or HN. You are such a positive person and it inspires me to be a better leader at work and a better person in general.

I’m really glad that Elixir and all the other great people in the Elixir community are in my life!

Aleksandr
@egze

13 Likes

Hello & Bye

I first heard about Elixir in 2015, when Elixir was in its very early days, and I didn’t spend much time on it.

Sinking in confusion

After that, I went on to learn Node.js and Ruby (basically Ruby On Rails), and so began a journey fulling with confusions. I’m not trying to discredit Node.js and Ruby On Rails, but I’ve always felt wrong when using them:

  • Node.js community is very active, in a sense. News things come out everyday, everyone is busy keeping up with the tech, but I felt I was wasting my time.
  • Ruby On Rails hides so many implementation details that I felt like I was working with esoteric magic. It worked well, but it was hard to keep going deeper.

A freshing breeze

4 years later, I met Elixir again. This time, for the exhausted me, Elixir is like a freshing breeze:

  • easy to understand.
  • easy to extend.
  • builtin high-quality modules.
  • great tooling: IEx, Mix, Hex, HexDocs, ExUnit. When starting a new project, I don’t have to pick the right tool from a bunch of tools.
  • great third-party libraries: Phoenix, Ecto, etc.

I still have a feeling - Elixir is pragmatic and different, but I don’t know how to tell. Recently, José Valim posted a tweet, and I know that’s it.
“Elixir(and Erlang) allows me to drop several layers of complexity and focus on my code. No JSON APIs, no gRPCs, no additional services. Just function calls.”

Learn it from scratch

Because of the way Elixir made me feel, I decided to learn it from scratch:

  • Elixir - Programming Elixir 1.6
  • Phoenix - Programming Phoenix 1.4
  • Ecto - Programming Ecto

The books are of high quality and they helped me get through the newbie period quickly.

So far, I’m still going to buy those Elixir-related books, and even though I am not plan to read them, I still want to support these authors.

Try to contribute

Then, I wanted to get more involved in the community and to bring more people to the community. So, I tried to reply the answers in our forum, and contributed to some projects:

When I contribute, I feel like I’m no longer a bystander, I’m a participant, and I’m building this community, too.

I know, these things aren’t significant. :wink:

Thanks

I want to thank everyone in the community.

Thank you for being here.
Thank you for helping us(the newcomers) to start.
Thank you for making us feel the joy of programming again.
Thank you for building this great community.

See ya next year. :raised_hands:

10 Likes

Dear José, dear Chris, dear Michał, dear Eric, dear Jonathan, dear Saša, dear rest of the core teams of Elixir, Mix, Hex, Ecto, Phoenix, dear community whom I cannot all name individually,

I want to thank you all very much for this amazing journey.
Elixir truly is a wonderful language, playground and community.
My journey with Elixir started in 2016, when encountering Elixir for the first time after people at work (working on a Ruby on Rails project) mentioned that it might make sense to investigate Elixir to rewrite some batch-processing pipelines in for efficiency and resilience.

I took a weekend to learn Elixir (which was at v1.2 at the time), and immediately fell in love with its concurrency model and explicitness, but even moreso the approach taken w.r.t. documentation, and the care taken to make learning the language and libraries as easy and comfortable as possible.

I remember contributing a grammar-fix to Elixir’s documentation early on (having read that documentation was valued dearly and wanting to test out whether this was true), and being absolutely amazed and enamored by how fast, dilligent and kind José responded to my Pull Request.

I remember starting discussions on the Elixir-lang-core mailing list about many a subject; most of which misguided in hindsight.
The patience, kindness and openness to explain why certain choices had been taken w.r.t. the design of the language (and core libraries) boggles my mind to this day.
And they form a standard which I actively try to live up to myself.

Elixir – the language, but in much greater parts its core community – has greatly shaped the way in which I think about software development in general, and I am eternally grateful for this.

Conversations and discussions with José, Chris, Michał, Eric, Jonathan and Saša during various Elixir conferences are among the fondest and most eye-opening experiences I have had w.r.t. building software.
Both in the small and in the large.

Thank you so much for this wonderful time in this wonderful community.
Thank you for your infectious excitement about building maintainable software.
Thank you for your open mind, and your candid but always respectful responses to questions, ideas or proposals.

José, thank you for taking all of us on this amazing adventure together.
Everyone, thank you for sharing in this great dream together
and continuously lifting each other up to reach heights in software development and collaboration.
You continue to amaze me, and even after all these years still fill me with a childlike sense of wonder.

Thank you all, from the bottom of my heart.

~Wiebe-Marten Wijnja / Qqwy

16 Likes

It’s so nice reading these posts. It took me down the memory lane, and reminded me that a bit more than 10 years ago I’ve started toying with Elixir.

I actually first noticed Elixir somewhere in 2011, before the famous 0.5.0 big rewrite/overhaul. I took a mental note of it, but didn’t do anything beside reading the docs. Fast forward to late 2012. when I first gave a talk on Erlang at a local event. After the talk, a few people from the Python community reminded me of Elixir. They heard about it directly from José on some Python event and they were very enthusiastic about it. So I decided to give it another look, and I was so blown away that very soon I’ve started using it in production.

Back then the online community was very small. IIRC there were something like 20-ish people on the mailing list, with most of us asking questions, while a few people were guiding us, such as @josevalim, @yrashk, and @alco. It’s great to see how much the community has grown, and yet how it still keeps the friendly atmosphere of the early days. I think a lot of credit for that goes to this forum. Good job everyone!

24 Likes

I started developing with Elixir three years ago, my first job as a developer, I had been studying Ruby on the side for three or four years and I was hired based on my Ruby knowledge. On day one I was put on an Elixir project and I’ve been doing Elixir ever since. The syntax was comfortable, initially, because it was so similar to Ruby, however as time has gone on I’ve come to love Elixir even more as I find it to be more explicit and concise than Ruby with less “magic” going on. I love that I can jump into any project, look at any module or function and figure out what’s going on. It’s part language design, part good conventions, and part great documentation built in, that and so much more makes Elixir a joy to work in.

The community is friendly and welcoming its fantastic to see so many questions here on the forums and SO answered personally by Jose, Chris and others. Having the people designing the language, and flagship libraries like Phoenix is huge and it’s really appreciated.

Elixir is now my goto for all new projects, Phoenix and LiveView have made developing responsive web applications an absolute joy. It feels like I’ve reached the pinnacle of modern web development the fact that I can do everything I need with a single language, and then sprinkle a bit of JavaScript in as needed is incredible.

Thank you!

10 Likes

I’ve posted this before on my blog back in 2021, but as it’s fitting for this thread and I don’t think I linked it here, I will copy the text here:

I first came upon Elixir in 2013 (wow, it’s been 8 10 years?). I was looking at Erlang and a friend of mine said that there’s this new language being built on the same VM, you should look at it. I gave it a whirl and the rest is history, as they say. I’ve written it on and off, sadly never professionally, resulting in lots of stuff, some even in production. Elixir gave me a new joy in programming.

None of this would be possible without the hard work of people I’ve never seen. People who have received nothing from me but have decided to give me the tools to work with anyway. To help me avoid mistakes. To ease my experience. To expand my view of programming beyond what I could have thought of myself.

For this I want to thank you, as it’s the least I can do.

This unordered list is not exhaustive, you can help by expanding it in your own blog post.


Thank you, josevalim, for starting the movement. What you created has shaped the lives of so many people. Not just the language, but the community around it, worldwide. It wasn’t all you, but you took the first steps and inspired others to join. I admire your work ethic and the amount of wise decisions you’ve made when steering the language and various libraries. As a programmer but also as a person you are a personal inspiration.

Thank you, chrismccord, for building the Phoenix ecosystem and for your focus on making Elixir web development a frictionless experience for a newcomer. Your work makes my work possible, and I’m impressed at how well thought out the framework’s features are. LiveView is a game changer and it has been a pleasure to replace my frontend JavaScript with backend Elixir code.

Thank you, ericmj, for the Ecto tooling. I used to think Django’s ORM was the best database interfacing library there was, but Ecto showed me a new perspective and the folly of my ways. Hex on the other hand is now the underpinning of the whole package ecosystem. Also, Ex2ms keeps me sane.

Thank you, CrowdHailer, for showing me an alternative way of doing HTTP in Elixir. I found your OTP-ish code structuring eye opening. Also, this blog runs on Raxx.

Thank you, kip, for making sure that Elixir has the best damn CLDR and Unicode support available.

Thank you, laut, for teaching me about when UTC is not enough and providing me the calendar and TZ tools I could not do without.

Thank you, rawtaz, for keeping #elixir free of joins and quits.

Thank you, sasajuric, for sharing your wisdom in the ways of the BEAM with others. Your presentations are inspiring and informative, and I truly believe you are one of the great minds in the community.

Thank you, Hauleth, for teaching me about OTP, applications, and configuration. Your thoughts on things have widened my perspective.

Thank you, JakeBecker, axelson, KronicDeth, Big Hat Dorgan, icecreamcohen, and others, for creating and improving the tools to mold and shape our projects right in our favourite editors.

Thank you, supervisors and moderators of community spaces, for maintaining friendly, high quality help resources day after day. The amount of good you have done for new and old users is uncountable.

Thank you, AstonJ, for your tireless work in producing one of the best programming language related resources I have seen. It’s searchable, it’s accessible, it’s free, and it’s friendly. The Elixir Forum is a blessing for the community.

Thank you, OvermindDL1, for your insightful forum posts and many different small libraries. I have learned many things from them and they have helped me greatly on my path.

Thank you, Khionu, for being an active force for improvement on the Elixir Discord.

Thank you, Volcyy, for managing Bolt for us.

Thank you, asummers and immutable, whom I always mix up for some reason so I’m giving you a combined thanks for being all around helpful people.

Thank you, Natsu, for being so hyped.

Thank you, Adam and CronoKirby, for being our glorious admins.

Thank you, nikolauska, for your contributions to my project. Having another person working on the project for such amounts really gave me motivation.

Thank you, Rick Van Camp, for inviting me to hold my first meetup presentation. It taught me that after years of self doubt, I could actually do it and even enjoy it. You reached out and gave me the push I needed.

Thank you, Jasu, for saving me from speaking alone at our first meetup, and for reminding me that I’m not the only Elixir dev in this neck of the woods.

Thank you, juhatl, for the undeserved kind words you had for me. You don’t know what they have meant.

Thank you, fhunleth, mobileoverlord, ConnorRigby, jjcarstens, and ferggo, for bringing Elixir to the world of embedded software and giving me totally new areas of research on what I could do with Elixir and my RPi boards. Click click.

Thank you, nox, for all the shitposts.

Thank you, tomjoro, for pushing Elixir’s cause in Finland. Your presentation in Helsinki was inspiring and I’d love to hear more from you in the future.

Thank you, paulcsmith and princemaple, for allowing me to send email without losing the rest of my hair.

Thank you, lpil, rvirding, leostera, gfngfn, and michallepicki, for pushing the envelope on what BEAM can do and what new features alternative approaches can provide. Especially the static typing initiatives are extremely exciting to me.

Thank you, riverrun, for letting my users come on in to my website by inputting their password. Honestly, your library is invaluable.

Thank you, AppSignal, for sponsoring my project with a free account.

Thank you, all the other companies supporting various Elixir projects, conferences, websites, communities, etc with money or employee time. You make it possible to do many of the things we take for granted.


This wasn’t even half of the people I should thank, but at this hour of the night I’m unable to think clearly enough to add more. And I just don’t know enough of you! As a rule, if you believe you have made some sort of a positive effect on the Elixir community or you have been part of something mentioned above, you should consider yourself a part of these good people.

I know my thanks won’t pay anyone’s bills or bring food to the table, but I hope it can bring you some small amount of motivation or positive feeling to your day. My wish is to be able to give back to the community in a similar way as you have done and be worthy of someone else’s thanks.

13 Likes

My first encounter with Elixir was around version 0.7. There were some buzz around it in rubyland and me being a curious soul I just had to check it out. I spent countless hours with the docs, doing small experiments and tutorials. I just didn’t get how to do anything useful in it, so back to ruby.
Almost a year later I decided to try it out again and this time it all clicked for me, and I have been a big fan ever since.

I spent years trying to perfect how to do OOP, but it has always been bothering me. Always something that just feels off about it once you get past the schoolbook examples.

Elixir hits the sweet spot for me, functional enough without getting too scary, expressive, tooling that just works, top notch documentation, awesome community.
All on a rock solid VM, and being a Swede I also feels extra special it came out of here :slight_smile:

To me Elixir feels like an little island of sanity in the chaos that is software engineering today, it is home.

I personally wanna thank José and the core team for all the hard work you poured into this.

Happy birthday Elixir :purple_heart:

12 Likes

There were a couple of years leading up to 2020 where I lost motivation and momentum to continue growing myself and my career as a software engineer. I was just writing the Ruby code for whatever project came my way and not all that interested in picking up a new book or course or building a side project because I knew I could basically figure out whatever I needed to do to get the job done. I also convinced myself that I am too busy to really spend focused time learning and growing.

Then I started using Elixir which solved a lot of the annoying problems around scaling and concurrency with abstractions from the future. I found an interest and a drive within myself to want to learn more about it. There is more to learn. I can have more leverage over technical problems by learning how to apply the deep set of tools that comes in the box with Elixir. This has enabled me to spend some of my free time on learning while having lots of fun. This drive allowed me to know enough about tools that do not exist in other languages that I get the opportunity to mentor engineers in other teams where I work. This drive allowed my salary to grow by 50% (without switching employers).

In summary, I am having more fun and making more money at work, and Elixir was an absolutely essential ingredient in this change.

14 Likes

So I started in Elixir in about 1.0, because someone told me that I should. I tried Erlang before, but it wasn’t for me. Then I tried Phoenix and I know what I can do with it - I tried to do Drab - remote controlled fronted framework. Of course now there is a better replacement :slight_smile:

Very good work José, Chris and many others! :slight_smile:

10 Likes

Just by reading awesome posts from the core teams and the entire community, saying thank you won’t be enough. I owe a lot from you and the books you’ve made, which I’m grateful for and applied what I learned into my current work. Lots love :pray:

6 Likes

My Elixir journey began in 2016. Jose Valim came to Lviv to give a talk about the Phoenix framework on Pivorak meetup

I’ve heard about Elixir before from my coworker, but on that occasion I decided to come prepared! I’ve read some docs about Elixir before the talk to have a better understanding of it. At the talk, Jose has sold me Elixir and Phoenix framework :slightly_smiling_face: I used to use Ruby on Rails and React at that time. By the end of 2016, I was writing my first production code using Elixir. I spent some time on my honeymoon reading “Elixir in Action” (@sasajuric thank you for showing how awesome BEAM is) and after that, I decided that I wanted to use Elixir as my primary programming language. But a complete switch happened only in 2018. Since that time, I use Elixir in my day-to-day job.

I don’t want to repeat many things about why Elixir is so awesome, just want to express huge gratitude and respect to the entire Elixir community.

@josevalim thank you for the story about trees in the garden. It inspired me to start growing new trees!

9 Likes