~/talk

Building a collaborative painting canvas with Phoenix

Talkat Functional Conf 2017 · 2017-11-16..11-19· [elixir-and-erlang, web-performance]
slides:none on file

Shows building a real time collaborative painting canvas using Elixir on the BEAM, Phoenix for websockets and channels, and an HTML <canvas> frontend; demo sends captured XY strokes as JSON lines to a Phoenix channel and the server uses broadcast_from avoids echo to relay strokes to all other browsers in milliseconds. Demonstrates spawning 10 processes that finish in ~1s and Task.async_stream with max_concurrency 5 taking ~2s, and the canvas demo works live across multiple browsers.

AI-written summary · about

  1. 0:00Intro
  2. 0:25Reddit 1000 Pixel Canvas
  3. 1:43Introduction to Elixir
  4. 2:51Demo
  5. 6:10Elixir
  6. 11:18Erlang
  7. 13:21SyncStream
  8. 17:21Mailbox
  9. 18:24Message
  10. 20:06About Phoenix
  11. 21:54Mix
  12. 22:53Mix Structure
  13. 24:18Mix Packages
  14. 24:37Creating a Phoenix App
  15. 25:15Phoenix App Overview
  16. 26:20Auto Reload
  17. 29:24SocketD
  18. 29:50Router
  19. 30:33HTML
  20. 31:06Load Phoenix HTML
  21. 32:04Create WebSocket
  22. 35:26Print Ping
  23. 37:01Handle
  24. 37:36Push
  25. 38:06pong
  26. 38:39websocket messages
  27. 40:07WebSocket connection
  28. 41:50Stats HTML
  29. 42:05Java Script
  30. 43:23Broadcast stats
  31. 44:02URL
  32. 44:17Every Request
  33. 44:58Canvas
  34. 46:12Canvas Lines
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.