Angular, React, and Blaze

If I may ask a stupid question, and coming late to the party it might be.
What is the reason to drop Blaze for Angular/React? Why cant Blaze be the React/Angular replacement? From my 2 weeks of tinkering and evaluating Meteor i find it totally awesome! What are the pressures causing Blaze to be made to seem “sub-par”, is it due to the backers of each of the tech? Can it not be monetized? Being green behind the ears with it, it seems to me it would be the selling point for Enterprise Meteor.

1 Like

I didn’t get any level of certainty from this message. Is MDG still working to improve Blaze or not? Are you simply maintaining its current state while working to improve Angular/React-Meteor until they are up to par with Blaze, then focusing exclusively on Angular/React once that happens?

3 Likes

I think the recent turmoil in this community comes from people not wanting to have their time wasted. I, for one, don’t want to invest enormous amounts of time in a serious project that is built off deprecated things, since it likely means those things will no longer be maintained. It’s a form of waste and I don’t have unlimited resources or bandwidth to spend flip flopping my projects around different technologies and playing with code that really has nothing to do with providing users with real world value so please just give a definite answer. As one member of the community has mentioned, it would be extremely helpful if MDG gave a list of intended or proposed developments for Meteor this year or for the next several months.

5 Likes
  1. Blaze 2 looked like React (don’t re-invent the wheel)
  2. MDG doesn’t have the resources
  3. Lack of SSR, no default component model, no adoption outside of Meteor, less maintainable for teams, lower re-render performance
  4. Unlikely to be worth the effort

Shame there’s still so much uncertainty on development of Blaze etc. Should really have been cleared up by now…

Thank you for continuing to treat Blaze as a first-class citizen in the Meteor framework.

@gschmidt I’m actually happy to hear this news. Thanks MDG for keeping Blaze.

But please can you clarify this statement?

We’re going to continue improving support for other view layers (Angular and React) until they’re at parity with Blaze, including the Guide. In the longer term, we expect that most of the usage will gradually shift from Blaze to Angular and React. How long MDG maintains Blaze will depend on how much usage Blaze continues to get in the community, especially among our business customers.

Because this sounds for me like the exact opposite of this statement from you:

Speaking as MDG, we are going to continue making Blaze our main recommendation for new apps in Meteor, while also standing behind Angular and React for those that prefer them.

Thank you

1 Like

Where did you get this idea? :astonished:


It’s simple actually:

After calls from the Meteor Development Community for Tracker and Blaze to be treated as a first class citizens (meaning, for bugs to be fixed, enhancements to be made, and for both packages to be broken out into NPM), @gschmidt answered by twisting this on its head: He called for MDG to continue working to make React and Angular first class citizens (instead of Blaze) on par with Blaze, and when MDG thinks sufficient parity has been achieved they’re going to drop Tracker and Blaze from first class citizen status. See what he did there? :unamused:

Listen, MDG has already made up their mind – they’re all in on React. That’s fine and it’s their call to make since, with the relatively limited number of Meteor users, and even fewer Meteor users that actually care about Blaze, no one in that pool has the inclination or bandwidth and know-how to make much fuss over it.

Anyone that has an issue with MDG’s choice has a decision to make, suck it up and make the switch to React or go to the few if any alternatives. MDG understand this, which one reason why they feel comfortable making drastic changes (such as this, but it won’t be limited to this I can assure you) at this point in time.

:smile:

1 Like

When is MDG going to stop flip flopping and stick to a specific path? This is what the Rails community keeps warning newbies about when venturing into Meteor. At least with Rails you know where you stand and have an idea of what is coming down the pipe.

Most applications don’t need React in the first place. Unless you’re building amazingly complex UI’s, on the scale of Facebook, you generally can ignore React. Seeing React popping up all over the place where it isn’t needed is just overkill. So many static sites are using React, just to say they are using React. Why? Epeen.

Stick to Blaze. It’s what helped sell your platform in the first place. Don’t let investors influence your decisions. Let the feedback of your users help forge your path. Focus MDG, focus.

5 Likes

imho

There’s a right tool for every job, and right now Blaze seems like a pretty good tool for some jobs. Maybe the time will come when it becomes obsolete but until then the fact remains: it’s a great tool!

If one day my hard work churning out apps in Meteor+Blaze, or whatever stack seem fit, would turn into gold, then that work will probably be modified, refactored, analysed, torn apart, rewritten and retested many, many times, eventually turning it into a completely new beast, using whatever tools best fit for the job and the requirements.

