• Liked Shashi Gowda
    keyboard_arrow_down

    What can you do with Virtual DOM on the server?

    Shashi Gowda
    Shashi Gowda
    schedule 1 year ago
    Sold Out!
    45 mins
    Demonstration
    Beginner
    Facebook's React pioneered the idea of the Virtual DOM - a clever trick which resulted in a framework that supports a declarative programming style, allows pleasant modularity, and surprising efficiency. This talk will explore the ability to represent a web application as the Virtual DOM on the server side. The Escher.jl Julia package is attempt to implement these ideas. Escher introduces two twists in the usual Virtual DOM story:
     
    1. Extend the Virtual DOM idea to HTML5 Custom Elements. In Escher, things like event listeners, entities that send messages over web sockets are custom elements. You can attach these to other elements to make them behave in interesting ways. Escher also comes out-of-the box with a rich library of pure functions that result in DOM nodes. These DOM nodes address various needs: Markdown, Vector Graphics (via Compose), Plots (via Gadfly), LaTeX, Layouts, Typography, Styles, Input Widgets, Clickable and Keyboard behaviors, even pages, tabs, menus, slideshows are all supported out-of-the box. This is done using Escher's custom elements (mostly the bits that support FRP) and the Polymer library (everything else, pretty much).  This library is entirely functional, and deals only with immutable values.
     
    2. Represent DOM on the server side: The Patchwork.jl package provides the ability to represent DOM on the server. It is essentially a mirror of a VDom node in virtual-dom - a pure JavaScript Virtual DOM library by Matt Esch. Escher sends the browser a JSON formatted Virtual DOM, and subsequently, sequences of patches sent as the UI needs to change.
     
    Escher works seamlessly with Reactive.jl - an FRP library derived from the Elm language's Signal library written for Julia. The result is a strangely beautiful pure Julia web programming experience which lets you do beautiful and bold visualizations of data, write interactive / explorable explanations, and teach better.
  • Liked Charanjit Singh
    keyboard_arrow_down

    Going framework-less with virtual-dom and FRP (RxJS)

    Charanjit Singh
    Charanjit Singh
    schedule 1 year ago
    Sold Out!
    90 mins
    Tutorial
    Intermediate

    Functional Reactive Programming is a slightly different take towards asynchronous programming which helps creating simple and powerful software with good architecture. FRP reduces the complexity of a asynchronous code by providing a unifying concept to cover most things asynchronous, and the result is a easy to build and easy to maintain architecture. Reactive programming is a powerful concept, Meteor is a living proof of that. FRP is another, more advanced (imho) flavour of reactive programming.

    This session we'll create a simple app called YARR (Yet Another RSS Reader), using virtual-DOM and RxJS without using any front-end or isomorphic javascript framework. We're going framework-less for this session so we could concentrate only on FRP concepts which might be little hard to grasp for those who do little Functional Programming (sadly, most of Js devs). This session will demonstrate how FRP leads to a saner architecture for apps without relying on a framework for forcing your hand to do so. 

Sorry, no proposals found under this section.