Building #ElectricClojure and hyperfiddle.net. I believe in excellence, and I believe that many others do too. Baháʼí. github.com/hyperfiddle

🌎
Screenshot of a web-based object navigator targetting the JVM management interface, to reflect out the process classpath and navigate into the contents of an uberjar. This application is defined in about 200 lines of Clojure (.clj) for the java reflection (for some simple parsing and weaving together of a set of queries that relate but were not intentionally built to relate), and absolutely no frontend code. The navigator UI is fully abstracted away by a saas, the UI is not in the same process as the JVM being interrogated, it is remote. They talk via a reverse websocket with the Electric wire protocol. For more info see clojure.net/ "Network your REPL", a new experiment from Hyperfiddle.
2
6
38
3,001
Airtable lays off 50% pivots into enterprise, reportedly only $150M in revenue as of 2023 with 1.4b raised. Not even a unicorn, last 5 years of trumpeting have been optics! Fake company
59
42
756
332,178
Electric Clojure (formerly Photon) is now public! Electric is a reactive signals DSL for fullstack web UI, with compiler-managed network sync. - fully reactive language - multi-tier - network-transparent - strong composition - multiplayer native
38
95
572
388,892
My first summer job was IT at Anheuser Busch where 30% of the job was updating and rebooting 100s of random industrial windows machines on the production line. This image probably has 50 boxes in it. They are up ladders. On catwalks. Locked closets and cabinets. Freezers and bio-sealed clean rooms requiring protocols to enter. Secure rooms and sealed enclosures. We lost machines all the time - we have the blip, we know what subnet it's on but nobody can find the actual machine. And that's assuming the machine is on! Good luck
6
47
420
59,457
"UIs are streaming DAGs" – 10min video now available Leo, Geoffrey and I are thrilled to present Photon, a full-stack #Clojure/Script dialect with compiler-managed client/server data sync. Forget the frontend/backend divide! Declarative UI is coming hytradboi.com/2022/uis-are-s…
30
87
425
You don't need a web framework, you need a web language. In this blog post we explain hyperfiddle/photon – a reactive #Clojure/Script dialect, specialized for server-streamed user interfaces. hyperfiddle.notion.site/hype…
12
42
240
Watching the Karpathy talk about software 3.0 that everyone is raving about. Clearly he has never been an actual application developer in his life. Checking now, phd in computer vision -> openai research -> tesla management (computer vision) -> openai GPTs. Completely devoid of any insight at all, highbrow dismissive of fundamentally difficult problems with zero contribution. Apps should be like an iron man suit. Ok dude. Proceeds to demonstrate a vibe coded calorie calculator and then a restaurant menu app. i can’t take it anymore. Lasted 34 minutes at 1.5x speed. YC is a joke
15
11
230
21,850
Signals vs Streams: Signals represent continuous time varying quantities, like an electrical voltage, an audio signal or the current mouse coordinates. streams (event streams) represent a sequence of discrete events, like key presses or network packets or financial transactions. the key difference is in backpressure strategy: signals are canonically lazy, they don’t compute or do work until sampled, and only the latest value is relevant (nobody cares where the mouse was a moment ago when nobody was looking). streams are eager, you can’t skip a keyboard event or a financial transaction, even if the pipes are backed up – instead you have to tell upstream to slow down so you can catch up. The benefit of event streams is the guarantee that you'll see every event, which means streams are suitable for driving sequences of side effects (keyboard event -> network request -> database transaction). signals are a good fit for rendering because you only want to render at up to say 60fps (even if the mouse updates faster, which it does). and you only want to render what’s onscreen, and only when the tab is focused. rendering (say dom effects) is indeed effectful but not in the discrete way; the dom is a resource, it has a mount/unmount object lifecycle, and due to this symmetry it is a good fit for rendering whereas isolated effects (without a corresponding undo operation) are a terrible fit for signals because backpressure will drop events and corrupt the system state. You can use streams for rendering too, but it's dis-optimal, and potentially by a lot. If your app chokes on a burst of events, you want to skip ahead and render the final state without bothering to render all the intermediate historical states. Signal laziness is what enables this "work skipping"; a stream would have to process each individual event in sequence. I have no idea if JS projects get the backpressure right, can anyone confirm?
11
16
194
39,610
Sunday night sitting on the couch over here asking myself what the Laplace transform of a CRUD app would mean and how to formulate the database state evolution as a difference equation. What if user interactions (IO) were probability density functions?
21
13
185
44,365
Announcing Photon, a reactive #Clojure/Script dialect implemented as a macro. -full-stack web UI -incremental view maintenance -not just DOM, any Clojure AST!! -no React.js dep. 1k LOC -streams from server to client over network -state of art dataflow / effect system -2021?
5
25
157
Interactive source code in the style of Bret Victor with Electric #Clojure, by @eating_entropy "Pretty new to Electric ... the low LOC for expressing ideas [in Electric] is mind-boggling"
4
21
147
27,254
Replying to @pesterhazy
Failure is the default, the right Q is, in what way is it exceptional?
4
4
139
19,529
If I am not mistaken, agentic development turns a greenfield development problem into a legacy debugging problem. I am not sure that that's a good thing? Companies lose control of the business as their tech debt compounds
16
7
121
5,657
git log searcher, as a webapp. Took me 1 hr to assemble with clj-git + clojure's datafy/nav + hyperfiddle datagrid + @ElectricClojure. Datagrid implementation is 27 LOC Git datafy implementation is 30 LOC A high quality web datagrid for any backend function/object, in 1 hr! What will you build?
2
6
103
4,943
I’ve like 7 concurrent recruiting conversations in my DMs right now, and without subtweeting any one person, broadly, i sense an enormous disconnect between buyer/seller expectations. The era of getting paid big bucks to work remotely on fun greenfield projects at well managed companies is gone. The job is to plow through 10 years of technical debt at revenue generating firms to help them shift the work overseas to equally skilled remote workers at half the cost. The money is no longer free, it is consideration in return for pain. As a consultant I have been inside a lot of companies and it is the same everywhere. Money for pain. Welcome to the 1930s. Anyone with any tech job at all is lucky to have it.
9
9
101
8,952
Reaction to a FP evangelism talk last week by Michael Pilquist, the maintainer of Scala FS2, the pure functional streaming library for Scala: One of the meta themes in your talk was a subtle tone of frustration that functional programming has not seen more widespread adoption. And you hinted at the reason for this: current functional programming best practices encode a composition model that fails at network boundaries. So take, for example, the strongest pro-argument for FP that you and I could come up with: adding decimal places of reliability to HTTP services at scale, as has been demonstrated by the use of FS2 and ZIO at ultra-scale companies that you work with in the streaming video space, like Comcast and Disney. Now it's true that you have indeed added orders of magnitude of reliability to an HTTP server. Or at least, that's a testable hypothesis which we can validate. But there are two problems with this: 1. HTTP servers are a 35 year old category, they are a deeply understood problem. Adding more 9s of incremental reliability is just not that economically interesting to anyone but the worlds largest services, such as those you work on at Comcast and Disney. So it's sus that FP's most compelling results are incremental improvements to a 90s architecture. And by the way those improvements took 10 years to achieve, only in the last 5 years have effect systems matured to the point of actually delivering on the promise and exceeding their competitors. Did any of the results in the 2010s exceed Jetty? 2. If you ask a long tail application developer responsible for HTTP services what their problem is, the problem is not Jetty, Jetty works great. The problems are in the application layer. When we build on HTTP, the underlying problem we're actually trying to solve is trying to get two computers to talk to each other over network and coordinate as a single system. This is a protocol problem, all applications contain an adhoc state distribution protocol ("API") when ends up getting conformed to JSON struct transport or whatever. And what functional programmers have done, is exclude this hard part, the integration, and focus on the salient part, the implementation of the network stack and serving requests as fast as possible, while giving no actual consideration to the actual problem the business faces, which is the integration of disconnected platforms into a holistic application. This is salience bias! en.wikipedia.org/wiki/Salien…
6
8
94
11,078
The fact that Google Docs, launched in 2005 and acq. by Google in 2006, is still the best online word processor at 20 years old, untouched by Notion and modern PKM tools, is a demonstration of how stagnant American engineering is. Actual _backwards progress_ on the 20yr chart!
10
6
92
5,387
So, I guess the cat's out of the bag: announcing the existence of Electric Clojure: Differential Electric, i.e. differential dataflow for UI. Come meet up in NYC on Jan 25 where I'll be sharing details for the first time! meetup.com/clojure-nyc/event… @ElectricClojure #clojure
1
12
83
6,406
I am just having the time of my life building lightning fast complex virtual scrolled tables with server-streamed differential record spooling over 10k records ... in 12 lines of simple, straightforward code. #ElectricClojure
3
10
86
3,093
My wife and I have been playing Spintronics (mechanical circuit montessori-style game). What an impressive work, it got my wife drawing circuit diagrams (what!?) Tool from the future upperstory.com/spintronics/
4
8
83
8,352
Headed to ClojureNYC tonight to see @dennnis talk about Tesserae, a Clojure spreadsheet built with @ElectricClojure! "I’ve tried writing a Clojure based spreadsheet before and failed. A naive implementation was never performant enough and I simply didn’t have time to pour my lifeblood into architecting a side project while running a company and having a life and doing -important research- reading Twitter. All of this changed with Hyperfiddle Electric (think: cross environment Clojure code composition). Within two weeks part time I had written Tesserae, a sandboxed Clojure spreadsheet with cell reactivity, scheduled code execution, hiccup, vega rendering and more — and all of that in under 2000 LoC 🤯 of honestly fairly naive but, thanks to Electric's performant code. Since then, Tesserae has been actively used at Lumber as a dashboard, budget notification service and invoice generator. In this talk we’ll dive into Tesserae’s capabilities, code and Hyperfiddle Electric." meetup.com/clojure-nyc/event…
3
7
82
4,227
This UI is reflected from #clojure specs attached to #Datomic peer functions. Client/server datasync is fully managed, incremental, streaming, fast. No reducers. No state atom. No client database. No normalization. Open your REPL and code simple Clojure functions. Coming 2021
9
10
83
Devs will spend 5 years wasting their time battling fake tech like React Server Components when they could spend 3 mos learning @ElectricClojure. Why? Because you can't get paid to learn Electric, but can get $100k+ to waste your time on React and charge it all to your employer
11
7
81
11,245
Category theory is like theoretical physics. It can predict the existence of new particles and it helps us search for new meanings and understandings of reality. Electric Clojure manifests three such new understandings, which stemmed from classifying the deep structure of web apps w/ CT. The three results: Result #1: "distributed lambda" (i.e. "streaming lexical scope") a novel distributed state sync primitive that permits network-transparent composition. We built a Clojure/Script compiler which embeds network-coloring special forms to slice your Clojure lambdas: github.com/hyperfiddle/elect… . As proof of strong composition we offer distributed Y-combinator and a demo of using it to recursively walk a server filesystem hierarchy and render a browser HTML frontend, in the same visitor. Result #2: "Full-stack App as a Function," a unit of full-stack composition that encompasses backend, frontend, streaming network, reactive rendering, supervised effects, backpressure and concurrency control. As proof we offer "TodoMVC Composed", a demo in which we compose a TodoMVC-app-function with a for loop. Result #3: HFQL, a composable declarative hypermedia DSL, inspired by HTML, for specifying full-stack CRUD applications. HFQL macroexpands to Electric code and therefore composes directly as a function with Electric programs, allowing seamless progressive enhancement with Electric lambda, as well as re-entrancy. Electric and HFQL do not explicitly reify the typeclasses, but without them we would not have been able to resolve sharply enough the information structure that enables these results.
Every time I read something to try and learn more about Category Theory, I come away unimpressed. It just always seems like vapid nonsense. If I were to read one and only one book (or paper/video/etc) to convince myself that category theory is good, what should it be?
1
5
78
16,525
Functional Shell, Imperative Core (the functional part is on the outside!)
what do you believe, deep in your bones, about programming that almost everybody else does not believe?
11
3
81
7,917
Replying to @martinmbauer
finding this quite accessible so far
4
2
64
6,520
STU ANNOUNCES AT CONJ -DATOMIC IS NOW FREE! APACHE BINARY LICENSE @clojure_conj
4
13
74
6,960
1
6
75
15,323
First look at @ElectricClojure v3's improved network transfer semantics, that let the programmer express with precision the exact network topology they want with intuitive and obvious code! Blog post: hyperfiddle-docs.notion.site…
2
14
67
3,280
Mark your calendars: I'll be presenting Electric (via zoom) at London Clojurians on July 25th. Talk is for beginners & will start with why we built this and how we got here, then a guided walkthrough of the tutorial: electric.hyperfiddle.net #clojure Event: meetup.com/London-Clojurians…
1
15
69
5,851
web based git browser built with #ElectricClojure, powered by jGit and clojure.datafy (we built this 9 months ago actually, never released it). Has: treeviews, search, row selection, urls and history, lots of progressive enhancement and bespoke UI
6
9
73
2,090
in 12 years of startups and consulting I don't think I've seen or used a single piece of consumer-grade software written by anyone except a hypercapitalized startup (e.g. Facebook, Airtable), a boutique agency/vendor (Intellij, or say small Pharma orbiter) or a solo indie. (Google did not build Sheets, rather acquired it) Many 8+ engineer teams have dreams of building quality – but it collapses, it stagnates, hiring slips, management slips, schedule slips, KPI driven development, scrum, scope reduction, etc. A players leave. Whole bodies of literature devoted to process management. It just doesn't work!
12
5
68
15,410
Breakthrough insight about vibecoding: Haskell programmers believe in the concept of a function being "done". Meaning for some reasonable type signature there is only one reasonable definition, and maybe even the compiler can infer it at that point. Pilquist, in that talk i mentioned, discussed the notion of a HTTP server that was done, it had no bugs in it, we can use it forever. I don't know if I believe in that but it's an interesting idea. To use typelevel abstraction to box in a definition so tightly that we can eliminate categories of errors by construction. Once a function is done, we never have to change it again, and the whole world can reuse this as bedrock infrastructure. We see this in physics as well. The Schrodinger eqn, Dirac, Maxwell, these equations are done, they don't have bugs, they are isomorphic to the model they encode and these models can now be leveraged as inputs to other models that generate conclusions of stunning complexity and rigor. Vibecoding is a reaction to this not being true in product development. Nothing is ever done, in fact code actively rots, you can leave a JS or Python project alone for a year and come back and you can't turn it on because the environment has changed and it was accidentally coupled to the environment. So if nothing is ever done, what product ownersand developers are doing is giving up, they're just over-rotating into the opposite direction. Which kind of makes sense. And what I like about this model is that it provides a clear belief predicate for who will like vibecoding and who wont. Belief in if your functions can be done. Personally, with Electric, my functions aren't done yet, but we think we got the typelevel abstractions right (differential dataflow), we believe at the typelevel, with Electric, UI is done, at least conceptually, in principle. And maybe someday a brilliant CS researcher will be able to generate Electric's internal definitions.
5
3
67
4,717
Electric v3 is so productive and expressive that I sat down to write the tutorial and ended up developing a bunch of pure functional form/input idioms on the spot
1
3
65
2,300
This has been the #Clojure position since like 2007. Anyone advocating pure FP in commercial context for the last decade had moral hazard (i.e. billing personal research interests to an employer). Reactjs is impure. Spark is impure. Cloud is impure. ZIO only reached maturity 2020
3
8
65
All these RSC edge cases are not even edge cases in @ElectricClojure, everything just works w/o surprising edge cases, no special rules to memorize, no docs to read about what is or is not allowed, no complex interactions to debug. #composition #functionalprogramming
React Server + Client Components Visualized There is a bit of a learning curve to learn new patterns, but the ease of going between client and server will be worth it.
4
6
64
7,006
There are hundreds of competent and worthy teams that could execute better on 1% of that ($14M). Software has infinite leverage. Today all you need is like 8 engineers + 5 marketers. How long until the first 2 person unicorn? How long until society can route capital to merit?
4
3
66
11,434
React.js is the new J2EE
9
10
62
5,509
Metrics on Electric Clojure tutorial app are rock solid - 5x $6/mo fly.io instances in 5 cities worldwide - linear cpu - constant memory - scales linearly with more resources - scales horizontally with more instances 12 cents per active websocket-month #Clojure
1
6
64
6,713
First video proof of Hyperfiddle's "distributed dataflow" architecture for server-streamed UI. "UI as an Expression" #clojure
2
11
65
New Talk Announcement! @ldnclj presents: "Electric Clojure v3: Differential Dataflow for UI" Yes, this is a virtual event! Come join us on Tuesday, August 20 where I'll be presenting the first live examples of Electric v3, demonstrating how Electric's new differential semantics reveal and align with the deep computational structure of a user interface. meetup.com/london-clojurians… @ElectricClojure #Clojure
4
7
60
5,028
My summary of the Red Planet Labs launch news.ycombinator.com/item?id…
3
6
60
5,759
Rama (@redplanetlabs) + #Clojure + Missionary, by @jbhxyz gist.github.com/jeans11/295b…
3
7
58
3,666
#1 issue holding back progress in programming tech is that a huge range of real world payrolls are for basically fake work (churning python/js, moving tickets, tanking emotional abuse, maintaining appearances). Payment is not aligned to results, it's aligned to pretending.
6
10
59
4,841
Me right now preparing demos for the @ElectricClojure v3 launch talk #DifferentialDataflow you don't even know what's about to hit you
5
4
59
1,956
Quick @ElectricClojure progress update! Also, officially announcing Electric v3, coming very soon! hyperfiddle-docs.notion.site…
3
14
58
2,652
The point is not whether this is bad. The point is the vivid demonstration that React.js UIs are not pure functions actually. So there goes that whole ui=f(state) worldview — React.js was imperative all along
9
10
56
12,669
My hot take on Rama: since it seems to require advanced knowledge to use, anyone so qualified would prefer to author in Clojure over "weird DSL embedded in Java", & any co willing to adopt Rama is also willing to adopt Clojure (given the java api is literally sugar over Clojure)
10
59
10,588
UI is so hard that all the UI people gave up and moved on to AI 2-3 years ago, but the problem is that AI is still categorically blocked on the UX problem
2
7
61
3,439
Replying to @dustingetz @potetm
Here is the fatal mistake of Clojure: Rich says functional programming is a bad fit for reactive (situated) programs because they have too many callbacks and therefore we need go-style concurrency because imperative channels match impedance with the imperative machine. This is the exact opposite of the truth, this is the exact problem functional effect concurrency solves, reactive effect orchestration at scale, and this is the central insight of functional programming, which is the study of causality, concurrency and time. (Credit for this insight to @36Rleonoel as presented in piped.video/watch?v=tV-DoiGd…, we went on to build Electric based on this insight in a vivid demonstration of the power of functional concurrency which cannot be achieved or replicated by Clojure's concurrency model, which Rich is still trying to fix btw with Flow). In Rich's defense his talk is in 2013, Leo's talk was in 2021. I certainly don't want people pinning me to opinions I had 10-15 years ago. But Rich stopped talking and learning, instead disparaging the FP community—e.g. "maybe sheep", a misconception of what typeclasses are for—when he should have been building a bridge. The result is Clojure's knowledge cutoff is 2015.
4
6
60
8,196
New Electric tutorials – featuring multiplayer chat, auth, presence, backpressure, component lifecycle Introduces: - work-skipping - signals - lazy sampling - backpressure - object lifecycle - process supervision electric-examples-app.fly.de…
4
12
54
7,341
pure functional crud app (with database edits and optimistic updates) has been achieved internally
4
2
57
2,057
3360 LOC for all of Photon, compiler, runtime, server, and standard library, including photon-dom (350) and photon-ui widgets (350) and including a bunch of inline RCF tests for the compiler which is too hard to factor out. + an additional 1200 LOC of language tests. #clojure
1
3
54
"I'm working on a commit where I've thrown out our old (non-Electric) code ... a deletion of -200 files and -30k lines of code of non-Electric stuff" — @ElectricClojure user, deleting custom built hand optimized client side database sync solution and replacing it with ... nothing
2
6
57
3,251
(defmacro 🤷 [& body] (try ~@body (catch Exception e nil))) #clojure
4
4
53
Electric v3 is nearly here! We've been in private beta with friends for a month and will soon be giving early access to more people. If you'd like to try it, please request to join the beta using this form: hyperfiddle.net/early-access…
1
2
55
2,997
Lighning talk! Electric Clojure in 5 minutes — Systems Distributed 2024 share.descript.com/view/nJkF… #ElectricClojure
1
13
61
10,600
Thrilled & humbled to announce that Electric Clojure is rewritten in Reactjs. The CS literature took too many days to read and LLMs autocomplete React better anyway. With the word "React" in our deck, we raised $10M from the best devtool investors. And we're just getting started!
7
2
56
7,153
Not sure how we are going to explain this
8
6
53
Like this post if you are a Clojure freelancer and would like to have a zoom call with other Clojure freelancers for real talk
5
8
51
Photon TodoMVC, with a twist! 1. it's multiplayer! 0 LOC cost 2. state is durable! (server side database) 0 LOC cost 3. see those pending spinners? Our DOM controls include a free managed pending state on their callbacks. 1 LOC cost Code: gist.github.com/dustingetz/f… #clojure
2
6
52
Why is Electric Clojure so important? #Clojure
3
1
53
10,184
OMG, I got tired of refreshing the page while writing tutorial markdown content (for my hand rolled markdown extension framework – 80 LOC Electric), so I thought to myself, I wonder how long it would take to get hot markdown reloading. 22 minutes and 16 LOC later
1
7
51
1,943
Roam but built in Electric Clojure (bulletproof UI, optimistic updates, zero interaction latency, pending/retry affordance on all unsaved edits) and designed specifically for programmers
3
3
51
3,300
Electric friends, in order to continue investing in Electric, with v3 we're changing the license model to make the project sustainable without a dependence on VC to fund development. Electric v3 will remain free for bootstrappers and for non-commercial use. tana.pub/lQwRvGRaQ7hM/electr… I talked to 20+ community members these last two weeks to find fair license terms that stay as true as possible to our shared mission while also making the project sustainable. Please react, tell me what you think and how this makes you feel, emojis are helpful too, and I will try to answer your questions. #ElectricClojure
11
3
53
4,512
"I have came to learning #Clojure because my favorite tool, Roam Research was built with Clojure and Clojurescript#"
2
3
52
#clojure is the thinnest possible layer that gets you an immutable information model with first class interop over any host platform
7
48
Photon recursive tree view demonstrating compiler managed datasync through recursive function views Look how fast it is! It's incremental/streaming network, not request/response. Photon brings a higher level of expressiveness and fluency than was possible before #Clojure
6
9
49
happy #ElectricClojure enterprise user: "speed is mind blowing—rich functionality in very little code—features you just wouldn't bother with if you had to write a REST API for that...realtime updates, interactive... the speed with which this came together is just mind boggling"
3
48
1,535
Three.js + Electric #Clojure by @Leveringit "I think that Electric and three_js fit quite nicely. Three.js requires you to manually cleanup GPU resources. Electric’s RAII semantics are great to automatically cleanup resources. And I used three.js raycaster to get mouse events on scene graph objects which you subscribe too similiar to dom/on and dom/on! And a rerender only happens if the scene, camera or dom-size changed. Electrics caching and minimal recompute does a great job." github.com/HendrikLevering/e…
1
6
51
3,061
review of @ElectricClojure from someone who tried to go back to React for a SSR project. Spoiler: they couldn't. Thanks Vincent!
7
50
2,161
Electric #Clojure v263 released - deployment, hot code reloading fixes, cljs advanced mode fixed, bugfixes github.com/hyperfiddle/elect…
1
1
50
3,225
Releasing RCF: a repl-optimized test macro for #Clojure/Script that turns your Rich Comment Blocks into tests (in same file as your fns). Send form or buffer to REPL to run tests and it squirts dopamine ✅✅✅, very pleasing. It's good, try it! github.com/hyperfiddle/rcf
3
10
48
Indeed. Last year I realized modern startups are basically securities fraud, but that's not quite right, it's the VCs who are defrauding both their LPs and their corporate acquirers. They are selecting exactly the right founders they need to pump-n-dump on ... whatever idiot is dumb enough to trade against a VC? The early stage game is to recognize the Keynesian beauty contest for what it is and buy whatever shitcoin PG is promoting that year.
7
1
50
6,726
help me fit this in a tweet: For experienced software engineers tired of complexity of our own making, #Clojure is a tastefully designed programming language which aims to simplify information systems and web development. Unlike pure functional programming and it’s pursuit of ..
6
8
47
Why do I care? because the co I founded, Hyperfiddle, can ACTUALLY DO that, by applying world class computer science to solve actual hard problems in web dev (frontend/backend sync) as a foundation for a low-code product that is MORE POWERFUL than React.js/rails w/e, NOT LESS
2
46
18,821
App Currying means: Application as a Function. #ElectricClojure has this! Demo link below (with src code!)
maybe you should be able to curry an app -- take a specific screen from the original app, capture whatever context/parameters were needed to get there, and make that screen into a new app in itself
1
5
48
2,581
new electric v3 demos coming soon
1
2
46
1,368
First third party @ElectricClojure conference talk - India Clojure next week! inclojure.org/
2
5
48
2,660
Hyperfiddle ("CRUD Spreadsheet") in 2018 (video resurfaced thanks to Facebook) This POC didn't scale and we ran out of money but honestly i still think the concept was pretty good
3
1
49
3,173
the expressiveness problem, the density problem, the spaghetti code problem, and the logical/physical impedance problem
2
3
48
endorse and in particular would like to highlight that the FP community has delivered almost nothing of commercial value. It’s been 15 years and how do we make apps? Javascript and Postgres. React was good though, it was built in a dynamic language of course.
Replying to @scheminglunatic
types, tests, standups, toolchain, Clean Code, "readability," DRY, KISS, SOLID, OOP, FP, Agile™, Pairing, Mobbing you name it. doesn't matter.
20
3
49
13,705
"I do have to thank you, @ElectricClojure is extraordinary tech. I talk to ppl who are not interested in Clojure and I tell them there are new things being developed here in the Clojure community that solve an entire class of problems – which have just GONE AWAY with Electric. And there's nothing else that is similar. I used Phoenix LivevView at work a LOT, however it consumes so much memory to render the server. Elixir is way behind in terms of usability compared to Clojure, i used to think it was good but I don't like it anymore. The more users you have the more server memory you need. It depends what you keep on the server. In Electric, you can keep the minimum signals for your queries, and the consumption of memory will not grow. The query is diffed then sends diffs to the client, it's very efficient"
1
5
47
3,193
Tesserae, a Clojure spreadsheet written in Electric Clojure by @dennnis – ClojureNYC video now online! "I’ve tried writing a Clojure based spreadsheet before and failed. A naive implementation was never performant enough and I simply didn’t have time to pour my lifeblood into architecting a side project while running a company and having a life and doing -important research- reading Twitter. All of this changed with Hyperfiddle Electric (think: cross environment Clojure code composition). Within two weeks part time I had written Tesserae, a sandboxed Clojure spreadsheet with cell reactivity, scheduled code execution, hiccup, vega rendering and more — and all of that in under 2000 LoC 🤯 of honestly fairly naive but, thanks to Electric's performant code. Since then, Tesserae has been actively used at Lumber as a dashboard, budget notification service and invoice generator. In this talk we’ll dive into Tesserae’s capabilities, code and Hyperfiddle Electric." piped.video/watch?v=nEt06LLQ…
1
5
43
1,841
The world has no Leaders. Neither Europe nor the US have strong leadership. Very few companies have strong leadership. The software industry has no leaders. Clojure no longer has a leader. The world needs leaders. This is what keeps me going. Imagine what the world would be like if we had leaders. I step up. Nobody will pay me for it. I will use only my own resources that I have earned through trade, and those of my partners. I will lead.
7
46
2,985
Hyperfiddle is doing a hack week next week! What should we build? Ideas so far: - multiplayer game (ie Snake ⨉ Game of Life) - Electric DataScript - Electric DAG viewer - Petri net sim - Roam clone - Youtube client via libpython-clj - OSQuery viewer - AI stuff?
11
2
45
5,244
🤯there is a map from complex numbers to real 2x2 matrices, and rotations on unit complex numbers are isomorphic to rotations on 2x2 real matrices. In this crystal clear demonstration. Book is Physics from Symmetry
6
5
46
3,739
Replying to @yacineMTB
no, first and foremost good code has to work i.e. do the thing second it must do the thing correctly third it must do the thing within acceptable operational margins e.g. perf fourth it must get there cheaply and on schedule last: some pleb can change it- what? skill issue, hire better
6
2
46
3,828
Blog post: the Electric Y Combinator, demonstrating why Electric's network-transparent composition is "strong" (ie. mathematical) as opposed to "adhoc", like heavy frameworks whose composition model is made up and filled with edge cases. #clojure dustingetz.electricfiddle.ne…
1
4
44
2,759
Astounded by the sophisticated #Datomic queries I'm seeing in the wild written by "non programmer" PMs who self-taught just enough Clojure to operate Datomic – #SimpleMadeEasy #Clojure
8
41
clj-kondo var explorer with Electric Clojure by @JaTkins_co. "I threw this together in ~30m ... Electric + electron apps are gonna be fire"
3
48
2,871
Tomorrow, Tuesday! 1:30ET, 1830 London. We have an awesome talk prepared for you!
New Talk Announcement! @ldnclj presents: "Electric Clojure v3: Differential Dataflow for UI" Yes, this is a virtual event! Come join us on Tuesday, August 20 where I'll be presenting the first live examples of Electric v3, demonstrating how Electric's new differential semantics reveal and align with the deep computational structure of a user interface. meetup.com/london-clojurians… @ElectricClojure #Clojure
12
46
3,523
Me in 2014, luckily I saw through Scala after only 2 years ... ditched after losing two weeks chasing dopamine type tetris puzzles trying to emit json in pure-FP way for my side project ... switched side project to #Clojure and shipped that weekend ... Hyperfiddle was born
Heard about #clojure and #scala at the same time. Did scala for 5-6 years and realized @richhickey was right about everything. Been doing clojure for 6+ years now and couldn't be happier. Most well thought out language, ever. Thanks to all the contributors!
2
6
47
I need to hire a #Clojure engineer with deep CSS experience, we basically need to make this spreadsheet thing look like Retool, send portfolio/links by DM! Emphasis on both the CSS and also the Clojure skillz, this spreadsheet/crud abstraction is 1000 LOC of macros to Electric
5
15
47
12,123
“I dislike concepts which are good for marketing, but bad for understanding; they foster collective misunderstanding, and are likely to eventually lead to collective errors in action”
4
2
43
3,120
Replying to @aphysicist
Sam says AGI next year because OAI's contract with Microsoft terminates at this milestone and the contracted definition of the milestone is "the board said so"
2
2
39
2,048
This is a #Datomic history browser built in #Hyperfiddle. Entity audit trail, filter by attribute & time, see who did it! (Integrates your user logic.) 161 LOC CLJC including specs, dynamic queries, formatters. This is a tutorial level exercise, couple hours to code #clojure
2
8
43
Should someone tell him?
The reality of building web apps in 2025 is that it's a bit like assembling IKEA furniture. There's no "full-stack" product with batteries included, you have to piece together and configure many individual services: - frontend / backend (e.g. React, Next.js, APIs) - hosting (cdn, https, domains, autoscaling) - database - authentication (custom, social logins) - blob storage (file uploads, urls, cdn-backed) - email - payments - background jobs - analytics - monitoring - dev tools (CI/CD, staging) - secrets - ... I'm relatively new to modern web dev and find the above a bit overwhelming, e.g. I'm embarrassed to share it took me ~3 hours the other day to create and configure a supabase with a vercel app and resolve a few errors. The second you stray just slightly from the "getting started" tutorial in the docs you're suddenly in the wilderness. It's not even code, it's... configurations, plumbing, orchestration, workflows, best practices. A lot of glory will go to whoever figures out how to make it accessible and "just work" out of the box, for both humans and, increasingly and especially, AIs.
4
1
45
4,708