At this point, rushing to decision on whether this or that framework, stack or technology will provide the best toolset or the least amount of sweat in the future sounds an awful lot like premature optimisation to me.

And we all know how premature optimisation turns out :wink:

5 Likes

@hamatek +1 ad infinitum for @arunoda and everything he has accomplished within the Meteor.js community per my post and many more I have made thanking him for his many contributions over these last few years.

1 Like

-1 likes

There are plenty of options if you want to tinker on the weekend, and expecting MDG to support your hobby for free is an absurd notion. That’s why hobbies are called hobbies and not businesses.

Plus, we’re not talking large multi-national conglomerates… we’re talking small dev shops who need meteor to be dependable.

2 Likes
  • Yes
  • Of course

We shoudl continue this way

I would say that its not wise never to give up Blaze because:

  1. I think Blaze is one of key things that have hooked people in Meteor, because it gives you a fast start when you have first spotted Meteor in GitHub. I dare to say that if people would of started with React tutorial many of them gave up first ten times. However I have not had time to learn React yet, so I cannot say this 100% sure.

  2. MDG people in this post said that money and the audience is the reason why they are going after React and Angular, however Enterprise is always looking for LTS and many companies have gave up Angular because what happened between Angular and Angular2. Enterprise people have always talked that will the Meteor apps work for the next ten years. On the flip side React can be expected to be a long-term technology as Facebook is built with it. I think you are doing it right as you are adopting the technology that is used by facebook, but I would say that combo should be Blaze and React. Some people just has to hear Angular these days and they are gone.

  3. Blaze is just fucking awesome. It works for the most of the apps and its fast. I love the way that I can fast layer multiple helpers inside each other {{#each}} in tempalates and use events+this functions to update small piece of data. I love the way of using {{> }} to embed template for example replacing the username with picture. Just think of it.

  4. When you get Apollo, GraphQL and stuff working in reactivity mode for all data sources, many persons in field are going to test it with their database, what would be the better and easier way to get people in the scene than providing them reactivity to their database and Blaze that can push the data to HTML elements and D3 charts.

Indeed - Blaze was the first thing I saw when I started Meteor and I was like :scream:. React also has me like :scream: but in a different way.

1 Like

I had the same “reaction”…

Evidently, the promise by MDG to open Blaze to the community, has stalled. At least according to posts in the Blaze repo recently.

Can someone please comment on the status of Blaze? We need this fully opened up to the community so we can advance the state of the art.

MDG is working towards opening it up. With 1.5 everything is to be split up into npm packages and communities like Blaze will be able to build and push changes independently.

1 Like

As @energistic mentioned, Blaze development is more or less stalled until the push to npm happens (there are a lot of comments in the Blaze repo about holding off on further development until the cutover to npm happens).

With regards to the npm cutover, MDG has a few hurdles to address. @zoltan summed these issues up nicely here:

There are big questions around how exactly dependency resolution might work within an app that mixes both npm and Atmosphere packages. Consider if we ‘move’ Tracker into npm (however that may be). What happens to the many (including blaze) Atmosphere packages that depend on tracker. Maybe we create an Atmosphere shim package that uses the npm package behind the scenes. But then what happens with packages on the npm side that depend on a different version of Tracker? It’s impractical to build a constraint solver that operates over both package systems.

We’ve been thinking about these questions in detail and no great solution has thus far emerged. We’re currently focused on releasing Meteor 1.4 as soon as possible at which point we’ll pick this problem up again.

So far, MDG has been reluctant to point the community in a particular direction lest it be the wrong one and folks end up doing a bunch of redundant work. I’m sorry if this has come across as a frustrating void in communications.

Regarding community contributions - we’re still really excited and are 100% behind the community taking the lead on Blaze from a feature development point of view. In fact, one of the key things we’re shipping in 1.4 is the unpinning of core package versions which will enable the community to release new versions of blaze without any involvement from MDG.

1 Like

I am having really hard to time figuring out how Angular or React can ever be easier and faster than Blaze for basic app development. I say one of these two should go along with Blaze, but I am not convinced that choosing them both over the Blaze is a right solution.

I just hope MDG solution is the right one…Because it is the first principle that never change something that works, because why to change something that is already good? :nerd: It’s like having a good pair of shoes for maraton, but you still buy new ones before the race and they break your feet.

2 Likes

What about Polymer and webcomponents :o

Check out Meteor Synthesis (Meteor + Polymer Web Components).