Update: New Elixir ecosystem and framework sections (and mod nominations!)

Hi everyone!

We hope you’re all keeping safe and covid-free! If the pandemic has been getting you down, we hope there’s something in this announcement to help cheer you up.

As many of you know Elixir has been blazing its way through various phases of growth and it’s something we’ve always factored here on the forum - so true to form and with future growth in mind we’re making a few more additions and refinements :003:

New Elixir Ecosystem Sections

Going through various stages of adoption means we’re also going to see a greater variety in types of users - and with them different expectations and needs. Here’s a good chart to help illustrate this:

(Source)

Where we are on the chart may depend on how you personally view things, but the key thing to note is that no matter where that might be, as we progress we’re going to encounter different types of users, needs and feedback - and that’s why we’ve decided on these particular sections and the particular way in which they’ve been set up.

Let’s go through each in a little more detail. (José is especially keen to see one of them - can you guess which one? :101:)

Ecosystem & Feedback

This is for general ecosystem chat, feedback and suggestions, and the details that show on thread creation are:

Use this section for feedback and suggestions about the Elixir ecosystem. Please remember that while critical feedback is welcome, please be kind and respectful, and if you want to suggest or propose something, please review the tips in this section beforehand. Thank you!

It’s where we’ll expect to see most feedback and suggestions.

Contributing & Mentorship

As many of you know this is a topic that is close to José’s heart. He’d love to see more people give contributing a go - even if they never have before. Having a dedicated section that is members-only may help people overcome any trepidation or reluctance they might have (understandably) been feeling - maybe they’ve never contributed to OSS before, or perhaps they’re new to programming, Elixir, or even just generally unsure about things - if we can help people through those tentative first steps who knows where it might lead!? Here’s the details shown on thread creation:

Use this section to discuss contributing to the Elixir ecosystem - whether it’s a PR you think might be worth sending or proposing, working on one in this section to get feedback or help from others, or posting about one that is more or less completed and where you want to ask for feedback.

We’re really looking forward to seeing how this section develops - and if you think you might be able to help (even if that’s just to post some words of support or encouragement) please do - who knows, maybe it’ll become another one of the things that helps Elixir stand out!? With your help we’re sure it could well be! :innocent:

Adoption and Promotion

This is our old ‘Adoption & Media’ section renamed and repurposed here. It’s essentially for all general adoption and promotion threads:

Use this section for Elixir adoption and promotion related threads and discussions.

Why are these sections important?

Apart from helping with the usual phases of adoption as explained above, it may also be worth looking at the wider programming language landscape and note that Elixir has been a bit of an anomaly, and has done incredibly well compared to other similarly aged languages that were equally hyped around the same time. Sadly, languages like Elm, Crystal, and many others just haven’t experienced the same kind of adoption - whereas the languages that have, are almost always those backed by large tech giants. Languages like Go, Rust, TypeScript, Swift, Kotlin, Flutter, etc.

More independent languages like Elixir have greater hurdles and challenges to overcome - but being independent can also be an advantage (and this forum is a very good example of that) - because you’re not bound by the same rules and can forge your own path and in your own unique way.

What that path ends up being depends on you - and we hope these sections will help facilitate whatever cool new ideas all of you have in mind, not just for Elixir but for important projects like Phoenix, Nerves, Membrane, Scenic, Nx, Lumen, etc, too :purple_heart:

Speaking of projects that are important to Elixir…

New Framework Sections

We’re so lucky that Elixir has some really cool frameworks and projects!! :smiley:

To help support these projects we’ve created some dedicated sections for them:

http://elixirforum.com/nerves
http://elixirforum.com/membrane
http://elixirforum.com/nx
http://elixirforum.com/lumen
http://elixirforum.com/scenic

These are just a starting point and when/if the activity in these sections grow we’ll expand them so they also contain dedicated sections for news, chat, and questions (like what we have for Phoenix). For now if possible please add a news, chat, or questions tag as that will make it easier for us to categorise threads in future.

We’ve also given the core teams of each of these projects moderator permissions for their respective sections - however there’s no expectation for them to moderate (but they’re welcome to if they want to).

Generally the criteria we’ll use when creating such sections will be for those frameworks or tools that may be considered pillars of Elixir or important to the growth of it, and once the forum team identify such a framework or tool, we’ll then run it by José and if he agrees we’ll add the dedicated section and set up its short URL like those above. Hopefully these will help those projects grow …which in turn will help Elixir grow.

