confengine.com Open in urlscan Pro
2a06:98c1:3121::7  Public Scan

Submitted URL: https://t.gistmail1.com/c/lLViTuwDA1yJGlipqchZnHnNn838cuw3/click?signature=9d10e6e1d8c226b5ae5066b74b10f85ce1c1f04a&url=...
Effective URL: https://confengine.com/conferences/functional-conf-2022/schedule/rich?cf_id=NvVGGo&utm_campaign=schedule&utm_content=sc...
Submission: On February 24 via api from US — Scanned from DE

Form analysis 2 forms found in the DOM

POST

<form id="waitlistForm" action="" method="post" class="form-horizontal" align="left">
  <input type="hidden" id="waitlist_entity_id" name="waitlist_entity_id" value="">
  <h4 style="text-align: left" id="waitlist_modal_title"></h4>
  <div class="card padding-lr-2 padding-bottom-2">
    <div class="col xs12 m6 margin-top-2">
      <div class="col xs12">
        <h5>Name<sup class="red-text">*</sup></h5>
      </div>
      <div class="col xs12">
        <input type="text" name="inputName" id="inputName" placeholder="Name" value="" required="">
      </div>
      <div class="clearfix"></div>
    </div>
    <div class="col xs12 m6 margin-top-2">
      <div class="col xs12">
        <h5>Email Address<sup class="red-text">*</sup></h5>
      </div>
      <div class="col xs12">
        <input type="email" name="inputEmail" id="inputEmail" placeholder="Email Address" value="" required="">
      </div>
      <div class="clearfix"></div>
    </div>
    <div class="clearfix"></div>
    <div class="col xs12 m6 margin-top-2">
      <div class="col xs12">
        <h5>Phone Number<sup class="red-text">*</sup></h5>
      </div>
      <div class="col xs12">
        <input type="text" name="inputPhone" id="inputPhone" placeholder="Your Phone Number" value="" maxlength="14" required="">
      </div>
    </div>
    <div class="col xs12 m6 margin-top-2">
      <div class="col xs12">
        <h5>City<sup class="red-text">*</sup></h5>
      </div>
      <div class="col xs12">
        <input type="text" name="inputCity" id="inputCity" placeholder="City" value="" required="">
      </div>
    </div>
    <div class="clearfix"></div>
  </div>
  <div class="modal-footer">
    <button id="cancel_waitlist_btn" class="btn-flat orange-text">Cancel</button>
    <button id="save_waitlist_btn" class="btn waves-effect waves-light success">Sign Up</button>
  </div>
</form>

POST

<form id="userQuestionForm" method="post" class="form-horizontal">
  <div class="control-group">
    <div class="margin-2">
      <h5>Need help? Send us a message...</h5>
    </div>
    <div>
      <textarea id="inputFAQUserQuestion" name="inputFAQUserQuestion" class="skip-tinymce" placeholder="Give feedback or ask for help" required="" minlength="3" rows="5" style="height: initial;"></textarea>
    </div>
    <div class="clearfix"></div>
    <div class="col xs12 m6 margin-top-2">
      <h5 class="no-margin">Name</h5>
      <div id="input_user_name_div">
        <input type="text" id="inputFAQUserName" required="" value="" placeholder="Enter your name here" maxlength="100" minlength="3">
      </div>
    </div>
    <div class="col xs12 m6 margin-top-2">
      <h5 class="no-margin">Email</h5>
      <div id="input_email_div">
        <input type="email" id="inputFAQUserEmail" required="" value="" placeholder="Enter your email here" maxlength="100" minlength="3">
      </div>
    </div>
    <div class="col xs12 margin-2 center">
      <button id="save_question_btn" class="btn waves-effect waves-light success margin-left" type="submit">
        <i class="material-icons notranslate va-top">send</i> Send <img class="hide middle" id="spinner" src="/static/assets/img/spin-green-0915957822.gif" alt="Spinner">
      </button>
    </div>
  </div>
</form>

Text Content

Cookie Policy
This website uses cookies to give you a seamless experience. Learn more
Got it!
menu
Program Schedule
 * 0 Cart arrow_drop_down
   
   * No items in cart

person Login

 * Functional Conf 2022
   
   
 * * language PROGRAM arrow_drop_down
     * storage Submissions
     * date_range Schedule
     * speaker_notes Interviews
     * video_library Videos
   * add_shopping_cart REGISTER
   * local_play SPONSORS
   * chat MINGLE
     0
   * face PEOPLE arrow_drop_down
     * record_voice_over Speakers
     * people_outline Program Committee
     * group_work Attendees
     * view_list Leaderboard
   * feedback SURVEYS
   * explore ABOUT arrow_drop_down
     * description Info
     * update Activity Log
     * show_chart Statistics
     * timer Timeline
 * 

 * person Login
 * subtitles My Passes
 * subtitles Account Balance
 * pages My Profile
 * developer_board My Events
 * assignment My Proposals
 * visibility My Watchlist
 * local_play My Sponsorships
 * notifications Notifications
 * 
 * power_settings_new Logout

search share
dns List View view_quilt Rich View




NAME*




EMAIL ADDRESS*





PHONE NUMBER*



CITY*



Cancel Sign Up

02:30 PM

ROSIE THE ROBOT OPERATING SYSTEM IN ERLANG

THEME : CODE BEAM LITE

NATALIA CHECHINA

CONSULTANT DEVELOPER

ERLANG SOLUTIONS

UNITED KINGDOM

LUCA SUCCI

CREATOR OF ROSIE

.

UNITED KINGDOM

Intermediate Session

PLACEZOOM

SCHEDULE 02:30 - 03:15 PM

Case Study

Robots are exciting. Lots of progress in robotics in terms of research, tools,
and state-of-the-art libraries that we see in modern robots became possible due
to Robot Operating System (ROS). It is the most popular open-source robotics
middleware that enables roboticists from both academia and industry to
collaborate and relatively easy get robots up and running. However, ROS is
neither scalable, nor fault-tolerant, and these are areas in which the Erlang
programming language has lots to offer.

In this talk, we'll introduce ROSiE (Robot Operating System integrating Erlang)
that merges togetherness and state-of-the-art of the open-source robotics world
with expertise in scalability and fault-tolerance of Erlang. We'll talk about
our vision, finds, and progress so far

content_paste View Details

DIRECT URL:

https://confengine.com/conferences/functional-conf-2022/schedule/rich#session-29756-info

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO   



04:00 PM

WHAT'S NEW IN GRADUALIZER? GRADUALLY TYPING ERLANG AND ELIXIR

THEME : CODE BEAM LITE

RADEK SZYMCZYSZYN

TECH LEAD

ERLANG SOLUTIONS KRAKÓW

POLAND

Beginner Session

PLACEZOOM

SCHEDULE 04:00 - 04:45 PM

Talk

Gradual typing is a bit like static typing, because it provides error messages
if your code has types and specs - and any errors, obviously. Gradual typing is
also a bit like dynamic typing, because it doesn't require all the functions to
have specs and just agrees when you say: "Trust me, I'm an engineer!"

Gradualizer, introduced at Code Beam Stockholm by Josef Svenningsson, is a
gradual typechecker for Erlang. I'll describe some changes, improvements, and
challenges we faced and managed to overcome in 2021. I'll also show how to type
check not only Erlang, but also Elixir code.

content_paste View Details

DIRECT URL:

https://confengine.com/conferences/functional-conf-2022/schedule/rich#session-29742-info

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO   



05:00 PM

MNESIA_ROCKSDB 2 - MNESIA BACKEND PLUGIN ON STEROIDS

THEME : CODE BEAM LITE

ULF WIGER

LEAD DEVELOPER

AETERNITY

SWEDEN

Intermediate Session

PLACEZOOM

SCHEDULE 05:00 - 05:45 PM

Talk

The Aeternity Core blockchain system has been using mnesia with the
mnesia_rocksdb backend plugin since it went live in 2017, and now handles a 100
GB database. In this talk, we talk about our experiences and present an
evolution of the mnesia_rocksdb plugin. In the new version, we introduce a new
API, allowing applications to use the fast RocksDb low-level API and its
advanced features, while respecting Mnesia metadata and even indexing support.
Mnesia-level and rocksdb-level access can coexist in the same system, with a bit
of care.

content_paste View Details

DIRECT URL:

https://confengine.com/conferences/functional-conf-2022/schedule/rich#session-29741-info

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO   



06:30 PM

LIVING THE XKCD 927 DREAM WITH OPENTELEMETRY 1.0

THEME : CODE BEAM LITE

GREG MEFFORD

PRINCIPAL FULL-STACK ENGINEER

STORD

UNITED STATES

Intermediate Session

PLACEZOOM

SCHEDULE 06:30 - 07:15 PM

Talk

Have you ever experienced vendor lock-in from your observability tooling? Don't
you wish you could instrument your code once and send telemetry data to multiple
vendors to see what their platforms have to offer before signing a contract and
investing a lot of engineering time?

The future is now, with OpenTelemetry!

OpenTelemetry has finally reached general availability, with the Erlang and
Elixir library leading the way as one of the first official implementations to
be compliant with this new industry specification. Now is the time to start
thinking about how to get your services instrumented using this exciting new
vendor-neutral instrumentation.

