Skip to content
0:00 / 0:00

#clojure#pathom#graphql

The Maximal Graph - Wilker Silva

ClojureTV

111K subscribers • 136 videos on Hallway

YouTube
  • Recommended by 2 people: 2 on Hacker News.
  • Presented by Wilker Silva

Intermediate. Assumes working knowledge.

7.5K views6 years ago2 recommendations

Programming languagesDatabases and dataFunctional programmingSoftware architectureGraph databases

Wilker Silva discusses how namespace-qualified keywords and context-free federated names can be used pragmatically for data modeling in Clojure.

A lot of us feel a little lost as we start to use Clojure and try to make sense of how we should model data. If we came from a schema or type-based system many of us are tempted to apply those skills directly. We have a notion (reinforced by talks we watch) that these namespaced keywords are important, but we often struggle to apply those concepts pragmatically. In this talk, I’ll discuss how the ideas of context-free federated names (a.k.a. namespace-qualified keywords) have become more concrete and pragmatic to me during my use of them at NuBank. I’ll talk about my realizations on how they can be used in practical ways that lead to a high level of clarity in our data models and communication systems, and open up better flexibility and reach. Finally, I’ll relate these concepts to recent advances in the communication of this kind of data at the systems level as a graph, and show how industry standards like GraphQL continue to suffer from problems of composition and generality, while Clojure’s approach leads to an open information system with maximal utility: the Maximal Graph.

Why it's here

2 people recommend this

What people say. Recommended for its insights into Clojure data modeling and as an introduction to the concepts behind the Pathom library.

ptttron Hacker News • Recommends

On “Ask HN: Why GraphQL APIs but no Datalog APIs?”

The original question made this mistake probably because the poster didn't know it but Pathom is the actual alternative to GraphQL-based APIs. Datalog solves a subtly different problem of querying the data, while Pathom/GraphQL/REST is about exposing the data (interfacing?) as API. It's more like: Pathom vs GraphQL-based API (vs REST) and Datalog vs SQL (vs NoSQL) The mainstream is in the process of migrating from REST to GraphQL, but I think Pathom could be the black horse in this race. Just watch the last part of Wilker Silva's The Maximal Graph talk to see the potential: link to this video

edjrooton Hacker News • Recommends

On “Programs are a prison: Rethinking the building blocks of computing interfaces”

Looks pretty cool. Have you looked into Pathom (a Clojure library)? Its creator seems to share your vision of connecting APIs from different sources. Last 5 minutes of this video: The Maximal Graph by Wilker Silva - link to this video

ptttron Hacker News • Mentions

On “Why Build Solutions with Fulcro – Tom Toor (Clojure/Conj 2019)”

…ecosystem. You can see my repo-graveyard made along that journey here: link My personal bet for the next killer-app in web development is: Clojure0 + Fulcro1 + Pathom 2 + Crux 3. 0 Love Letter To Clojure - Gene Kim (Clojure/conj 2019) link 1 Fulcro links and resources: link 2 The Maximal Graph - Wilker Silva (Clojure/conj 2019) link to this video 3 link…

slifinon Hacker News • Mentions

On “Using Obsidian to manage goals, tasks, notes, and software dev knowledge base”

I think what most people don't see coming is that Wilker Lúcio was hired by Roam Research he is the author of Pathom and gave this talk recently: - link to this video It's about connecting many graphs together, the killer app in this space is to figure out how to connect these graphs together such that teams and communities can grow connections on a massive scale There will be many challenges in doing that particularly around selection, per edge permissions likely leveraging Clojure's namespaced keywords to get global attributes This will mean a major re architecture of Roam Research, I predict most Roam clones are going to get absolutely blindsided by this Roam today is ~just~ a datascript database on…