# Technical Documentation: mainmatter/100-exercises-to-learn-rust

> ℹ️ **Provenance:** Hybrid Fusion: `mainmatter/100-exercises-to-learn-rust` + `mainmatter/website` · [CodeWiki Reference](https://codewiki.google/github.com/mainmatter/100-exercises-to-learn-rust) · Recency: Active (< 180 days)

## 1. Project Overview & Quickstart (mainmatter/100-exercises-to-learn-rust)

# Learn Rust, one exercise at a time

You've heard about Rust, but you never had the chance to try it out?\
This course is for you!

You'll learn Rust by solving 100 exercises.\
You'll go from knowing nothing about Rust to being able to start
writing your own programs, one exercise at a time.

> [!NOTE]
> This course has been written by [Mainmatter](https://mainmatter.com/rust-consulting/).\
> It's one of the trainings in [our portfolio of Rust workshops](https://mainmatter.com/services/workshops/rust/).\
> Check out our [landing page](https://mainmatter.com/rust-consulting/) if you're looking for Rust consulting or
> training!

## Getting started

Go to [rust-exercises.com](https://rust-exercises.com) and follow the instructions there
to get started with the course.

## Requirements

- **Rust** (follow instructions [here](https://www.rust-lang.org/tools/install)).\
  If `rustup` is already installed on your system, run `rustup update` (or another appropriate command depending on how
  you installed Rust on your system)
  to make sure you're running on the latest stable version.
- _(Optional but recommended)_ An IDE with Rust autocompletion support.
  We recommend one of the following:
  - [RustRover](https://www.jetbrains.com/rust/);
  - [Visual Studio Code](https://code.visualstudio.com) with
    the [`rust-analyzer`](https://marketplace.visualstudio.com/items?itemName=matklad.rust-analyzer) extension.

## Solutions

You can find the solutions to the exercises in
the [`solutions` branch](https://github.com/mainmatter/100-exercises-to-learn-rust/tree/solutions) of this repository.

# License

Copyright © 2024- Mainmatter GmbH (https://mainmatter.com), released under the
[PolyForm-Noncommercial-1.0.0](https://polyformproject.org/licenses/noncommercial/1.0.0).

If you're planning to use this course internally at your company, please [reach out](mailto:training@mainmatter.com) for a license.
We also offer this course as an [instructor-led workshop](https://mainmatter.com/training/learn-rust-starting-from-scratch/).

## 2. Official Technical Reference & Guides (mainmatter/website)

## File: README.md

# Erlef



## Prerequisites

 A `.tool-versions` file is provided in this repo for [asdf](https://asdf-vm.com/) users.

 - Erlang/OTP 23
 - Elixir 1.11
 - NodeJS v10 (or greater)

## Up and running

  * Install dependencies with `mix deps.get`
  * Install Node.js dependencies with `npm install --prefix assets`
  * Run `mix ecto.setup` to setup the local database
  * Start Phoenix endpoint with `mix phx.server`

Now you can visit [`localhost:4000`](http://localhost:4000) from your browser.

## Creating blog posts

The eef.gen.post mix task should be used to create new blog posts. The command structure is as follows:

`mix eef.gen.post <working-group> <slug>`

The current options are available:

- `--author <string>` or  `-a <string>`
- `--title    <string> ` or `-t <string>`

Note that you may edit the author, title, and other meta data after the post is generated.

```shell
mix eef.gen.post education missing-rug --author "The Dude" --title "It tied the room together"
* creating priv/posts/education/20190708231334_missing-rug.md
```
Now you may open up the created file and edit the metadata and author the content of your post with your favorite editor.

In this example to preview the rendered markdown on the local instance of the site one would visit
`http://localhost:4000/news/education/missing-rug`

### post file format

```
{
  "title": "It tied the room together",
  "author": "The Dude",
  "slug": "missing-rug",
  "datetime": "2019-07-08T23:12:30.345164Z"
}
---
Post excerpt goes here. This is a short description of the what the post is about.
---
This is where the body of the post goes.

## Standard markdown and GFM supported.
 See [Earmark Docs](https://hexdocs.pm/earmark/1.3.2/Earmark.html) for details.

```

### Current roster of blog groups

 The following groups can be used with the eef.gen.post command:

 - eef
 - building
 - education
 - marketing
 - proposal
 - observability
 - sponsorship
 - security
 - documentation

## Development

### Getting around in dev mode
- No extra configuration is needed to getting up and running in dev mode. Simply start up the app after
  initializing the database and login. 
- You may login in with different personas in dev mode using the `Login as` dropdown menu. 

### Contributing to the community section of the site

All resources data for the community page of the site can be found in [priv/data/community](priv/data/community).

Before proceeding please:

   -  Stick to facts about entries you add and avoid asserting comparative or superlative differences of one product, 
      project, company or individual over another.
   -  Note than an `about` value for sections of the page that make use of cards can have no more than 240 characters and
      optimally have no less than 200 characters.

#### Adding an entry to an existing section

  To add an entry to an existing section simply find the relevant `.exs` file in  [priv/data/community](priv/data/community) and add a new entry. That's it!

#### Adding a new section or sub-section 

  - Create a new `.exs` file in [priv/data/community](priv/data/community) with a name that reflects the section of the site (e.g, languages, platforms, etc.) 
    
    - See [priv/data/community/languages.exs](priv/data/community/languages.exs) as an example. 

  - A new function should be able after you recompile `Erlef.Community.Resources` with the base name of the file you added prefixed with `all_` (e.g., `all_languages`). Likewise it will also be available in the main data map returned by the `all/0` function.

  - Add the new section or sub-section
    to [lib/erlef_web/templates/page/community.html.eex](lib/erlef_web/templates/page/community.html.eex).
    
    - Note that both `<h1>` and `<h2>` tags within this file will automatically end up within the TOC component on the 
      page. Deeper nesting is not supported. See existing sections for examples.

    - The layout for what you're adding may depend on the type of section and there are are no hard rules around how
      something should be displayed. If you're unsure or need feedback please reach out to us in an issue or as 
      part of a pull request.

  - Commit your changes and open up a new pull request using the Community Section pull request template 🎉

---

## File: CONTRIBUTORS.md

# EEF Website Contributors

The following contributors have made the work in this project possible through their contributions
and donation of life's most precious commodity... time. 

In alphabetical order by lastname: 

- Joaquin Alcerro(@joaquinalcerro)
- Desmond Bowe (@desmondmonster)
- Anthony Bullard (@gamebox)
- Ben Marx (@bgmarx)
- Bryan Paxton (@starbelly)
- Miriam Pena (@miriampena)

---

## File: coveralls.json

{
  "skip_files": [
    "test",
    "lib/erlef/release.ex",
    "lib/erlef_web.ex",
    "lib/erlef/application.ex",
    "lib/erlef_web/endpoint.ex",
    "lib/erlef_web/gettext.ex",
    "lib/erlef_web/views/error_helpers.ex"
  ]
}

---

## File: assets/package.json

{
  "repository": {},
  "license": "MIT",
  "scripts": {
    "deploy": "webpack --mode production",
    "watch": "webpack --mode development --watch"
  },
  "dependencies": {
    "@fortawesome/fontawesome-free": "^6.0.0",
    "@fullcalendar/bootstrap": "5.10.1",
    "@fullcalendar/core": "5.10.1",
    "@fullcalendar/daygrid": "5.10.1",
    "@fullcalendar/list": "5.10.1",
    "admin-lte": "^3.2.0",
    "bootstrap": "^4.6.1",
    "glob": "^7.2.0",
    "ical.js": "1.4.0",
    "jquery": "3.5.1",
    "luxon": "1.25.0",
    "phoenix": "file:../deps/phoenix",
    "phoenix_html": "file:../deps/phoenix_html",
    "phoenix_live_view": "file:../deps/phoenix_live_view",
    "popper.js": "1.16.1",
    "sass": "^1.39.2",
    "@yaireo/tagify": "^4.12.0"
  },
  "devDependencies": {
    "@babel/core": "^7.17.5",
    "@babel/preset-env": "^7.16.11",
    "babel-loader": "^8.2.2",
    "copy-webpack-plugin": "^10.2.4",
    "css-loader": "^5.2.7",
    "expose-loader": "1.0.3",
    "file-loader": "^6.2.0",
    "lodash": "^4.17.20",
    "mini-css-extract-plugin": "^1.6.2",
    "optimize-css-assets-webpack-plugin": "^6.0.1",
    "sass-loader": "^10.2.1",
    "serialize-javascript": "^5.0.1",
    "webpack": "^5.69.1",
    "webpack-cli": "^4.9.2"
  },
  "resolutions": {
    "uglifyjs-webpack-plugin/serialize-javascript": "^5.0.1"
  }
}

---

## File: assets/static/manifest.json

{
 "name": "App",
 "icons": [
  {
   "src": "\/android-icon-36x36.png",
   "sizes": "36x36",
   "type": "image\/png",
   "density": "0.75"
  },
  {
   "src": "\/android-icon-48x48.png",
   "sizes": "48x48",
   "type": "image\/png",
   "density": "1.0"
  },
  {
   "src": "\/android-icon-72x72.png",
   "sizes": "72x72",
   "type": "image\/png",
   "density": "1.5"
  },
  {
   "src": "\/android-icon-96x96.png",
   "sizes": "96x96",
   "type": "image\/png",
   "density": "2.0"
  },
  {
   "src": "\/android-icon-144x144.png",
   "sizes": "144x144",
   "type": "image\/png",
   "density": "3.0"
  },
  {
   "src": "\/android-icon-192x192.png",
   "sizes": "192x192",
   "type": "image\/png",
   "density": "4.0"
  }
 ]
}

---

## File: assets/static/robots.txt

# See http://www.robotstxt.org/robotstxt.html for documentation on how to use the robots.txt file
#
# To ban all spiders from the entire site uncomment the next two lines:
# User-agent: *
# Disallow: /

---

## File: lib/erlef_web/templates/stipend/create.json

<h3>Congrats!</h3>
Expect a copy of your stipend proposal coming from notifications@erlef.org

---

## File: priv/posts/education/20210321165506_icfp-erlang-2021-call-for-papers.md

{
  "title": "ICFP Erlang 2021 - Call for papers",
  "authors": ["Annette Bieniusa","Stavros Aronis"],
  "slug": "icfp-erlang-2021-call-for-papers",
  "category": "education",
  "tags": ["education", "papers", "icfp"],
  "datetime": "2021-03-21T23:55:06.768940Z"
}
---
ICFP Erlang Workshop
---

The Erlang Workshop aims to bring together the open source, academic,
and industrial communities of Erlang and other BEAM-related languages,
to discuss techniques, technologies, languages and other relevant
topics.  The Erlang model of concurrent programming has been widely
emulated, for example by Akka in Scala. Moreover, several newer
programming languages, such as Elixir, have been designed atop
Erlang's VM.  The workshop is welcoming contributions related to any
and all systems like those mentioned above.
The workshop aims to enable participants to learn about recent
developments on techniques and tools, novel applications, draw lessons
from users' experiences and identify research problems and common
areas relevant to the practice of Erlang and other Erlang-like
languages, functional programming, distribution, concurrency, etc.

## Topics
This year we invite three types of submissions:
* Technical papers describing language extensions, critical
  discussions of the status quo, formal semantics of language
  constructs, program analysis and transformation, virtual machine
  extensions and compilation techniques, implementations and
  interfaces of Erlang in/with other languages, and new tools
  (profilers, tracers, debuggers, testing frameworks, etc.).
  Submission related to Erlang, Elixir, Lisp Flavored Erlang, and
  topics in functional, concurrent and distributed programming are
  welcome and encouraged.  The maximum length for technical papers is
  restricted to 12 pages, but short papers (max. 6 pages) are also
  welcome.
* Practice and application papers describing uses of Erlang and
  related languages in the "real-world", libraries for specific tasks,
  experiences from using Erlang in specific application domains,
  reusable programming idioms and elegant new ways of using Erlang to
  approach or solve particular problems, etc.  The maximum length for
  the practice and application papers is restricted to 12 pages, but
  short papers (max. 6 pages) are also welcome.
* Lightning talks describing topics related to the workshop goals that
  allow participants to present and demonstrate projects and
  preliminary work in academia and industry.  Presentations in this
  category will be given at most an hour of shared simultaneous
  presentation time, will not be part of the peer review process and
  will not be part of the formal proceedings.  Notification of
  acceptance will be continuous.

## Important dates
| Submission deadline   | Fri, May  7th 2021 (strict) |
| --- | --- |
| Notification          | Tue, Jun 15th 2021 |
| Camera ready deadline | Wed, Jun 30th 2021 |
| Workshop              | Sun, Aug 22nd 2021 (preliminary) |



## Workshop Co-Chairs
* Stavros Aronis, Erlang Solutions, Sweden
* Annette Bieniusa, TU Kaiserslautern, Germany

## Program Committee
(Note: the Workshop Co-Chairs are also committee members)
* Clara Benac Earle, Universidad Politécnica de Madrid, Spain
* Laura Bocchi, University of Kent, UK
* Emanuele D'Osualdo, MPI-SWS, Germany
* Mariano Guerra, Instadeq, Germany
* Burcu Kulahcioglu Ozkan, TU Delft, Netherlands
* Rumyana Neykova, Brunel University London, UK
* Kenji Rikitake, KRPEO, Japan
* Simon Thompson, University of Kent, UK
* Melinda Toth, Eötvös Loránd University, Hungary
* Peter van Roy, UC Louvain, Belgium
* Kjell Winblad, Ericsson, Sweden
* Cons T Åhs, Cisco, Sweden

## Instructions to authors

### Submission
Submissions must adhere to SIGPLAN's republication policy
(http://sigplan.org/Resources/Policies/Republication/), and authors
should be aware of ACM's policies on plagiarism
(https://www.acm.org/publications/policies/plagiarism).  Program
Committee members are allowed to submit papers, but their papers will
be held to a higher standard.
Papers must be submitted online via HotCRP at:
https://erlang21.hotcrp.com
Lightning talks can be submitted to the workshop's co-chairs via e-mail.

### Formatting
Submitted papers should be in portable document format (PDF),
formatted using the ACM SIGPLAN style guidelines.  Authors should use
the `acmart` format, with the `sigplan` sub-format for ACM
proceedings.  For details, see:
http://www.sigplan.org/Resources/Author/#acmart-format
It is recommended to use the `review` option when submitting a paper;
this option enables line numbers for easy reference in reviews.

### Supplementary material
Authors have the option to attach supplementary material to a
submission, on the understanding that reviewers may choose not to look
at it.  This supplementary material should not be submitted as part of
the main document; instead, it should be uploaded as a separate PDF
document or tarball.
Supplementary material should be uploaded at submission time, not by
providing a URL in the paper that points to an external repository.

### Artifacts
Authors of accepted papers are encouraged to make auxiliary material
(artifacts like source code, test data, etc.) available with their
paper.  They can opt to have these artifacts published alongside their
paper in the ACM Digital Library (copyright of artifacts remains with
the authors).
If an accepted paper's artifacts are made permanently available for
retrieval in a publicly accessible archival repository like the ACM
Digital Library, that paper qualifies for an Artifacts Available badge
(https://www.acm.org/publications/policies/artifact-review-badging#available).
Applications for such a badge can be made after paper acceptance and
will be reviewed by the PC co-chairs.

## Proceedings
As with previous years, the accepted workshop papers will be published
by the ACM and will appear in the ACM Digital Library.
The official publication date is the date the papers are made available
in the ACM Digital Library.  This date may be up to two weeks prior to the
first day of the conference.  The official publication date affects the
deadline for any patent filings related to published work.
For more information, please see ACM Copyright Policy
(http://www.acm.org/publications/policies/copyright-policy) and ACM
Author Rights (http://authors.acm.org/main.html).
Accepted lightning talks will be posted on the workshop's website but
not formally published in the proceedings.

---

## File: priv/posts/eef/20200227235232_election-2020.md

{
  "title": "The EEF Board is Having its First Election",
  "authors": ["Fred Hebert"],
  "slug": "election-2020",
  "category": "eef",
  "tags": ["eef", "board", "elections"],
  "datetime": "2020-02-28T23:52:32.735496Z"
}
---
---

The Erlang Ecosystem Foundation is set up as a community organisation, to be run for and by the community. As such, the role of board member is assigned by a democratic process, where voting members get to run and vote for their preferred candidates.

The process to be followed is described in legalese in our bylaws, but this page will explain more clearly how we plan for this to be working forwards.

## Important Dates

The following dates were initially announced, but some were changed:

- February 28: Elections announced, people can submit their candidacy
- March 12: Last day to submit your candidacy
- March 13: Votes are open
- March 20: Votes are closed

Due to COVID-19, we slipped on opening up the voting the dates. The following are now correct:

- February 28: Elections announced, people can submit their candidacy
- March 12: Last day to submit your candidacy
- March 20: Votes are open
- March 27: Votes are closed

Do not forget to make sure you are a [voting member](#how-to-vote) to take part into the elections.

## What Does a Board Member do?

Board members' main involvement is essentially to sit in meetings (usually over video chat), and vote on the direction the foundation will take. They are responsible for things such as:

- Choosing how to allocate the budget of the Foundation (within the regulations specified by the bylaws and the IRS)
- Choosing which working groups are going to be accepted
- Choosing which working groups may be contracted if they are not meeting their objectives
- Handling administrative details (such as running these elections)
- Helping coordinate efforts across working groups
- Have the ability to change and adjust bylaws
- Bear the responsibility for the Foundation's ongoing success

It is ultimately a fairly political job focused on "running the foundation", distinct from the more direct involvement people in specific working groups usually have. Board members are not precluded from being part of working groups either.

Additionally, the roles of Director and Secretary can only be assigned to people on the board; they are the people who have all the actual administrative duties related to legal paperwork (writing actual signatures!), finance, insurance, maintaining meeting minutes, and ensuring that bylaws are respected by the rest of the board.

None of these roles are compensated; this is a volunteer effort because you care to steer the foundation in a direction you believe is important. You may also put the role of board member on your LinkedIn page or resume if that suits you.

## Who are the Outgoing Board Members?

While the founding members assigned themselves to be part of the board as part of the initial bootstrapping effort, the board has been randomly divided into three cohorts, `A` (containing 3 members), `B` (4 members), and `C` (4 members). To ensure continuity, only one cohort is re-elected each year. This means that you will be elected for 3 years at a time.

Here are the cohorts as defined until the next election:


    <li><code class="inline">A</code>, to be re-elected in 2022, 2025, and every three years after:
        
            <li>José Valim</li>
            <li>Richard Carlsson</li>
            <li>Kenneth Lundin</li>
        
    </li>

    <li><code class="inline">B</code>, to be re-elected in 2021, 2024, and every three years after:
        
            <li>Peer Stritzinger</li>
            <li>Maxim Fedorov</li>
            <li>Benoit Chesneau</li>
            <li>Miriam Pena</li>
        
    </li>

    <li><code class="inline">C</code>, to be re-elected in 2020, 2023, and every three years after:
        
            <li>Sebastian Strollo (current Secretary)</li>
            <li>Fred Hebert</li>
            <li>Alistair Woodman (current President)</li>
            <li>Francesco Cesarini</li>
        
    </li>


For this first election, the members of cohort `C` are to be re-elected, so the seats of Sebastian, Fred, Alistair, and Francesco are up for grabs.

## How to Run?

If you want to run, you must be a voting member. Voting members are members who have done the following:

- A paying member [paying their yearly membership or having paid for a lifetime membership](https://members.erlef.org/join-us)
- A contributing member, who has spent about 5 hours monthly working in a working group, and who has contacted us at [voting@erlef.org](mailto:voting@erlef.org) to claim their voting rights
- A managing member, who leads a working group and who has contacted us at [voting@erlef.org](mailto:voting@erlef.org) to claim their voting rights
- A board member, who has a de-facto membership.

If you want to run, you should contact us at [voting@erlef.org](mailto:voting@erlef.org) with the following information:

- Your name
- A short biography describing who you are
- A short text explaining why you think people should vote for you
- A photo (optional)

If eligible, you will then be added to the [list of candidates](#who-are-the-current-candidates) on this page and on the ballots.

You have until end of day **March 12 2020** Pacific time (PST) to submit your candidacy.

<h2 id="how-to-vote">How to Vote?</h2>

You first have to have the right to vote, as a voting members. Voting members are members who have done the following:

- registered as a paying member [paying their yearly membership or having paid for a lifetime membership](https://members.erlef.org/join-us)
- acted as a contributing member, who has spent about 5 hours monthly working in a working group, and who has contacted us at [voting@erlef.org](mailto:voting@erlef.org) to claim their voting rights
- A managing member, who leads a working group and who has contacted us at [voting@erlef.org](mailto:voting@erlef.org) to claim their voting rights

The election will be open on **March 20 2020**, from midnight PST and for the next 7 days, **until March 27 2020**. On that day, a link will be sent to you to the address defined [in your member profile](https://members.erlef.org/Sys/Profile). The link will forward you to a form, which will contain a list of all the candidates. Since four chairs are up for re-election, you will get to pick 4 candidates. Once you will have voted, you will not be able to change your votes. The candidates with the most votes will be part of the board for the next 3 years.

<h2 id="who-are-the-current-candidates">Who are the Current Candidates?</h2>

This list will be expanded as new candidacies are received

- [Francesco Cesarini](#francesco-cesarini)
- [Fred Hebert](#fred-hebert)
- [Gavin M. Roy](#gavin-m-roy)
- [Sebastian Strollo](#sebastian-strollo)
- [Alistair Woodman](#alistair-woodman)

<h3 id="francesco-cesarini">Francesco Cesarini</h3>



_outgoing board member_

Francesco has worked with Erlang since 1995, witnessing the transformation of the language into an ecosystem. He started his career as an intern at Ericsson's computer science laboratory under Joe Armstrong, moving on to Ericsson's Erlang training and consulting arm working on the R1 release of OTP, applying it to turnkey solutions and flagship telecom applications. In 1999, soon after Erlang was released as open source, he founded Erlang Solutions.

Francesco is the co-author of 'Erlang Programming' and 'Designing for Scalability with Erlang/OTP' both published by O'Reilly, a contributor to scientific papers and a senior lecturer at the University of Oxford. He has participated in the Future Learn Erlang MOOC, O'Reilly and University of Kent online Master Classes alongside being a regular speaker and tutor at conferences worldwide.

#### Why vote for him?

I live  and breathe anything related to the Erlang ecosystem and the community around it. My passion for Erlang and Elixir translates into a clear vision and encouragement for others to accelerate a joint work not only around the Erlang Ecosystem Foundation, but also around people's individual journeys embarking on functional programming. Working with Erlang for almost three decades, I have become resilient to all challenges when elevating the ecosystem to get the right traction, recognition and adoption we all know it deserves!

The EEF started with me and Erlang co-inventor Mike Williams, when through the IEUG, we brought together a group of people and companies with an aim to achieve the momentum needed to start a foundation. It has not been easy, but I am proud we've pulled it off! My contributions as a board member have been focused around my network, leading the Fellowship and Sponsorship work groups and helping other members acting as a facilitator and sounding board. Where needed, I have been using Erlang Solution's conferences, events and other infrastructure and resources to help the foundation in whatever way possible, be it a speaker slot, marketing resources or paid time to members employed by us wanting to contribute.

But as others have pointed out, it is not just about me. The foundation would not be where it is thanks to the joint effort and enthusiasm of all the board members (and IEUG members before that) who are doing what they believe is the best for the future of Erlang, Elixir and the ecosystem as a whole. I wish you could vote not for a person, but for a team who has been working well together, leveraging each other's strengths!

<h3 id="fred-hebert">Fred Hebert</h3>



_outgoing board member_

Fred Hebert is a long-standing member of the Erlang and Elixir community. He is the author of books such as _Learn You Some Erlang_, _Erlang in Anger_, and _Property-Based Testing with Erlang, Elixir, and PropEr_. He also maintains open source libraries such as recon, and is currently one of the co-maintainers of the Rebar3 build tool. He has been working with Erlang (and more recently Elixir) for 10 years in, many industries, and is working in many working groups such as: _Build and Packaging_, _Documentation_, and _Education, Training, & Adoption_.

#### Why vote for him?

I first of all think you should vote for me after voting for either Alistair or Sebastian since they handle a lot of the tricky stuff in their current administrative roles that I enjoy not having to handle! Otherwise, I think I've done a decent job at worrying about the rest of boring stuff like the legalese of our bylaws and both tracking and pushing for the annoying functions of the foundation (such as volunteering to help run these elections or trying to track and comment working group proposals). I think I've also played a decent role at explaining the nitty gritty stuff to people who really want the TL:DR; of these things, without having to get into the messy details of all their content.

I hope and try to generally bring a unifying vision that conciliates the interests of the Erlang and Elixir parts of the community (without forgetting the other alternative languages we harbor). I hope to do all of this while keeping a pragmatic point of view of things, knowing that the end objectives of improving the community are what ultimately matters; I think I've demonstrated that--albeit behind closed doors--when helping push the [IEUG](https://erlangcentral.org/industrial-erlang-user-group/) to become the Erlang Ecosystem Foundation.

<h3 id="gavin-m-roy">Gavin M. Roy</h3>



_first time candidate_

With over 25 years of experience in the Internet industry, Gavin has been responsible for the technical architecture and operational stability of several large-scale web properties. Gavin has been involved since the mid-90s as an advocate for Open Source software and communities. He maintains multiple open-source Erlang libraries and actively contributes to the RabbitMQ ecosystem. Gavin is the author of "RabbitMQ in Depth" (ISBN 1617291005) and is the Vice-President of Architecture at AWeber, an email marketing SAAS platform.

#### Why vote for him?

I'd like to help further the Erlang and Elixir community and I believe my experience will positively benefit the EEF. I've previously held a long-term board position for a non-profit IRC network and have actively worked with other software related foundations. With an extensive background in both open-source software and open-source community building, I believe I can positively collaborate with other board and community members to contribute back to the community that has helped me grow as an engineer.

<h3 id="sebastian-strollo">Sebastian Strollo</h3>



_outgoing board member and secretary_

Sebastian Strollo has been an Erlang programmer since 1991 when he was introduced to Erlang by the language authors at the Ericsson Computer Science Laboratory. Intrigued by the language and the lab he stayed on seeing Erlang through internal Ericsson use and then being part of making it open source in 1998.

He has since been part of several successful Erlang startups, most recently Tail-f Systems which was acquired by Cisco in 2014.

As a representative for Cisco in the Industrial Erlang User Group, Sebastian worked on transforming it into the Erlang Ecosystem Foundation, the membership based organization we have today.

#### Why vote for him?

Currently I am the acting secretary and treasurer of the foundation, as such I take care of making sure that we follow our bylaws, write minutes of board meetings, and keep records. As well as taking care of the bookkeeping of the foundation. I also participate in the sponsorship working group. I have chosen to volunteer this work because I believe that through the foundation we can come together as a community, attract new users, exchange ideas, and improve our shared infrastructure.

If I am re-elected I will: make the work we do as a board more transparent to our members, make sure we acquire 501(c)(3) (US non-profit) status, and continue to make sure our finances are in order.

I am really happy to see Elixir, Erlang, and all languages based on the beam come together as a single community through the foundation. And I hope you will let me serve on the board for another term.

<h3 id="alistair-woodman">Alistair Woodman</h3>



_outgoing board member and president_

Alistair has been working in the computing and networking space since 1987. He worked at Apple and Cisco and has spent the time since 2011 working with startups, open source projects and other 'hobby projects'. Appreciation for Erlang developed via project work with Tail-F while at Cisco. This lead to deeper involved with the BEAM community after leaving Cisco and he has been happy to lend his time to increasing community cohesion and outreach. A student of natural philosophy, in his spare time he enjoys reading, traveling, meeting new people, sailing and diving.

#### Why vote for him?

I’m happy to help the community. I enjoy working with my board colleagues. I have connections to many open source projects and standards bodies and I have experience with not-for-profit as well as for-profit companies; their boards; and the process and bureaucracy associated with running such companies – basically, “I know how to wash the bottles and take the empties out.”

---

## File: priv/posts/eef/20200401222450_election-2020-results.md

{
  "title": "The EEF Board 2020 Election is Over",
  "authors": ["Fred Hebert"],
  "slug": "election-2020-results",
  "category": "eef",
  "tags": ["eef", "board", "elections"],
  "datetime": "2020-04-01T22:24:50.328640Z"
}
---
---

The Erlang Ecosystem Foundation has [held its elections over the last month](https://erlef.org/news/eef/election-2020), and what a wild month it's been for all of us. Despite global events, roughly 63% of our members with the right to vote came forward and elected a new board.

We want to thank [everyone who decided to run](https://erlef.org/news/eef/election-2020#who-are-the-current-candidates); it's been a rather close result for votes. However, in the end the following members remain part of the board:

- Francesco Cesarini
- Fred Hebert
- Sebastian Strollo
- Alistair Woodman

They will keep representing cohort `C`, which will be electable again in 2023.

Next year's election will be based on cohort `B`, currently including Peer Stritzinger, Maxim Fedorov, Benoit Chesneau, and Miriam Pena.

Thanks to everyone who participated in this election.

---

## File: priv/posts/eef/20200901030039_agm-2020.md

{
  "title": "EEF 1st. Annual General Meeting",
  "authors": ["eef"],
  "slug": "agm-2020",
  "category": "eef",
  "tags": ["eef", "agm"],
  "datetime": "2020-09-01T03:00:39.159858Z"
}

---
 EEF 1st. Annual General Meeting
---

## Zoom Conference Call Times

**Meeting A:** EEF Annual General Meeting 2020 EMEA/APAC
Time: Sep 11, 2020 09:00 UTC; 11:00 CET; 18:00 Japan

Members will receive an email with a link and credentials for the meetings. 

**Meeting B:** EEF Annual General Meeting 2020 EMEA / Americas
Time: Sep 11, 2020 20:00 UTC; 22:00 CET; 16:00 ET; 13:00 PT

Members will receive an email with a link and credentials for the meetings. 

## Quorum Requirements
Our Bylaws Section 3.9 require a quorum of 1/3 (one third) of the eligible voting members to be present for a meeting to be deemed quorate.
Since:
1. Covid-19 restrictions prohibit an in-person AGM, and
2. Global distribution of the members make real-time synchronization due to time-zone awkward,

the board decided per Section 3.1 to hold the AGM electronically. In order to comply with the three subsections of Section 3.1 that require authentication of the voting members and allowing members reasonable access to the content, we will be holding the actual voting via the Wild Apricot Members portal (authentication) and two Zoom Conferences (content access) as a mechanism of interactive feedback and Q&A.

**Note:** since the AGM is electronic and virtual, Section 14.8 Electronic Voting rules apply.
Proposed AGM Process
1. Electronic voting will open on September 11th.
2. No specific provision will be made for proxy voting, since voting is electronic and will take place over several days.
3. The two Zoom calls will go through the AGM content.
4. The content of the AGM will also be posted online.
5. Voting members are not required to attend either of the Zoom calls but are encouraged to review the meeting content in some way before voting.
6. All voting members of record as of September 10th are entitled and encouraged to vote.
7. The AGM voting will be open for the 14 days period after the AGM date of September 11th.

## General Purpose of any AGM
1. Elect or affirm the board of directors.
2. Receive information about the past year's activities, progress, achievements and milestones.
3. Find out about the organization's financial health.
4. Make changes to the corporation's objectives or bylaws.
5. Receive information on future directions
6. Ask questions

## Actual Agenda for the 1st EEF AGM
1. Call to order and declaration of process
2. Approval of agenda
3. Welcome and introductions
4. Annual report  presentation and adoption
* Chair's report
* Committee reports
5. Treasurer's  presentation and adoption
* Report on Formal 990-EZ Filing
* Income and Expense to date
6. Special Resolutions  presentation, motion and voting
* Ratification for Cohort C made in March 2020
7. New Business / General Questions
8. Announcements, Upcoming Events
9. Motion to adjourn (only for the Zoom meeting but not the actual voting)

---

## File: priv/posts/eef/20201217005553_email-for-members.md

{
  "title": "Email for members program",
  "authors": ["eef"],
  "slug": "email-for-members",
  "category": "eef",
  "tags": ["eef", "programs"],
  "datetime": "2020-12-17T00:55:53.386292Z"
}
---
erlef.org email addresses are now available for qualifying members
---
The Erlang Ecosystem Foundation is pleased to announce its new email for members program.

We highly value the community and support of our members and wish to show our appreciation with this new program.

With the help of the [board](/board_members), the [Infrastructure Working Group](/wg/infra), and our [sponsors](/sponsors) we may now offer qualifying members erlef.org email aliases and accounts.


## Who qualifies?

 - Annual supporting members
 - Lifetime members
 - Fellows
 - Active volunteers

## How many aliases or accounts can I have?

 This is an excellent question! Each member is entitled to either one alias or one account.

## How do I opt in?

 - Login to this site using your member credentials.
 - Visit your member profile either by clicking in on your name in the upper right hand corner
   of the site and then clicking "Profile" or just follow this [link](/members/profile).
 - If you qualify, you will see a message with a link to a form, click it.
 - In the form you may select email alias or account.
    - An alias will simply forward to the email address you have set in your member profile.
    - An account is a mail account you will have to login to or set up in a mail client.
 - Enter your desired username
    - All email address requests are subject to review.
    - We recommend using `firstname.lastname` or some similar variation.
    - Please refrain from general names (e.g., elixir, erlang, hex),
      names belonging to others, or any offensive terms.

  That's it! An administrator will review and process your request as soon as
  possible. After such you shall receive a confirmation email.

---

## File: priv/posts/eef/20210225235337_election-2021.md

{
  "title": "The EEF Board is Having its 2021 Election",
  "authors": ["Fred Hebert"],
  "slug": "election-2021",
  "category": "eef",
  "tags": ["eef", "board", "elections"],
  "datetime": "2021-02-25T23:53:33.735496Z"
}
---
---

The Erlang Ecosystem Foundation is set up as a community organisation, to be run for and by the community. As such, the role of board member is assigned by a democratic process, where voting members get to run and vote for their preferred candidates.

The process to be followed is described in legalese in our bylaws, but this page will explain more clearly how we plan for this to be working forwards.

## Important Dates

The following dates are important to the campaign:

- February 26: Elections announced, people can submit their candidacy
- March 11: Last day to submit your candidacy. Email acceptance ends at midnight PT on the 12th
- March 12: Votes are open
- March 19: Votes are closed

Election results will be announced as soon as possible after closing.

Do not forget to make sure you are a [voting member](#how-to-vote) to take part into the elections.

## What Does a Board Member do?

Board members' main involvement is essentially to [sit in meetings](https://drive.google.com/drive/folders/1b3dnc6jIQ2ZdT3dC3Gjgjx1DQXR0GE9J) (usually over video chat), and vote on the direction the foundation will take. They are responsible for things such as:

- Choosing how to allocate the budget of the Foundation (within the regulations specified by the bylaws and the IRS)
- Choosing which working groups are going to be accepted
- Choosing which working groups may be contracted if they are not meeting their objectives
- Handling administrative details (such as running these elections)
- Helping coordinate efforts across working groups
- Have the ability to change and adjust bylaws
- Bear the responsibility and be accountable for the Foundation's ongoing success

It is ultimately a fairly political job focused on "running the foundation", distinct from the more direct involvement people in specific working groups usually have. Board members are not precluded from being part of working groups either.

Additionally, the roles of Director and Secretary can only be assigned to people on the board; they are the people who have all the actual administrative duties related to legal paperwork (writing actual signatures!), finance, insurance, maintaining meeting minutes, and ensuring that bylaws are respected by the rest of the board.

None of these roles are compensated; this is a volunteer effort because you care to steer the foundation in a direction you believe is important. You may also put the role of board member on your LinkedIn page or resume if that suits you.

## Who are the Outgoing Board Members?

While the founding members assigned themselves to be part of the board as part of the initial bootstrapping effort, the board has been randomly divided into three cohorts, `A` (containing 3 members), `B` (4 members), and `C` (4 members). To ensure continuity, only one cohort is re-elected each year. This means that you will be elected for 3 years at a time.

Here are the cohorts as defined until the next election:


    <li><code class="inline">A</code>, to be re-elected in 2022, 2025, and every three years after:
        
            <li>José Valim</li>
            <li>Richard Carlsson</li>
            <li>Kenneth Lundin</li>
        
    </li>

    <li><code class="inline">B</code>, to be re-elected in 2021, 2024, and every three years after:
        
            <li>Peer Stritzinger</li>
            <li>Maxim Fedorov</li>
            <li>Benoit Chesneau</li>
            <li>Miriam Pena</li>
        
    </li>

    <li><code class="inline">C</code>, to be re-elected in 2023, 2026, and every three years after:
        
            <li>Sebastian Strollo (current Secretary)</li>
            <li>Fred Hebert</li>
            <li>Alistair Woodman (current President)</li>
            <li>Francesco Cesarini</li>
        
    </li>


For this first election, the members of cohort `B` are to be re-elected, so the seats of Peer, Maxim, Benoit, and Miriam are up for grabs.

Furthermore, José Valim is going to be stepping down from his seat on Cohort A in order to have more time to focus on working groups, namely the newly founded ML working group he will chair, and will remain active within the foundation. Whoever runs for the board and gets the fifth most votes in the election will be able to serve the remainder of José's term, and be re-elected in 2022.

We therefore need 5 people to fill in the seats this year!

## How to Run?

If you want to run, you must be a voting member. Voting members are members who have done one or more of the following:

- A paying member [paying their yearly membership or having paid for a lifetime membership](https://members.erlef.org/join-us)
- A contributing member, who has spent about 5 hours monthly working in a working group, and who has contacted us at [voting@erlef.org](mailto:voting@erlef.org) to claim their voting rights
- A managing member, who leads a working group and who has contacted us at [voting@erlef.org](mailto:voting@erlef.org) to claim their voting rights
- A board member, who has a de-facto membership.

If you want to run, you should contact us at [voting@erlef.org](mailto:voting@erlef.org) with the following information:

- Your name
- A short biography describing who you are
- A short text explaining why you think people should vote for you
- A photo (optional)

If eligible, you will then be added to the [list of candidates](#who-are-the-current-candidates) on this page and on the ballots.

You have until end of day **March 11 2021** Pacific time (PST) to submit your candidacy.

<h2 id="how-to-vote">How to Vote?</h2>

You first have to have the right to vote, as a voting members. Voting members are members who have done the following:

- registered as a paying member [paying their yearly membership or having paid for a lifetime membership](https://members.erlef.org/join-us)
- acted as a contributing member, who has spent about 5 hours monthly working in a working group, and who has contacted us at [voting@erlef.org](mailto:voting@erlef.org) to claim their voting rights
- A managing member, who leads a working group and who has contacted us at [voting@erlef.org](mailto:voting@erlef.org) to claim their voting rights

The election will be open on **March 12 2021**, from midnight PST and for the next 7 days, **until March 19 2021**. On that day, a link will be sent to you to the address defined [in your member profile](https://members.erlef.org/Sys/Profile). The link will forward you to a form, which will contain a list of all the candidates. Since four chairs are up for re-election, you will get to pick 4 candidates. Once you will have voted, you will not be able to change your votes. The candidates with the most votes will be part of the board for the next 3 years.

<h2 id="who-are-the-current-candidates">Who are the Current Candidates?</h2>

This list will be expanded as new candidacies are received

- [Erik Stenman](#erik-stenman)
- [Maxim Fedorov](#maxim-fedorov)
- [Bryan Paxton](#bryan-paxton)
- [Mahesh Paolini-Subramanya](#mahesh-paolini-subramanya)
- [Amos King](#amos-king)
- [Sophie DeBenedetto](#sophie-debenedetto)
- [Miriam Pena](#miriam-pena)
- [Peer Stritzinger](#peer-stritzinger)
- [Benoît Chesneau](#benoit-chesneau)


<h3 id="erik-stenman">Erik (Happi) Stenman</h3>



_first time candidate_

Erik, or Happi as most people call him, has been programming Erlang since 1994; as a master's student, as a doctoral student in the HiPE research group at Uppsala University, as a CSO and CTO at Klarna and now as CEO of Happi Hacking. Erik started programming in 1980 and started his first company in 1989.

Erik wrote the world's first native code compiler for Erlang, called Jerico, and also initiated and wrote the first version of the second native code compiler for Erlang, HiPE.

In addition to this, Erik has also written "The BEAM book" and articles about Erlang, presented his research at several academic conferences and workshops, and was awarded the "Erlang User of the Year" during his time in the HiPE research group.

He was also project leader for the group that developed the first version of Scala, as well as university lecturer, especially in compiler technology.

Erik was together with Joe Armstrong one of the driving forces behind the Erlang Enhancement Process (EEP). He also was a long time member of the board of the Erlang Industrial User group, the precursor to the Erlang Ecosystem Foundation.

### Why vote for him?

I think you should vote for me as a member of the board since I still have a passion for Erlang and the Beam, even after over 25 years. I still want to learn more about Erlang and I want more people to know about the Erlang Ecosystem. If you want someone with pretty deep technical knowledge of the BEAM and not so much interest in politics you should vote for me.

<h3 id="maxim-fedorov">Maxim Fedorov</h3>



_outgoing board member_

Maxim has over 18 years of experience in networking, security and
scalability. He discovered the BEAM ecosystem when he joined WhatsApp,
and soon became a passionate community supporter. Maxim is an engineer
to the core. Author and maintainer of several open source libraries:
argparse, erlperf, power\_shell. Active contributor to OTP, featuring
highlights to R23 with pg, and concurrent TLS distribution handshake
in R24. Member of Build and Packaging working Group, improving Rebar3
support for large codebases.

Maxim believes in an open community with members pursuing a goal of
growing the successful ecosystem.

### Why vote for him?

Two years ago we were just a group of enthusiastic people, willing to
bring fragmented communities together. We had a dream of building a
strong foundation. I volunteered to be one of the founding members of
the Marketing working group, and created the original erlef.org
website in just a week before the official announcement.

Ecosystem growth is still my focus. Supporting foundation members with
necessary infrastructure is one of the key components. I promise to do
my best to provide this support, now as a member of the Infrastructure
working group.

I believe that our mission is to bring companies and individuals to
work together towards a single goal—ecosystem success. That’s why I
am a BEAM ambassador at WhatsApp, willing to drive company engagement
in the ecosystem, and work to improve the community.

<h3 id="bryan-paxton">Bryan Paxton</h3>



_first time candidate_

Bryan (a.k.a starbelly) has worked on the BEAM for roughly 5 years at companies utilizing Elixir, but sought to embed himself within the Erlang community fairly early on, and recently the LFE community as well. He has a strong sense of community, has a passion for helping people, and chances are he has reached out to try and help you in the past. In his spare time he contributes to Erlang/OTP, Elixir, hex\_core, hexpm, rebar3, and is a co-maintainer of rebar3\_hex. He also has been an active contributor within the Erlang Ecosystem Foundation shortly after its inception.

### Why vote for him?

I bet the farm on the BEAM...

As an annual supporting member, an active contributor, and a member of several BEAM communities; I have a vested interest in helping further the foundation's goals and by extension the ecosystem. I bet the farm on the BEAM and as such I make it a point to be highly involved wherever I can to assist however I can in furthering the success of the entire community and ecosystem.

For the past two years I have:

- Helped implement the elixir version of erlef.org, as well as continue to develop and maintain it.
- Setup internal and external infrastructure for the foundation and the community.
- General administrative and operative duties.
- Onboarding of working groups and contributors.
- Assisted in marketing the foundation.

Some things I wish to accomplish over the next 3 years:

 - Help streamline the board's meeting and voting process to speed up the turn-around time so that we may be more efficient in our efforts to support the ecosystem.
 - Help devise and implement a bounty program for the community.
 - Work closely with working groups and the community at large to convey and support the needs of both.

<h3 id="mahesh-paolini-subramanya">Mahesh Paolini-Subramanya</h3>



_first time candidate_

I've been all-in on the BEAM since the early 2000s, having built large geographically dispersed product-focused organizations across a variety of industries—always on the BEAM. Finance, Networking, Telecom, it doesn't really matter—it was based on erlang then, and it's based on elixir now. Most recently, I've been in the Finance sector growing BlockFi into a FinTech unicorn, and taking Factom from a market-cap of $10M to over $500M.

I have the—dubious—honor of being involved in creating the first web/e-commerce system, the first java based financial services platform, as well as the first erlang-based cloud PBX, three products I may never live down 🙄.

I've been a prolific public speaker over the years, speaking and hosting at conferences such as ClueCon, CodeMesh, Erlang Factory, ITEXPO, NoSQL Matters, OSCON, TechMesh, TopConf, and USENIX—usually on topic related to erlang 🤗.

I was previously the V.P. of R&D (and Managing Director/Poland) at Ubiquiti Networks, a global provider of networking hardware, and the CTO of Vocalocity (you might know of it as Vonage Business these days)—one of the leading providers of business phone systems.
And yes, all BEAM, all the time.
Yes, there was a Java thing in the mid-nineties, but I did say that that was something I may never live down...

I have a Bachelor's Degree in Electrical Engineering from the Indian Institute of Technology, Kanpur, and a Masters in Electrical & Computer Engineering from the University of Notre Dame.

### Why vote for him?

My company—BlockFi—is, as I mentioned, all-in on the BEAM. We have close to 200 elixir folks working on our platform, and I expect to double that this year. So yes, if *I* don't care deeply about the present and the future of the erlang ecosystem, who does?
Also, for what it's worth, this isn't some kind of recent thing—I've been involved in Erlang/Elixir *forever* (read the bio above, or checkout my [LinkedIn profile](https://www.linkedin.com/in/dieswaytoofast/)), and have no plans on changing that!

Want someone who's going to make damn sure that the BEAM universe thrives? You could do far far worse than to vote for me!

<h3 id="amos-king">Amos King</h3>



_first time candidate_

Amos King is a long-standing member of the Erlang and Elixir community. He has used Elixir, Phoenix and other programming languages in numerous industries with more than a decade of experience to wide acclaim.

Active in the coding community as a mentor and meet-up organizer, Amos is also a co-host of Elixir Outlaws and This Agile Life podcasts. He has reviewed several books for Pragmatic Bookshelf–including Real-Time Phoenix by Stephen Bussey–and has presented his work at multiple industry conferences, including ElixirConf, Lonestar Elixir, Code BEAM, and GigCity Elixir.

Amos fosters integrity, trust, and continual growth with his employees at Binary Noggin and his peers in the coding community through Noggin Day, a weekly celebration of learning and curiosity. When he’s not working, Amos enjoys traveling, fly-fishing and roasting coffee.

### Why vote for him?

I’m passionate about contributing to the BEAM community and want to share my knowledge and resources to expand the reach and use of the BEAM languages. I enjoy collaborating and bringing others together to discuss all things Erlang and Elixir so we can improve our skills, generate ideas, and develop exceptional tools. Our community is full of great perspectives, and I hope to facilitate the training and adoption methods within the working groups to further BEAM’s capabilities.

Being a member of the EEF has been a great experience, and I would love the opportunity to give back as a board member to cultivate the ecosystem we’ve created.

<h3 id="sophie-debenedetto">Sophie DeBenedetto</h3>



_first time candidate_

Sophie is a senior engineer at GitHub and the co-author of Programming Phoenix LiveView. She is also the co-host of the BeamRad.io podcast where she explores all things BEAM, a frequent blogger on the topic of Elixir development (among other things), and a contributor to Elixir School, a free, open-source Elixir curriculum. She's one of the co-organizers of the annual EMPEX NYC conference, has participated on the program committees of several other Elixir and functional programming conferences around the world, and is a frequent speaker and trainer at such conferences.

Sophie is a "career-change" engineer who graduated from The Flatiron School bootcamp where she fell in love with programming. Since then, she's written programming curriculum, taught web development, and been privileged enough to evangelize Elixir to several teams of engineers who went on to put brand new Elixir apps into production with impressive facility and speed.

Sophie is passionate about programming education and works hard, through mentoring and by providing resources via her site https://www.break-in.tech/, to support the next generation of people who want to change their lives through code.

### Why vote for her?

In my past life as an engineering manager, I supported several teams to ramp up on Elixir and put greenfield Elixir apps into production with ease and speed. I've seen first-hand the impact that Elixir has on developer happiness and productivity and successfully used Elixir to solve big problems for businesses.

As the ecosystem has matured in recent years, and adoption has grown, I've continued to evangelize Elixir in my professional and personal life. As the author of Programming Phoenix LiveView, I firmly believe not only that Elixir is the right fit for more and more companies, but also that LiveView is the future of web development—in fact, in writing this book, I'm staking my name on it! 

With Elixir and Phoenix positioned for increased adoption around the world, it's more important than ever that we support the growth of this community from the ground up. I'm committed to promoting Elixir education and training and making these resources more accessible, and to making the community an even better place for beginners.

<h3 id="miriam-pena">Miriam Pena</h3>



_outgoing board member_

Miriam is one of the founding members of the Erlang Ecosystem Foundation, where she sits on the board of directors. As a Board Member, she has been a strong advocate for diversity in tech visible when leading the now merged Adoption and Education workgroups. Under her leadership, the foundation has introduced over 300 students and underrepresented groups in tech to Erlang and Elixir by funding their attendance at conferences and tutorials. She was the driving force behind a stipend program to provide economic support for the development of key libraries needed by the community. She co-founded the Sponsorship, Fellowship and Marketing Work Groups, representing the Foundation at events, conferences and in social media. She was also involved in the inception of the website and marketing campaign which launched the foundation in San Francisco in 2019. She has also been responsible for finding some of the Foundation’s largest sponsors. 

Miriam is passionate about solving real life problems with highly scalable, concurrent soft real-time systems with demands of high availability. She has consulted and been employed as an Erlang expert in companies all over the world, from the automakers in Detroit to social networks in Madrid, passing through telcos in Stockholm to control systems for renewable energy in Spain... All this brought  her to San Francisco, where she is a Senior Staff Engineer at NextRoll Inc, in charge of their ad server infrastructure. Miriam obtained her Computer Science Engineering degree from A Coruña University (Spain). In 2018 she was selected as one of the Women in Tech To Watch by Women 2.0.

On the community front, Miriam is one of the organizers of the Erlang and Elixir Meetup in San Francisco, helping grow the group to over 2300 members. She has keynoted at CodeBEAM Stockholm, San Francisco and EMPEX LA and spoken at many other events. Her talks have ranged from the more technical [BEAM Extreme, Don’t Do This At Home](https://dev.tube/video/-1j36z8SllI) to D&I topics [Unsung Heroes of the BEAM](https://www.youtube.com/watch?v=j6wbuV8pMx8). For the last five years, she has been on the Program Committee organizing CodeBEAM conferences worldwide.

### Why Vote For Her?

I have a strong belief in the potential of the Erlang Ecosystem Foundation and the developer community it represents. I'm a strong advocate for the Elixir community on the Board and will continue promoting the intermingling of Erlang and Elixir, as I believe that together, we are stronger. Elixir has a thriving and popular community that can revitalize the more established Erlang group; and in turn broaden its reach and impact. 

In the last 3 years, by setting up the EEF and getting it off the ground, I have demonstrated that I can get things done by being versatile and wearing many hats –technical as well as people focused. Being scrappy, resourceful and creative when necessary.

A lot of work has been done opening the foundation to promising new projects. As a director, I want to drive these achievements forward through the following initiatives:

- **Sponsorship hire:** The EFF is gaining size and momentum so it can now get slowed down at times by solely relying on volunteer work. We recently hired a company to delegate our marketing initiatives and a developer for our infrastructure efforts. With your support I will continue advocating to hire another person to cover the administrative and sponsorship work. With the added efficiency in recruiting new sponsors and fidelizing them this position will pay for itself in a short time and allow the community to grow.
- **Elixir interoperability:** There is a growing number of Elixir libraries that I would love to use in my Erlang environment. However doing so requires a complex setup. I would like to create and support a project that tackles the challenge of bundling Elixir code in Erlang applications in a simple, transparent and efficient way. 
- **Diversity:** I am adamant about increasing the diversity of our community as the best way to thrive and make it resilient. I will continue creating initiatives that will increase the number of people from underrepresented groups and non-traditional backgrounds. A clear avenue I just started to work on is expanding the reach of the BEAM community in LATAM through localized training and resources.
- **Education:** From the Board I will continue pushing our engagement with universities, meetups and other education groups/institutions to continue expanding our user base. 

<h3 id="peer-stritzinger">Peer Stritzinger</h3>



_outgoing board member_

Peer discovered Erlang in 2007 and has been relying on it ever since. Fascinated by all its emergent properties which are quite non-obvious from afar.  Around it he found the best developer community one could wish for being part of.

He is Founder and Director of Peer Stritzinger GmbH which created GRiSP [www.grisp.org](https://www.grisp.org), a platform to run Erlang on small embedded systems and focuses on building Automotive, Industrial IoT and Smart Cities applications and tries to use Erlang technology wherever useful. Participating in several EU funded research projects, he is trying to push the envelope for what can be done with Erlang and the other languages on the BEAM.

Peer's previous experience ranges from low level device drivers to functional languages in industrialand automotive applications. He initially mastered in physics at the Technical University Munich. He has been working self-employed as a developer since 1987 and also consulted in applied cryptography and protocol design and implementation. He is since ever living and working in the idyllic countryside west of Munich, Bavaria.

### Why vote for him?

Starting with several years in the Industrial Erlang User Group, the predecessor Organisation whose main goal was to create what is now the EEF, I’m happy to have been part of the work on making this all happen.  As an active member on the board, I always look for ways to improve what we have reached and to introduce new ways of enhancing and growing our community and will continue to do so.

My main focus so far was helping to reach out to sponsors and bootstrap useful ways to fund projects, which improve and grow our whole ecosystem.  As part of the education working group, my main focus is outreach to universities teaching and researching with Erlang based technologies. I'm mentoring students, picking up projects as bachelor and master thesis.  Just today a new idea was spawned in this working group to organise our own “summer of code” like project.  I will work on the board and in the working group to make this happen.  In the infrastructure working group I was mainly responsible for the membership database and try to steer the development of the tools we need to organise ourselves.  Listening in on all the working groups, the one closest to my heart is of course the embedded working group.  We currently are managing 3 funded projects most of which benefit the whole community like the floating point optimisation which speeds up JSON and SVG creation and of course also work on AsmJIT for ARM64 and ARM32.

Should I be elected I will push forward to improve and expand our community by furthering these and similar projects.  I will always have a open ear for everyone in the community and help remove all the obstacles which might hinder us to thrive.

I strongly believe that the technologies built on top of Erlang and the BEAM have by far not reached their full potential, let's work together making this happen. 

<h3 id="benoit-chesneau">Benoît Chesneau</h3>



_outgoing board member_

Benoît is a French entrepreneur, owner of Enki Multimedia, a French limited Company now 14 years old, providing consulting & development in decentralised data and (tele)communication platforms. Most of the work provided by Enki Multimedia is done in Erlang, but also other languages based on the BEAM or not. Benoît is best known for his work in open-source with many libraries and tools successfully used in Erlang and Elixir applications. Among them Hackney, but others as well.

Benoît has been committed to the Erlang community for a long time. It all started by joining the CouchDB project, one of the oldest databases written in Erlang, around 2008-2009. You may have met him in a number of conferences and meetups around the world (San Francisco, Stockholm, Milan, Munich, Moscow, Tokyo, Paris, …). He also organises the French Erlang Paris meetup and founded the new Erlang Connection organization to maintain it.

Before joining the board and helping to found and grow the Erlang Ecosystem Foundation, Benoit was an active member of the Erlang Industrial User Group (IEUG), a group of companies interested in developing the Erlang Ecosystem. The IEUG is the ancestor of the Erlang Ecosystem Foundation. Enki Multimedia, his company, is a founding sponsor of the Erlang Foundation. Benoît is the chair of the infrastructure Working Group, which provides technical support and services to the BEAM community and other Working Groups.

### Why vote for him?

My focus as a board member member is to ensure that we as a community have all the tools and the funding needed to expand and make our ecosystem better. I worked during the last two year on different projects to make the collaboration inside the foundation more transparent, worked on the process allowing the Working Groups to report their work to the board but also the community, and helped to nurture different projects coming with the Stipends or not. I also co-founded the Marketing, Infrastructure & Fellowship working groups.

While we are on a good track, I am considering this is just the beginning. If you vote for me I will work with other members of the board in making the foundation a  better tool for the community. I am also a strong believer in openness. There should be no club inside the foundation, everyone should be able to participate and know what is happening. Being open will make us a very inclusive community where everyone is welcome. As a board member, I will work with the different Working Groups to improve the communication inside the ecosystem and expand its presence and visibility in all markets and Education systems. Erlang and other languages based on its virtual machine are ready for the future of technology, all together let’s make sure people know about it.

---

## File: priv/posts/eef/2021032122450_election-2021-results.md

{
  "title": "The EEF Board 2021 Election is Over",
  "authors": ["Fred Hebert"],
  "slug": "election-2021-results",
  "category": "eef",
  "tags": ["eef", "board", "elections"],
  "datetime": "2021-03-21T22:24:50.328640Z"
}
---
---

Over the last month, the Erlang Ecosystem Foundation has been running elections [with more candidates in play than we could have hoped for](https://erlef.org/news/eef/election-2021). We see this larger involvement as a statement that the community believes the foundation can make a difference within the community.

We want to thank [everyone who decided to run](https://erlef.org/news/eef/election-2021#who-are-the-current-candidates), and the members who took the time to vote, roughly 40% more than last year.

Here is the list of the 4 winners for Cohort B, which will be electable again in 2024:

- Miriam Pena (82 votes)
- Peer Stritzinger (50 votes)
- Sophie DeBenedetto (49 votes)
- Bryan Paxton (47 votes)

The fifth position, replacing José Valim for the remainder of his term, goes to Maxim Fedorov (39 votes), ahead of Benoît Chesneau (29 votes) and other candidates.

Next year's election will be based on cohort `A`, which will now include Richard Carlsson,
Kenneth Lundin, and Maxim Fedorov.

The change will be officialized during the next board meeting, where we'll transfer powers between the old board to the new ones through a final vote. Thanks to everyone who participated in this election!

---

## File: priv/posts/eef/20210902233320_agm-2021.md

{
  "title": "EEF 2nd. Annual General Meeting",
  "authors": ["eef"],
  "slug": "agm-2021",
  "category": "eef",
  "tags": ["eef", "agm"],
  "datetime": "2021-09-02T23:33:20.702576Z"
}
---
 EEF 2nd. Annual General Meeting
---

The EEF Annual General Meeting (AGM) is an opportunity to get an update about how the Foundation is run, 
how it's doing, and to ask questions you might have to the board.

## Zoom Conference Call Times

**Meeting A:** EEF Annual General Meeting 2021 EMEA / Americas
Time: Thursday, Sep 9th, 2021 20:00 CET / 18:00 UTC / 11:00 USA Pacific Time 

Members will receive an email with a link and credentials for the meetings. 

**Meeting B:** EEF Annual General Meeting 2021 EMEA / APAC
Friday: Sep 10th, 2021 15:00 Japanese Time; 08:00 CET; 06:00 UTC

Members will receive an email with a link and credentials for the meetings. 

## Quorum Requirements
Our Bylaws Section 3.9 require a quorum of 1/3 (one third) of the eligible voting members to be present for a meeting to be deemed quorate.
Since:
1. Covid-19 restrictions prohibit an in-person AGM, and
2. Global distribution of the members make real-time synchronization due to time-zone awkward,

the board decided per Section 3.1 to hold the AGM electronically. In order to comply with the three subsections of Section 3.1 that require authentication of the voting members and allowing members reasonable access to the content, we will be holding the actual voting via the Wild Apricot Members portal (authentication) and two Zoom Conferences (content access) as a mechanism of interactive feedback and Q&A.

**Note:** since the AGM is electronic and virtual, Section 14.8 Electronic Voting rules apply.
Proposed AGM Process:
1. Electronic voting will open on September 9th / 12:00am USA Pacific time / 7:00AM UTC.
2. No specific provision will be made for proxy voting, since voting is electronic and will take place over several days.
3. The two Zoom calls will go through the AGM content.
4. The content of the AGM will also be posted online.
5. Voting members are not required to attend either of the Zoom calls but are encouraged to review the meeting content in some way before voting.
6. All voting members of record as of September 10th are entitled and encouraged to vote.
7. The AGM voting will be open for the 14 days period after the AGM date of September 9th.

## General Purpose of any AGM
1. Elect or affirm the board of directors.
2. Receive information about the past year's activities, progress, achievements and milestones.
3. Find out about the organization's financial health.
4. Make changes to the corporation's objectives or bylaws.
5. Receive information on future directions
6. Ask questions

## Actual Agenda for the 2nd. EEF AGM
1. Call to order and declaration of process
2. Approval of agenda
3. Welcome and introductions
4. Annual report  presentation and adoption
* Chair's report
* Committee reports
5. Treasurer's  presentation and adoption
* Report on Formal 990-EZ Filing
* Income and Expense to date
6. Special Resolutions  presentation, motion and voting
* Ratification for [Cohort A made in March 2021](/blog/eef/election-2021-results)
7. New Business / General Questions
8. Announcements, Upcoming Events
9. Motion to adjourn (only for the Zoom meeting but not the actual voting)

---

## File: priv/posts/eef/20220225000000_election-2022.md

{
  "title": "The EEF Board is Having its 2022 Election",
  "authors": ["Peer Stritzinger"],
  "slug": "election-2022",
  "category": "eef",
  "tags": ["eef", "board", "elections"],
  "datetime": "2022-02-25T23:53:33.735496Z"
}
---
---

The Erlang Ecosystem Foundation is set up as a community organisation, to be run for and by the community. As such, the role of board member is assigned by a democratic process, where voting members get to run and vote for their preferred candidates.

The process to be followed is described in legalese in our bylaws, but this page will explain more clearly how we plan for this to be working forwards.

## Important Dates

The following dates are important to the campaign:

- February 25: Elections announced, people can submit their candidacy
- March 10: Last day to submit your candidacy. Email acceptance ends at midnight PT on the 11th
- March 11: Votes are open
- March 18: Votes are closed

Election results will be announced as soon as possible after closing.

Do not forget to make sure you are a [voting member](#how-to-vote) to take part into the elections.

## What Does a Board Member do?

Board members' main involvement is essentially to [sit in meetings](https://drive.google.com/drive/folders/1b3dnc6jIQ2ZdT3dC3Gjgjx1DQXR0GE9J) (usually over video chat), and vote on the direction the foundation will take. They are responsible for things such as:

- Choosing how to allocate the budget of the Foundation (within the regulations specified by the bylaws and the IRS)
- Choosing which working groups are going to be accepted
- Choosing which working groups may be contracted if they are not meeting their objectives
- Handling administrative details (such as running these elections)
- Helping coordinate efforts across working groups
- Have the ability to change and adjust bylaws
- Bear the responsibility and be accountable for the Foundation's ongoing success

It is ultimately a fairly political job focused on "running the foundation", distinct from the more direct involvement people in specific working groups usually have. Board members are not precluded from being part of working groups either.

Additionally, the roles of Director and Secretary can only be assigned to people on the board; they are the people who have all the actual administrative duties related to legal paperwork (writing actual signatures!), finance, insurance, maintaining meeting minutes, and ensuring that bylaws are respected by the rest of the board.

None of these roles are compensated; this is a volunteer effort because you care to steer the foundation in a direction you believe is important. You may also put the role of board member on your LinkedIn page or resume if that suits you.

## Who are the Outgoing Board Members?

While the founding members assigned themselves to be part of the board as part of the initial bootstrapping effort, the board has been randomly divided into three cohorts, `A` (containing 3 members), `B` (4 members), and `C` (4 members). To ensure continuity, only one cohort is re-elected each year. This means that you will be elected for 3 years at a time.

Here are the cohorts as defined until the next election:


    <li><code class="inline">A</code>, to be re-elected in 2022, 2025, and every three years after:
        
            <li>Richard Carlsson</li>
            <li>Kenneth Lundin</li>
            <li>Maxim Fedorov</li>
        
    </li>

    <li><code class="inline">B</code>, to be re-elected in 2024, 2027, and every three years after:
        
            <li>Miriam Pena</li>
            <li>Peer Stritzinger</li>
            <li>Sophie DeBenedetto</li>
            <li>Bryan Paxton</li>
        
    </li>

    <li><code class="inline">C</code>, to be re-elected in 2023, 2026, and every three years after:
        
            <li>Sebastian Strollo (current Secretary)</li>
            <li>Fred Hebert</li>
            <li>Alistair Woodman (current President)</li>
            <li>Francesco Cesarini</li>
        
    </li>


For this years election, the members of cohort `A` are to be re-elected, so the seats of Richard, Kenneth, and Maxim are up for grabs.

## How to Run?

If you want to run, you must be a voting member. Voting members are members who have done one or more of the following:

- A paying member [paying their yearly membership or having paid for a lifetime membership](https://members.erlef.org/join-us)
- A contributing member, who has spent about 5 hours monthly working in a working group, and who has contacted us at [voting@erlef.org](mailto:voting@erlef.org) to claim their voting rights
- A managing member, who leads a working group and who has contacted us at [voting@erlef.org](mailto:voting@erlef.org) to claim their voting rights
- A board member, who has a de-facto membership.

If you want to run, you should contact us at [voting@erlef.org](mailto:voting@erlef.org) with the following information:

- Your name
- A short biography describing who you are
- A short text explaining why you think people should vote for you
- A photo (optional)

If eligible, you will then be added to the [list of candidates](#who-are-the-current-candidates) on this page and on the ballots.

You have until end of day **March 10 2022** Pacific time (PST) to submit your candidacy.

<h2 id="how-to-vote">How to Vote?</h2>

You first have to have the right to vote, as a voting members. Voting members are members who have done the following:

- registered as a paying member [paying their yearly membership or having paid for a lifetime membership](https://members.erlef.org/join-us)
- acted as a contributing member, who has spent about 5 hours monthly working in a working group, and who has contacted us at [voting@erlef.org](mailto:voting@erlef.org) to claim their voting rights
- A managing member, who leads a working group and who has contacted us at [voting@erlef.org](mailto:voting@erlef.org) to claim their voting rights

The election will be open on **March 11 2022**, from midnight PST and for the next 7 days, **until March 18 2022**. On that day, a link will be sent to you to the address defined [in your member profile](https://members.erlef.org/Sys/Profile). The link will forward you to a form, which will contain a list of all the candidates. Since three chairs are up for re-election, you will get to pick 3 candidates. Once you will have voted, you will not be able to change your votes. The candidates with the most votes will be part of the board for the next 3 years.

<h2 id="who-are-the-current-candidates">Who are the Current Candidates?</h2>

This list will be expanded as new candidacies are received

- [Maxim Fedorov](#maxim-fedorov)
- [Kenneth Lundin](#kenneth-lundin)
- [Svilen Gospodinov](#svilen-gospodinov)
- [Ben Marx](#ben-marx)

<h3 id="maxim-fedorov">Maxim Fedorov</h3>



_outgoing board member_

Maxim has over 19 years of experience in networking, security and
scalability. He discovered the BEAM ecosystem when he joined WhatsApp,
and soon became a passionate community supporter. Maxim is an engineer
to the core, active contributor to Erlang/OTP (Process Groups, OTP 25
and `peer` module), owner and maintainer of well-known open source
projects (argparse, erlperf, power_shell).

Maxim believes in an open community with members pursuing a goal of
growing the successful ecosystem. That is why you can often see Maxim
replying to the Erlang forum questions, giving conference talks and
Slack discussions.

### Why vote for him?

In the last three years Erlang Ecosystem Foundation turned from a group
of enthusiastic people into a real driving force. There are over 10
Working Groups connecting people, over 20 companies supporting, and
many projects sponsored by the Foundation. I am proud to contribute
to the success of this humble beginning.

I promise to do my best to continue the trend. Keep up the infra work,
and push it further to provide everything that makes Foundation members
successful, from the erlef.org website updates to Continuous Integration
for Erlang/OTP and then all BEAM languages. Providing officially
packaged installers would be my next goal for community benefit.

I believe that our mission is to bring companies and individuals to
work together towards a single goal - ecosystem success. That’s why I
am a BEAM ambassador at WhatsApp, willing to drive company engagement
in the ecosystem, and work to improve the community.

<h3 id="kenneth-lundin">Kenneth Lundin</h3>



_outgoing board member_


Kenneth Lundin is Head of the Erlang/OTP Team at Ericsson, and has been working
with SW development since the late 70s. He joined the Erlang/OTP project in
it's early stages 1996 and has been working both with application components
and the run-time system since then. Has been a technical leader and manager for
the OTP team since 1998. Kenneth has also been active in the creation of the
EEF and has been a board member since EEF was created.

### Why vote for him?

I have an undisputed deep competence and interest in the area and can act as a
bridge between the OTP team and the EEF board as well as working groups. It is
a great advantage for the EEF board that I have inside information from the
Ericsson OTP team and can influence the engagement in EEF Working groups to
ensure that EEF and OTP have a good coordination and work in the same
direction.

<h3 id="svilen-gospodinov">Svilen Gospodinov</h3>



Svilen is a software engineer with a technical leadership and entrepreneurship
background. Currently he’s Engineering Team Leader at
[Remote](https://remote.com) where he manages one of the product engineering
teams. He’s also the author of “Concurrent Data Processing in Elixir”, which
was published by The Pragmatic Programmers in 2021.

Svilen discovered Elixir and the OTP back in 2015. A year later in 2016, he
co-founded Heresy—a workflow and analytics platform for Sales. He adopted
Elixir from the very beginning and never looked back. Elixir has been his
primary language ever since, and he has been a vocal advocate of the language
and the ecosystem.

### Why vote for him?

Diversity, inclusion, and transparency are very important to me. I will always
support and work on initiatives that uphold these values. The Elixir and Erlang
community is incredibly kind and welcoming and this is something that we should
always protect and continue to nourish.

I will help to grow the Foundation by reaching out and establishing work
relationships with people and companies, to help attract new members and
sponsorships.

I’m incredibly excited about the future of the Erlang and Elixir ecosystem, and
I would love to see more and more companies using it. I’m particularly
interested in supporting the adoption and education efforts of the Foundation.
The said, I’m planning to work equally with all working groups and provide help
wherever it is needed.

<h3 id="ben-marx">Ben Marx</h3>



Ben is the VP of engineering at Subspace where we use Elixir extensively as the
control plane of our global network.

Ben has been an enthusiastic advocate for the BEAM since stumbling onto Elixir
in late 2014. He helped organize and build up the Bay Area Elixir and Erlang
meetup which has grown to over 2300 members.

Ben helped lead the Elixir adoption at Bleacher Report; B/R was one of the
earliest adopters of Elixir at scale and has been used as a success story for
Elixir specifically and the BEAM generally.

Since 2015 Ben has spoken at conferences around the world usually on Elixir
adoption and best practices with the goal of helping others have an easy path
into a BEAM language. He’s also given trainings on OTP and distributed systems
in Elixir.

He co-authored Adopting Elixir with José Valim and Bruce Tate which is a
distillation of the three authors’s experience in writing sound software with
Elixir but also how to build teams, hire developers, and ensure that the
adoption is a successful one.

Ben is a founding member of the EEF and has contributed to the marketing and
education working groups.

### Why vote for him?

As I’ve done at work and conferences, I’d continue to push for BEAM language
adoption and easy and free access to training materials so other companies and
developers can adopt a BEAM language and become successful with it.

A main focus would be on finding better ways to support open source development
and library authors. The BEAM languages have so many great projects but there
isn’t a clear way to fund and support OSS development. This is critical for us
as a community to compensate those who spend so much of their time - for free -
to develop and maintain libraries that the community depends on.

Above all, the EEF should be the fabric that ties the community together from
local meetups to conferences around the world. Since the pandemic started, it’s
become painfully apparent how important seeing friends and colleagues at
conferences was and how critical the community is for new idea, new
relationships, and the unexpected but welcome ideas that come out of a diverse
group of people meeting.

We must focus on continuing to grow the community and increase new speakers and
the diversity of the speakers themselves. We know we have a healthy and growing
community when we see new faces at conferences as speakers and attendees and
have new people committing code and libraries and using the BEAM in novel and
exciting ways.

---

## File: priv/posts/eef/20220320000000_election-2022-results.md

{
  "title": "The EEF Board 2022 Election is Over",
  "authors": ["Fred Hebert"],
  "slug": "election-2022-results",
  "category": "eef",
  "tags": ["eef", "board", "elections"],
  "datetime": "2022-03-20T22:24:50.328640Z"
}
---
---

Over the last month, the Erlang Ecosystem Foundation [has been running elections for its Cohort `A`](https://erlef.org/blog/eef/election-2022). We're thankful for everyone who [decided to get involved by running](https://erlef.org/blog/eef/election-2022#who-are-the-current-candidates), and those who made their voices heard by voting.

Cohort `A` contains three members, who now are:

- Maxim Fedorov (63 votes)
- Kenneth Lundin (55 votes)
- Ben Marx (39 votes)

The fourth position went to Svilen Gospodinov, with 32 votes. Maxim and Kenneth are both returning board members, and Ben Marx will therefore replace Richard Carlsson, who we thank for his role as a founding board member.

The change will be officialized during the next board meeting, where we'll transfer the powers between the old board members to the new ones through a final procedural vote. Thanks again to everyone who participated in this election!

Next year's election will be based on cohort `C`, which includes Sebastian Strollo, Fred Hebert, Alistair Woodman, and Francesco Cesarini, and will represent yet another opportunity to get involved in the BEAM ecosystem.

---

## File: priv/posts/fellowship/20190821003333_honoring-our-fellows.md

{
  "title": "Honouring the first Erlang Ecosystem Foundation Fellows,  without whom, there would be no foundation.",
  "authors": ["Francesco Cesarini"],
  "slug": "honoring-our-fellows",
  "category": "fellowship",
  "tags": ["fellowship"],
  "datetime": "2019-08-21T00:33:33.753534Z"
}
---
---

## The Ericsson Computer Science Lab
Back in the 90s, the Ericsson Computer Science Lab was a place where you were inspired to learn and share, regardless of age or seniority. It was innovation time, every day, all year round. Staff had the mandate to research and solve real world problems, be it programming languages, distributed systems, middleware, voice recognition or protocol stacks. As Bjarne had managed to employ some of the brightest minds outside of academia, the approach did not consist of writing papers with lots of incomprehensible Greek formulas. It was a hands on approach based on rapid prototyping, allowing them to fail fast by disproving their theories or show they were taking a step closer to success. They did not use existing web servers, preferring to hack their own so as to understand how the underlying protocols worked, and where possible, improve them. They did not implement a single virtual machine; three were implemented, with the best ideas of from each later integrated in a single solution. Most of the innovation, interaction and idea sharing happened during frequent coffee breaks or at lunch. Lunches always finished with a mandatory game of rock, paper and scissors. Whoever lost had to get the coffee for everyone else (It was often the intern or occasional visitor).

## The First Fellows
One of the top innovations which came out of the Computer Science Lab was the Erlang Programming Language. There was a unanimous consent when electing our first fellows that the creators of Erlang, and the person who gave them the safe space to innovate should be chosen and put forward as one.  Joe Armstrong, Mike Williams and Robert Virding on their own would not have been able to come up with Erlang. But together, they were the dream team. They were managed by Bjarne Däcker, who shielded them from random acts of management, allowing them to get on with their work.
Joe was the inventor. He came up with the crazy ideas, implemented 80% of them and then put them away in his drawer for someone else to finish (The first problem is he did not always tell us about them, and the second problem is that whilst it took him a few days to do his 80%, it would take a mere mortal months to finish the remaining 20%). He came up with the idea to create a programming language. He came up with the idea to write a book. And he made sure any idea his colleagues came up with did not defy the laws of physics. Robert was interested in aesthetics. He wanted things to be nice, symmetrical and logical. He thought about problems long and hard, often missing deadlines whilst rewriting libraries that worked to test different approaches. Because of it, his boss rewarded him with the title of Sublime Hacker. Mike was the pragmatist. If you ask him what he contributed to Erlang, he would say he spent most of his time doing damage prevention; convincing Joe and Robert they did not need to add a particular feature to the Erlang just because it was cool or good to have. But you scratch under the surface, you find out that Mike was the only one of the three who wore a tie (and could thus speak to management), had extensive telecom experience and was a better C programmer than Joe. And he came up with the idea of process links and exit signals. An idea other concurrent programming languages still are not copying! Bjarne was the catalyst who, by giving them the space to innovate, allowed it all to happen. He had previously been involved in the creation of other programming languages, notably EriPascal, a concurrent version of Pascal used within Ericsson.
At Code Beam Stockholm in May 2019, we announced Joe, Mike, Robert and Bjarne as the first fellows of the foundation. Without them, there would be no Erlang, Elixir or any of the other 15 languages on the BEAM! There would simply be no foundation. The board and work group felt it was important they were honoured as a team. Those who knew Joe was unwell had been pushing for a nomination for quite a while. But setting up the workgroup took time. Luckily, a posthumous nomination is allowed in the bylaws, which however stopped short of allowing Joe to become an active fellow (which we all agree would not have been possibly anyhow). The working group made their way around this limitation by creating the category of Fellow Emeritus, a fellow who is no longer active in the community, but whose contributions have had an important impact. Joe, Mike and Bjarne all technically fall in this category.

## Nominating and Approving Fellows

We currently have a simple process that will be refined over time.To be eligible for membership as a Fellow, a member must be nominated by the Fellowship Working Group. Anyone is allowed to put forward candidates, but it is ultimately the work group which decides who gets nominated. We are today building the foundation on the work and effort put in place by a lot of individuals over 30 years. Future nominations will include a mix of past and present community members, also keeping a balance across communities.

Following such nomination, being elected a fellow requires the approval of two-thirds of the members entitled to vote. That means members have to vote, as abstaining will fall into the category of not voting. Upon election, a Fellow will remain a Fellow for the remainder of such person’s natural life. The bylaws clearly state it does not continue during any extension of life by non-natural means, such as zombification or vampirism. The foundation, however, has a category of Fellow Emeritus, where zombies, vampires and fellows who have passed away are allowed.

Joe, Mike Robert and Bjarne were the first. If you want to put forward a member you believe deserves to be nominated or want to find out more about our work, email the fellowship group on fellows@erlef.org

---

## File: priv/posts/fellowship/20200701103144_2020-fellowship-nominations.md

{
  "title": "2020 Fellowship Nominations",
  "authors": ["Francesco Cesarini"],
  "slug": "2020-fellowship-nominations",
  "tags": ["eef", "board", "elections"],
  "category": "fellowship",
  "datetime": "2020-07-01T10:31:44.921505Z"
}
---
2020 Fellowship Nominations have been selected! Meet the EEF Nominees and learn how you can vote for the selections.
---

In 2019, the Erlang Ecosystem Foundation voted in Erlang co-inventors Joe Armstrong, Robert Virding and Mike Williams and Computer Science Lab co-founder Bjarne Däcker as its first fellows. The time has come to announce the next group of fellows. The Fellowship workgroup has over the year solicited nominations from the community, foundation members and foundation directors. To make the task a little less daunting, we decided early on to exclude any active foundation board member.  We are proud to announce the nominations for the next group of fellows which we believe reflects the diversity and values the foundation stands for. 

**Björn Gustavsson**: Björn is the developer behind “BEAM”, the Erlang virtual machine that we still run today even though it has evolved a lot. When Björn joined the OTP team in 1996, the default VM was called JAM (Joe’s Abstract Machine) and there were also a number of experimental machines of which one was called BEAM (Bogdan’s Erlang Abstract Machine) after Bogumil “Bogdan” Hausman. Björn joined the OTP team in 1996 and did a fantastic job with shaping the BEAM (Björn’s Erlang Abstract Machine) to product status with much better performance and characteristics than the JAM. Björn has been an important member of the OTP team ever since and is still heavily involved mostly in the implementation of the Erlang VM and the compiler. His nomination is in recognition of decades of service, passion and dedication, helping evolve the ecosystem to where it is today. 

**Eric Meadows-Jönsson**: Eric has created the Hex.pm package manager, which has been extremely valuable to the Erlang Ecosystem and boosted Elixir adoption. He is also the first person to join the Elixir Core team (after José***. In this role, Eric was also the creator of many important libraries in the Elixir community, such as Decimal, Postgrex, and Ecto. His nomination highlights work that bridges and unifies all languages in the Erlang Ecosystem.

**Norberto Ortigoza**: Norberto has been active with the development of the Erlang and Elixir community in Mexico and Latin America through speaking engagements, running meetups and mentoring.  He teaches Elixir and the BEAM at the National Autonomous University of Mexico. He also organizes Erlang/Elixir events in Mexico, such as Erlang Factory and ElixirConf. He is currently involved in the Elixir Latin American virtual meetup. His nomination is a way to highlight important work individuals are doing  in local communities.

**Jane Walerud**: Jane is the person who is credited with convincing Ericsson management to release Erlang as open source. She was the co-founder and CEO of the first Erlang startup, Bluetail, which laid the foundation to many more startups in the Erlang ecosystem, including Tail-f (acquired by Cisco), Synapse and Klarna. She is still active in the community by giving keynotes at conferences, sharing her experiences and encouraging others to become entrepreneurs. Her nomination highlights the importance of diversity in the community: With a non-technical degree from Stanford University and experience in selling and running companies, she complements technical teams with commercial skills.


Fellowship is regulated in the bylaws. Section 4.8 on Fellows states that:


*To be eligible for membership as a Fellow, a member must be nominated by a Fellow of the corporation or a specially chartered Working Group, which nomination should be based upon certain criteria to be established by the Board of Directors and which criteria shall be designed to emphasize extraordinary contributions. Following such nomination, approval of two-thirds (2/3) of the members entitled to vote shall be required in order for a member to become a Fellow. Upon election, a Fellow shall remain a Fellow for the remainder of such person’s natural life, subject to any limiting provisions of this document. Fellowship does not continue during any extension of life by non-natural means, such as zombification or vampirism. Fellows may exercise voting rights at any time, and if they vote, shall be counted for purposes of a quorum.*

Our next step is for two-thirds of the voting members to formally approve the nominations. An email will go out to everyone eligible to vote soon. Until then, remember everyone can put forward candidates for consideration by the Fellowship workgroup. Just email your candidate and motivation to fellows@erlef.org

---

## File: priv/posts/machine-learning/20210519123456_machine-learning-wg-updates-may.md

{
  "title": "Machine Learning WG updates - May 2021",
  "authors": ["The Machine Learning WG"],
  "slug": "machine-learning-updates-may-2021",
  "tags": ["machine learning", "axon", "nx", "livebook", "scidata"],
  "category": "machine-learning",
  "datetime": "2021-05-19T12:34:56.921505Z"
}
---
Machine Learning WG updates - May 2021
---

The Erlang Ecosystem Foundation has recently announced the Machine Learning Working Group which is working on bringing Numerical Computing and Machine Learning libraries to the Erlang Ecosystem.
The working group has enjoyed tremendous growth in the last months and today we want to share what we have accomplished in the last 30 days or so.

## Nx updates

[Nx](https://github.com/elixir-nx/nx) is a multi-dimensional arrays (tensors) library with multi-staged compilation to the CPU/GPU.

*   It is now possible to slice a tensor based on dynamic indexes, allowing you to access a tensor position based on the value of another tensor. `Nx.put_slice/3` has also been added, which allows you to update part of a tensor with another tensor, statically or dynamically (see [pull request](https://github.com/elixir-nx/nx/pull/400))

*   Numerical definitions now support while loops. This is important as it allows the whole training loop to run in the GPU without back and forth with host (see [pull request](https://github.com/elixir-nx/nx/pull/390))

*   Maps are now supported in numerical definitions. For models that had too many parameters, the positional aspect of tuples were too cumbersome. Using maps give developers more flexibility to work with complex models (see [pull request](https://github.com/elixir-nx/nx/pull/406)) \

*   New functions such as Nx.argsort/2 (see [pull request](https://github.com/elixir-nx/nx/pull/367)) and Nx.stack/2 ([pull request](https://github.com/elixir-nx/nx/pull/380)) have been added

*   Work has started on built-in support for vmap, also known as auto-vectorization. Some operations, such as the dot product, have already been extended to support batching

## Axon updates

[Axon](https://github.com/elixir-nx/axon/) is a library led by Sean Moriarity that brings deep learning to the Erlang Ecosystem. It is powered by Nx and runs on the CPU/GPU.

*   Axon now supports recurrent layers (`Axon.lstm/3`, `Axon.gru/3`, `Axon.conv_lstm/3`) with the option to dynamically or statically unroll layers over an entire sequence

*   Axon now handles multi-input / multi-output models for accepting data in multiple places and returning multiple predictions from a common model

*   Axon now ships with parameter regularization via `Axon.penalty/3` and regularizer options passed to individual layers

*   Axon now provides custom layers via the `Axon.layer/5` method. You can specify your own trainable parameters, and implement your layer as a numerical definition

*   Axon’s training API supports training from an initial model state, this is useful for transfer learning and some reinforcement learning applications

*   We are in the process of migrating Axon’s examples to Livebooks. See the [MNIST Livebook example](https://github.com/elixir-nx/axon/blob/main/notebooks/mnist.livemd).  We are accepting PRs for [additional examples](https://github.com/elixir-nx/axon/issues/47) as well as for [converting examples to live markdown](https://github.com/elixir-nx/axon/issues/52). Both issues are a great way to get involved with the project and to learn about Axon!

## Livebook updates

[Livebook](https://github.com/elixir-nx/livebook/) is a collaborative and interactive code notebook maintained by Jonatan Kłosko.

*   Livebook was announced last month. [Watch the original announcement by José Valim](https://www.youtube.com/watch?v=RKvqc-UEe34)

*   After the announcement, new features have been added, such as autocompletion of Elixir code ([watch an example](https://user-images.githubusercontent.com/17034772/115117125-533b2900-9f9d-11eb-94a9-a2cf2ccb7388.mp4)) and an embedded mode that is useful for running on Nerves devices

*   Most recently, Livebook got user collaboration, which gives each user an avatar and allows you to see all users in a notebook and what they are currently editing ([watch an example](https://user-images.githubusercontent.com/17034772/117443192-15944500-af38-11eb-9f70-618975c2f28c.mp4))

*   Official Livebook Docker images have also been published, all you need to get started is to run: `docker run -p 8080:8080 livebook/livebook`

*   Users can also import notebooks from a URL, so trying out notebooks from GitHub or Gist is extremely straightforward. You can already get some examples from [here](https://github.com/elixir-nx/axon/tree/main/notebooks) and [here](https://github.com/jonatanklosko/notebooks)

## Scidata updates

Last month we also announced [Scidata](https://github.com/elixir-nx/scidata), a library by Tom Rutten for downloading and normalizing data sets related to science.

*   Scidata currently supports MNIST, FashionMNIST, CIFAR10 and CIFAR100 data sets

*   We welcome PRs for additional vision and [text data sets](https://github.com/elixir-nx/scidata/issues/11)!

## Tweets and other bits

Here is a collection of fun stuff people are doing with the existing libraries and with machine learning on the BEAM:

*   [Masatoshi Nishiguchi wrote a Livebook document that controls a BMP280 temperature sensor that is connected to a Raspberry Pi](https://twitter.com/MNishiguchiDC/status/1390658051267563520)

*   [Marcelo Reichert used Axon to simulate an autonomous car finding its objective](https://twitter.com/marceloreichert/status/1385427566278975491)

*   [Jonatan Kłosko was on the ThinkingElixir podcast to talk about Livebook and its implementation](https://thinkingelixir.com/podcast-episodes/046-livebook-with-jonatan-klosko/)

*   [José Valim was on the Changelog podcast talking about Machine Learning and the Erlang Ecosystem](https://changelog.com/podcast/439)

*   [Jorge Garrido has released a library for interfacing with Python data science libraries directly from Erlang](https://github.com/zgbjgg/jun)

*   [Robert Bates wrote a DQN with Axon to solve the Cartpole environment from OpenAI’s Gym](https://twitter.com/sean_moriarity/status/1381968449069441031)

*   [Bruce Tate has released an introductory video to Nx and Axon where they predict the XOR operator](https://www.youtube.com/watch?v=NcsqGS6SVXg)

Are you also interested in Machine Learning and the Erlang Ecosystem? [Join us and come chat on our Slack](https://erlef.org/wg/machine-learning).

---

## File: priv/posts/machine-learning/20210930123456_machine-learning-wg-updates-sep.md

{
  "title": "Machine Learning WG updates - Sep 2021",
  "authors": ["The Machine Learning WG"],
  "slug": "machine-learning-updates-sep-2021",
  "tags": ["machine learning", "axon", "nx", "livebook", "explorer"],
  "category": "machine-learning",
  "datetime": "2021-09-30T12:34:56.921505Z"
}
---
Machine Learning WG updates - Sep 2021
---

Welcome to another update from the Machine Learning WG! This time we are glad to announce many improvements to our on-going efforts and welcome new projects into the fold!

## Nx updates

[Nx](https://github.com/elixir-nx/nx) is a multi-dimensional tensors library for Elixir with multi-staged compilation to the CPU/GPU.

* Refactored Nx' core to support TPUs ([https://github.com/elixir-nx/nx/pull/423](https://github.com/elixir-nx/nx/pull/423))

* Many new index-based operations were added, such as `Nx.take/3`, `Nx.take_along_axis/3`, `Nx.gather/2`, and `Nx.scatter_add/3`

* The EXLA backend (which uses Google's XLA) has been updated to Tensorflow 2.6 and now supports NVIDIA's Jeton and macOS aarch64

* We now precompile Google's XLA to multiple OSes and architectures. This brings the getting started experience down from several minutes to a couple seconds

## Explorer updates

We are glad to welcome [Explorer](https://github.com/elixir-nx/explorer/), led by Chris Grainger, into the Machine Learning WG and into the elixir-nx organization. Explorer is a dataframe library for Elixir. It is an API for data manipulation with high-level features such as:

* Simply typed series: float, integer, boolean, string, date, and datetime

* A powerful but constrained and opinionated API, so you spend less time looking for the right function and more time doing data manipulation

* Pluggable backends, providing a uniform API whether you're working in-memory or (forthcoming) on remote databases or even Spark dataframes

* The first (and default) backend is based on NIF bindings to the blazing-fast [polars](https://github.com/pola-rs/polars) library

Learn more about it in its [README](https://github.com/elixir-nx/explorer/) or in [its introductory notebook](https://github.com/elixir-nx/explorer/blob/main/notebooks/exploring_explorer.livemd).

## Livebook updates

[Livebook](https://github.com/elixir-nx/livebook/) is a collaborative and interactive code notebook in Elixir developed by Jonatan Kłosko.

* Add an explore section with many introductory notebooks on Livebook, Elixir, VM instrumentation, etc ([https://github.com/livebook-dev/livebook/pull/310](https://github.com/livebook-dev/livebook/pull/310))

* Introduce the Kino library: a Livebook client for building interactive charts, tables and more ([https://github.com/livebook-dev/livebook/pull/306](https://github.com/livebook-dev/livebook/pull/306))

* Make notebooks more interactive with the addition of inputs ([https://github.com/livebook-dev/livebook/pull/328](https://github.com/livebook-dev/livebook/pull/328)), which can be made reactive ([https://github.com/livebook-dev/livebook/pull/389](https://github.com/livebook-dev/livebook/pull/389)), and allow for multiple input types (colors, text area, urls, passwords, etc)

* Introduce branching sections to perform asynchronous work ([https://github.com/livebook-dev/livebook/pull/449](https://github.com/livebook-dev/livebook/pull/449))

* Support relative links within notebooks ([https://github.com/livebook-dev/livebook/pull/441](https://github.com/livebook-dev/livebook/pull/441))

* Hovering modules and function calls in the Elixir code editor now shows their documentation ([https://github.com/livebook-dev/livebook/pull/453](https://github.com/livebook-dev/livebook/pull/453))

* Allow notebooks to be exported to Elixir code ([https://github.com/livebook-dev/livebook/pull/476](https://github.com/livebook-dev/livebook/pull/476)) and Live Markdown, optionally with output ([https://github.com/livebook-dev/livebook/pull/483](https://github.com/livebook-dev/livebook/pull/483))

* Support for pluggable file-systems with S3 support out of the box: ([https://github.com/livebook-dev/livebook/pull/492](https://github.com/livebook-dev/livebook/pull/492))

Livebook has been moved to its own organization and it will launch their own website soon. The organization also hosts [Nerves Livebook](https://github.com/livebook-dev/nerves_livebook), led by Frank Hunleth, which provides a straightforward way to run Livebook on embedded devices and ships with many additions to teach Nerves to new developers through Livebook.

## Axon updates

[Axon](https://github.com/elixir-nx/axon/) is a library led by Sean Moriarity that brings deep learning to Elixir. It is powered by Nx and runs on the CPU/GPU.

* Axon now global pooling layers ([https://github.com/elixir-nx/axon/pull/86](https://github.com/elixir-nx/axon/pull/86))

* Axon handles mixed precision policies ([https://github.com/elixir-nx/axon/pull/74](https://github.com/elixir-nx/axon/pull/74))

* Axon supports callbacks ([https://github.com/elixir-nx/axon/pull/71](https://github.com/elixir-nx/axon/pull/71)) and metrics ([https://github.com/elixir-nx/axon/pull/67](https://github.com/elixir-nx/axon/pull/67))

* Added constant, bilinear, and adaptive_lp_pool (adaptive power average pool) layers

## Other bits

* Benjamin Moss wrote an article on [Predicting fuel efficiency with Elixir, Nx, and Axon: a gentle introduction to Machine Learning](https://bitfield.co/posts/machine-learning-in-elixir-with-nx-and-axon/)

* Dmitry Rubinstein has implemented [a Jupyter backend for Elixir](https://github.com/spawnfest/ielixir) during this year's [Spawnfest](https://spawnfest.org)

* Robert Bates has shared a presentation about [AI packages for Elixir currently available on Hex.pm](https://docs.google.com/presentation/d/1_GiJ32hv3mv1qBHlZHkLH-GiSlrNTvObBnAPRoagm00/edit#slide=id.gc6f73a04f_0_46)

Are you also interested in Machine Learning and the Erlang Ecosystem? [Join us and come chat on our Slack](https://erlef.org/wg/machine-learning).

---

## File: priv/posts/marketing/20210331201645_getting-to-know-us-prodriguez.md

{
  "title": "Getting to know - Pehuén Rodriguez",
  "authors": ["The Marketing Working Group"],
  "slug": "getting-to-know-us-prodriguez",
  "category": "marketing",
  "tags": ["developer", "marketing", "getting-to-know-us", "bio"],
  "datetime": "2021-03-31T20:16:45.430923Z"
}
---
Getting to know Pehuén Rodriguez
---







## About this series 


 Welcome the first edition in our "Getting to know us" series. "Getting to know us" consists of articles and interviews
 about a wide variety of people in our ecosystem, with the main goal of making their work with BEAM technologies
 visible. Some have been around a long time, while others may seem new to you, but they all share a love for this
 ecosystem. If you know of interesting work that deserves more visibility, let us know at 
 [marcom@erlef.org](mailto:marcom@erlef.org) !


## Getting to know Pehuén Rodriguez

Pehuén Rodriguez is an Argentine 34-year-old software developer and artist with over thirteen years of experience. He’s also a partner at Nayra, a digital development cooperative. He “speaks” OOP, some C++, Javascript, SQL and no-SQL, among others.He has been interested in BEAM technologies for a while now, and nowadays he’s specializing in Erlang and distributed systems at NextRoll.

## The beginnings

Pehuén’s professional career started when he decided to study Systems Engineering at UTN (Universidad Nacional de Tecnología). He got his first job in a big company thanks to the university internship program; there, he was in charge of the interpretation of local needs and their translation in terms of requirements/development. After a few years, paradoxically, he decided to pause university and focus on his job. He spent five years in the same company until one of his future partners at Nayra cooperative asked him to join them, which he agreed happily. At the same time, he decided to explore his creative side by studying Visual Arts. Although he was really enjoying this new career, he felt like there was something that still didn’t quite fit, so he dropped it and kept searching. After a while, he ran into Electronic Arts, a career offered by UNTREF (Universidad Nacional de Tres de Febrero), where he managed to bring his interests together. He fervently believes that creative thinking is a fundamental part of his profession and that all the way he traveled led him to where he is now. He has even resumed Communications Systems Engineering this past 2020.

## First steps on the BEAM
One of Pehuén’s first projects at Nayra was a Canadian reservation and ticketing platform, where he was professionalized in Node.js. There, he also had the opportunity to observe some features and tooling being developed in Elixir. And so, the seed of interest was planted. It grew up with readings and learning projects and, in the early 2020, a friend cooperative proposed to provide training in Phoenix together: learning with friends to help others learn was more than enough incentive. He didn’t have to think twice.

## Why the BEAM

Pehuén noticed that the declarative approach of functional programming is for him far more expressive and suitable to solve complex problems than the imperative way of the OOP. The other thing he realized was that with Erlang/OTP, the error handling logic was completely different from what he was used to: the “let it crash” approach allows him to focus on the current scenario instead of trying to anticipate any unknown. You may think in terms of multiple related loosely coupled processes, each of them working as independently as possible. As he’s learning of his new project and colleagues, that together with the supervision logic, enables for distributed systems to run reliably and keep on responding, even when some pieces may malfunction or crash. Ultimately, the thing about BEAM technologies and what they bring to the table is that, once you get them, you realize that they work as a philosophy. A philosophy in which he truly believes.

## Keeping the fire on

Pehuén thinks about himself as a newborn in terms of BEAM technologies, and, as such, the most basic thing still amazes him. However, he knows that the stages of infatuation are usually brief. For him, learning and movement are the way you manage to keep things interesting. He recently read about the Nx project and its thrive to use BEAM technologies to support numeric intensive AI-related processes. It’s amazing when technologies evolve and create tools that transcend their traditional scope. He could never get bored of this.

## The present
As one of Nayra’s projects, Pehuén started working at NextRoll this March. There he has been working with systems that are huge and have many implications. Additionally, and because of their size, these systems are being hosted by AWS with a logic that is entirely different than everything he has ever seen. If there is something that Pehuén is doing at the moment, that is getting out of his comfort zone: he is focusing on learning, reading about Erlang, OTP and good practices while putting into practice that knowledge at the same time, slow but steady. Pehuén is facing one of the biggest challenges of his professional career. And he couldn’t be happier.

## Work, personal life and cooperativism

As a cooperativist, work and personal life are almost the same thing. Cooperativism is not only a form of business organization, but it’s also a philosophy and a lifestyle that has its focus on people and society. Pehuén is a member at Nayra, where he shares his values and principles with five other partners. This way he gets to practice his profession in a much more pleasant manner. Furthermore, the bond between his family and his company is something that he never experienced as an employee.Nayra is also a partner at FACTTIC, the Argentinean Federation of Work Cooperatives of Technologies, Innovation and Knowledge. There it shares projects and values with over 25 cooperatives from all over the country. This doesn’t mean that, at times, work can be overwhelming, especially in COVID-19 times. That is why he always makes sure to find moments to play sports, meditate and spend time with his family.

## Something to keep working on

We asked Pehuén what he thinks could collaborate with more people to become interested in BEAM technologies. In his opinion, and as constructive criticism, something more people should talk about and debate is Erlang documentation. As a fervent defender of the ecosystem technologies, he thinks Erlang has many advantages and technological attractions. However, he notes that its documentation is a bit unwelcoming to the uninitiated, especially compared to other languages that saw technical marketing as a tool to attract new developers.Still, he wouldn’t trade BEAM technologies for anything.


-------------

We're eager to hear your stories, please share them at 
[marcom@erlef.org](mailto:marcom@erlef.org) !

---

## File: priv/posts/marketing/20210714233950_getting-to-know-paulo-oliveira.md

{
  "title": "Getting to know - Paulo F. Oliveira",
  "authors": ["The Marketing Working Group"],
  "slug": "getting-to-know-paulo-f-oliveira",
  "category": "marketing",
  "tags": ["developer", "marketing", "getting-to-know-us", "bio"],
  "datetime": "2021-07-14T23:39:50.502278Z"
}
---
Getting to know to Paulo F. Oliveira
---







*Welcome to another edition in our **getting to know us** series.
Getting to know us consists of articles and interviews about a wide
variety of people in our ecosystem, with the main goal of making their
work with BEAM technologies visible. Some have been around a long time,
while others may seem new to you, but they all share a love for this
ecosystem. If you know of interesting work that deserves more
visibility, let us know at <marcom@erlef.org>!*

[Paulo F. Oliveira](https://github.com/paulo-ferraz-oliveira) is a Portuguese software developer and a member of the
Erlang Ecosystem Foundation. With a career spanning over 17 years, he
has worked on the most diverse projects: from mobile games backends
and internet portals, to NATO port surveillance systems and helicopter
engine software, to space projects. And today, we got to know him.

**Could you tell us a bit about yourself and your early years?**

I was born in Covilhã after my family came to Portugal from Mozambique,
and almost immediately I moved to Santo André, next to the sea, where I
lived for the first 20 years of my life.
I left Santo André to go to the University of Algarve, where I studied
Computer Systems Engineering and where I got really interested in
software development. It is also where I realized that it was not as
difficult as I thought it was. My final thesis was a parser/lexer for
Fortran targeting parallel image processing on Beowulf Clusters
(SPMDdir), for which I wrote a paper on.
I then went to work for SAP. About one and a half years later, I quit: I
became more interested in software development there but not equally
interested in the product.
I continued learning programming by myself (it was not the main focus of
my degree), mainly using Java, PHP, and MySQL. I even created a small
blog software at that time.
Then I had the opportunity to work for Opensoft, where I worked on a
logistics management system that integrated with SAP. I was developing
the portal and backend in Brazil, where I lived for 2 years.
After this, I moved back to Portugal and got into Edisoft; they do a lot
of things, mostly state-related and heavy-duty systems: systems for the
navy, for space, for geographical databases, and so on. They work with
embedded systems, so I got to learn a lot with them. During this time, I
moved to France to work for Turbomeca, where I worked in the software
department specifying and testing software. Two years later, I got
involved in the development of said software and stayed in Portugal for
3 months until a new opportunity came up to work again in France for the
same people, but at a higher level: I would continue specifying and
testing systems but also developing software. This is where I got into
contact with "esoteric" languages like DXL, and systems like
ClearQuest. In 2008, the economic crisis struck, Edisoft was basically
forced to give up the project and I came back to Portugal, to the
headquarters, where I started working in the development of a complex
port surveillance system.
After a while, they proposed that I move to the space department, where I
did software in C for embedded software for satellites, with a system
called RTEMS.

**How did you end up working with BEAM technologies?**

After leaving Edisoft, I started working in a company that developed a
product for real-time communications using WebSockets, and this is where
I got my first experience with high scalability systems and millions of
concurrent connections: they were building a system that was similar to
Erlang+WebSockets, and this was the first time I heard about this
language. I was even told that if you spend enough time working around a
system that needs fault tolerance, scalability, and high concurrency, you
will eventually build your own version of Erlang. And this is what I
feel they ended up doing, only from scratch.
A while after, I got requested for an interview with Miniclip to which I
initially said no because ---confesses a little embarrassed--- I didn't
like the syntax of Erlang and I felt too comfortable with Java. Then I
realized these kinds of things never had stopped me in the past and gave
it a shot. I got the chance to lead the backend development for Soccer
Stars initially, and later for Agar.io, both were hit games at Miniclip,
after which, still at the company, I moved to work in engineering-first
teams.
In 2017, I got to attend the Erlang User Conference, in Stockholm,
and I ended up getting even more involved with Erlang (that conference
was a pivotal moment for me). I got to meet Joe Armstrong, Robert
Virding, Francesco Cesarini and all the "big" guys. At the time, I
knew nobody else from the community, apart from those whose books I had
read. I was very happy to be part of it, and I gradually got more in
contact with the community and contributing to open source, which I
now do regularly even for the EEF maintained repositories.

**Is there anything in Erlang/OTP that sold you even more after you got
started?**

Most things sold me. For example, pattern matching. I was working
heavily with JavaScript before, and even though it's a multi-paradigm
language, and you can have functional, you don't have pattern matching,
and that's a huge part of Erlang.
It took me quite a while to understand two things properly: the first
being what the "let it crash" philosophy meant. And the second one,
which is very attached to the first one, was error handling. If there
are errors and you know that they will occur, you better handle them,
but do it in the right context; if you can't handle them, don't worry,
although when we say let it crash, we don't mean "let the application
die", rather we're referring to processes that run in the app. Used
correctly in Erlang, error handling is something that I love to explore
and keep fostering.
The first piece of software that I wrote for Erlang was not useful
software, it was just a basic test: I wanted to see how amazed I would
be about this lightweight process mechanism everybody was always talking
about. I wrote a very simple script that launched a million processes,
and they all died after doing nothing. And it ran really ---really---
fast, without using many resources. I tried to do the same with Java,
and it was super slow: concurrency is a big part of what I love, but I
also love performance, and Erlang gives me that.
As a CI and static analysis aficionado, one other thing I have to
mention that was really nice to find out-of-the-box was dialyzer. I
absolutely use it always.

**Are you learning something new at the moment?**

I started learning Elixir a few months ago for two main reasons: the
first one is that it is not very easy to recruit Erlang-first developers,
so we're looking into Elixir developers to be able to have a broader
search scope. Also, there are some things about Erlang that I would like
to see improved, out-of-the-box, like documentation and formatting, and
Elixir gives us those.
The second one is to not get tied to a single language. There is a big
community around Elixir that I want to explore if possible. It is also
very interesting to see the similarities between Erlang and Elixir
communities and the way they interact.
I'm also learning of some of the difficulties of adopting OTP 24
because in this shared technology stack that my team does, one of the
goals is to keep on top of the latest technologies.

**What else do you like about working communally?**

First of all, people are very welcoming, and I feel that it's good to
be there. And secondly, many of them give away their free time and
energy in order to build something that they like and believe in, and
that benefits others. And this kind of interaction is unbelievably
rewarding.
I'm a regular participant in the Erlanger Slack, as well as some
projects like [elvis_core](https://github.com/inaka/elvis_core), [erlcloud](https://github.com/erlcloud/erlcloud), 
and [setup-beam](https://github.com/erlef/setup-beam).
I feel other members of the community always want to understand what's
the problem you've been trying to solve, and always want to help.
Sometimes they solve an issue for you ---or with you--- and you realize
that you wouldn't have solved it otherwise. I'm a strong believer in
the OSS development model, and I love collaboration. I like the fact
that together we can build something. Even if you're working alone in a
lab, somebody built that lab and the instruments you work with.
I try to give back as much as possible because I strongly believe that
collaboration is a two-way street, which is why I'm now organizing
[SpawnFest 2021](https://spawnfest.org/) with other members of the Erlang community: Bryan Paxton,
Pablo Costas Sánchez, and Filipe Varjão. And finally, I want to take this
opportunity to thank Brujo Benavides for all the help he gave us setting
up the initial structure for this year's SpawnFest, and together with
Bryan Paxton for getting me personally so involved in the community as I
am.

*We're eager to hear your stories, please share them
at <marcom@erlef.org>!*

---

## File: priv/posts/marketing/20220608030419_behind-elixir-interview-with-jose-valim.md

{
  "title": "Behind Elixir - An interview with José Valim",
  "authors": ["The Marketing Working Group"],
  "slug": "behind-elixir-interview-with-jose-valim",
  "category": "marketing",
  "tags": ["developer", "marketing", "getting-to-know-us", "bio"],
  "datetime": "2022-06-08T03:04:19.165697Z"
}
---
Getting to know to José Valim
---
In order to celebrate the tenth anniversary of the Elixir, we met with its creator and member of the Erlang Ecosystem Foundation, Jose Valim, to remember how it all began, the importance of the community, and what's coming next for this language.







**It's been ten years since the release of Elixir and we wanted to start this conversation by remembering that first search which led you to create this language. What was the starting point?**

Back in 2009, I was already thinking about concurrency and how to write elegant and robust software that runs on multiple cores.
Back then, the platform that I used was not good for concurrency, so I decided to investigate others. This is when I found Erlang, and I would like  to say that I fell in love with it. The more I learned about it, the more I could say: "This is the platform, this is the technology I want to use for the next decade". Eventually, as I learned more about it, some ideas started to popping up in my head about all the benefits of the BEAM. That is the main thing that led me to Elixir.

**What are the use cases of Elixir and the advantages that Elixir presents over other languages?**

When Elixir started, my background was in web applications and I knew that Elixir would be good at this. Especially because the platform, the Erlang Virtual Machine, is great for everything that is running on top of a socket. But I also didn't want Elixir to be a language that was going to be used only for web development, mostly because the BEAM was already useful at several levels, like TCP/UDP applications, building distributed systems, etc.

I have always intended that the language has multiple use cases and we saw that happen in the last 10 years! Nowadays, Elixir has the Phoenix Framework for web development, or Nerves to build embedded applications. We also have GenStage + Broadway for building the pipelines, and Membrane for audio/video processing. Recently, we started a new effort: bringing Elixir to the world of numerical computing and machine learning with Nx, Livebook, and Explorer.

**What is the importance of Elixir being an open-source programming language?**

We have many great features that were brought by the community. In all the releases of Elixir, somebody contributed or someone started a discussion about a feature or issue they would like to see addressed. The community is always active, contributing at different capacities.
In recent years, more programmers have been interested in Elixir. What advice would you give to junior developers that take their first steps in Elixir’s world?
The Elixir community is quite welcoming. I recommend them to join the foundation or Slack or IRC… whatever they feel more comfortable with. Plus we are now starting to have in-person events once again!
I would like to recommend them to enjoy their experience, regardless of their technical level.

**What features of Elixir are you working on right now, and what can we expect from the upcoming releases?**
We have a new Elixir release every six months. We continue bringing improvements to the language, fixing bugs, and I don't expect this to change. But, since Elixir is a stable language, I can focus most of my time working on the ecosystem. For the last year and a half, I have been working mostly on bringing Elixir to numerical computing and Machine Learning, with the tools I mentioned before (Nx, Livebook, and Explorer). One thing that is really nice about Elixir is that it is designed to be an extensible language. Anyone can bring it to new domains! It does not depend on me or anybody from the team. You should also be able to bring Elixir wherever you want!

**Why did you decide to join the Erlang Ecosystem Foundation, and what do you think is the most important aspect of this type of organization?**

Erlang is both the past and future of Elixir. Without Erlang, there would be no Elixir. If we can all get together to improve the platform and the technical foundation of the language, everybody is going to benefit from it. When I was invited to be one of the founding board members of the Foundation, it was very clear to me that it was important. Therefore I am glad to see the Elixir community having a role in it too.

*We're eager to hear your stories, please share them at [marcom@erlef.org](mailto:marcom@erlef.org)!*

---

## File: priv/posts/marketing/20220821144819_getting-to-know-tristan-sloughter.md

{
  "title": "Getting to know - Tristan Sloughter",
  "authors": ["The Marketing Working Group"],
  "slug": "getting-to-know-tristan-sloughter",
  "category": "marketing",
  "tags": ["developer", "marketing", "getting-to-know-us", "bio"],
  "datetime": "2022-08-21T14:48:19.825190Z"
}
---
Getting to know to Tristan Sloughter
---







*Welcome to another edition in our **getting to know us** series.
Getting to know us consists of articles and interviews about a wide
variety of people in our ecosystem, with the main goal of making their
work with BEAM technologies visible. Some have been around a long time,
while others may seem new to you, but they all share a love for this
ecosystem. If you know of interesting work that deserves more
visibility, let us know at <marcom@erlef.org>!*

[Tristan Sloughter](https://github.com/tsloughter) is a long time Erlang programmer and member of the Erlang Ecosystem Foundation.
While he was working at Heroku, he teamed up with [Fred Hebert](https://ferd.ca/) to build rebar3 and relx, tools for Erlang development and packaging.
Nowaday he works on [OpenTelemetry](https://opentelemetry.io/) at [Splunk](https://www.splunk.com/en_us/products/apm-application-performance-monitoring.html). He has given great contributions to the BEAM and today we get to know him.

**Tell us about yourself, why did you choose to be a programmer and why Erlang?**

I was able to get a somewhat early start as a programmer because my dad is a mathematician who runs Linux and programs. Growing up we had computers and the Internet since elementary school and I began toying with Linux and programming in middle school. So it has sort of just been what I have always done.

I got into Erlang just by chance while I was studying at the Illinois Institute of Technology. My roommate and I were looking for languages to learn that would be useful for us in the future. It was 2003/2004 and we wanted something that was functional, concurrent and distributed. That narrowed it down to Erlang or Mozart/Oz.

During this time, we met [Eric Merritt](https://github.com/ericbmerritt) and [Martin Logan](https://github.com/martinjlogan), who were working on the book  “Erlang and OTP in Action”. That opened more doors, we organized ErlangCamp where we taught Erlang in a two day course. After that I got my first job after leaving the PhD program at IIT at Orbitz with Martin, before leaving for a startup using Erlang, which Eric ended up joining later as well.


**What can you tell us about your Erlang/OTP learning process? Is there anything that sold you on even more after you
got started?**

As I mentioned earlier what first sold me on Erlang was the concurrency and distributed nature. But later, when I was working in production, what really got me was the ability to interact live with a running system.


**What are some of your favorite technical highlights in Erlang/OTP that have occurred over the past few years?**

I am sure it is the answer everyone gives at the moment but I think it is the JIT. This is definitely the highlight of the last year, and it is one of the biggest of the BEAM probably since they added SMP support back in like R11.


**You have made great contributions to the ecosystem, such as rebar3/relx, OpenTelemetry, grpcbox and Erleans. Can you
tell more about them, and in what stage are they now?**

When I started learning Erlang from Eric Merritt and Martin Logan they were working on the Erlang build tool [sinan](https://github.com/ericbmerritt/sinan) and package manager [faxien](https://github.com/erlware-deprecated/faxien). So my introduction and first contributions to build tools started with those. Not long after that rebar was released by Dave Smith from [Basho](https://github.com/basho/rebar) as a build tool. It was far easier to install and use than sinan, and it quickly became the de facto standard used by Erlang projects. But, unlike sinan, its release building relied on reltool in OTP, which was never really completed. So  Eric took his build tool sinan, pulled out the part that builds releases and turned it into relx, which was a stand-alone escript, just like rebar was.

I was working at Heroku at that time and Fred Hebert joined. One of the issues with onboarding people who wanted to give Erlang and our team a try in the company, was the build tools. At the end of this time, rebar was considered done and Fred and I took over to maintain it. It was not going to be possible to make the changes we thought were needed on top of rebar and to be backwards compatible. We decided the best solution was a new tool that was, in many ways, backwards compatible as much as we could be. So, one of the goals was to be more user-friendly for people joining the team or being new at Erlang. When we started, we wanted to keep as much of the good, because rebar set the standard in Erlang for build tools and it was a really huge improvement when it came around, but to remove the quirks, like dependency upgrade ordering.

Regarding the current state of rebar3 and relx, there is always work to be done. Recently, Fred reworked the compilation to be a lot faster. Now he is working on vendoring dependencies – both rebar3 itself and for projects it builds – which is something asked for by corporate users needing to build in environments without Internet access.

[OpenTelemetry](https://opentelemetry.io/), which my work at [Splunk](https://www.splunk.com/en_us/products/apm-application-performance-monitoring.html) is focused on, is still under heavy development, both the specification and the Erlang/Elixir implementation and instrumentations, and looking for contributors. The Erlang implementation of the tracing spec is complete but metrics is in the very early stages. I hope to have a first iteration of metrics support this year. After metrics there are still logs and the upcoming profiling spec to work on. I hope to work on [grpcbox](https://github.com/tsloughter/grpcbox) more in the future since the OpenTelemetry exporter relies on it, right now it works but could use a lot of love.

[Erleans](https://github.com/erleans/erleans) is a project to bring the ideas of Microsoft Orleans to BEAM. It is not used in production but I believe it, or at least the ideas from Orleans, have a place in any story to improve building distributed applications on BEAM and dynamic environments like Kubernetes.

**What excites you about the future of Erlang/OTP and Elixir Ecosystems and in which direction do you think it's
important to explore?**

For BEAM in general I think an important direction to explore is distributed frameworks like Orleans. Distributed Erlang has seen a number of important improvements recently, like fragmenting large messages and preventing overlapping partitions, but so much is left to the developer to get right when developing a distributed application in an environment where nodes and network connections are constantly coming and going.


I think the future of Elixir is certainly in the web but surprisingly, to me at least, may also be in [Machine Learning](https://github.com/elixir-nx/nx). And the embedded projects look really interesting and continue to grow, whether it is the [GRiSP board](https://www.grisp.org) , [Nerves](https://www.nerves-project.org) or [AtomVM](https://github.com/atomvm/AtomVM), a port of the VM to run on ESP32 microcontrollers, which I haven’t tried but really want to.

**Why did you decide to join the Erlang Ecosystem Foundation, and what do you like about working with the community?**

I was really happy that the foundation was created because I wanted it to be a vehicle for bringing Erlang and Elixir devs together. There has been a lot of fragmentation and duplicate work.

Working in the [Build and Packaging Working Group](https://erlef.org/wg/build-and-packaging) to bring together those working on mix, rebar3, hex, erlc and gleam has been very beneficial. In the [Observability Working Group](https://erlef.org/wg/observability) we converted the [telemetry](https://github.com/beam-telemetry/telemetry) library to Erlang so it could be shared between ecosystems and it is where we do some of the coordinating on instrumenting Elixir libraries for tracing with OpenTelemetry.

*We're eager to hear your stories, please share them
at <marcom@erlef.org>!*

---

## File: priv/posts/newsletter/20190929033313_newsletter-1.md

{
  "title": "EEF Newsletter #1",
  "authors": ["eef"],
  "slug": "newsletter-1",
  "category": "newsletter",
  "datetime": "2019-07-05T03:33:13.411451Z",
  "tags": ["newsletter"],
  "id": "1"
}
---
---
## In This Newsletter
------------------------------------------------------------
Expect the EEF newsletter the first Friday of each month. In this newsletter, we will cover a new feature called Working Group Water Cooler where we interview a representative from one of the working groups. We hope this provides insight into what the working groups are doing, and provide a clear path for interested parties to reach out and to help. This time we are discussing the Observability working group with its chair, Tristan Sloughter.

A new working group - Education, Training & Adoption - has been formed. Check out the details below.

We have a sponsor testimonial from Francesco Cesarini explaining his support for the EEF as well his aspirations for it. If sponsorship interests you, now is the time to get on board as a founding sponsor. Finally, we wrap up with some ecosystem news.

Don't forget to check out the [Elixir Fountain podcast](https://soundcloud.com/elixirfountain/episode-084-setting-the-foundation-w-alistair-woodman-miriam-pena) with board members Alistair Woodman and Miriam Pena!


## Working Group Water Cooler
------------------------------------------------------------

Name and Role in the Working Group
Tristan Sloughter. I'm the chair of the working group.

What is the primary goal of the working group? Describe in reference to the community benefits.
The primary goal is to improve the observability offerings on the BEAM, particularly integration with modern offerings — Zipkin, Jaeger, DataDog, Prometheus, Honeycomb, LightStep, Stackdriver and many more — without vendor lock in, and to do it jointly across the languages on BEAM so we all benefit.

How does the group determine what to focus on? Is there a way for the community to collaborate?
We have monthly meetings to discuss priorities and action items. You can find the minutes for these meetings in this [google document](https://docs.google.com/document/d/18JVh6ICLyRCJBpRVIXwcR1fb-K4qRX3WHYgtM7mFx2U/edit?usp=sharing) .

Outside of the monthly meeting we use a  for collaboration.

What is the group currently focused on? Are there initiatives planned?
The main focus of our work in our first couple meetings has been around getting a sense of the existing landscape and how components can best work together. Some examples are how best to track context of an ongoing trace and integrating solutions like OpenCensus with the Telemetry project.

Have long term initiatives been discussed? Describe based on priority and benefit.
Long term we want to have a solid shared base for tracing, metrics and logs that we then help library authors instrument with so all your BEAM dependencies can seamlessly be observed together and more such instrumentation in libraries is available.

How can the community help in supporting the group? Are there projects that need contributes or collaborators?

Lots! Libraries need to be instrumented with  . This project requires involvement across the ecosystem to realize the long term goal. And opencensus-beam (https://github.com/opencensus-beam/) has a lot of libraries that can use input from the community. And if you use a third party service for collecting metrics or traces that you don't see support for that would be a welcome contribution :)

What is the best way for the community to stay informed on the working group's initiatives?
Follow along with the GitHub repo and minutes from our meetings. And drop it on [Erlang slack](https://erlang-slack.herokuapp.com/) (#eef-observability-wg) to ask us how it is going!


## New Working Group: Education, Training & Adoption
------------------------------------------------------------

The mission statement of the new working group is to “facilitate, evolve education and training and consolidate educational material(s) for all BEAM languages and the BEAM itself.” Check out the Education, Training, and Adoption working group’s full page  .


## Sponsor Testimonial
------------------------------------------------------------

The Erlang Ecosystem Foundation has become the focal point of the BEAM community, bringing together developers from all over the world who share common interests. The network and outreach of the founding members is second to none, allowing contacts to be forged and work groups to be established. These work-groups, cooperating across programming languages, are what will bring the ecosystem to the next level. Erlang Solutions is proud to be part of it, because together, we are stronger!

Francesco Cesarini
Founder and Technical Director


## Last Chance to Become a Founding Sponsor
------------------------------------------------------------
It’s the last chance to become a founding sponsor for the EEF. Show your support for the community, the BEAM languages, and the foundation itself by becoming a founding sponsor. Join the other great founding sponsors [here](https://erlef.org/sponsors/) .


## Ecosystem News
------------------------------------------------------------
* OTP 22 has been [released](http://blog.erlang.org/OTP-22-Highlights/)  with “completely re-implemented […] lower levels of the Erlang compiler” as well as experimental socket API, along with other improvements.
* Elixir 1.9  has been [released](https://elixir-lang.org/blog/2019/06/24/elixir-v1-9-0-released/) with “releases support, improved configuration, and more.” Additionally, [Fernando Tapia Rico](https://github.com/fertapric) has joined the Elixir core team.


## See you Soon!
------------------------------------------------------------
Stay tuned for exciting updates about the EEF and the wider Ecosystem community.  The buzz is building and it's a great time to be working with this technology.  If you have any questions or things you'd like to see in this newsletter, please let us know at [marketing](mailto:marketing@erlef.org?subject=Newsletter%20Feedback&body=hi!%20I%20have%20some%20things%20to%20say%20about%20your%20newsletter%3A%0A%0A) !

Remember to follow us on [Twitter](https://twitter.com/TheErlef) for news, updates, and more throughout the month!

---

## File: priv/posts/newsletter/20190930005800_newsletter-2.md

{
  "title": "EEF Newsletter #2",
  "authors": ["eef"],
  "slug": "newsletter-2",
  "category": "newsletter",
  "datetime": "2019-08-03T00:58:00.769161Z",
  "tags": ["newsletter"]
}
---
---


## In This Newsletter
------------------------------------------------------------
The end of summer is approaching and with it comes our August newsletter! In this issue, we get to meet Desmond Bowe, the head of the Marketing Working Group in our Water Cooler discussion. Plus, we get a look at one of the Foundation’s founding corporate sponsors, AdRoll, in Why Do We Care. Don’t forget to check the Ecosystem News section for the Phoenix Phrenzy and a view of Partisan!
[#WeBeamTogether](https://twitter.com/search?q=%23WeBEAMTogether)
“Alone, we can do so little; together, we can do so much” – Helen Keller


## Working Group Water Cooler
------------------------------------------------------------

Name and Role in the Working Group
Desmond Bowe. I lead the Marketing Working Group.

What is the primary goal of the working group? Describe in reference to the community benefits.
The Marketing group is responsible for promoting community and Foundation activities.  Our audience is both internal and external- we communicate to the Ecosystem itself, and also to the wider tech industry about the benefits of the platform.  Our goals are to support community organizers

How does the group determine what to focus on? Is there a way for the community to collaborate?
At every meeting we ask ourselves how we can expand and support the community.  This year has been spent largely on developing the infrastructure for the Foundation - hosting the website, creating the membership workflow, setting up the mailing list. Those tasks are (mostly) behind us, so the next big piece is to centralize community resources and, as much as possible, facilitate communication.  We're not trying to take over the excellent work that's been done on the Slack channels, Meetups, conferences, etc.  We just want to make sure that folks aren't operating in silos, and that the community isn't duplicating efforts.  How can you help? Send us ideas!  Especially if you're an organizer of a Meetup, conference, etc, or would like to be.  And we always need help with our website!

What is the group currently focused on? Are there initiatives planned?
We'd like to highlight work done by individuals in the community. Significant contributions to open-source is what keeps technologies rolling and we want to recognize the efforts that so many have put in.  We're also exploring a way to get Elixir developers more involved in OTP/BEAM development.  Get in touch if you're interested :).

Have long term initiatives been discussed? Describe based on priority and benefit.
We would like to publish case studies and white papers to inform decision-makers about the benefits of the the Ecosystem.  Too often managers reach for the JVM or CLR without even considering the BEAM.  We'd like to change that.

How can the community help in supporting the group? Are there projects that need contributes or collaborators?
[Our website!](https://github.com/erlef/website).

What is the best way for the community to stay informed on the working group's initiatives?
Follow us on twitter!  We run the twitter account, so you'll hear about our activities there first. We also keep an open list of ongoing work on our [github page](https://github.com/erlef/marketing).


## Sponsor Testimonial - Why Do We Care?
------------------------------------------------------------

We invest deeply and depend heavily on the open-source libraries and tools that power up our infrastructure. Maintaining and improving those projects is a big challenge for their contributors, with many of them not being backed up by any company big or small. We believe that the EEF can help on the area a lot.

Brujo Benavides
Erlang Developer & Trainer @ AdRoll

https://www.adrollgroup.com/

[AdRoll](https://www.adrollgroup.com/) is one of the founding corporate sponsors of the Erlang Ecosystem Foundation and recently released a blog post talking about why they choose to sponsor the foundation. If your company depends on the BEAM and its libraries and tools, please consider becoming corporate sponsors and show your support for the community! You can read more about AdRoll's decision to sponsor the Foundation in [Brujo's full article](http://tech.adroll.com/blog/culture/2019/07/31/erlang-ecosystem-foundation.html) .


## Last Chance to Become a Founding Sponsor
------------------------------------------------------------
It’s the last chance to become a founding sponsor for the EEF. Show your support for the community, the BEAM languages, and the foundation itself by becoming a founding sponsor. Join the other [great founding sponsors here](https://erlef.org/sponsors/) .


## Ecosystem News
------------------------------------------------------------
* Phoenix Phrenzy (https://phoenixphrenzy.com/) Make something nifty with LiveView
* Partisan: [Scaling the Distributed Actor Runtime](https://www.usenix.org/conference/atc19/presentation/meiklejohn) by Christopher S. Meiklejohn and Heather Miller, Carnegie Mellon University; Peter Alvaro, UC Santa Cruz


## See you Soon!
------------------------------------------------------------
Stay tuned for exciting updates about the EEF and the wider Ecosystem community. The buzz is building and it's a great time to be working with this technology.If you have any questions or things you'd like to see in this newsletter, please let us know at [marketing](mailto:marketing@erlef.org?subject=Newsletter%20Feedback&body=hi!%20I%20have%20some%20things%20to%20say%20about%20your%20newsletter%3A%0A%0A) !

Remember to follow us on [Twitter](https://twitter.com/TheErlef) for news, updates, and more throughout the month!

Have a pleasant weekend!
- [The Erlang Ecosystem Foundation](https://erlef.org)

---

## File: priv/posts/newsletter/20190930010447_newsletter-3.md

{
  "title": "Introducing Our Stipend Program and New Sponsors",
  "authors": ["eef"],
  "slug": "newsletter-3",
  "category": "newsletter",
  "datetime": "2019-09-06T01:04:47.281151Z",
  "tags": ["newsletter"]
}
---
---
## In This Newsletter
------------------------------------------------------------
The beginning of Autumn has arrived and with it comes our September Newsletter! In this issue, we announce our new stipends process, some website updates, and we get to meet Maxim Fedorov, the head of the Security WG. Plus, we get an update, Honoring Fellows, Why We Care and other News.

#WeBeamTogether

"The greatness of a community is most accurately measured by the compassionate actions of its members." ~ Coretta Scott King


## Stipends!
------------------------------------------------------------
It is our great pleasure to announce that we have just opened our stipend program. The goal of it is to fund open source development, trainings, workshops and other initiatives that will help increase and expand the Beam community. These stipends are funded by [our sponsor](https://erlef.org/sponsors/) , [membership fees](https://members.erlef.org/join-us) and donations.

The current focus of the foundation is on increasing and expanding the community so we will favour stipends that are targeted to beneficiaries that are new to Erlang/Elixir and the ecosystem. We prefer stipends that support online workshops, online training materials, hands-on trainings, development work (open source) and diversity efforts.

If you want to apply for a stipend, fill out the [form here](https://erlef.org/stipends/#) . If you have any questions please reach out to [stipends@erlef.org](mailto:stipends@erlef.org)
~ Miriam Pena - Education WG Chair


## Website Update
------------------------------------------------------------
Thanks to the Marketing Working Group - and Bryan Paxton in particular - [ErlEF.org](https://erlef.org/) now runs on the Erlang VM! The code is on [GitHub](https://github.com/erlef/website) so check it out.

We're always looking for designers to help us tweak the site. Reach out to the [marketing group](https://erlef.org/wg/marketing) if you're interested.


## Working Group Water Cooler
------------------------------------------------------------
Name and Role in the Working Group
Maxim Fedorov, WG chair, and Bram Verburg

What is the primary goal of the working group? Describe in reference to the community benefits.
This Working Group exists to identify security issues, and develop solutions, guidance, standards, technical mechanisms and documentation. Our goal is to bring together specialists and enthusiasts from across the ecosystem, and provide the community with a trusted source of information, raising awareness of security issues and best-practices. We want to provide collaboration space for the community, avoiding duplicated efforts.

How does the group determine what to focus on? Is there a way for the community to collaborate?
We use mailing list to discuss current issues, projects and approaches. Coining in new idea is as simple as starting a new thread. If an idea gets traction, it becomes a project. Every project has a person driving, with group members providing sanity checks, peer reviews and assessments. Periodic reports are encouraged to show progress and provide visibility letting non-members to discover the project. Due to the nature of the area we operate in, most projects are long-term initiatives, and we’d be happy to accept any help - be it source code, tests, exploits, proof-of-concepts, studies, or documentation. We’re looking for people willing to explain their use-cases, solutions and best practices.

What is the group currently focused on? Are there initiatives planned?
There are several projects in the active phase. One is TLS handshake improvements addressing concurrency issues with existing OTP crypto library. Another project targets supply chain security (hex.pm and build tools). Missing OCSP implementation may also present considerable interest for the community, both Erlang and Elixir. Yet another common issue would be passwords in clear text, often met in configuration files.

We’d also like to start documenting best practices, such as secure coding guidelines and deployment hardening recommendations.

Have long term initiatives been discussed? Describe based on priority and benefit.
Long-term, we plan the Group to take an active role in raising awareness of security issues at conferences, meetups, and through blog posts and papers. We also believe the group can play a role in vulnerability disclosure coordination, by accepting, reviewing and dispatching reports pertaining to key open source project.

How can the community help in supporting the group? Are there projects that need contributes or collaborators?
Join us, and help with projects already listed at https://github.com/erlef/security-wg/issues, or raise a new issue - and be prepared to lead the effort. If you’d like to participate in group discussions, please send a free-form join request to [security@erlef.org](mailto:security@erlef.org). If you’re not ready yet, [security@erlef.org](mailto:security@erlef.org) provides a simple bridge to the mailing list. An introductory email with personal background would be appreciated, with indication what project(s) you’d like to contribute to, and how.

What is the best way for the community to stay informed on the working group's initiatives?
Our mailing list is provided through Google Groups: [eef-security-wg@googlegroups.com](mailto:eef-security-wg@googlegeoups.com) . There is also a GitHub repository [https://github.com/erlef/security-wg](https://github.com/erlef/security-wg/issues) to track issues and provide collaboration space.


## Sponsor Testimonial - Why Do We Care?
------------------------------------------------------------
“We try to be involved directly with the technologies and tools we use to realize ambitious projects for our clients. While individual contributions are the foundation of successful open source projects, we believe institutions like the EEF are crucial for steering bigger initiatives and ensuring long term success – we hope we can contribute to that through our sponsorship.”

~ Marco Otte-Witte Managing Director @ simplabs
https://simplabs.com/


## Welcome Our Newest Sponsors
------------------------------------------------------------
Join us celebrating the three new sponsors that joined us this month: [Id3as](https://www.id3as.com/) , [Sfracta](https://www.sfractal.com/) & [ArcBlock](https://www.arcblock.io/en/) !
Show your support for the community, the BEAM languages, and the foundation itself by becoming a sponsor. [Join here](https://erlef.us20.list-manage.com/track/click?u=8d8ff4d9284d463c374e574bb&id=72bc111d02&e=f8785513ed) .


## Ecosystem News
------------------------------------------------------------
* [Honoring Our Fellows](https://erlef.org/news/fellowship/honoring-our-fellows)
* [Lumen Announced](https://www.youtube.com/watch?v=uMgTIlgYB-U)
* [Rebar 3 3.12.0 Released](https://github.com/erlang/rebar3/releases/latest)
* [ElixirConf EEF Updates](https://www.youtube.com/watch?v=NyBplIoH6z8) by Miriam Pena & Desmond Bowe


## See you Soon!
------------------------------------------------------------
Stay tuned for exciting updates about the EEF and the wider Ecosystem community.  The buzz is building and it's a great time to be working with this technology.  If you have any questions or things you'd like to see in this newsletter, please let us know at [marketing](mailto:marketing@erlef.org?subject=Newsletter%20Feedback&body=hi!%20I%20have%20some%20things%20to%20say%20about%20your%20newsletter%3A%0A%0A) !

Remember to follow us on Twitter (https://twitter.com/TheErlef) for news, updates, and more throughout the month!

Have a pleasant weekend!
- The Erlang Ecosystem Foundation
https://erlef.org

---

## File: priv/posts/newsletter/20191101214942_newsletter-4.md

{
  "title": "New Embedded Working Group, the EEF Joining the OW2 and Other News",
  "authors": ["EEF"],
  "slug": "newsletter-4",
  "category": "newsletter",
  "datetime": "2019-11-01T21:49:42.266975Z",
  "tags": ["newsletter"]
}
---

---
## In This Newsletter

We have an exciting slate of announcements this month as the EEF continues to grow internally with a new Embedded Working Group and world-wide as there’s now a BEAM Room at FOSDEM and the EEF has joined the OW2.


## BEAM Room at FOSDEM

We are really excited to announce that we will be having for the first time a Devroom at FOSDEM 2020 dedicated to the BEAM (and all languages running on it!). FOSDEM is a free conference dedicated to open-source software, and one of the largest in the world, with over 8000 people attending last year. This is the perfect venue for us to showcase the power of the BEAM and get even more people excited about it.

The Call for Talks is now open, and you can find it [here](https://beam-fosdem.org/). You can also follow the #beamfosdem hashtag on Twitter. Whether you’re submitting your talk proposal, or you’re just attending the event, we hope to see you in Brussels in February

The fosdem website is : [beam-fosdem.org](https://beam-fosdem.org)

## Working Group Water Cooler

**Name and Role in the Working Group**
Frank Hunleth, co-author of the Nerves project and co-founder of the Embedded Systems Working Group.

**What is the primary goal of the working group? Describe in reference to the community benefits.**
Our primary goal is to unify the efforts of the embedded systems projects in our community and to promote the BEAM languages and the Erlang VM as mature and viable technologies for building IoT and embedded projects.

**How does the group determine what to focus on? Is there a way for the community to collaborate?**
We meet every two weeks to discuss ongoing and new projects and post minutes at https://github.com/erlef/embedded-systems-wg/wiki. Our members are active in the Nerves and GRiSP communities so if you would like to collaborate, please reach out to one of us.

**What is the group currently focused on? Are there initiatives planned?**
While makers and hobbyists share their embedded Erlang and Elixir projects, many interesting industrial projects ship quietly under the radar. We're often asked where Erlang and Elixir are used, so we'd like to highlight these success stories in a central location. Our first project is to jointly create this project.

**Have long term initiatives been discussed? Describe based on priority and benefit.**
We have a number of development projects that we've discussed. We're initially looking at ones that benefit both embedded systems and the greater community such as faster Erlang VM startup.

**How can the community help in supporting the group? Are there projects that need contributors or collaborators?**
If you have deployed Erlang and Elixir in an commercial or industrial embedded system, please let us know.

**What is the best way for the community to stay informed on the working group's initiatives?**
Watch our [GitHub repository](https://github.com/erlef/embedded-systems-wg) for updates. We post summaries of all of our work and meetings there.

## Sponsor Testimonial: DockYard
"As advocates of open-source development that advances industries, we're thrilled to sponsor EEF," said Brian Carderella, Founder and CEO of DockYard. "Its community-oriented approach to growing a diverse Erlang and Elixir ecosystem will further the development of the next generation of innovative applications. DockYard is proud to support EEF in its mission to help propel the development community forward."

## OW2 Membership
We are now an official member of [OW2](https://twitter.com/ow2/status/1171770514563633153). OW2 is an “independent, global, open-source software community” whose mission “is to a) promote the development of open-source middleware, generic business applications, cloud computing platforms and b) foster a vibrant community and business ecosystem.” Check out more details about them [here](https://www.ow2.org/). It’s great to see the EEF work with more and organizations across the world.

## Ecosystem News
* Phoenix Phrenzy [Results](https://phoenixphrenzy.com/results)
* [Sbom](https://github.com/voltone/sbom) a mix task to generate Software Build of Materials for Embedded projects
* [Riak Core on Partisan Elixir Tutorial](http://marianoguerra.org/posts/riak-core-on-partisan-on-elixir-tutorial-introduction.html) by Mariano Guerra
* New chapters on the excellent and free [Adopting Erlang book](https://adoptingerlang.org/)

## See you Soon!
Stay tuned for exciting updates about the EEF and the wider Ecosystem community.  The buzz is building and it's a great time to be working with this technology.  If you have any questions or things you'd like to see in this newsletter, please let us know at _marketing@erlef.org_!

Remember to follow us on [Twitter](https://twitter.com/TheErlef) for news, updates, and more throughout the month!

Have a pleasant weekend!
- The Erlang Ecosystem Foundation

---

## File: priv/posts/newsletter/20210226003648_newsletter-5.md

{
  "title": "EEF Newsletter #5",
  "authors": ["eef"],
  "slug": "newsletter-5",
  "category": "newsletter",
  "tags": ["newsletter"],
  "datetime": "2021-02-26T00:36:48.362100Z"
}
---
---
## Board Elections 2021
------------------------------------------------------------

Are you interested in getting more involved with the Erlang Ecosystem Foundation? Maybe you'd like to help steer the community in new directions, or help drive it further. Maybe you think we could be doing things better. Or maybe what you really want to do is just to choose who you'd like to see doing that work.

In all cases, we come bearing good news for you. It is once again the time for the EEF board elections, and this is a great opportunity to make your voice heard, whether it is by running for a seat, learning about candidates, or making sure you can actually vote.

To know all the important dates, what a board member does, how to run, who might be replaced and by whom, head right away to https://erlef.org/news/eef/election-2021 where we've put all the relevant information.

Have a pleasant weekend!
- The Erlang Ecosystem Foundation

---

## File: priv/posts/sponsorship/20211011173618_meet-the-sponsors-dnsimple.md

{
  "title": "Meet the Sponsors - DNSimple",
  "authors": ["sponsorship"],
  "slug": "meet-the-sponsors-dnsimple",
  "category": "sponsorship",
  "tags": ["sponsorship", "meet-the-sponsors"],
  "datetime": "2021-11-08T02:11:40.475457Z"
}
---
Meet the sponsors - DNSimple
---

Welcome to **Meet the Sponsors**, a new blog posts series in which you will learn about our sponsors and why they decide to support this great community. Today we will get to know DNSimple. 
Enjoy it!






DNSimple provides a comprehensive API and web interface for domain management automation to customers around the world. Their vision is one where anyone, regardless of skill level, can register domains and connect them to the services they love without thinking about DNS.

They started using the BEAM in 2012: When transitioning from an existing open source name server written in C++, they investigated several possible languages for their implementation, and Erlang was the best fit for their needs. At present, their authoritative name server infrastructure is written in Erlang. Furthermore, they provide an Elixir open-source client for their API.

# About sponsoring the foundation

DNSimple decided to support our organization because they rely on Erlang for its name server infrastructure. They believe in the value of a strong and sustainable Erlang community and believe that one way they can support the community is by being a corporate sponsor of the Erlang Ecosystem Foundation.

They think the Foundation's best achievement to date would be the contributions to the Open Telemetry implementation in Erlang, which have already proven valuable, and hope the Erlang Ecosystem Foundation will continue to focus on tooling around Erlang and the BEAM to ensure it remains a strong technology for future use.

# A little more about DNSimple 

The company was founded in 2010, and is based in Melbourne, Florida. They have team members from a wide variety of locations around the world, including North and South America, Europe, Asia and Africa. Moreover, they've been fully remote since the beginning of the company.

At the present, they are hiring. So if you want to help them scale their systems, check out their [Job
board](https://dnsimple.com/jobs)!

For more information, take a look at their [website](https://dnsimple.com)

Our foundation is supported by the funding of our sponsors, and it is what allows us to carry out projects, marketing
initiatives, stipends programs, and accomplish the goals that we have established as an organization. So if you are
interested in becoming a sponsor, contact us at 
[sponsorship@erlef.org](mailto:sponsorship@erlef.org). We look forward to hearing from you!

---

## File: priv/posts/sponsorship/20220330011916_meet-the-sponsors-pharos.md

{
  "title": "Meet the Sponsors - Pharos Avantgard",
  "authors": ["sponsorship"],
  "slug": "meet-the-sponsors-pharos",
  "category": "sponsorship",
  "tags": ["sponsorship", "meet-the-sponsors"],
  "datetime": "2022-05-16T01:19:16.588541Z"
}
---
Meet the sponsors - Pharos Avantgard
---

Welcome to **Meet the Sponsors**, a new blog posts series in which you will learn about our sponsors and why they decide to support this great community. Today we will get to know Pharos Avantgard (Pty) Ltd. .
Enjoy it!






Pharos Avantgard is a supplier of advanced telecommunications solutions with a clear mission: To constantly improve their customer's ability to compete. 

Pharos’ founder got exposed to Erlang through a brief engagement with one Swedish company back in 2001. By 2002, it became obvious that Erlang presents a considerable competitive advantage for people who knew how to use it. 

After this, Pharos has based its home-grown technology almost exclusively on Erlang. They have developed numerous telco-grade products and frameworks using Erlang. This includes full MAP, CAMEL and DIAMETER protocol stacks, Time-Series Database (TSDB), as well as core GSM/LTE network elements such as EIR, GMLC, SMSC, USSD Gateway, Interworking systems  (e.g. CAMEL to DIAMETER, MAP to DIAMETER), and IP Log management solutions, etc.

# About sponsoring the foundation

For a long time, Pharos Avantgard has benefited from Erlang and they are grateful to have an opportunity to support a language and its environment that greatly contributed to their success.

They believe that Ericsson does an excellent job in keeping Erlang current and that the Foundation will remain true to this task by helping Ericsson support it in areas that might not be of interest to them (NOTE that they use the term Erlang instead of BEAM for they strongly believe that BEAM is best served with Erlang... Shaken, not stirred).

As for how the company plans to engage with our foundation, they have a strong desire (and some commercial projects) aimed at miniaturization of their frameworks and systems (e.g. embedding some of their systems to run as a part of Customer Premises Equipment, etc.). They are also considering the contribution of some of their commercial software (e.g. Time Series Database - TSDB etc.) should there be an interest in it.

Pharos would also like to see us focus specifically on Erlang, promoting it within the Elixir community.

# A little more about Pharos Avantgard

The company was founded in 1997 (and reborn in Erlang 2002), and its people are based in South Africa, primarily in Johannesburg, but also scattered around their beautiful country. 

Their software solutions span ready-for-market offerings as well as tailored services that are designed to complement existing infrastructure. They deliver real-time efficiencies and enhance their clients' ability to generate revenue. All of their solutions walk the fine line between innovation and relevance.

At the present, they are hiring. So if you want to help them scale their systems, check out their [Job
board](http://www.pharos-avantgard.com/careers.html)!

For more information, take a look at their [website](http://www.pharos-avantgard.com/)

Our foundation is supported by the funding of our sponsors, and it is what allows us to carry out projects, marketing
initiatives, stipends programs, and accomplish the goals that we have established as an organization. So if you are
interested in becoming a sponsor, contact us at 
[sponsorship@erlef.org](mailto:sponsorship@erlef.org). We look forward to hearing from you!

---

## File: priv/posts/sponsorship/20220601032619_meet-the-sponsors-emq.md

{
  "title": "Meet the Sponsors - EMQ",
  "authors": ["sponsorship"],
  "slug": "meet-the-sponsors-emq",
  "category": "sponsorship",
  "tags": ["sponsorship", "meet-the-sponsors"],
  "datetime": "2022-06-01T03:26:19.522998Z"
}
---
Meet the sponsors - EMQ
---

Welcome to Meet the Sponsors, a blog posts series in which you will learn about our sponsors and why they decide to support this great community. Today we will get to know EMQ Technologies Co., Ltd. Enjoy it!






EMQ is an open-source IoT data infrastructure software provider that delivers the world's leading cloud-native MQTT-based IoT messaging platform and streaming database. They provide a one-stop cloud-native solution for real-time IoT data connection, movement, processing, and analytics, from edge to cloud to multi-cloud.

# Why the BEAM

The founders of EMQ started developing telecom software using Erlang since 2006, for they are impressed with Erlang's concurrent soft real-time runtime system and the message passing architecture.

They use Erlang and Elixir to build their MQTT message broker [EMQX](https://www.emqx.com/en/products/emqx).
EMQX is an open-source project that has received over 9,000 stars on [GitHub](https://github.com/emqx/emqx). 

Starting from the 5.0 release, it is also released with Elixir runtime and the iex shell.

The EMQX team also open-sourced quite many other open-source Erlang projects, such as:

- [GitHub - emqx/mria: Async-ly replicated Mnesia database for Erlang/Elixir](https://github.com/emqx/mria]) - Bringing Mnesia scalability to the next level.
- [GitHub - emqx/emqtt: Erlang MQTT v5.0 Client](https://github.com/emqx/emqtt) - The MQTT client library for erlang.
- [GitHub - emqx/emqtt-bench: Erlang MQTT v5.0 Benchmark Tool](https://github.com/emqx/emqtt-bench) - An extremely lightweight and scalable benchmarking and stress testing tool for MQTT brokers.
- [GitHub - emqx/quic: QUIC Protocol for Erlang & Elixir](https://github.com/emqx/quic) - QUIC, the next-generation transport protocol for the BEAM.
- [GitHub - emqx/hocon: HOCON configuration Parser for Erlang/OTP](https://github.com/emqx/hocon) - Type-safe configuration management library.
 
A lot of EMQ’s customers are amazed by its capacity and scalability, which are the exact reasons why the EMQX project started off using Erlang/OTP. Today, it is serving over 100 million IoT devices globally.

In their recent scalability test, they managed to reach 100 million connections in one single cluster. Without the BEAM, this would have been a 30-years-harder mission to accomplish.

# About sponsoring the foundation

At EMQ, they use a lot of open-source libraries, including some of which are supported by the Erlang Ecosystem Foundation.
 
Furthermore, the breeze-like experience of using [setup-beam](https://github.com/erlef/setup-beam) in GitHub action was a great example of immediate benefit from the foundation.

We asked them what they think it’s our best achievement to date and they said that creating this platform for the community to work together is itself an amazing achievement, which has the most significant impact than any of the individual projects. In the future, they would like to see more creative work in build and packaging, observability, and security.

They believe that sponsoring the foundation, its mission of building a better community, and more open-source projects will, in the long run, benefit EMQ just like everyone else in the community.

# A little more about EMQ 

EMQ is headquartered in Hangzhou, with offices and teams across Asia-Pacific, Europe, and North America. 
Their flagship product EMQX is adopted by more than 20,000 enterprise users from over 50 countries, connecting more than 100 million IoT devices worldwide. Trusted by over 300 customers in a business-critical production environment, EMQ powers the future-proof IoT solutions and enterprise digital transformation.
EMQ is also contributing to the Erlang community by open-sourcing tools and libraries, and by sending bug reports and pull requests to the OTP team. They want to do better in community engagement, learning, and sharing.
 
For more information, take a look at their [website](https://www.emqx.io)

Our foundation is supported by the funding of our sponsors, and it is what allows us to carry out projects, marketing
initiatives, stipends programs, and accomplish the goals that we have established as an organization. So if you are
interested in becoming a sponsor, contact us at 
[sponsorship@erlef.org](mailto:sponsorship@erlef.org). We look forward to hearing from you!




---
Post excerpt goes here
---
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua

---

## File: priv/posts/sponsorship/20220627224514_meet-the-sponsors-binary-noggin.md

{
  "title": "Meet the Sponsors - Binary Noggin",
  "authors": ["sponsorship"],
  "slug": "meet-the-sponsors-binary-noggin",
  "category": "sponsorship",
  "tags": ["sponsorship", "meet-the-sponsors"],
  "datetime": "2022-06-27T22:45:14.580424Z"
}
---
Meet the sponsors - Binary Noggin
---

Welcome to **Meet the Sponsors**, a new blog posts series in which you will learn about our sponsors and why they decide to support this great community. Today we will get to know Binary Noggin.
Enjoy it!






Binary Noggin is a group of dedicated engineers that create customizable solutions. They believe that working in groups is the key to success. As a sample of that, they have great experience in pair programming and testing.

# Why the BEAM

Binary Noggin has been developing software using the BEAM since 2017. The journey began when Amos King, its founder, was working on a secure chat software that was originally written in Java and needed more effective methods and tools.Therefore, they
decided to move the server to Erlang.

In Joe Armstrong's book, Amos found the scalability, speed, simplicity, and resiliency of the new server code. This ignited a passion to learn more about Erlang and the BEAM.

# About sponsoring the foundation

Binary Noggin highlights the importance of spreading the word about the power of the BEAM to support the languages, projects, and the community around it, and that’s why they decided to support our organization. They want to give back to the BEAM community and to get to know their projects as well. That is also why Amos King is the host of [Elixir Outlaws](https://elixiroutlaws.com/), a place to debate about interesting things happening in Elixir.

They would like the whole community to see the support that the foundation provides to open source developers in the BEAM. They believe that having a growing community is the key to continue in this journey.

# A little more about Binary Noggin

Binary Noggin was founded in 2007 by Amos King. He is also the owner of Elixir Outlaw. Amos lives in Kansas City and would love to share street tacos with anyone from the community who comes to town!

For more information, take a look at their [website](https://binarynoggin.com/)

Our foundation is supported by the funding of our sponsors, and it is what allows us to carry out projects, marketing
initiatives, stipends programs, and accomplish the goals that we have established as an organization. So if you are
interested in becoming a sponsor, contact us at
[sponsorship@erlef.org](mailto:sponsorship@erlef.org). We look forward to hearing from you!

---

## File: priv/posts/sponsorship/20220804030804_meet-the-sponsors-erlang-solutions.md

{
  "title": "Meet the Sponsors - Erlang Solutions",
  "authors": ["sponsorship"],
  "slug": "meet-the-sponsors-erlang-solutions",
  "category": "sponsorship",
  "tags": ["sponsorship", "meet-the-sponsors"],
  "datetime": "2022-08-04T03:08:04.106388Z"
}
---
Meet the sponsors - Erlang Solutions
---

Welcome to **Meet the Sponsors**, a new blog posts series in which you will learn about our sponsors and why they decide to support this great community. Today we will get to know Erlang Solutions. Enjoy it!







Erlang Solutions build, maintain and improve reliable, fault-tolerant and massively scalable distributed systems using the BEAM for the world’s most ambitious companies. They focus on their three core pillars of in-depth technical capabilities, results-focused consultancy and a deep connection to the community to help their team, customers and the community grow successfully.

# Since the beginning

Francesco Cesarini, Founder and Technical Director of the Erlang Solutions, started working as an intern at Ericsson's computer science laboratory, where Erlang was invented. He was involved with the R1 release of OTP, using it on Ericsson’s fixed and mobile broadband solutions. In 1999, soon after Erlang was released as open source he founded Erlang Solutions to help more companies benefit from the out-the-box fault-tolerance and resilience of Erlang and the BEAM VM.

At Erlang Solutions, specialist consultants work on production systems with startups and the world's largest companies alike. They provide a variety of services from training and support to consultancy, prototyping and development. As a result, they work on a massive array of solutions, solving complex problems for leaders in industries such as fintech, healthcare, energy, social media and many more.

# About sponsoring the foundation

Erlang Solutions sees in the Foundation the best fit tool for many of modern computing's most common needs. They believed that as the Ecosystem grows with new killer applications, programming languages, frameworks and libraries, there is a great opportunity to further the adoption, increase developer happiness and really grow the use of Erlang-based technologies. Therefore, this situation will mean more reliable systems, less energy and physical infrastructure and a better computing environment.

The Erlang Solutions team has had a special role in the Embedded, Build and Packaging and Observability workgroups; chair the Sponsorship and Fellowship workgroups and sit on the board. Although they do so as private individuals, on behalf of the community, when necessary, they can pull the strings within Erlang Solutions, allowing the company to help where needed.

They highlight the excellent work being done by the working groups such as: the Security workgroup’s Secure Coding and Deployment Hardening Guidelines and all the contributions of the Build and Packaging workgroup. And a special mention is made to the Embedded and Machine learning workgroups, for bringing together a diverse community of people with common interests.

# Working together

Erlang Solutions share the foundation's passion for making the community a diverse and inclusive place. That is why they even partner to provide diversity spaces for a number of our conferences. As a result, 100's of young developers have been able to attend the conferences, learn and meet some of the most experienced developers in the community.

They believe that the diversity and inclusion tickets are one of the foundation’s best achievements because it allows users to attend conferences and training in person. Along those same lines, they show great support for the scholarships the Foundation has given for a wide range of tools, libraries and applications.

They would like the foundation to continue raising funds and giving them in the form of grants to the community to promote the ecosystem, help it grow and prosper. They are convinced that this will allow the tools to be top-notch, the BEAM to be secure, and to focus on areas that might not be relevant or important to Ericsson.

As part of the community, they would like to see a thriving space in the Erlang ecosystem, so they are happy to partner in most initiatives that make this happen. They also want the foundation to take over their binary packages, to get more information from the community.

# A little more about Erlang solutions

The Erlang Solutions team works completely remotely with people based all around the world. They have people working from London, Stockholm, Budapest, Krakow and The Americas. Actually, Francesco Cesarini has recently moved to Rome. Even more, Robert Virding (co-creator of Erlang) and Lukas Larsson (one of the core BEAM developers) are part of the team working from Sweden.

For more information, take a look at their [website](https://www.erlang-solutions.com/?utm_source=google&utm_medium=cpc&utm_campaign=&utm_content=&gclid=Cj0KCQjw2MWVBhCQARIsAIjbwoOtY_Pd4lmqhP9u4lUq8gBej7DhRTxIoFdaJBLVbte1VTX2BmZWGrQaAoa4EALw_wcB)

If you are interested in being part of their team, check out their [Job board](https://erlangsolutions.teamtailor.com/).

Our foundation is supported by the funding of our sponsors, and it is what allows us to carry out projects, marketing initiatives, stipends programs, and accomplish the goals that we have established as an organization. So if you are interested in becoming a sponsor, contact us at sponsorship@erlef.org. We look forward to hearing from you!

Our foundation is supported by the funding of our sponsors, and it is what allows us to carry out projects, marketing
initiatives, stipends programs, and accomplish the goals that we have established as an organization. So if you are
interested in becoming a sponsor, contact us at
[sponsorship@erlef.org](mailto:sponsorship@erlef.org). We look forward to hearing from you!

---

## File: priv/posts/sponsorship/20220913013824_meet-the-sponsors-avassa.md

{
  "title": "Meet the Sponsors - Avassa",
  "authors": ["sponsorship"],
  "slug": "meet-the-sponsors-avassa",
  "category": "sponsorship",
  "tags": ["sponsorship", "meet-the-sponsors"],
  "datetime": "2022-09-13T01:38:24.611865Z"
}
---
Meet the sponsors - Erlang Avassa
---

Welcome to **Meet the Sponsors**, a new blog posts series in which you will learn about our sponsors and why they decide to support this great community. Today we will get to know Avassa. Enjoy it!






Avassa helps businesses to manage the lifecycle of containerized applications efficiently, securely, and at the speed of their development pipeline. The idea for the company grew out of the founders experience from their most recent company, Tail-f, where they realized that many application teams lacked the tooling to manage containerized applications across their edge computing infrastructure. With their application orchestration platform for the edge, Avassa aims to unlock the cloud operating model for distributed edge environments.


# Why the BEAM

The founders of Avassa have been using Erlang since the early nineties when several of them were part of the Ericsson team that first developed and eventually open sourced Erlang. With a long history of building automation and orchestration platforms using Erlang, they decided to found Avassa in 2020. They use Erlang as a core technology for their distributed control plane in their application-centric edge cloud management platform.

They have had Erlang as the language of choice through several successful startups including Bluetail, Kreditor (now Klarna) and Tail-f. They recognized the profound value of Erlang first hand through applying it to a number of challenging problem domains across networking and application management.

# About sponsoring the foundation

The Avassa team believes that the value of and staying power of languages are created through community building and successful members of communities giving back when they can. They join the Foundation to educate the industry on Erlang-related topics and to contribute with their experience. Their commitment is such that one of Avassa's founders, Sebastian Strollo, is on the Erlang Ecosystem Foundation’s board of directors.

# A little more about Avassa

They are based out of Stockholm, Sweden and its engineering team includes developers with a long background in the Erlang community including Klacke Wikström, Johan Bevemyr, Sebastian Strollo and Martin Björklund.

If you are interested in being part of their team, check out their [Job board](https://careers.avassa.io/).

For more information, take a look at their [website](https://avassa.io/).

Our foundation is supported by the funding of our sponsors, and it is what allows us to carry out projects, marketing
initiatives, stipends programs, and accomplish the goals that we have established as an organization. So if you are
interested in becoming a sponsor, contact us at
[sponsorship@erlef.org](mailto:sponsorship@erlef.org). We look forward to hearing from you!

---

## File: priv/posts/wg/20190802222421_time-is-running-out.md

{
  "title": "Time is running out!",
  "authors": ["eef"],
  "slug": "time-is-running-out",
  "category": "eef",
  "tags": ["eef"],
  "datetime": "2019-07-17T22:24:21.605755Z"
}
---
---
… to become a Founding Sponsor After July 31st, 2019 we will be closing the door of opportunity for your company to become minted as a Founding Sponsor of the Erlang Ecosystem Foundation for all eternity. So what are you waiting for? Head on over to our sponsors page for more information.

---

## File: test/fixtures/markdown.md

# Markdown fixture

:thinking:

---

## File: .github/pull_request_template.md

- [ ] I acknowledge my contribution to the website does not assert comparative or superlative differences of one product, project, company or individual over another.

# Screenshots

Please attach screenshots and/or gifs of any visible changes to pages here.

---

## File: .github/workflows/main.yml

---
name: test
on:
  push:
    branches:
      - main
  pull_request:
    types: [opened, synchronize]

env:
  otp-version: '24.2.2'
  elixir-version: '1.13.3'
  MIX_ENV: test

jobs:
  build:
    name: Build
    runs-on: ubuntu-latest
    steps:
      - name: checkout
        uses: actions/checkout@v2
      - name: setup
        uses: erlef/setup-beam@v1
        with:
          otp-version: ${{ env.otp-version }}
          elixir-version: ${{ env.elixir-version }}
      - name: restore-deps
        uses: actions/cache@v1
        with:
          path: deps
          key: ${{ runner.os }}-mix-${{ hashFiles(format('{0}{1}', github.workspace, '/mix.lock')) }}
      - name: restore-build
        uses: actions/cache@v1
        with:
          path: _build
          key: ${{ runner.os }}-build-${{ hashFiles(format('{0}{1}', github.workspace, '/mix.lock')) }}
      - name: deps.get
        run: mix deps.get
      - name: compile
        run: mix compile --warnings-as-errors

  format:
    name: Format
    needs: build
    runs-on: ubuntu-latest
    steps:
      - name: checkout
        uses: actions/checkout@v2
      - name: setup
        uses: erlef/setup-beam@v1
        with:
          otp-version: ${{ env.otp-version }}
          elixir-version: ${{ env.elixir-version }}
      - name: restore-deps
        uses: actions/cache@v1
        with:
          path: deps
          key: ${{ runner.os }}-mix-${{ hashFiles(format('{0}{1}', github.workspace, '/mix.lock')) }}
      - name: restore-build
        uses: actions/cache@v1
        with:
          path: _build
          key: ${{ runner.os }}-build-${{ hashFiles(format('{0}{1}', github.workspace, '/mix.lock')) }}
      - name: format
        run: mix format --check-formatted

  sobelow:
    name: Sobelow
    needs: build
    runs-on: ubuntu-latest
    steps:
      - name: checkout
        uses: actions/checkout@v2
      - name: setup
        uses: erlef/setup-beam@v1
        with:
          otp-version: ${{ env.otp-version }}
          elixir-version: ${{ env.elixir-version }}
      - name: restore-deps
        uses: actions/cache@v1
        with:
          path: deps
          key: ${{ runner.os }}-mix-${{ hashFiles(format('{0}{1}', github.workspace, '/mix.lock')) }}
      - name: restore-build
        uses: actions/cache@v1
        with:
          path: _build
          key: ${{ runner.os }}-build-${{ hashFiles(format('{0}{1}', github.workspace, '/mix.lock')) }}
      - name: format
        run: mix sobelow --skip
  credo:
    name: Credo
    runs-on: ubuntu-latest
    needs: build
    steps:
      - name: checkout
        uses: actions/checkout@v2
      - name: setup
        uses: erlef/setup-beam@v1
        with:
          otp-version: ${{ env.otp-version }}
          elixir-version: ${{ env.elixir-version }}
      - name: restore-deps
        uses: actions/cache@v1
        with:
          path: deps
          key: ${{ runner.os }}-mix-${{ hashFiles(format('{0}{1}', github.workspace, '/mix.lock')) }}
      - name: restore-build
        uses: actions/cache@v1
        with:
          path: _build
          key: ${{ runner.os }}-build-${{ hashFiles(format('{0}{1}', github.workspace, '/mix.lock')) }}
      - name: credo
        run: mix credo

  dialyzer:
    needs: build
    name: Dialyzer
    runs-on: ubuntu-latest
    steps:
      - name: checkout
        uses: actions/checkout@v2
      - name: setup
        uses: erlef/setup-beam@v1
        with:
          otp-version: ${{ env.otp-version }}
          elixir-version: ${{ env.elixir-version }}
      - name: restore-deps
        uses: actions/cache@v1
        with:
          path: deps
          key: ${{ runner.os }}-mix-${{ hashFiles(format('{0}{1}', github.workspace, '/mix.lock')) }}
      - name: restore-build
        uses: actions/cache@v1
        with:
          path: _build
          key: ${{ runner.os }}-build-${{ hashFiles(format('{0}{1}', github.workspace, '/mix.lock')) }}
      - name: restore-plts
        uses: actions/cache@v1
        with:
          path: priv/plts
          key: ${{ runner.os }}-erlef-dialyzer-1-${{ env.otp-version }}-${{ env.elixir-version }}-${{ hashFiles(format('{0}{1}', github.workspace, '/mix.lock')) }}
      - name: dialyze
        run: mix dialyzer

  test:
    needs: build
    name: Test
    runs-on: ubuntu-latest

    services:
      postgres:
        image: postgres:11.5
        env:
          POSTGRES_USER: postgres
          POSTGRES_PASSWORD: postgres
          POSTGRES_DB: postgres
        ports:
          - 5432:5432
        options: --health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 5

    steps:
      - name: checkout
        uses: actions/checkout@v2
      - name: setup
        uses: erlef/setup-beam@v1
        with:
          otp-version: ${{ env.otp-version }}
          elixir-version: ${{ env.elixir-version }}
      - name: restore-deps
        uses: actions/cache@v1
        with:
          path: deps
          key: ${{ runner.os }}-mix-${{ hashFiles(format('{0}{1}', github.workspace, '/mix.lock')) }}
      - name: restore-build
        uses: actions/cache@v1
        with:
          path: _build
          key: ${{ runner.os }}-build-${{ hashFiles(format('{0}{1}', github.workspace, '/mix.lock')) }}
      - name: test
        run: mix test

--- METRICS ---
- Files Extracted: 41
- Estimated Token Budget: ~45385 tokens
- Recency Window: Active (< 180 days)
- Canonical Reference: https://codewiki.google/github.com/mainmatter/100-exercises-to-learn-rust