This talk will quickly cover the basics you need to know to get started and send
data to both open-source tooling and vendor platforms, so that you can get the
observability you need, without being locked into a specific vendor's
instrumentation library!

content_paste View Details

DIRECT URL:

https://confengine.com/conferences/functional-conf-2022/schedule/rich#session-29743-info

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO   



07:30 PM

DISTRIBUTED ELIXIR (LESSONS FROM HCA HEALTHCARE’S PROJECT WATERPARK)

THEME : APPLYING FP

BRYAN HUNTER

ENTERPRISE FELLOW

HCA HEALTHCARE

UNITED STATES

Intermediate Session

PLACEZOOM

SCHEDULE 07:30 - 08:15 PM

Keynote

At HCA Healthcare, we built Waterpark– a continuously available, geographically
distributed, high velocity Enterprise Integration Platform. We built it from
scratch in Elixir. Elixir and the ErlangVM are very powerful tools. Need to
model millions of things? No problem. Need processes to self-heal when things
break? No problem. Need to model millions of things that self heal on computers
scattered across a continent? Hmmm… for that you’ve got some work to do, but in
Elixir that work is very doable and fun. In this nuts-and-bolts session, we will
discuss the distributed computing bits that are in-the-box with Elixir and what
is missing. We will cover the missing bits that we built and “why”. Topics
include: hashing functions, distributed process registries, the mailroom
pattern, server topology, leader election, consensus, actor replication and
recovery, and hot code loading. 

content_paste View Details

DIRECT URL:

https://confengine.com/conferences/functional-conf-2022/schedule/rich#session-29714-info

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO  



 

CODE BEAM LITE

THU, MAR 24

TIMEZONE: ASIA/KOLKATA (IST)

14:00

OPENING TALK BY FRANCESCO CESARINI

SCHEDULE 02:00 - 02:20 PM (20 MINS)

14:30

add_circle

ROSIE THE ROBOT OPERATING SYSTEM IN ERLANG

schedule  02:30 - 03:15 PM IST place Zoom people 2 Interested
Intermediate Session

NATALIA CHECHINA

CONSULTANT DEVELOPER

ERLANG SOLUTIONS

UNITED KINGDOM

LUCA SUCCI

CREATOR OF ROSIE

.

UNITED KINGDOM


Case Study

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO   

15:30

TEA/COFFEE BREAK

SCHEDULE 03:30 - 04:00 PM (30 MINS)

16:00

add_circle

WHAT'S NEW IN GRADUALIZER? GRADUALLY TYPING ERLANG AND ELIXIR

schedule  04:00 - 04:45 PM IST place Zoom people 3 Interested
Beginner Session

RADEK SZYMCZYSZYN

TECH LEAD

ERLANG SOLUTIONS KRAKÓW

POLAND


Talk

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO   

17:00

add_circle

MNESIA_ROCKSDB 2 - MNESIA BACKEND PLUGIN ON STEROIDS

schedule  05:00 - 05:45 PM IST place Zoom people 1 Interested
Intermediate Session

ULF WIGER

LEAD DEVELOPER

AETERNITY

SWEDEN


Talk

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO   

18:00

EXPERIENCE REPORT

SCHEDULE 06:00 - 06:20 PM (20 MINS)

18:30

add_circle

LIVING THE XKCD 927 DREAM WITH OPENTELEMETRY 1.0

schedule  06:30 - 07:15 PM IST place Zoom people 2 Interested
Intermediate Session

GREG MEFFORD

PRINCIPAL FULL-STACK ENGINEER

STORD

UNITED STATES


Talk

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO   

19:30

add_circle

DISTRIBUTED ELIXIR (LESSONS FROM HCA HEALTHCARE’S PROJECT WATERPARK)

schedule  07:30 - 08:15 PM IST place Zoom people 2 Interested
Intermediate Session

BRYAN HUNTER

ENTERPRISE FELLOW

HCA HEALTHCARE

UNITED STATES


Keynote

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO  

09:00 AM

THE ESSENCE OF FUNCTIONAL PROGRAMMING

THEME : FP BOOTCAMP

RICHARD FELDMAN

HEAD OF TECHNOLOGY

NOREDINK

UNITED STATES

Beginner Session

PLACEZOOM

SCHEDULE 09:00 - 09:45 AM

Keynote

This talk dives into the origins of functional programming, going all the way
back to where the term was first introduced, to see how it evolved over time
into our modern understanding of what FP essentially involves.

content_paste View Details

DIRECT URL:

https://confengine.com/conferences/functional-conf-2022/schedule/rich#session-29699-info

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO  



11:00 AM

FP IS THE NEW OOP

THEME : APPLYING FP

MICHAEL SNOYMAN

VP, ENGINEERING

FP COMPLETE

ISRAEL

Intermediate Session

PLACEZOOM

SCHEDULE 11:00 - 11:45 AM

Talk

Many of us in the functional programming community believe that FP is a
significant improvement over object oriented programming, arguably the dominant
programming paradigm today. That of course begs the question: how did an
inferior paradigm grab so much mindshare and market share and rise to
prominence? I'm going to tell the story a bit differently, exploring a different
take on the strengths of OOP, and how that affects those of us who advocate for
functional programming.

content_paste View Details

DIRECT URL:

https://confengine.com/conferences/functional-conf-2022/schedule/rich#session-29704-info

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO   



11:00 AM

NATURE-INSPIRED OPTIMIZATION ALGORITHMS WITH F#

THEME : APPLYING FP

JOHN AZARIAH

PRINCIPAL SDE

MICROSOFT

AUSTRALIA

Intermediate Session

PLACEZOOM

SCHEDULE 11:00 - 11:45 AM

Talk

Quantum Computing is all the rage these days, but, as an emerging technology,
it's difficult to find practical applications right away. One area which allows
us to invest in a quantum future is to use quantum- and nature- inspired
optimization algorithms, which can run on classical computing infrastructure
today and leverage quantum hardware when it is available.

In this talk, I'd like to give a short overview of the state of the art in
quantum computing, and introduce two widely used optimization algorithms made
better in F# with functional principles.

content_paste View Details

DIRECT URL:

https://confengine.com/conferences/functional-conf-2022/schedule/rich#session-29748-info

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO   



11:00 AM

OCAML PLATFORM IN 2022

THEME : FP BOOTCAMP

SUDHA PARIMALA

SOFTWARE ENGINEER

SEGFAULT SYSTEMS

INDIA

Beginner Session

PLACEZOOM

SCHEDULE 11:00 - 11:45 AM

Demonstration

OCaml - a functional programming language from the ML family, recently
celebrated its 25th year. For a language to be around for that long is an
achievement in itself. Furthermore, people are actively working on adding
exciting features to the language and its ecosystem.

Thanks to efforts from various developers and maintainers, the OCaml developer
platform has come a long way and continues to evolve at a rapid phase. My talk
will cover all the existing tooling that makes a OCaml developer's life easy.

The talk will demonstrate end-to-end state-of-the-art developer tooling, right
from installing a OCaml compiler, using VSCode and vscode-ocaml-platform which
provides IDE like features, to publishing a library and its documentation.

content_paste View Details

DIRECT URL:

https://confengine.com/conferences/functional-conf-2022/schedule/rich#session-29700-info

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO  



12:00 PM

FUNCTIONAL PROGRAMMING PATTERNS FOR DESIGNING MODULAR ABSTRACTIONS

THEME : APPLYING FP

DEBASISH GHOSH

PRINCIPAL SOFTWARE ENGINEER

LEADIQ

INDIA

Intermediate Session

PLACEZOOM

SCHEDULE 12:00 - 12:45 PM

Talk

The biggest power of functional programming comes from the ability to treat
functions as first class objects and the power to compose them incrementally to
evolve larger functions out of smaller ones. Designing such functions as
referentially transparent enables us to treat functions in programming just like
functions in mathematics - side-effects are carefully abstracted through
“effects” and delayed till the algebra of our program gets submitted to the run
time system.

 

In this talk I will discuss a few idioms and patterns on how using the power of
composition can lead to development of modular abstractions. Instead of
committing to an implementation prematurely we can define abstractions that
focus on “what” it does deferring the “how” part to later stages of the
lifecycle. In functional programming terminology we call the “what” part the
algebra of our abstraction, and the “how” part the interpreter. Decoupling the
two is one of the basic recommendations in functional programming. 

 

I will use Haskell and Scala for the examples. I will discuss common
functionalities that we use everyday in programming our domain models like
validations, database interactions, managing exceptions, talking to external
services etc. and show how to use the power of typed functional programming to
make them more compositional.

content_paste View Details

DIRECT URL:

https://confengine.com/conferences/functional-conf-2022/schedule/rich#session-29705-info

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO  



12:00 PM

BEYOND: CROSSING THE PLATFORM BOUNDARIES WITH F# AND FABLE

THEME : APPLYING FP

ALFONSO GARCIA-CARO

SOFTWARE DEVELOPER

FREELANCER

JAPAN

Beginner Session

PLACEZOOM

SCHEDULE 12:00 - 12:45 PM

Talk

Fable is an F# to JS compiler that has been successfully used in production by
thousands of developers for more than 5 years. Thanks to steady improvements and
a great community and ecosystem, including the SAFE stack, the Elmish
architecture and the Feliz React API, it has become one of the best options to
write robust, succinct and performant web applications nowadays.

