Made the mistake of using react for a mobile app and my god why is it this convoluted, why are the error messages always along the lines of “something went wrong with networking 🤷”
Am I the only one left writing pure JS webpages? I swear for the stuff I’ve done recently, adding React or even jQuery makes things 10x more complicated and bloated.
The base JS support browsers have now is actually great. It’s not like the old days trying to support every browser back to IE6
I assume you mean react native, not react, unless you’re using something like capacitor. React native is a far shot from react and is much more annoying to deal with.
Using capacitor as a native shell for your web app can be very nice, actually. It lets you hook into native API calls and build native apps while hardly ever having to write native code, unless you want to, which presumably you don’t since you’re writing react native.
Honestly doing it again I’d just write in xamarin or something not web orientated because as it turns out the web app is going to need to be separate anyway
I might look into capacitor but is that not basically just electron?
I guess you could see it that way, but web views are inherent in mobile operating systems, they don’t need to be bundled into your app, so capacitor apps aren’t big bloated memory consuming applications like electron apps are. There’s a lot of well made apps running on capacitor that you wouldn’t even know, especially if you use something like ionic framework to actually have the look and feel of native mobile apps.
When you are writing some complex web app, you will wish you used a framework. Some web apps can have more than 50 pages with multiple states that depend on remote data to be locally cached and synced depending if you are online/offline. Framework can handle a lot of the heavy state management for you and even provide a nice UI component library. But I do agree that React is too much, but jQuery is being replaced by vanilla JS. That is why I usually use Vue. But for simple stuff, yes, Vanilla JS is pretty much good enough
No framework will make FSM for you. Managing state of web ui is not as hard as managing state of game.
Using TCP for networking? Loss, retransmit, lag, you’re dead. Using UDP for networking? Loss, desync, you’re dead. Sending full game state? Congestion, loss, lag, dead. Doing sync right, but still pushing too much data? Congestion, loss, lag, dead. Also keeping on server you need not only track game state, but what game state client confirmed to receive.
The biggest problem frameworks solve is “I need the value of this variable to be on the page and I need it to stay up-to-date.” If you don’t have this problem, or you only have it in a couple of places where hand-writing the necessary event listeners isn’t too arduous, then yeah you don’t really need a front end js framework.
I am spoiled by dotnet and rust error messages. They tell you exactly what the problem is, where it is, and in rust’s case sometimes even how to fix it
You are comparing compiler-generated errors and runtime errors
Rust can trigger segmentation fault and bus error too.
GCC’s error messages are very detailed, sometimes can contain suggested solutions.
For example if I will try to compile helloworld without including stdio.h, gcc will warn implicit declaration of function ‘printf’(by default, almost everyone make it error with -Werror=) and will suggest note: include ‘<stdio.h>’ or provide a declaration of ‘printf’. And runtime error reports are as good as programmer makes them, no matter language program was written in.
I am spoiled by core dumps(although rust technically has them too).
Also in context of kernel, it will print stack trace and (if used) will kexec into another kernel that can make core dump or continue working.
Made the mistake of using react for a mobile app and my god why is it this convoluted, why are the error messages always along the lines of “something went wrong with networking 🤷”
Unfortunately I’m stuck with it now
react is better than the days when we jquery everything
Am I the only one left writing pure JS webpages? I swear for the stuff I’ve done recently, adding React or even jQuery makes things 10x more complicated and bloated. The base JS support browsers have now is actually great. It’s not like the old days trying to support every browser back to IE6
I like base JS and I like jQuery. Only reason I’m using React is for native cross platform mobile/web but I’m beginning to regret choosing it for that
I assume you mean react native, not react, unless you’re using something like capacitor. React native is a far shot from react and is much more annoying to deal with.
Yes I mean react native
Wouldn’t be bothering with it if I were just working with web
Using capacitor as a native shell for your web app can be very nice, actually. It lets you hook into native API calls and build native apps while hardly ever having to write native code, unless you want to, which presumably you don’t since you’re writing react native.
Honestly doing it again I’d just write in xamarin or something not web orientated because as it turns out the web app is going to need to be separate anyway
I might look into capacitor but is that not basically just electron?
I guess you could see it that way, but web views are inherent in mobile operating systems, they don’t need to be bundled into your app, so capacitor apps aren’t big bloated memory consuming applications like electron apps are. There’s a lot of well made apps running on capacitor that you wouldn’t even know, especially if you use something like ionic framework to actually have the look and feel of native mobile apps.
When you are writing some complex web app, you will wish you used a framework. Some web apps can have more than 50 pages with multiple states that depend on remote data to be locally cached and synced depending if you are online/offline. Framework can handle a lot of the heavy state management for you and even provide a nice UI component library. But I do agree that React is too much, but jQuery is being replaced by vanilla JS. That is why I usually use Vue. But for simple stuff, yes, Vanilla JS is pretty much good enough
No framework will make FSM for you. Managing state of web ui is not as hard as managing state of game.
Using TCP for networking? Loss, retransmit, lag, you’re dead. Using UDP for networking? Loss, desync, you’re dead. Sending full game state? Congestion, loss, lag, dead. Doing sync right, but still pushing too much data? Congestion, loss, lag, dead. Also keeping on server you need not only track game state, but what game state client confirmed to receive.
Strictly speaking, the original commenter is talking about website but sure there is an FSM JS framework too (XState).
The biggest problem frameworks solve is “I need the value of this variable to be on the page and I need it to stay up-to-date.” If you don’t have this problem, or you only have it in a couple of places where hand-writing the necessary event listeners isn’t too arduous, then yeah you don’t really need a front end js framework.
Linux has better error messages. “Dazed and confused, but trying to continue”.
I am spoiled by dotnet and rust error messages. They tell you exactly what the problem is, where it is, and in rust’s case sometimes even how to fix it
Then there’s C with “segmentation fault”
For example if I will try to compile helloworld without including stdio.h, gcc will warn
implicit declaration of function ‘printf’
(by default, almost everyone make it error with -Werror=) and will suggestnote: include ‘<stdio.h>’ or provide a declaration of ‘printf’
. And runtime error reports are as good as programmer makes them, no matter language program was written in.I am spoiled by core dumps(although rust technically has them too).
Also in context of kernel, it will print stack trace and (if used) will kexec into another kernel that can make core dump or continue working.
I do not code in C it was just a throwaway meme lol
Successfully triggered a sea fan. (not me, another dude in the comments)
Anti Commercial-AI license
I just have to say: designing a GUI in code in 2024 is asinine.
I feel bad for anyone who got suckered into learning convoluted bullshit like angular or react when they could’ve learned Godot or Qt.