Is anyone excited about which new frameworks and tools we might see in 2, 3 maybe 5 years from now?!! We are!

Moderator Nominations!

We can’t think about the future of the forum without thinking about the mod team - who do so much to help keep standards high and the place as useful and friendly as it can be. So to help put us in good stead for what comes our way over the next few years we’re expanding our moderator (and Admin!) team - and we’d love for more of you to get involved - either by nominating someone who you think might make a good moderator, or putting yourself forward if you fancy giving it a go yourself.

Some of the qualities we usually look for in moderators are people who are helpful (this can be helping members or helping the forum via things like thread categorisation/tagging etc) and that they’re not someone who is rude or condescending (and maybe someone who’s been here a little while too, just to be on the safe side!)

If you know someone who would make a good moderator, or you’d like to volunteer yourself, please PM @AstonJ - if enough people nominate someone and we agree they may be a good fit, we’ll reach out to them :023:

Receiving feedback

Before we begin bringing this to a close, let’s quickly talk about being on the receiving end of feedback as a community - because taking feedback can sometimes be more difficult than you might imagine, especially when it’s something you created or are passionate about.

As already mentioned, as Elixir grows so too will the diverse nature of people, use-cases, opinions, etc, and all this will perhaps highlight something more starkly than ever before - and that is that Elixir will mean different things to do different people and not everyone is going to be as much of a fanatic as we might want them to be.

But that’s ok.

If the goal is to grow Elixir, then, we could do a lot worse than to acknowledge that we probably need them more than they need us right now, and so it’s worth taking time out to listen, and it’s worth giving people the benefit of the doubt whenever the opportunity presents itself - it’s always better to enlighten rather than enrage.

It may also be useful trying to separate what someone is trying to say from how they said it. Maybe they just worded it clumsily. Maybe they’re having a bad day or week. Maybe they just had a really bad few years, or maybe, even had a rotten life and just don’t know any better. While it’s always good to push people into a more positive path (whether that’s through things like Jose’s new contributing section, some of the guidelines or initiatives we have here, or just nudging someone in the right direction subtly or diplomatically) it’s also good to try to avoid confrontation, to not take things personally, and if possible, to always try to make things better (and consciously try not making them worse).

So next time someone says something that irritates you or comes across as a bit too negative (and so long as there are no signs of obvious malice) maybe challenge yourself to change their mind or way of going about things - while at the same time - leaving them with a positive feeling about Elixir and the community. With a bit of practice, it’s definitely achievable - and certainly more rewarding and of long term value to Elixir.

Dealing with trolls, bad actors, drain etc

Having said all the above, we know there are trolls and bad actors out there, and we know that sometimes hearing a lot of critical feedback can be draining.

That’s why, when considering how to set up the new feedback sections, we decided to put in place some measures to protect the community and specific groups of people like maintainers of large projects such as Elixir and Phoenix.

The first thing we have done is make those feedback/ecosystem sections members only. This deters most trolls and WUMs, and not just from posting in those sections but anywhere on the forum too - because by having a number of sections that cover most of those types of threads means even if such a thread is posted in a different (public) section, it will most likely be moved to a members-only space. Genuine users with genuine feedback will care much more about airing their opinions to other genuine users (i.e members) whereas trolls usually just want to create a big scene with as much exposure as possible. By making them members-only also helps prevent the community feeling like they must defend Elixir with ferocity and at all costs, and since they are members-only, makes it much easier to simply thank someone for their feedback and just provide them with some reasons why we may not agree - no need for huge lengthy debates going back and fourth even if the OP is persistent or goading. As many of you know, we’ve had various measures like this (and others, such as the Moderation Queue section) for many years and we know they work well.

The other thing we’re putting in place is something we feel we must do as part of our duty off care towards José, Chris and the Elixir and Phoenix core teams.