Fable was originally designed to integrate F# with the JS ecosystem instead of
trying it to hide it. With this same philosophy, the Fable team is working now
to target other languages beyond .NET and JS. There are already working
prototypes to compile F# into Php, Python and Rust code, and we expect to
release a beta in the upcoming months. Let's see how Fable 4 will further
empower F# and functional programmers!

content_paste View Details

DIRECT URL:

https://confengine.com/conferences/functional-conf-2022/schedule/rich#session-29708-info

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO   



12:00 PM

SNIPPETS FROM AN ALGORITHMIC TRADING SYSTEM IN KOTLIN

THEME : APPLYING FP

DHANANJAY NENE

PROGRAMMER ON A BREAK, FINANCIAL MARKETS TRADER

DHANANJAY NENE

INDIA

Intermediate Session

PLACEZOOM

SCHEDULE 12:00 - 12:45 PM

Talk

This talk will introduce the audience to algorithmic trading, the design of an
algorithmic trading system, and various snippets written in Kotlin that fulfil
specific tasks that collectively contribute towards a full trading system. The
rough sketch will be as follows

content_paste View Details

DIRECT URL:

https://confengine.com/conferences/functional-conf-2022/schedule/rich#session-29703-info

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO   



02:00 PM

FAMILIARITY OR GUARANTEES? FUNCTIONAL PROGRAMMING FOR THE FRONT-END

THEME : APPLYING FP

LUCA MUGNAINI

SOFTWARE ENGINEER

RAKUTEN

JAPAN

Beginner Session

PLACEZOOM

SCHEDULE 02:00 - 02:20 PM

Experience Report

In the front-end world, we finally can take an important decision: Familiarity
or Guarantees?

Do we keep using frameworks that are familiar to JavaScript (bringing with them
all JS idiosyncrasies) or do we embrace a world of guarantees where functions
are pure, data is immutable, types are correct, and runtime exceptions don’t
exist?

In Rakuten, we went the way of guarantees three years ago, choosing Elm.

In this talk, I am going to explain what are the benefits of Elm in the
front-end, and what was our experience.

I will showcase examples, best practices, things that we liked, and things that
we didn't like.

content_paste View Details

DIRECT URL:

https://confengine.com/conferences/functional-conf-2022/schedule/rich#session-29716-info

THEATERS SLIDES   

VIDEO_LIBRARY VIDEO   



02:00 PM

N WAYS TO FIZZBUZZ IN CLOJURE

THEME : FP BOOTCAMP

ADITYA ATHALYE

CHIEF EVAL-APPLY OFFICER

EVALAPPLY.ORG

INDIA

Beginner Session

PLACEZOOM

SCHEDULE 02:00 - 02:20 PM

Demonstration

FizzBuzz is back in fashion! Everybody is doing it again (and again, and again).
So I figured why should I miss out on the action?

Why not use (and abuse) as many features as possible, of my favourite FP
language Clojure, to FizzBuzz in as many ways as I can possibly muster?

Why not up the ante by leaking the four other ways I discovered so far? And why
not make it harder on myself by committing to spectacular public failure if I
can't find more? Why. Not?!

So here we are...

(def range-of-fizzbuzzees (range 1 101))

(def fizbuzz map)

(= (fizzbuzz canonical-fizbuzzer
             range-of-fizzbuzees)
   (fizzbuzz or-fizbuzzer
             range-of-fizzbuzees)
   (fizzbuzz juxt-fizbuzzer
             range-of-fizzbuzees)
   (fizzbuzz lookup-fizbuzzer
             range-of-fizzbuzees)
   (fizzbuzz (fn [f n] (f n))
             cyclical-fizbuzzer
             range-of-fizzbuzees))

The chase has begun! Who knows what will happen?

WITNESS ME.



content_paste View Details

DIRECT URL:

https://confengine.com/conferences/functional-conf-2022/schedule/rich#session-29701-info

THEATERS SLIDES   

VIDEO_LIBRARY VIDEO  



02:00 PM

EXPERIENCE REPORT

THEME :


Session

PLACEZOOM

SCHEDULE 02:00 - 02:20 PM

Event
content_paste View Details

DIRECT URL:

https://confengine.com/conferences/functional-conf-2022/schedule/rich#session-29740-info

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO  



02:30 PM

DO WE REALLY DO FP IN JAVA?

THEME : APPLYING FP

BEN EVANS

SENIOR PRINCIPAL ENGINEER

RED HAT

SPAIN

Beginner Session

PLACEZOOM

SCHEDULE 02:30 - 03:15 PM

Talk

Many Java developers believe that FP arrived in Java 8, with the addition of
first-class lambda expressions and the Streams API. But is this really true? In
this talk, Ben Evans will talk about what FP really is, examine whether Java can
really be said to be FP or not - and consider whether things have improved with
more recent versions, as well as some possibilities of how we could have done
things differently (in another world).

content_paste View Details

DIRECT URL:

https://confengine.com/conferences/functional-conf-2022/schedule/rich#session-29707-info

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO   



02:30 PM

RETARGETING F# FOR THE WEB: FROM JS TO WEBASSEMBLY

THEME : APPLYING FP

ADAM GRANICZ

CEO

INTELLIFACTORY

HUNGARY

Advanced Session

PLACEZOOM

SCHEDULE 02:30 - 03:15 PM

Talk

WebSharper is an open-source full-stack, functional-first web framework for F#
and C# that runs on top of ASP.NET Core. It features F# and C# transpilers to
JavaScript, extensible bindings to JavaScript libraries, and various server and
client-side abstractions (MVU, reactive HTML, etc.) for type-safe web
development. In this session, I’ll walk through some of the basics that make
WebSharper an immensely productive tool to develop microservices, SPAs, and
full-stack client-server applications in your favourite .NET language, and cover
how you can combine and/or migrate some of your WebSharper apps to run in
WebAssembly with Bolero, a set of F# web abstractions for Blazor.
Functional-first .NET web development has never been easier!

content_paste View Details

DIRECT URL:

https://confengine.com/conferences/functional-conf-2022/schedule/rich#session-29711-info

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO   



02:30 PM

TYPESCRIPT'S TYPE SYSTEM - FROM SOLVING PUZZLES TO PROVING FACTS OF PROGRAM

THEME : APPLYING FP

DAMODHARAN JAYACHANDRAN

MEMBER LEADERSHIP STAFF

ZOHO

INDIA

Beginner Session

PLACEZOOM

SCHEDULE 02:30 - 03:15 PM

Demonstration

Typescript has gained a lot of traction with majority of javascript frameworks
adopting it and gaining the power of static types.

Given the Typescript types are a language themselves and they are Turing
complete, lets put our type flavoured favourite language of the web to test -
for fun & profit.

With the advent of fp-ts, typescript's boundary to statically type FP algebras
like Functor, Monoid & Monad are just a import away!.

But why restrict ourselves when we can achieve more with almost "Dependent
types" in typescript - Like solving logical puzzles to proving properties of the
program (like type level regex check, indexed list & matrices etc) for
correctness.

content_paste View Details

DIRECT URL:

https://confengine.com/conferences/functional-conf-2022/schedule/rich#session-29720-info

THEATERS SLIDES   

VIDEO_LIBRARY VIDEO   



04:00 PM

WRITING GREAT TESTS WITH HASKELL

THEME : APPLYING FP

EVIE CIOBANU

SENIOR HASKELL ENGINEER

HASURA

ROMANIA

Intermediate Session

PLACEZOOM

SCHEDULE 04:00 - 04:45 PM

Talk

Program correctness has always been an important topic in computer science, and
is only showing growth as software becomes more complex. Statically typed
functional programming provides compiler guidance and guarantees. Advanced
typing features can provide additional ways to restrict and formally prove
properties within the constraints of the original program.

This has even (half-seriously) popularized remarks about how it's enough to get
a program to compile to be sure it is correct. While there is some degree of
truth to this (Haskell programs can escape some classes of bugs by merely
enabling all warnings and having a reasonable coding standard in place), this is
obviously not true for all but most trivial software.

Formal verification can help whenever that is not possible, but it is still
impractical for all but small and critical systems. We still rely on writing
automated unit, property, and integration tests to ensure our programs behave in
the way we expect them.

At Hasura, we run these tests automatically in continuous integration (CI)
services, and they often take up the majority of CI time. We dedicate a
significant amount of time writing and maintaining these tests.

What is a good test? How do we write good tests? How do we organize them? What's
important to consider when writing tests?

I describe common patterns and recommended style guides for writing tests that
optimize for ease of reading and understanding rather than writing or modifying.
It should be apparent what it is that we're testing, what are the assumptions of
the test, what is being set up or arranged before the test, as well as what it
is we are testing and what is the expected response. We should strive to
maximize the domain information and minimize accidental complexity, such as
particularities of the testing framework or programming language we're using.

In a language as expressive as Haskell, we should be able to write unit and
integration tests that are understandable and modifiable by domain experts (such
as power users or product owners), not only Haskell developers.

This can generally be achieved by focusing on getting the domain-specific data
together in a record, thus making the test-relevant information easily readable
and understandable.

