Skip to content

Instantly share code, notes, and snippets.

@gabrielelana
Last active May 10, 2018 09:44
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save gabrielelana/fd1cd4eeacf3681604ae3f23a10832e9 to your computer and use it in GitHub Desktop.
Save gabrielelana/fd1cd4eeacf3681604ae3f23a10832e9 to your computer and use it in GitHub Desktop.
Descrizione del corso "What the BEAM: Introduction to the Erlang/Elixir Virtual Machine"
  • Title: What the BEAM: Introduction to the Erlang/Elixir Virtual Machine

  • Abstract: Per sfruttare al massimo Erlang/Elixir non é sufficiente conoscere il linguaggio, la semantica di questi linguaggi é indissolubilmente legata al loro runtime: la virtual machine BEAM. Un corso di due giorni per esplorare la BEAM, le sue carateristiche, come sfruttarla al meglio e cosa evitare. Il corso é rivolto a tutte quelle persone che hanno messo gli occhi su Erlang/Elixir e vogliono fare un passo avanti per poter realizzare software production ready.

  • What: Il corso durerá due giorni e sará strutturato come segue

    • Primo giorno
      • Overview sulla BEAM
      • Cosa è un nodo Erlang/Elixir
      • Processi
        • Cosa sono
        • Spawn di un processo
        • Link tra processi
        • Catene di processi
        • Gestire le eccezioni dei processi
        • Monitoring dei processi
        • Controllare i processi
      • Message Passing
        • Come scambiare informazioni tra processi
        • Pattern matching
        • Mail box
        • Time out
      • Scheduler (Overview)
        • Come funziona la gestione dei processi nella beam
        • Tuning della beam (Overview)
    • Secondo giorno
      • OTP
        • Cosa è
        • Che tipo di problemi risolve
        • Da erlang-base ad OTP
        • gen_server, sync e async calls
        • Supervisor e strategie
        • Let it crash, esempi reali
        • Controllare l'applicazione (Observer / reconn)
        • Controllare la memoria ed evitare errori comuni sui leak Il corso é pratico, per molti dei punti ci sono degli esercizi da fare, tutti gli esercizi possono essere scritti in Erlang o Elixir.
  • Requirements:

    • Esperienza, anche poca, con le applicazioni concorrenti.
    • Una minima esperienza di programmazione con Erlang/Elixir, é sufficiente la capacitá di scrivere semplici programmi.
    • Un portatile con un ambiente Erlang (versione >= 20) e/o Elixir installato e funzionante.
  • Who: Il corso verrà tenuto da Gabriele Santomaggio. Sviluppatore Erlang full time, RabbitMQ contributor e co-autore del libro "RabbitMQ Cookbook". Appassionato di applicazioni distribuite, messages broker e vino.

  • Why: Ho iniziato a programmare in Erlang nel 2008 scrivendo server per videogames, ho imparato presto che nel caso di Erlang/Elixir il linguaggio di programmazione é solo una piccola parte del tutto, ritengo un corso del genere necessario per fare un passo di qualitá, non solo per poter adeguatamente disegnare un'applicazione Erlang/Elixir ma per poterla portare in produzione in sicurezza. Volevo poter attingere dall'esperienza di Gabriele e cosí ho organizzato questo corso :-)

  • Price: Il corso è organizzato in modalità “community” ovvero il costo viene diviso equamente fra i partecipanti, il numero minimo di partecipanti è 6 per un costo totale a persona di 333/EUR, il numero massimo è 10 per un costo totale a persona di 200/EUR. Il pagamento dovrà essere effettuato durante il primo giorno di corso, vedi FAQ per i dettagli.

  • When: Sabato 09/06/2018 dalle 9:30 alle 17:00 e Sabato 16/06/2018 dalle 9:30 alle 17:00

  • Where: Mikamai/LinkMe, via Giulio e Corrado Venini, 42, 20127 Milano (MI). Il campanello è Mikamai, quando entrate proseguite dritto, attraversate il cortile interno del palazzo, vi trovate di fronte un portone di metallo con un foglio con scritto Mikamai, l'ufficio è all'ultimo (e unico) piano.

  • FAQ:

    • Che linguaggio di programmazione verrà utilizzato? É possibile utilizzare sia Erlang che Elixir.
    • Cosa devo portare? Un portatile con un ambiente Erlang (versione >= 20) e/o Elixir installato e funzionante.
    • Come ci organizziamo per il pranzo? Il pranzo non è compreso nel prezzo, per chi vuole possiamo prenotare in uno dei locali vicini o ordinare pizza a domicilio.
    • Ho bisogno della fattura, come faccio? Nessun problema, basta comunicarlo prima all’organizzatore fornendo tutti i dati necessari, la fattura verrà consegnata durante il primo giorno di corso.
    • Quando si paga?
      • Se non necessitate di fattura: in contanti durante il primo giorno di corso
      • Se necessitate di fattura: con bonifico nei primi giorni lavorativi successivi al primo giorno di corso
    • Perché di sabato? Per permettere ai dipendenti non sponsorizzati di poter partecipare senza doversi prendere giorni di ferie.

Per iscriversi o ulteriori informazioni scrivete direttamente all'indirizzo e-mail associato a questo account

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment