Live data from Hacker News

JavaScript Is Enough

geajs.com

11–20 of 110 posts

Re: JavaScript Is Enough

#11
post #4

You wrote and shipped this in three days, eh?

It was likely almost entirely AI-generated but there are two oddities:

- MIT — Copyright (c) 2017-present Armagan Amcalar: It would be an interesting bout of hubris to give yourself a copyright that predates the beginning of the project by 9 years.

- The README lists sizes as "kb" rather than "KB": I find it odd that it would get units wrong unless it was specifically instructed to do so?

Re: JavaScript Is Enough

#12
Two-way props! Yikes! That was a mess in the first version of Angular. I thought the consensus was that two-way props binding just opened the door to difficult to understand side-effect laden code.

Re: JavaScript Is Enough

#13
post #2

[flagged]

No it's not. Stop upvoting AI slop.

not the author of the gea but from what I can see in the readme, the ideas go back to 2017, erste.js and regie were earlier versions of the same concept.

https://github.com/dashersw/erste https://github.com/dashersw/regie

Re: JavaScript Is Enough

#14
Disclaimer: I only read description, did not try to code.

What I like: the smart compiler that determines the actual dependencies, no need to declare them. Apparently the compiler is so smart as to compute the DOM diffs at compile time, which eliminates the need for virtual DOM.

What kills it for me: the two-way binding. The binding should be one-way to preserve your sanity as the project grows. Two-way bindings allow to build highly reactive Ruby Goldberg machines where anything can trigger anything else, and you won't know, because it's just a mutation of a property somewhere, indistinguishable from a non-reactive mutation. Two-way bindings are callback hell squared.

I want one-way data binding, immutability, and basically FRP. The biggest demonstration of FRP's immense real-life success is not React. It's the spreadsheet.

This may be good for small pieces of interactivity. But I likely would go for HTMX for that.

Re: JavaScript Is Enough

#15
post #12

Two-way props! Yikes! That was a mess in the first version of Angular. I thought the consensus was that two-way props binding just opened the door to difficult to understand side-effect laden code.

Two way props make for a nice demo, but are a nightmare to maintain.

Re: JavaScript Is Enough

#16
post #11
post #4

You wrote and shipped this in three days, eh?

It was likely almost entirely AI-generated but there are two oddities: - MIT — Copyright (c) 2017-present Armagan Amcalar: It would be an interesting bout of hubris to give yourself a copyright that predates the beginning of the project by 9 years. - The README lists sizes as "kb" rather than "KB": I find it odd that it would get units wrong unless it was specifically instructed to do so?

That is a remarkably pedantic nitpick. If you're going that far, you should really be complaining that it's not "KiB".

Re: JavaScript Is Enough

#17
post #11

Earlier quoted context omitted.

It was likely almost entirely AI-generated but there are two oddities: - MIT — Copyright (c) 2017-present Armagan Amcalar: It would be an interesting bout of hubris to give yourself a copyright that predates the beginning of the project by 9 years. - The README lists sizes as "kb" rather than "KB": I find it odd that it would get units wrong unless it was specifically instructed to do so?

That is a remarkably pedantic nitpick. If you're going that far, you should really be complaining that it's not "KiB".

I don't think it's pedantry, it's looking for clues as to the age of this.

Re: JavaScript Is Enough

#18
post #12

Two-way props! Yikes! That was a mess in the first version of Angular. I thought the consensus was that two-way props binding just opened the door to difficult to understand side-effect laden code.

Why? Instead of creating an event handler that changes a property you declare same thing as binding. Why this creates more issues than manual event handlers?

Re: JavaScript Is Enough

#19
post #14

Disclaimer: I only read description, did not try to code. What I like: the smart compiler that determines the actual dependencies, no need to declare them. Apparently the compiler is so smart as to compute the DOM diffs at compile time, which eliminates the need for virtual DOM. What kills it for me: the two-way binding. The binding should be one-way to preserve your sanity as the project grows. Two-way bindings allo…

Hi, the author of Gea here. I have a long history of thinking about one- and two-way bindings, and I believe JavaScript as the language has a great solution to this. If you pass an object to a function, it's two-way bound, and if you pass a primitive, it's one-way bound. So I built Gea to replicate this. If users choose to pass an object in a one-way bound scenario, they could create a new object and pass that in, and it would work.

By the way, just as a syntactic sugar, Gea supports function components, too.

Re: JavaScript Is Enough

#20
post #4

You wrote and shipped this in three days, eh?

Hi, the author of Gea here. Gea is built upon the principles introduced by 11 years of history, based on all of the UI frameworks I have authored so far, the most recent of which are erste and regie from 2017-2019. And Gea itself is written over 6 months, the history of which is compressed in the initial commit as I don't believe in populating Github history with crappy commits that alter design decisions and introduce breaking changes. You can imagine Gea was closed source before the 1.0.0 launch, and made only open at the end.
Post reply on HN