content_paste View Details

DIRECT URL:

https://confengine.com/conferences/functional-conf-2022/schedule/rich#session-29747-info

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO  



04:00 PM

TYPE CLASSES IN SCALA 3

THEME : APPLYING FP

AYUSH MITTAL

SOFTWARE ENGINEER

ING NETHERLANDS

NETHERLANDS

Intermediate Session

PLACEZOOM

SCHEDULE 04:00 - 04:45 PM

Talk

Type classes are a powerful tool in functional programming to enable ad-hoc
polymorphism without using object orientated programming based constructs like
sub typing. In this talk we look at how to create type classes using Scala 3
constructs such as ‘Givens’ and ‘Extension’ methods.

content_paste View Details

DIRECT URL:

https://confengine.com/conferences/functional-conf-2022/schedule/rich#session-29726-info

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO  



04:00 PM

WHY APL IS A LANGUAGE WORTH KNOWING

THEME : APPLYING FP

RODRIGO GIRÃO SERRÃO

CONSULTANT

DYALOG

PORTUGAL

Beginner Session

PLACEZOOM

SCHEDULE 04:00 - 04:45 PM

Talk

“A language that doesn't affect the way you think about programming, is not
worth knowing.” ― Alan Perlis, in “Epigrams in Programming”

Following Alan Perlis's words, this talk will show why APL is a language worth
knowing. In other words, I will devote the talk to showcasing characteristics of
APL that are likely to, on the one hand, influence the way you use other
programming languages, and, on the other hand, understand concepts of computer
science.

By listening to this talk, I hope to convince you that learning a language that
is radically different from all the other languages you know isn't harmful.
Learning a language that is radically different from all other languages you
know won't scatter your knowledge or spread your brain too thin. In fact,
learning a language that is radically different from all other languages you
know will cement your programming  knowledge, helping you build bridges between
topics you didn't even know were connected.

To drive my point home, we take a closer look at two characteristics of APL: the
fact that Boolean values are represented by the integers 0 and 1, and the fact
that APL is an array-oriented language. In studying these two things, we draw
connections to the traditional if statement and to list comprehensions,
deepening our understanding of those.

content_paste View Details

DIRECT URL:

https://confengine.com/conferences/functional-conf-2022/schedule/rich#session-29709-info

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO  



05:00 PM

PROPERTY-BASED TESTING - LET YOUR TESTING LIBRARY WORK FOR YOU

THEME : APPLYING FP

MAGDA STOŻEK

SOFTWARE DEVELOPER

SOFTWAREMILL

POLAND

Beginner Session

PLACEZOOM

SCHEDULE 05:00 - 05:45 PM

Talk

Don't ask what you can do for your testing library, ask what it can do for you!
So what can it do? It turns out that much more than displaying a nice green and
red report. What if we make the library generate the test data? And while we're
at it, maybe it could also think of the edge cases for which our code is wrong?
Oh, and when it finds them, it should simplify them a bit before returning to
us, so that we can quickly identify the root cause of the problem. And repeat
that a thousand times, just to be sure. Sounds good? That's exactly what
property-based testing has to offer. I'll show how to get started with this kind
of testing, using jqwik (https://jqwik.net/) as an example. But isn't it all too
good to be true, surely there's some fine print? Of course there is. I'll cover
that as well.

content_paste View Details

DIRECT URL:

https://confengine.com/conferences/functional-conf-2022/schedule/rich#session-29712-info

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO   



05:00 PM

MULTIPLAYER ONLINE GAME IN CLOJURE: ATTACK OF THE CLONES

THEME : APPLYING FP

MEY BEISARON

SOFTWARE ENGINEER, BACKEND DEVELOPER

FORTER

ISRAEL

Beginner Session

PLACEZOOM

SCHEDULE 05:00 - 05:45 PM

Demonstration

When I say "Multiplayer online game development in Clojure" 2 questions probably
pop right up : WHY? HOW?
Why? because you can do it in under 100 lines of code, and it is pure FUN.
How? Well that's exactly what we'll talk about in this session.
I will present a simple MOG written in Clojure and go through each line of code
- so you'll understand how you can do that yourself, even if you've never
written a single line of Clojure before.
Whether you’re a real Clojurian at heart or just interested in hearing a talk
about Clojure from a sworn star wars fan - this talk is for you :)

content_paste View Details

DIRECT URL:

https://confengine.com/conferences/functional-conf-2022/schedule/rich#session-29750-info

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO   



05:00 PM

INTERPRET YOUR MONADS! - CONCRETE MONADS VS MONAD CLASSES

THEME : APPLYING FP

AUKE BOOIJ

HASKELL ENGINEER

HASURA

SWITZERLAND

Intermediate Session

PLACEZOOM

SCHEDULE 05:00 - 05:45 PM

Talk

Concrete monads or monad classes? I’ll tell you why it often makes sense to jump
around between these options, and where this comes from.

Monads are the central notion to encode a program with effects in Haskell.
Nowadays, we often combine several monad transformers to create the desired
effect stack, relying on mmorph to juggle effects as required. But in fact,
monad transformers and monad morphisms are just as old as monads in functional
programming, an idea first published in 1989.

We can still benefit from that old work. The core of this talk is to discuss
monads which are initial objects in the sense of category theory. Practically,
this means that such monads can be interpreted in a class of other monads.
Perhaps the most well-known example of such initial monads is Either e, which
can be interpreted in any monad that instantiates MonadError e, through the use
of liftEither.

This general principle of monad interpretation is exactly what allows us to jump
around between concrete monads and monad classes. Monad interpretation can
sometimes give a free performance boost, and can be used to easily write Haskell
Arrows code without Arrow syntax.

content_paste View Details

DIRECT URL:

https://confengine.com/conferences/functional-conf-2022/schedule/rich#session-29746-info

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO  



06:00 PM

LESSONS LEARNED FROM 15 YEARS OF SCALA IN THE WILD

THEME : APPLYING FP

DEAN WAMPLER

DIRECTOR OF ENGINEERING

IBM RESEARCH

UNITED STATES

Advanced Session

PLACEZOOM

SCHEDULE 06:00 - 06:45 PM

Keynote

Scala 3 was introduced last year. It introduced significant changes to the
language, many of which were motivated by the lessons learned from the past 15
or so years of actual use in many open-source and commercial applications.

I'll explore these lessons and how Scala 3 addresses them. Many revolve around
the pros and cons of implicits. Also, changes to the type system make it more
"regular", robust, and expressive. Finally, the new, optional, and controversial
"Python-like" syntax promotes even more brevity. It also acknowledges how
influential and pervasive Python has become across our industry.

But there are many practical areas where future work is required, many of which
are larger than the scope of Scala itself. We still live in "dependency hell".
We still use too many obsolete idioms that hide accidental complexity, rather
than forcing us to fix it. What should we do about these issues? 

content_paste View Details

DIRECT URL:

https://confengine.com/conferences/functional-conf-2022/schedule/rich#session-29715-info

THEATERS SLIDES   

VIDEO_LIBRARY VIDEO  



07:00 PM

CLOJURE THROUGH THE LENS OF MUSIC

THEME : APPLYING FP

DAVE YARWOOD

SENIOR SOFTWARE ENGINEER

KEVEL

UNITED STATES

Intermediate Session

PLACEZOOM

SCHEDULE 07:00 - 07:45 PM

Talk

You may be familiar with what map, filter, and reduce do. But have you ever
heard how these functions sound?

The Alda language is centered around the idea that music can be represented as
data. alda-clj is a Clojure library that maps Clojure data structures to the
music theory concepts in the Alda language, including notes and chords. The
library serves as an interface that takes Clojure code as input and produces
music as output.

In addition to the basic functions that you will find in the standard libraries
of most functional programming languages, Clojure's standard library offers a
wealth of interesting and useful functions that facilitate working with
immutable data. In this talk, we will explore the Clojure standard library by
applying interesting functions like cycle, mapcat, partition and reductions to
transform data that represents music. Using the alda-clj library, we will not
only see the result of each function call, we will also hear the results and
observe how they can help us understand how each function works.

content_paste View Details

DIRECT URL:

https://confengine.com/conferences/functional-conf-2022/schedule/rich#session-29745-info

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO   



07:00 PM

COSY, EVOLVED FROM APL VIA K IN OPEN FORTH

THEME : APPLYING FP

BOB ARMSTRONG

SOLE PROPRIETOR

COHERENT SYSTEMS (COSY)

UNITED STATES

Intermediate Session

PLACEZOOM

SCHEDULE 07:00 - 07:45 PM

Talk

CoSy is a new paradigm in computing language and interface . CoSy implements the
abstractions of APL , evolved from the notation of applied mathematics ,
winnowed thru K , in open Forth . Forth is uniquely minimal and open to the
underlying hardware . In fact a Forth processor takes up just a small amount of
space on an FPGA .  All in an computational notebook , log , environment for
dealing with the everyday business of life , written itself in CoSy .

While at the two poles of the computing language spectrum , APL and Forth share
a number of attributes :

 * Both are interactive and interpretive at the user level .
 * Both are oriented for the creation of words , vocabulary , which work
   together in sentences .
 * Both are functional : words are generally structured take the result of
   previous words and return results to be used by following words .
 * Both tend to be extremely succinct . Definitions are delimited by just a
   single character .
   * K |  name : { def ... }
   * Forth |  : name  def ... ;