Some of you may have seen that José has publicly mentioned mental health more than once now - so it is clearly something that is affecting him or someone close to him. So, for now at least, two of the three ecosystem chat sections (Ecosystem & Feedback and Adoption & Promotion) are going to be auto-muted for the Elixir and Phoenix core teams. They can still see those threads if they want to by going to those sections, but by default they won’t show in their latest page/timeline - how and when they visit them will be up to them, they might do so weekly or monthly or just when they feel like they have the bandwidth for it. For the rest of us, any ideas that bubble up to the top can be turned into official proposals, but generally, you’ll find the best ideas will find their way to the appropriate people sooner or later - at the end of the day the core teams care about the projects they work on and it’s only natural they’ll be interested in hearing feedback, but this way we make it easier for them to do that on their terms while at the same time give as many people as possible as much flexibility and leeway as we can because we know this is equally important for growth. Hopefully we’ve got the balance just right, though of course like anything we try, everything here is on trial and we’ll tweak things as and when we need to.

Members only section is back

Speaking of mental health, we’ve brought back our ‘Members Only’ section as a place for people who might want to get support for any personal issues affecting them or for when they want to talk about something that is highly personal to them and not suitable for the more public areas of the forum.

Please don’t use the section for talking about things like other languages/communities or politics or any other contentious issues - it’s primarily there for support centred around personal issues.

As with everything we try, it’s on trial, but we hope that if some of you feel like you may need support, you’ll think about making use of it. Only TL1+ members can view/take part in those threads.

Rounding up

Wow, this update ended up being much longer than anticipated! And there’s still lots of exciting things to talk about! (Watch this space!)

If you made it this far - thank you! Thank you also for helping shape this community into what it is, we say this all the time, but the Elixir community is great because we have so many great people like you in it! :purple_heart:


Quick recap:

  • New Elixir ecosystem sections - for feedback and suggestions, encouraging mentoring and contributions, and for general adoption and promotion related topics.
  • New Framework sections - for frameworks or tools that are or have the potential to be game changers for Elixir.
  • Moderator nominations - the forum needs you!
  • Members Only section is back - for when you need support :hugs:
61 Likes

I’ve been having a private chat with AstonJ about the new sections; at his suggestion, I’m taking my ideas public. (ducks…)

The basic idea is that each section should have a pinned page or two containing introductory material, useful links, and perhaps a FAQ.

Ideally (IMHO), the content and layout of these pages would be reasonably consistent, so that readers would have a good idea about what to expect. So, maybe an initial page should be created, argued about, and then used as a model for other sections.

Anyway, here’s (a start on) a sample of what I have in mind:

Nerves is a complete IoT platform and infrastructure for you to build and deploy maintainable embedded systems.
Platform

Nerves defines a new way to build embedded systems using Elixir. It is specifically designed for embedded systems, not desktop or server systems. You can think of Nerves as containing three parts:

Platform - a customized, minimal Buildroot-derived Linux that boots directly to the BEAM VM.

Framework - ready-to-go library of Elixir modules to get you up and running quickly.

Tooling - powerful command-line tools to manage builds, update firmware, configure devices, and more.

Taken together, the Nerves platform, framework, and tooling provide a highly specialized environment for using Elixir to build advanced embedded devices.

Getting Started — nerves v1.7.11

Resources

12 Likes

This is a great idea Rich - thanks for posting!

There are a couple of options we could use, the first is a standard Discourse wiki (which any TL1+ member can edit) however now that each core team member has mod permissions for their respective sections, they could just put up a pinned thread themselves and keep it updated with the info they personally think it needs.

They could add things like your example - and perhaps as a minimum:

And optionally, they could add additional info such as:

  • Links to any:
    • Important news
    • Threads
    • Tips
    • Resources
    • Getting started guides
    • Any other info they feel is necessary

I still actually need to set up and send the core teams some additional info (such as some of our moderation guidelines just in case they ever feel like doing a bit of it) so will include a link to your suggestion here at the same time :023:

4 Likes

I just want to say that being part of a community that takes mental health and well being seriously, and seeks to support the community’s (phenomenal) leaders makes me so proud. What an amazing example to set for ourselves and for other open source projects.

12 Likes

A post was split to a new topic: Avoiding dopamine hits for mental health and wellbeing

I have been thinking of starting small classes online for everyone to join, I have been successfully mentoring (which says more about them than me), and I would like to expand outside the employers.

I am not that good with coming out with example code, I rather use real problems that people are having, and use those situations to educate and help them. Or invent a real project that somebody brand new would like to do … something like that.

I would appreciate some support on the topic and help me to get involved with others that are interested in mentor and help.

If you need somebody, I am here to help with the topic.

P.S: I may not know things, and I would probably seek help with you :wink: I just know few things :smiley:

3 Likes