|
raddevus wrote: I would love to see a specific example of React code that is making you think this. Humans tend to be emotional creators that process thoughts via emotion first and justify that emotion with logic. Not the other way around. Lack of self-awareness (maturity) means those emotions go unchecked and can be out of control. Kinda like a toddler. Since most devs never actually hang around other humans, IMO their self-awareness never develops.
That's a long winded way of saying, some devs will be like "omg this uses => therefore it sucks." It's usually those with valid claims that tend to be less emotional about it. Same goes with money, relationships, etc.
I did it with Java growing up before looking at things differently. Was never a fan of it. Still not. But, I can most certainly appreciate its position in the industry and what it helped achieve, given the fact that C# was a rip off of it (MS hired Java devs) and it popularized the idea of write once run anywhere. So, you gotta give it props for that.
raddevus wrote: But, I also hate React. I need to turn that thing into a component and I don't know how. React isn't perfect. No framework is. I love React, but I can also say IMO the biggest issue with it is that it changes too much. Can be good or bad I suppose, but as soon as you get a dev that learns one way too late sukka.
Still, I think React is awesome, so that's not coming from a place of hate.
raddevus wrote: 1. I hate all that redux stuff -- no idea what it is. Go figure, I think reducers/redux is awesome.
raddevus wrote: 2. I hate the fact that versioning changes made some of my component "old" bec React suddenly changed some foundational things. Dangit, you beat me to it.
Jeremy Falcon
|
|
|
|
|
Fantastic post. So many things to agree with.
I wrote the same app C'YaPass (password generator / manager) in numerous languages and frameworks.
1. WinForms C#
2. UWP (Universal Windows Platform) using XAML.
3. ElectronJS -- fully cross-platform (Win, Linux, macOS)
4. Java (Android app)
5. (re-written) in Kotlin (Android app)
6. iOS Swift & InterfaceBuilder & Xcode
7. PWA (Progressive Web App) HTML5, JS, which allows iOS users to "download" the app and run it from an icon on their phone desktop (as if it is an app)
I'm kind of a weird-o and like whatever I'm working with at the time.
As a matter of fact, I usually fall in love with whatever tech I'm currently working with.
So, I really do not judge anything.
But I'm very likely a jack-of-all tech & master of none.
|
|
|
|
|
raddevus wrote: I'm kind of a weird-o and like whatever I'm working with at the time. Yeah but the weirdos are the most interesting people. Normal is boring.
raddevus wrote: But I'm very likely a jack-of-all tech & master of none. There's a place for that too. Sometimes you need to go wide (horizontal) with your knowledge rather than deep (vertical). Both directions give someone insight the other direction doesn't have. The ideal situation is we humans learn to work together with peeps going in a different direction than the one they chose. Ideally.
Jeremy Falcon
|
|
|
|
|
Jeremy Falcon wrote: ...C# was a rip off of it (MS hired Java devs)... A fact for which I send kudos to MS for the vast improvements they made in their version of Java (C#). E.g., 'getters' and 'setters' as class properties rather than functions.
There are no solutions, only trade-offs. - Thomas Sowell
A day can really slip by when you're deliberately avoiding what you're supposed to do. - Calvin (Bill Watterson, Calvin & Hobbes)
|
|
|
|
|
Oh, totally unrelated side note... even though React popularized the concept of a virtual DOM for speed, turns out there are quicker ways these days. Still, it's not a bad way to go, just there is new juice in the blender these days.
Jeremy Falcon
|
|
|
|
|
I'm replying here first...(after reading your longer & interesting post).
I have done non-react DOM update via vanilla JS -- see the app at: Track Your Core Competencies (app) for yearly review[^]
ala document.createElement("input")
It was actually kind of terrible and React would've done a much better job but once I wrote that I understood far better the benefits of React -- which helped me understand that React is very cool.
|
|
|
|
|
Oh, I should say I'm not referring to vanilla JS DOM updates... sorta. There are frameworks such as Svelte that contains all its framework logic in the build step. So, it produces native code for the runtime. They claim to be faster than a virtual DOM (I haven't verified this though) since there's no runtime penalty at all.
I haven't looked into it, but the the virtual DOM from React does incur some overhead. However, the benefit of using something in-memory to determine deltas far outweighs the cost. Still, if Svelte figured out a way to handle deltas for updates without a VDOM then that would be pretty cool... if it's true. Haven't used it yet.
Jeremy Falcon
|
|
|
|
|
There's really no "one thing" that's driving me crazy, and React is crap because javascript is crap, and writing web apps is crap.
I'm a desktop programmer. I like being a desktop programmer. Everything else is crap.
".45 ACP - because shooting twice is just silly" - JSOP, 2010 ----- You can never have too much ammo - unless you're swimming, or on fire. - JSOP, 2010 ----- When you pry the gun from my cold dead hands, be careful - the barrel will be very hot. - JSOP, 2013
|
|
|
|
|
I started out reading the book Programming Windows 3.1 by Charles Petzold. Wow, it's readable on archive.org[^]
My first IDE was was Visual C++ 1.0 -- it was not Visual Studio yet.
I continued on thru Visual C++ 6.0 and then into Visual Studio & C# from the beginning in 2000 (pre-release).
Oh, the days of WinForms...
It was quite wonderful to be "pwned" by One True Company (Microsoft, of course).
And you probably think I'm being sarcastic, but I'm really not.
Microsoft set a Standard for Desktop Development and though we Devs were "kind of pwned" they were a benevolent dictator and we knew there was One Place to go for the answer.
Now everything's in fragments (JS Libraries ugh!)...but this is what they call freedom.
####### UPDATE ##############
I was reading the Preface to Programming Windows 3.1 and I stumbled upon the hardware reqs that Petzold lists:
To best run Windows and the development tools, you need the following hardware:
■ An IBM personal computer (or compatible) based on the Intel 80386 microprocessor with a hard disk and 4 megabytes (MB) of memory running MS-DOS 3-3 or later.
■ A graphics display and video board, preferably compatible with the IBM VGA (Video Graphics Array) or better.
■ A mouse. Although a mouse is generally optional for most Windows programs, some of the programs in this book require one.
modified 29-Aug-24 9:23am.
|
|
|
|
|
Did you experience the extended memory cards that required you to plug individual chips into them? Or the math co-processor chips? Or the IBM PC clone compatibility test using Flight Simulator?
I miss those days, and at the same time, I don't.
".45 ACP - because shooting twice is just silly" - JSOP, 2010 ----- You can never have too much ammo - unless you're swimming, or on fire. - JSOP, 2010 ----- When you pry the gun from my cold dead hands, be careful - the barrel will be very hot. - JSOP, 2013
|
|
|
|
|
#realJSOP wrote: the extended memory cards that required you to plug individual chips into them
I was right at the tail end of that and basically always had 1Meg & 4Meg SIMMS
#realJSOP wrote: Or the math co-processor chips
Yes, for sure.
486sx meant no coprocessor DX had the coprocessor.
And I believe there were coprocessor chips for 386s that you could add, right? But few people had those.
I was building / selling PCs at a small sole proprietor store in 91.
I would call h/w sellers and haggle over buying 1MEG SIMMS for $20 (to be sold at $40).
I remember buying 100MB - 170MB HDDs and thinking customers would never fill them up.
I also remember my first 14,400 modem at the time which I used a couple of times to connect to a local BBS which I didn't even understand. Not long after I was connecting via AOL on the 14.4K modem.
|
|
|
|
|
My first 20mb hard drive cost over $800, and I had to use g=c800:5 in the debugger app to low-level format it. Friends told me it was pointless because I'd never fill it up. My first modem was an AppleCat 300 baud. I don't miss the slow speeds at all.
I grew to hate Basic when I had my very first computer - an Atari 400.
".45 ACP - because shooting twice is just silly" - JSOP, 2010 ----- You can never have too much ammo - unless you're swimming, or on fire. - JSOP, 2010 ----- When you pry the gun from my cold dead hands, be careful - the barrel will be very hot. - JSOP, 2013
|
|
|
|
|
#realJSOP wrote: I grew to hate Basic
All those freaking line numbers. Sheesh!
And make sure you leave space (between line numbers) so later when you add code.
|
|
|
|
|
realJSOP wrote:
I don't miss the slow speeds ate all. Smile |
I hate things that eat my code or my data
CQ de W5ALT
Walt Fair, Jr.PhD P. E.
Comport Computing
Specializing in Technical Engineering Software
|
|
|
|
|
#realJSOP wrote: I'm so ready for retirement... me too... (and I am 15-20 years younger than you)
M.D.V.
If something has a solution... Why do we have to worry about?. If it has no solution... For what reason do we have to worry about?
Help me to understand what I'm saying, and I'll explain it better to you
Rating helpful answers is nice, but saying thanks can be even nicer.
|
|
|
|
|
I have the same feeling about all "modern" languages that are essentially C derivatives--whether it's C++, Java, Javascript, Rust, etc.
It's the same old approaches with the same old problems and the same old restrictions and the same gotcha's...just called something different.
Quite frankly, I don't like any of those languages because they miss one essential element: Understandability.
I want to be able to look at a piece of code and "grok" it within a few seconds without having to be an 50 year veteran guru in the language.
But...that's just my opinion.
|
|
|
|
|
Finally...Someone speaks the truth.
|
|
|
|
|
Coming from a C# background, I fell in love with javascript and reac5lr. But yeah, the limitations of react are starting to get to me. But, I've recently discovered solidjs. Hear me out, imagine react done well. Give it a whirl. Components only render once. Signals for state. It looks really interesting.
|
|
|
|
|
I cut my teeth on programming back in the late 70's. I appreciated strongly-type languages, like Pascal, and the regimentation of C++. I never learned to like Basic, and, well, you know how I feel about javascript...
".45 ACP - because shooting twice is just silly" - JSOP, 2010 ----- You can never have too much ammo - unless you're swimming, or on fire. - JSOP, 2010 ----- When you pry the gun from my cold dead hands, be careful - the barrel will be very hot. - JSOP, 2013
|
|
|
|
|
I had the same trajectory, but in the late 90's. Yet, I find typed languages to be dry now. JS is the wild west and once you learn your way around the minefield, its fun, for me at least.
|
|
|
|
|
I'm pretty sure my coworkers were laughing at some potty humour but I wasn't privy to that.
GCS/GE d--(d) s-/+ a C+++ U+++ P-- L+@ E-- W+++ N+ o+ K- w+++ O? M-- V? PS+ PE Y+ PGP t+ 5? X R+++ tv-- b+(+++) DI+++ D++ G e++ h--- r+++ y+++* Weapons extension: ma- k++ F+2 X
The shortest horror story: On Error Resume Next
|
|
|
|
|
Are you saying you had nothing to go on?
"These people looked deep within my soul and assigned me a number based on the order in which I joined."
- Homer
|
|
|
|
|
I'm saying I'm tired of feeling like a number two
GCS/GE d--(d) s-/+ a C+++ U+++ P-- L+@ E-- W+++ N+ o+ K- w+++ O? M-- V? PS+ PE Y+ PGP t+ 5? X R+++ tv-- b+(+++) DI+++ D++ G e++ h--- r+++ y+++* Weapons extension: ma- k++ F+2 X
The shortest horror story: On Error Resume Next
|
|
|
|
|
Wasn't that Abba's less successful follow-up to "Super Trouper"?
"These people looked deep within my soul and assigned me a number based on the order in which I joined."
- Homer
|
|
|
|
|
No, It's just a stall.
CQ de W5ALT
Walt Fair, Jr.PhD P. E.
Comport Computing
Specializing in Technical Engineering Software
|
|
|
|