Forth's goal is the minimal vocabulary necessary to create a dictionary capable
of extending itself .
It is as simple as language can be :

 * a ` word is any non blank string of characters .
   Space is the prime delimiter .
 * The syntax is noun noun verb aka: RPN

CoSy adds plurals to Forth .

 * all nouns are lists . At the Forth level they have a 3 cell header
   `( Type Count refCount )` 
   Lists are allocated . When  ` refCount returns to 0 they are freed .
 * Indexing is modulo -- like counting on your thumb & fingers : 0 1 2 3 4 0

CoSy's next step is attracting the fresh heads and resources to clean it up in a
Forth available across the various current chips and operating systems , and to
interface thru browsers and the Web

content_paste View Details

DIRECT URL:

https://confengine.com/conferences/functional-conf-2022/schedule/rich#session-29744-info

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO   



07:05 PM

CASE STUDY

THEME :


Session

PLACEZOOM

SCHEDULE 07:05 - 07:50 PM

Event
content_paste View Details

DIRECT URL:

https://confengine.com/conferences/functional-conf-2022/schedule/rich#session-29754-info

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO  



 

APPLYING FP

FRI, MAR 25

09:00

add_circle

THE ESSENCE OF FUNCTIONAL PROGRAMMING

schedule  09:00 - 09:45 AM IST place Zoom people 2 Interested
Beginner Session

RICHARD FELDMAN

HEAD OF TECHNOLOGY

NOREDINK

UNITED STATES


Keynote

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO  

10:00

WELCOME AND CONFERENCE OVERVIEW

SCHEDULE 10:00 - 10:20 AM (20 MINS)

10:30

COFFEE/TEA BREAK

SCHEDULE 10:30 - 11:00 AM (30 MINS)

11:00

add_circle

FP IS THE NEW OOP

schedule  11:00 - 11:45 AM IST place Zoom people 1 Interested
Intermediate Session

MICHAEL SNOYMAN

VP, ENGINEERING

FP COMPLETE

ISRAEL


Talk

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO   

add_circle

NATURE-INSPIRED OPTIMIZATION ALGORITHMS WITH F#

schedule  11:00 - 11:45 AM IST place Zoom
Intermediate Session

JOHN AZARIAH

PRINCIPAL SDE

MICROSOFT

AUSTRALIA


Talk

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO   

add_circle

OCAML PLATFORM IN 2022

schedule  11:00 - 11:45 AM IST place Zoom people 1 Interested
Beginner Session

SUDHA PARIMALA

SOFTWARE ENGINEER

SEGFAULT SYSTEMS

INDIA


Demonstration

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO  

12:00

add_circle

FUNCTIONAL PROGRAMMING PATTERNS FOR DESIGNING MODULAR ABSTRACTIONS

schedule  12:00 - 12:45 PM IST place Zoom people 1 Interested
Intermediate Session

DEBASISH GHOSH

PRINCIPAL SOFTWARE ENGINEER

LEADIQ

INDIA


Talk

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO  

add_circle

BEYOND: CROSSING THE PLATFORM BOUNDARIES WITH F# AND FABLE

schedule  12:00 - 12:45 PM IST place Zoom
Beginner Session

ALFONSO GARCIA-CARO

SOFTWARE DEVELOPER

FREELANCER

JAPAN


Talk

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO   

add_circle

SNIPPETS FROM AN ALGORITHMIC TRADING SYSTEM IN KOTLIN

schedule  12:00 - 12:45 PM IST place Zoom
Intermediate Session

DHANANJAY NENE

PROGRAMMER ON A BREAK, FINANCIAL MARKETS TRADER

DHANANJAY NENE

INDIA


Talk

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO   

13:00

LUNCH

SCHEDULE 01:00 - 02:00 PM (60 MINS)

14:00

add_circle

FAMILIARITY OR GUARANTEES? FUNCTIONAL PROGRAMMING FOR THE FRONT-END

schedule  02:00 - 02:20 PM IST place Zoom
Beginner Session

LUCA MUGNAINI

SOFTWARE ENGINEER

RAKUTEN

JAPAN


Experience Report

THEATERS SLIDES   

VIDEO_LIBRARY VIDEO   

add_circle

N WAYS TO FIZZBUZZ IN CLOJURE

schedule  02:00 - 02:20 PM IST place Zoom people 1 Interested
Beginner Session

ADITYA ATHALYE

CHIEF EVAL-APPLY OFFICER

EVALAPPLY.ORG

INDIA


Demonstration

THEATERS SLIDES   

VIDEO_LIBRARY VIDEO  

add_circle

EXPERIENCE REPORT

schedule  02:00 - 02:20 PM IST place Zoom
Session


Event

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO  

14:30

add_circle

DO WE REALLY DO FP IN JAVA?

schedule  02:30 - 03:15 PM IST place Zoom people 1 Interested
Beginner Session

BEN EVANS

SENIOR PRINCIPAL ENGINEER

RED HAT

SPAIN


Talk

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO   

add_circle

RETARGETING F# FOR THE WEB: FROM JS TO WEBASSEMBLY

schedule  02:30 - 03:15 PM IST place Zoom
Advanced Session

ADAM GRANICZ

CEO

INTELLIFACTORY

HUNGARY


Talk

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO   

add_circle

TYPESCRIPT'S TYPE SYSTEM - FROM SOLVING PUZZLES TO PROVING FACTS OF PROGRAM

schedule  02:30 - 03:15 PM IST place Zoom people 1 Interested
Beginner Session

DAMODHARAN JAYACHANDRAN

MEMBER LEADERSHIP STAFF

ZOHO

INDIA


Demonstration

THEATERS SLIDES   

VIDEO_LIBRARY VIDEO   

15:30

COFFEE/TEA BREAK

SCHEDULE 03:30 - 04:00 PM (30 MINS)

16:00

add_circle

WRITING GREAT TESTS WITH HASKELL

schedule  04:00 - 04:45 PM IST place Zoom people 1 Interested
Intermediate Session

EVIE CIOBANU

SENIOR HASKELL ENGINEER

HASURA

ROMANIA


Talk

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO  

add_circle

TYPE CLASSES IN SCALA 3

schedule  04:00 - 04:45 PM IST place Zoom people 1 Interested
Intermediate Session

AYUSH MITTAL

SOFTWARE ENGINEER

ING NETHERLANDS

NETHERLANDS


Talk

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO  

add_circle

WHY APL IS A LANGUAGE WORTH KNOWING

schedule  04:00 - 04:45 PM IST place Zoom people 1 Interested
Beginner Session

RODRIGO GIRÃO SERRÃO

CONSULTANT

DYALOG

PORTUGAL


Talk

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO  

17:00

add_circle

PROPERTY-BASED TESTING - LET YOUR TESTING LIBRARY WORK FOR YOU

schedule  05:00 - 05:45 PM IST place Zoom people 2 Interested
Beginner Session

MAGDA STOŻEK

SOFTWARE DEVELOPER

SOFTWAREMILL

POLAND


Talk

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO   

add_circle

MULTIPLAYER ONLINE GAME IN CLOJURE: ATTACK OF THE CLONES

schedule  05:00 - 05:45 PM IST place Zoom
Beginner Session

MEY BEISARON

SOFTWARE ENGINEER, BACKEND DEVELOPER

FORTER

ISRAEL


Demonstration

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO   

add_circle

INTERPRET YOUR MONADS! - CONCRETE MONADS VS MONAD CLASSES

schedule  05:00 - 05:45 PM IST place Zoom
Intermediate Session

AUKE BOOIJ

HASKELL ENGINEER

HASURA

SWITZERLAND


Talk

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO  

18:00

add_circle

LESSONS LEARNED FROM 15 YEARS OF SCALA IN THE WILD

schedule  06:00 - 06:45 PM IST place Zoom people 2 Interested
Advanced Session

DEAN WAMPLER

DIRECTOR OF ENGINEERING

IBM RESEARCH

UNITED STATES


Keynote

THEATERS SLIDES   

VIDEO_LIBRARY VIDEO  

19:00

add_circle

CLOJURE THROUGH THE LENS OF MUSIC

schedule  07:00 - 07:45 PM IST place Zoom people 1 Interested
Intermediate Session

DAVE YARWOOD

SENIOR SOFTWARE ENGINEER

KEVEL

UNITED STATES


Talk

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO   

add_circle

COSY, EVOLVED FROM APL VIA K IN OPEN FORTH

schedule  07:00 - 07:45 PM IST place Zoom people 1 Interested
Intermediate Session

BOB ARMSTRONG

SOLE PROPRIETOR

COHERENT SYSTEMS (COSY)

UNITED STATES


Talk

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO   

19:05

add_circle

CASE STUDY

schedule  07:05 - 07:50 PM IST place Zoom people 2 Interested
Session


Event

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO  

09:00 AM

TEACHING OPTICS THROUGH CONSPIRACY THEORIES

THEME : MASTERING FP

BARTOSZ MILEWSKI

MATH EVANGELIST

PROGRAMMING CAFE

UNITED STATES

Advanced Session

PLACEZOOM

SCHEDULE 09:00 - 09:45 AM

