Fork me on GitHub
#fulcro
<
2018-11-07
>
sooheon04:11:33

Hey I’m at the I_Exercise_on_Putting_It_Together step of the tutorial, unsure where I should crib from for the ex-start ex-stop ex-restart functions?

tony.kay06:11:05

@sooheon So, the tutorial is a bit under-maintained at this point…sorry, I’m not even sure what you’re talking about and I wrote it 😜 The book and videos are the more authoritative sources now.

sooheon06:11:37

Hah no problem, have moved on to them :)

sooheon06:11:18

I’m also getting java.lang.ClassNotFoundException: com.ibm.icu.text.MessageFormat, when running lein repl on the fulcro-template

sooheon06:11:35

but reading the book and watching videos is plenty of learning

tony.kay06:11:44

ah, now that shouldn’t be…you using figwheel or shadow-cljs?

tony.kay06:11:24

or you’re talking about the server, I guess

sooheon06:11:41

this is fulcro-template example, not the minimal lein template

tony.kay06:11:42

Oh, THAT template

tony.kay06:11:04

so that is also outdated now that I started maintaining the lein one…too many balls 😕

sooheon06:11:09

should I be working off the lein template with example snippets?

tony.kay06:11:31

Basically, if you upgrade to that latest Fulcro I made some of the deps “provided”..so you have to add a temp

tony.kay06:11:43

the code in that template is fine…the deps may be missing a thing or two

tony.kay06:11:21

I should probably mark that template as “needing help” until I have time to update it…

tony.kay06:11:02

do you see [com.ibm.icu/icu4j “62.1”]

tony.kay06:11:15

in deps of template? That is what you need, and it looks like it is on the develop branch

tony.kay06:11:47

I think maybe you have master instead?

tony.kay06:11:20

the fulcro-template is working for me

sooheon06:11:21

I’m seeing [com.ibm.icu/icu4j "62.1"], I’m also seeing

14:59	Dependency resolution error
			Error synchronising fulcrologic/fulcro-template:0.1.0-SNAPSHOT:
			Failed to collect dependencies at com.ibm.icu:icu4j:jar:62.1

sooheon06:11:40

maybe I should reindex maven repositories?

sooheon09:11:46

^ above problem is resolved :) In the book: >“The problem is that we can optimize away a re-render of a parent when it can figure out how to pull just the data of the child on a refresh, and in that case the callback will get lost because only the database data will get supplied to the child!” Is this related to the keys in :query of the child not having a key for the callback? (because the callback doesn’t live anywhere in the db)

sooheon15:11:27

@tony.kay Absolutely loving the video tutorials! Following along and playing around w/ devcards is finally getting me the “aha” moments for fulcro. I did not grok the benefits of normalizing app-db, or indirection around mutations with “someone else’s opaque macros” until I’d built a couple webapps and seen the rapid mess I make of them.

tony.kay15:11:49

It’s the problem of evaluating libraries @sooheon, I think. Anything that establishes new-looking patterns requires that you write something non-trivial in it in order to see the trade-offs. I’m still having those aha moments after almost 3 years (I still discover ways in which the structure of Fulcro makes things better/easier), which is what has given me confidence to continue. The new state machine stuff is a good example…don’t know that you could do them quite as well in other systems…mainly because of the normalized, consistent app db and abstract data-driven I/O and refresh.

sooheon16:11:29

Yes, lib evaluation / lib use is like explore/exploit optimization, no perfect answer other than to optimize for your own growth of understanding and reevaluate at the right times. A year ago, I judged hiccup vs defsc by “ease” metrics, and now I have a slightly different point of view. I’m sure this change is constant--case in point, I have no clue what the state machine stuff means, because I don’t have that experience yet :p

sooheon16:11:34

I’m glad to hear you’re still “discovering” new functionality, @tony.kay, it implies fulcro has the right principles and pieces to compose to more than just what you’ve explicitly designed into it.

tony.kay16:11:26

surprisingly more, I think

currentoor18:11:38

@sooheon a year ago I used to use sablono (very hiccup like) inside fulcro components

currentoor18:11:14

but the new dom macros with their CSS interpretation and compile time transformations are significantly more performant and just as expressive (i’d argue localized dom CSS is more expressive)

claudiu19:11:42

Hi, Been working on a way to simplify the html5 routing + code-splitting + ssr story for my projects for a while. Now trying to take the bits and pieces and put them together in a library. I've got a minimal implementation (proof of concept) working. If anybody is interested I added some docs + a small example app. Any feedback would be really helpful 🙂

eoliphant14:11:27

cool beans I was literally working on the same thing 🙂 hey in its current state, does it handle nav when you load something other than the root? e.g. you hit the server with /admin/something, the server responds with the index page or whatever, then after load you get nav'ed to the expected router state and what have you

claudiu14:11:44

@U380J7PAQ Do you mean server side rendered page or just load the route from the uri ? 🙂

eoliphant14:11:46

not SSR, just handling the routing correctly when you do a server page load that's 'not root'

claudiu14:11:23

nice SSR (java & node) is on the roadmap. But still have to work out some details 🙂

eoliphant14:11:49

ah, check the url there, then issue the nav-to appropriately

claudiu14:11:08

just need to add a utility method for getting that one 🙂 so hardcoded it to "/" for now, will probably add something later today 🙂

eoliphant14:11:52

cool, yeah because I guess it could just be nav-to-current-uril or something

claudiu14:11:27

yep. Tested it out with a different url, should work. Let me know if you're planning on trying it out and you run into any interesting use-cases 🙂