Take for instance an app that I use everyday, Kanbanize. It is built around some server side rendering tech and it is awesome, but I know that some will tell that the UX is subpar, the same can be applied to Basecamp and Hey.
I wondered what Marciol was referring to so googled and found this on HN:
Noteworthy how they tout the success of their “magic” frontend stack made with vanilla JS, lack of a trendy framework, etc. But if you use the app, the UX is fairly laggy, requires frequent refreshes, all the animations and interactions are off - the list goes on and on. It’s noticeably subpar (and I like Hey).
Unfortunately have to agree. I really wanted to love HEY, and while it’s certainly not super laggy or anything, I’m not overwhelmed with the “magic”.
Ran into a host of inconsistencies already, changing between imbox/feed/papertrail on iOS also feels very “unnative” in the sense of not fluid.
It’s quite apparent that often it’s just replacing one HTML block with another without too much thought about transitions.
From the twitter feed: “React is so 2019. HTML + minimum JS is 2020”
Ok. Just as long as you don’t get stuck in 2010
Seems to me that the proof is in the pudding wrt their stack, but it’s probably not what they wanted to prove. I would take a well tuned React SPA over this any day of the week.
DHH has got it back to front. HTML + minimal JS was a thing when SPA frameworks were in their infancy (bloated slow trash) but things are very different now. The concerns raised in the HN and elixirF thread are valid, just compare the best React apps to the best HTML + minimal JS apps to see for yourself.
There’s no denying they are impressive, however how much is due to them being big teams with big budgets? Could they achieve something similar without SPAs/those frameworks? How much/less work would it entail?
I’m guessing out of all those Indiegogo and Chess.com has the most modest/more realistically sized teams… I wonder if @zarkostankovic has any thoughts about their experience (or can point us to some dev blogs about their experience with SPAs)
Smaller teams can absolutely achieve similar. algoexpert.io is a nice example. A React app with TypeScript and a Go backend by a two person team.
The SPA scene is gargantuan now. Out of the top 3 (React, Angular, Vue) Vue is the easiest to learn and what you learn there will not be wasted if you move to React or elsewhere later. Svelte is even easier but has some ways to go.
If you are basing your opinion on what SPAs and these frameworks used to be like, give them another look—you might be surprised by what they can do and how much you end up liking them.
Ok you’ve convinced me to give them a closer look! I had another look at Discord and it’s come a long way since I first checked it out (or what I remember of it anyway) - it’s pretty slick!! They don’t have huge team either IIRC.
Do you recommend any of the frameworks in particular and could you recommend some learning resources please?
I think I’m leaning towards giving Svelte a go - there’s some decent interest here on the forum and I like that it’s essentially a variant language that compiles to JS, which, from what I’ve seen anyway, makes for a more interesting/pleasant developer experience. I sometimes think that in the JS world newer can potentially be better because there’s so much in JS that needs fixing
All component based so whichever you start off with will help you understand the core philosophy of the others—that you build reactive user interfaces by combining reusable components.
Do you recommend any of the frameworks in particular
This is dependent on your needs and taste. If you want the whole nine yards with everything built in try Angular. React comes leaner (reflected by it calling itself a library rather than a framework) but its large community has everything you’ll need. Vue is somewhere in between. Narrow it down to two and begin learning them. Thisis the most optimal way to determine their suitability for your project and taste.
and could you recommend some learning resources please?