Keynote

With polymorphic functions you can often tell how they are implemented by
looking at their outputs. The more polymorphic the function, the more you can
tell about its internal workings. Lenses, as well as more general optics, have
convenient polymorphic implementations in terms of functors and profunctors. But
under layers of abstractions they are hiding some simple truths. We are going to
get to the bottom of this conspiracy.

content_paste View Details

DIRECT URL:

https://confengine.com/conferences/functional-conf-2022/schedule/rich#session-29698-info

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO  



10:00 AM

CONCURRENT STATE MACHINES WITH CATS EFFECT

THEME : APPLYING FP

ADAM ROSIEN

PRINCIPAL

INNER PRODUCT LLC

UNITED STATES

Intermediate Session

PLACEZOOM

SCHEDULE 10:00 - 10:45 AM

Talk

Concurrent coordination is a notoriously difficult problem: how do we make the
behavior of a computation depend on another, concurrently running one? Or more
than one? We’ll show one technique: the concurrent state machine, and build many
examples using the powerful Cats Effect library.

For example, how can we share state between effects when that state might be
concurrently updated? Or how can we ensure one effect only proceeds once work is
complete in another? We’ll discuss the first issue by using the Ref data type
for sharing mutable state. We’ll then show how the Deferred data type can
provide concurrent effect serialization without blocking any actual threads.
Finally we’ll model even more complex behavior by composing these two
concurrency primitives together to form a concurrent state machine.

Some concurrent coordination behaviors we can construct using this method are:

mutual exclusion (mutexes, semaphores, etc.)

latches (closed until a certain number of events happen, then always open)

and many others.

 
content_paste View Details

DIRECT URL:

https://confengine.com/conferences/functional-conf-2022/schedule/rich#session-29749-info

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO   



10:00 AM

5 YEARS OF TRYING TO GET PEOPLE TO USE AN FP LANGUAGE

THEME : APPLYING FP

PHILLIP CARTER

SENIOR PRODUCT MANAGER

HONEYCOMB

UNITED STATES

Beginner Session

PLACEZOOM

SCHEDULE 10:00 - 10:45 AM

Case Study

At Microsoft, Phillip worked on the F# language and tools from 2016 to 2021. In
this talk, Phillip will recount the various strategies he and his team used to
try and increase adoption of F#, and by extension, FP as a whole. Over this
period of time, the F# language evolved and grew its user base substantially.

Lots of experiments to increase adoption were tried, such as pivoting to data
science, and most failed ... but some succeeded, hinting at some paths to
adoption for FP that don't just involve a more mainstream language appropriating
FP features. If you're interested in storytelling, learning about fun ways
things failed, and curious about some things that succeeded in increasing
adoption, check out this talk!

content_paste View Details

DIRECT URL:

https://confengine.com/conferences/functional-conf-2022/schedule/rich#session-29725-info

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO   



11:30 AM

IMPLEMENTING EVENT-DRIVEN MICROSERVICES ARCHITECTURE IN FUNCTIONAL LANGUAGE

THEME : APPLYING FP

NIKHIL BARTHWAL

SOFTWARE ENGINEER

& STARTUP MENTOR

UNITED STATES

Intermediate Session

PLACEZOOM

SCHEDULE 11:30 AM - 12:15 PM

Tutorial

Web services are typically stateless entities, that need to operate at scale at
large. Functional paradigm can be used to model these web services work and
offer several benefits like scalability, productivity, and correctness. This
talk describes how to implement Event-Driven Microservices in functional
programming languages with examples in F#.

Immutability allows infinite scalability as it eliminates the need to worry
about a mutex, a lock, or a race. As functional code is much more terse compared
to object-oriented code, it provides productivity benefits. Its strict typing
makes writing correct code easy as mismatches of types are caught at compile
time.

The objective of the talk is to show how to create a scalable & highly
distributed web service in F#, and demonstrate how various characteristics of
functional paradigm captures the behavior of such services architecture very
naturally.

content_paste View Details

DIRECT URL:

https://confengine.com/conferences/functional-conf-2022/schedule/rich#session-29702-info

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO   



11:30 AM

TYPE-HOLE DEVELOPMENT

THEME : MASTERING FP

TONY MORRIS

SOFTWARE ENGINEER

SIMPLE MACHINES

AUSTRALIA

Intermediate Session

PLACEZOOM

SCHEDULE 11:30 AM - 12:15 PM

Tutorial

In this presentation, we will see coding problems, similar to those which can be
found at https://github.com/system-f/fp-course/ using the Haskell programming
language.

Solving problems such as these can be daunting for many reasons and especially
for beginners. A common stumbling block to these types of problems is coming up
against unfamiliar problem-solving methods. For example, everyone knows how to
add up the numbers in a list with a for-loop. This is a well-understood method
of solving this particular coding problem.

And then you hear the functional programmers, "just use the types" and "well you
just do the only obvious thing to solve it." While true, this is not
particularly helpful to someone who is not already fluent with this approach to
problem-solving.

You may have heard of using type-holes to solve coding problems. We'll be using
type-holes, and a few other techniques, with the Haskell programming language to
live-solve coding problems. We will solve both trivial and not-so-trivial
problems while "thinking out aloud." Feel free to follow along! You'll just need
Glasgow Haskell Compiler (GHC) and a text editor installed.

content_paste View Details

DIRECT URL:

https://confengine.com/conferences/functional-conf-2022/schedule/rich#session-29722-info

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO  



12:30 PM

NAMES ARE OVERRATED

THEME : APPLYING FP

JED WESLEY-SMITH

DIRECTOR OF ENGINEERING

SIMPLE MACHINES

AUSTRALIA

Beginner Session

PLACEZOOM

SCHEDULE 12:30 - 12:50 PM

Talk

Some people even say names don't matter. While it is widely held that good
naming is one of the most important aspects of programming, is there such a
thing as an objectively good name?

As part of a discussion of the philosophy of programming, we'll look at what are
the real aims of naming things well, and what considerations we should have in
mind when discussing them. We'll have a look at alternatives and what they bring
that names do not.

content_paste View Details

DIRECT URL:

https://confengine.com/conferences/functional-conf-2022/schedule/rich#session-29713-info

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO   



12:30 PM

HUH? TO AHA! - A REFACTORING STORY

THEME : APPLYING FP

GOPAL S AKSHINTALA

SENIOR MEMBER OF TECHNICAL STAFF

SALESFORCE

INDIA

Beginner Session

PLACEZOOM

SCHEDULE 12:30 - 12:50 PM

Demonstration

_As a Dev, I need to Refactor, to make codebase Refactorable_. Refactorability
as defined by Martin Fowler is, "Ability to alter internal structure without
changing its external behavior". This applies to each atomic component of an
app. Let's achieve our dev story through a unique, yet most effective Method,
**Component Isolation**.

Let's huddle over persuasive arguments against _Obstacles_ that hinder our goal
causing entanglements among components, and _Metrics_ that measure our success.
Let's refactor a real-world app to and witness how Isolated components make-up
long-lasting structures.
content_paste View Details

DIRECT URL:

https://confengine.com/conferences/functional-conf-2022/schedule/rich#session-29721-info

THEATERS SLIDES   

VIDEO_LIBRARY VIDEO   



02:00 PM

MINITT: INGREDIENTS FOR A DEPENDENTLY TYPED LANGUAGE

THEME : MASTERING FP

SIDDHARTH BHAT

STUDENT

IIIT HYDERABAD

INDIA

Advanced Session

PLACEZOOM

SCHEDULE 02:00 - 02:45 PM

Tutorial

