Live data from Hacker News

FOAM: New JavaScript Framework by Google Engineers

github.com

31–40 of 115 posts

Re: FOAM: New JavaScript Framework by Google Engineers

#31

On the demos page http://foam-framework.github.io/foam/foam/demos/DemoCat.html All the links to "Source" take me to GitHub 404. I would suggest this is the most important part of showcasing a new project.

Until this is fixed, the source files for the demos are available here: https://github.com/foam-framework/foam/tree/master/demos

Re: FOAM: New JavaScript Framework by Google Engineers

#33

Oh boy, yet another JavaScript framework. Colored me unimpressed; angular, backbone, ember, angular 2.0, react, etc. I feel like they're just reinventing the same wheel with a different spin. I wish people would actually spend their time creating a really revolutionary "framework" instead, better yet a programming environment, which would redefine how we write web programs. I'm envisioning a way to create software, w…

It's frustrating that this is the top comment on the thread, because it could have been written without reading anything about this Javascript framework.

Ironically, it's exactly on stories like these --- new Javascript frameworks, CSS templates, and the like --- where in-depth HN comments are most useful. I clicked the story, read it for 2 minutes, thought "you know, the top comment on the HN thread for this is probably going to tell me all I need to know about this framework", and instead found your comment.

Re: FOAM: New JavaScript Framework by Google Engineers

#34

Oh boy, yet another JavaScript framework. Colored me unimpressed; angular, backbone, ember, angular 2.0, react, etc. I feel like they're just reinventing the same wheel with a different spin. I wish people would actually spend their time creating a really revolutionary "framework" instead, better yet a programming environment, which would redefine how we write web programs. I'm envisioning a way to create software, w…

> I'm envisioning a way to create software, where while having a conversation with another person, we could collaboratively draw some shapes on the screen, connect them, then my program comes to life, evolves, scales up, scales down, etc.

I am glad there are others who are looking into this same approach to build software. We are currently building just this. http://www.dhi.io

We want building web ui's to be as simple as having a conversation with another developer about the requirement.

Re: FOAM: New JavaScript Framework by Google Engineers

#35

Oh boy, yet another JavaScript framework. Colored me unimpressed; angular, backbone, ember, angular 2.0, react, etc. I feel like they're just reinventing the same wheel with a different spin. I wish people would actually spend their time creating a really revolutionary "framework" instead, better yet a programming environment, which would redefine how we write web programs. I'm envisioning a way to create software, w…

React is pretty revolutionary. It turns rendering code into a simple pure function, which is a necessary step for where you want to end up.

Benchmarks for React tell a different story. It's like two orders of magnitude slower than multiple alternatives. If you are performance critical, React is not possible to use in production, and likely will never be considering Facebook's development practices.

Re: FOAM: New JavaScript Framework by Google Engineers

#36
This is a bold take on a problem that a lot of people have written away as reinventing the wheel. But color me impressed!

Unlike almost every other Javascript framework we've so far seen, FOAM makes the data model the primary entity in the system, which is a good idea. In the typical UI-driven development of web applications, the data model often gets modified without much thought and causes cascading complexity across the rest of the system. A lot of the convoluted UI code that I've written could've been kept simple by keeping the data model sane by finding and utilizing equivalences, making implied meaning explicit by extracting names, and normalizing/denormalizing the data appropriately. A data-structure driven development approach should help a lot here.

FOAM also implements another item from my wishlist: being able to see all the UI representation of any given piece of data in one place. It achieves this by keeping all possible templates for a piece of data directly in its object. (http://foam-framework.github.io/foam/tutorial/4-templates/)

In general, this looks like the most declarative (as in, define your business requirements instead of writing imperative code) way of building web applications that I've seen yet. I would like to see what new ideas this library can bring into the 'Perfect UI Framework' conversation, but past experience makes me skeptical of any implementation that overly relies on metaprogramming. Metaprogramming can take us maybe 50% of the way home, but programming unfortunately is often an art in the minutiae. UI code is especially prone to this problem: things that have to deal with humans cannot be absolutely symmetrical all the time, which is where any overly declarative approach to building software breaks down. I often look back to this quote by DHH as a reminder of the dangers in generalization:

    On the surface, the dream of components sounds great 
    and cursory overviews of new projects also appear to be 
    "a perfect fit". But they never are. Reuse is hard. 
    Parameterized reuse is even harder. And in the end, 
    you're left with all the complexity of a swiss army 
    knife that does everything for no one at great cost 
    and pain.
    - DHH ca. 2005
Also, template based UI frameworks are IMO a relic of the past, of which I'm convinced by the way templates are defined imperatively using code in React. In templating, the UI is a String, but UI should be Code because code is awesome.

Re: FOAM: New JavaScript Framework by Google Engineers

#38

Earlier quoted context omitted.

React is pretty revolutionary. It turns rendering code into a simple pure function, which is a necessary step for where you want to end up.

Benchmarks for React tell a different story. It's like two orders of magnitude slower than multiple alternatives. If you are performance critical, React is not possible to use in production, and likely will never be considering Facebook's development practices.

I've deployed two applications to production that use React and in neither has React created a performance bottleneck. Both of them are heavily used in mobile, too. And they work wonderfully.

Benchmarks don't mean much when you're shipping real software to production.

Re: FOAM: New JavaScript Framework by Google Engineers

#39
It does not seem a new thing, rather an old one just migrated it to Github.

It has 8,474 commits. The first commit (and also the first issue on Google code) dates back to Jul 30th 2012. And it was just the first public release, not an empty commit (43 files).

(first issue: https://code.google.com/p/foam-framework/issues/detail?id=1 )

Post reply on HN