I explain the ingredients necessary to implement a minimal dependently typed
language (https://github.com/bollu/minitt). I'll explain the ideas of
normalization by evaluation on untyped lambda calculus, bidirectional type
checking on simply typed lambda calculus, and then scale these up to a full,
minimal dependently typed language, dubbed "mini-TT". At the end of the talk,
you'll be fully equipped to implement a dependently typed language, and follow
along other material such as "The little typer" for a deeper dive. 

content_paste View Details

DIRECT URL:

https://confengine.com/conferences/functional-conf-2022/schedule/rich#session-29718-info

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO  



02:00 PM

TYPE REIFICATION WITH PURESCRIPT

THEME : MASTERING FP

ANUPAM JAIN

UI ARCHITECT

ARISTA NETWORKS

INDIA

Advanced Session

PLACEZOOM

SCHEDULE 02:00 - 02:45 PM

Talk

PureScript is a Haskell-like language that compiles to JavaScript. If you like
Haskell, you will find yourself completely at home with PureScript. However
there are a few interesting typelevel things from Haskell that are not provided
by the PureScript compiler. The Type reification machinery is one of them.

In this talk, we'll understand the concept of type reification and its
implementation using the Typeable typeclass. Essentially, using Typeable we can
take a runtime value and get a value level representation of its type called a
Typeref, this process is called type reification, which we can then compare with
other known typerefs. We'll discuss indexed and unindexed typerefs and some real
world problems that can be solved by this sort of type reification.

A significant part of the talk will involve details of how Typeable is
implemented in Haskell, and how it can be approximated in PureScript even
without compiler support (available as a library
https://github.com/ajnsit/purescript-typeable/). We'll also discuss some
alternatives approaches and their pros/cons.

content_paste View Details

DIRECT URL:

https://confengine.com/conferences/functional-conf-2022/schedule/rich#session-29697-info

THEATERS SLIDES   

VIDEO_LIBRARY VIDEO  



03:00 PM

CASE STUDY

THEME :


Session

PLACEZOOM

SCHEDULE 03:00 - 03:45 PM

Event
content_paste View Details

DIRECT URL:

https://confengine.com/conferences/functional-conf-2022/schedule/rich#session-29752-info

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO  



03:00 PM

CASE STUDY

THEME :


Session

PLACEZOOM

SCHEDULE 03:00 - 03:45 PM

Event
content_paste View Details

DIRECT URL:

https://confengine.com/conferences/functional-conf-2022/schedule/rich#session-29753-info

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO  



04:30 PM

EXTENDING RAILWAY ORIENTED PROGRAMMING IN ELM TO MAKE COMPLEX USER FLOWS SIMPLE

THEME : APPLYING FP

GRAHAME DIXON

SIDE PROJECT DEVELOPER

GRAHAME DIXON

CANADA

Intermediate Session

PLACEZOOM

SCHEDULE 04:30 - 04:50 PM

Talk

What do you do with a multi-step function with different kinds of user input
that may be required at different steps? 

I'm using Elm to build a game client for Codex, a complex strategy board game by
David Sirlin with lots of interesting side effects in the game design. The pure
functional programming of Elm is very powerful for managing these side effects,
but how should I handle when there are many different kinds of user input
required to complete the behaviour of a single feature?

There’s a “railway oriented programming” metaphor to understand how to handle
multiple-steps of errors. I’ll extend this metaphor – with stations – to show
how to make what looks like a complex functional problem into a simple pattern
of abstraction.

Some familiarity with functional programming idioms is recommended, though the
examples themselves are easy to follow. Attendees will walk away seeing
functional programming applied in a fresh way, perhaps opening their mind to
alternative perspectives to approach the complicated problems in their projects.

content_paste View Details

DIRECT URL:

https://confengine.com/conferences/functional-conf-2022/schedule/rich#session-29724-info

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO  



04:30 PM

FAST AND CURIOUS: BENCHMARKING (MULTICORE) OCAML

THEME : APPLYING FP

SHAKTHI KANNAN

SENIOR SOFTWARE ENGINEER

SEGFAULT SYSTEMS

INDIA

Beginner Session

PLACEZOOM

SCHEDULE 04:30 - 04:50 PM

Experience Report

An oft overlooked aspect of programming language development process is
benchmarking. While popular CI/CD tools such as Azure pipelines, Gitlab CI,
Circle CI, Drone.io and Github Actions are regularly used for continuous testing
and deployment, there is a dearth of such tools for continuous benchmarking.
This is because benchmarking well is challenging due to the care needed to
choose appropriate benchmarks, the complexity of modern OSes and hardware that
makes it hard to obtain reproducible results, and a powerful dashboard needed to
surface resultant metrics in a useful manner that can be explored interactively
by the developer.

For benchmarking the compiler of the OCaml [1] programming language, we have
developed Sandmark [2]. Sandmark is a (a) suite of well chosen benchmarks aimed
at exercising different performance axes including CPU, memory and IO (b) a tool
to run the benchmarks, building the compiler and its dependencies under varying
configuration settings and (c) a dashboard [3] to interactively explore the
results of the benchmark runs. Sandmark was originally developed for supporting
the Multicore OCaml [4] project, which aims to add native support for
concurrency and parallelism to OCaml, and has undergone significant improvements
since the initial release [5]. 

We have learnt several useful lessons in building a continuous benchmarking
infrastructure that we would like to share in this talk, which may benefit
developers who work on projects where performance is critical. In this talk, I
will describe the Sandmark tool, illustrate the quirks of modern OSes and
hardware and how we overcame them, highlighting useful takeaways for setting up
continuous benchmarking for your own projects.

References:

[1] OCaml: https://ocaml.org/
[2] Sandmark: https://github.com/ocaml-bench/sandmark
[3] sandmark-nightly: https://github.com/ocaml-bench/sandmark-nightly
[4] Multicore OCaml: https://github.com/ocaml-multicore/ocaml-multicore/
[5] Tom Kelly. Benchmarking the OCaml compiler: our experience, OCaml Workshop
2019,
https://icfp19.sigplan.org/details/ocaml-2019-papers/3/Benchmarking-the-OCaml-compiler-our-experience

content_paste View Details

DIRECT URL:

https://confengine.com/conferences/functional-conf-2022/schedule/rich#session-29727-info

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO  



05:00 PM

THE Z3 SMT SOLVER AND FUNCTIONAL PROGRAMMING

THEME : MASTERING FP

ALLISTER BEHARRY

OPEN-SOURCE DEVELOPER

FREELANCER

TRINIDAD AND TOBAGO

Advanced Session

PLACEZOOM

SCHEDULE 05:00 - 05:45 PM

Demonstration

Satisfiability modulo theories (SMT) solvers are extremely powerful tools that
are indispensable in a number of applications of functional programming from
mathematical analysis and optimization to computer security to program
verification. SMT solvers allow you to determine if certain logical and
mathematical formulas are satisfiable or (just as importantly) unsatisfiable in
the context of theories like real arithmetic or set theory, and can provide
definitive answers to commonly encountered programming problems involving logic,
arithmetic, equations, and constraints.

Z3 is one of the most popular SMT solvers available today with APIs available
for many different programming languages. Although Z3 is most commonly used from
Python, functional languages like F# provide powerful metaprogramming facilities
that make it very easy to translate F# code and expressions to Z3 expressions
without the need for custom types or operators.

This presentation describes how the Z3 solver can be used from F# via quotations
to quickly and easily solve common programming problems from Boolean formula
satisfiability to arithmetic expression equality to linear programming to
verifying fragments of source code.

content_paste View Details

DIRECT URL:

https://confengine.com/conferences/functional-conf-2022/schedule/rich#session-29719-info

THEATERS SLIDES   

VIDEO_LIBRARY VIDEO   



05:00 PM

STUMBLING OVER STATE

THEME : APPLYING FP

DANIEL STEINBERG

AUTHOR

DIMSUMTHINKING.COM

UNITED STATES

Beginner Session

PLACEZOOM

SCHEDULE 05:00 - 05:45 PM

Tutorial

We each follow similar paths into the forest of functional programming. Some
languages are better suited than others but we all hit a wall on our way to
mastering monads. In this talk, I'll use examples from the Swift programming
language to trace our understanding from types  that feel like containers such
as Array and Optional to types that definitely don’t such as Reader and State
Monads. We’ll learn to perform many magic tricks along the way.

content_paste View Details

DIRECT URL:

https://confengine.com/conferences/functional-conf-2022/schedule/rich#session-29723-info

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO   



06:00 PM

DSLS, ARCHITECTURE, AND STRUCTURAL DESIGN IN APL, 3 WAYS.

THEME : APPLYING FP

AARON W HSU

COMPUTER RESEARCHER

DYALOG LTD.

UNITED STATES

Intermediate Session

PLACEZOOM

SCHEDULE 06:00 - 06:45 PM

Talk

Beginning functional and APL programmers often express confusion about how to
structure large software projects or larger pieces of code. Both APL and FP have
a tendency to highlight their low-level features and de-emphasize system
architecture patterns. This can leave programmers with a strong sense of how to
write a set of small functions, but with less confidence or skill in designing,
recognizing, and implementing more cohesive implicit system architectures that
hold these lower level functions together. System architectures serve as a
method for constraining the overall design of a system to give direction and
focus to lower level implementation requirements. Especially in APL, where
system architecture is often best implemented implicitly, it behooves the
programmer to understand the ramifications of architecture and to implement them
in their own systems. This talk unpacks a number of these "architecture level"
questions within the framework of the APL programming language by exploring the
same topic through 3 different architectural approaches, each of which has a
very distinct flavor, presentation, and impact on the resulting source code.
Particular attention is paid to the question of domain-specific languages, their
design, and how they can interact with APL as tools for architectural
exploration and guidance in APL source trees. 

content_paste View Details

DIRECT URL:

https://confengine.com/conferences/functional-conf-2022/schedule/rich#session-29706-info

THEATERS SLIDES   

VIDEO_LIBRARY VIDEO   



06:00 PM

FS2.CHUNK

THEME : APPLYING FP

MICHAEL PILQUIST

DISTINGUISHED ENGINEER

COMCAST

UNITED STATES

Beginner Session

PLACEZOOM

SCHEDULE 06:00 - 06:45 PM

Talk

The Chunk data structure powers the fs2 (Functional Streams for Scala) streaming
library. In this talk, we’ll look at the design of Chunk and in particular, how
design constraints guided its evolution.

content_paste View Details

DIRECT URL:

https://confengine.com/conferences/functional-conf-2022/schedule/rich#session-29710-info

THEATERS SLIDES   

VIDEO_LIBRARY VIDEO   



07:00 PM

NAVIGATING THE LOOP IN WATER, ON LAND AND IN PROGRAMMING MODELS

THEME : MASTERING FP

BRUCE TATE

FOUNDER

GROXIO

UNITED STATES

FRANCESCO CESARINI

FOUNDER & TECHNICAL DIRECTOR

ERLANG SOLUTIONS

UNITED KINGDOM

Intermediate Session

PLACEZOOM

SCHEDULE 07:00 - 07:45 PM

Keynote

 Loops are among the most critical programming constructs. These features shape
core ideas about programming in the Erlang ecosystem; from how languages work to
how programming features interact with other code and the outside world. How
systems scale and are resilient. They are also metaphors for the way we think,
build things, and grow. In Erlang and Elixir, loops define servers that form
reliable, fault tolerant and scalable services. This keynote will explore Elixir
and Erlang's approach to concurrency with a nautical adventure called the Great
Loop.

content_paste View Details

DIRECT URL:

https://confengine.com/conferences/functional-conf-2022/schedule/rich#session-29755-info

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO   



 

MASTERING FP

SAT, MAR 26

09:00

add_circle

TEACHING OPTICS THROUGH CONSPIRACY THEORIES

schedule  09:00 - 09:45 AM IST place Zoom people 2 Interested
Advanced Session

BARTOSZ MILEWSKI

MATH EVANGELIST

PROGRAMMING CAFE

UNITED STATES


Keynote

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO  

10:00

add_circle

CONCURRENT STATE MACHINES WITH CATS EFFECT

schedule  10:00 - 10:45 AM IST place Zoom people 1 Interested
Intermediate Session

ADAM ROSIEN

PRINCIPAL

INNER PRODUCT LLC

UNITED STATES


Talk

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO   

add_circle

5 YEARS OF TRYING TO GET PEOPLE TO USE AN FP LANGUAGE

schedule  10:00 - 10:45 AM IST place Zoom
Beginner Session

PHILLIP CARTER

SENIOR PRODUCT MANAGER

HONEYCOMB

UNITED STATES


Case Study

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO   

11:00

COFFEE/TEA BREAK

SCHEDULE 11:00 - 11:30 AM (30 MINS)

11:30

add_circle

IMPLEMENTING EVENT-DRIVEN MICROSERVICES ARCHITECTURE IN FUNCTIONAL LANGUAGE

schedule  11:30 AM - 12:15 PM IST place Zoom people 1 Interested
Intermediate Session

NIKHIL BARTHWAL

SOFTWARE ENGINEER

& STARTUP MENTOR

UNITED STATES


Tutorial

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO   

add_circle

TYPE-HOLE DEVELOPMENT

schedule  11:30 AM - 12:15 PM IST place Zoom
Intermediate Session

TONY MORRIS

SOFTWARE ENGINEER

SIMPLE MACHINES

AUSTRALIA


Tutorial

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO  

12:30

add_circle

NAMES ARE OVERRATED

schedule  12:30 - 12:50 PM IST place Zoom people 1 Interested
Beginner Session

JED WESLEY-SMITH

DIRECTOR OF ENGINEERING

SIMPLE MACHINES

AUSTRALIA


Talk

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO   

add_circle

HUH? TO AHA! - A REFACTORING STORY

schedule  12:30 - 12:50 PM IST place Zoom
Beginner Session

GOPAL S AKSHINTALA

SENIOR MEMBER OF TECHNICAL STAFF

SALESFORCE

INDIA


Demonstration

THEATERS SLIDES   

VIDEO_LIBRARY VIDEO   

13:00

LUNCH

SCHEDULE 01:00 - 02:00 PM (60 MINS)

14:00

add_circle

MINITT: INGREDIENTS FOR A DEPENDENTLY TYPED LANGUAGE

schedule  02:00 - 02:45 PM IST place Zoom people 2 Interested
Advanced Session

SIDDHARTH BHAT

STUDENT

IIIT HYDERABAD

INDIA


Tutorial

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO  

add_circle

TYPE REIFICATION WITH PURESCRIPT

schedule  02:00 - 02:45 PM IST place Zoom
Advanced Session

ANUPAM JAIN

UI ARCHITECT

ARISTA NETWORKS

INDIA


Talk

THEATERS SLIDES   

VIDEO_LIBRARY VIDEO  

15:00

add_circle

CASE STUDY

schedule  03:00 - 03:45 PM IST place Zoom
Session


Event

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO  

add_circle

CASE STUDY

schedule  03:00 - 03:45 PM IST place Zoom
Session


Event

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO  

16:00

COFFEE/TEA BREAK

SCHEDULE 04:00 - 04:30 PM (30 MINS)

16:30

add_circle

EXTENDING RAILWAY ORIENTED PROGRAMMING IN ELM TO MAKE COMPLEX USER FLOWS SIMPLE

schedule  04:30 - 04:50 PM IST place Zoom
Intermediate Session

GRAHAME DIXON

SIDE PROJECT DEVELOPER

GRAHAME DIXON

CANADA


Talk

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO  

add_circle

FAST AND CURIOUS: BENCHMARKING (MULTICORE) OCAML

schedule  04:30 - 04:50 PM IST place Zoom people 2 Interested
Beginner Session

SHAKTHI KANNAN

SENIOR SOFTWARE ENGINEER

SEGFAULT SYSTEMS

INDIA


Experience Report

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO  

17:00

add_circle

THE Z3 SMT SOLVER AND FUNCTIONAL PROGRAMMING

schedule  05:00 - 05:45 PM IST place Zoom people 2 Interested
Advanced Session

ALLISTER BEHARRY

OPEN-SOURCE DEVELOPER

FREELANCER

TRINIDAD AND TOBAGO


Demonstration

THEATERS SLIDES   

VIDEO_LIBRARY VIDEO   

add_circle

STUMBLING OVER STATE

schedule  05:00 - 05:45 PM IST place Zoom
Beginner Session

DANIEL STEINBERG

AUTHOR

DIMSUMTHINKING.COM

UNITED STATES


Tutorial

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO   

18:00

add_circle

DSLS, ARCHITECTURE, AND STRUCTURAL DESIGN IN APL, 3 WAYS.

schedule  06:00 - 06:45 PM IST place Zoom people 2 Interested
Intermediate Session

AARON W HSU

COMPUTER RESEARCHER

DYALOG LTD.

UNITED STATES


Talk

THEATERS SLIDES   

VIDEO_LIBRARY VIDEO   

add_circle

FS2.CHUNK

schedule  06:00 - 06:45 PM IST place Zoom
Beginner Session

MICHAEL PILQUIST

DISTINGUISHED ENGINEER

COMCAST

UNITED STATES


Talk

THEATERS SLIDES   

VIDEO_LIBRARY VIDEO   

19:00

add_circle

NAVIGATING THE LOOP IN WATER, ON LAND AND IN PROGRAMMING MODELS

schedule  07:00 - 07:45 PM IST place Zoom people 1 Interested
Intermediate Session

BRUCE TATE

FOUNDER

GROXIO

UNITED STATES

FRANCESCO CESARINI

FOUNDER & TECHNICAL DIRECTOR

ERLANG SOLUTIONS

UNITED KINGDOM


Keynote

THEATERS SLIDES  

VIDEO_LIBRARY VIDEO   


PLEASE SHARE YOUR FEEDBACK FOR:



Feedback (Optional)
Cancel Rate

 * date_range0 My Schedule arrow_drop_down
   * highlight Show Sessions
   * share Share
   * file_downloadExport as iCal

 * ONLINE
   
    * Thu ,
      Mar 24
      Code Beam Lite
    * Fri ,
      Mar 25
      Applying FP
    * Sat ,
      Mar 26
      Mastering FP




SHARE YOUR SCHEDULE

 * 
 * 
 * 
 * 

SHARE YOUR SEARCH

 * 
 * 
 * 
 * 

PLEASE LOGIN TO SAVE YOUR SESSION SELECTION TO MY SCHEDULE.
MY SCHEDULE IS AVAILABLE ON ALL YOUR DEVICES.

cancel login
help
cancel
search

Sorry, no FAQs found matching your search criteria


FREQUENTLY ASKED QUESTIONS

FETCHING ...




NEED HELP? SEND US A MESSAGE...




NAME



EMAIL


send Send
HOT TIP Need help? Visit our User Guide.

© 2022 Powered by ConfEngine | Terms & Conditions | Privacy Policy



CARD_MEMBERSHIPPOINTS SYSTEM

YOU EARN 30 BONUS POINTS ON YOUR FIRST ACTIVITY ON EVERY NEW CONFERENCE.

PROPOSALS

 * You earn 1 point when others like your proposal.
 * You spend 1 point when you like others' proposal.
 * You spend 10 points when you propose a session.
 * You earn 100 points when your proposal is selected.

PRO-TIP

 * Encourage your Colleagues and Friends to like your proposal to increase its
   score.
 * You should consider sharing your proposal on popular Social Networks.

Note: Popularity of Proposals and Speakers is measured by the number of
associated points.

VIRTUAL CONFERENCE

 * You earn 5 points when you visit a Booth page for the first time.
 * You earn 10 points when you ask a question on a Booth page for the first
   time.
 * You earn 5 points when you add a session to 'My Schedule' on the Schedule
   page.
 * You earn 5 points when you rate a session.
   There is an extra 10 points if you provide feedback along with your rating.
 * You earn 10 points when you fill up a survey.

Filter Sessions

Share Filtered Sessions