Searching for Blaze gurus

Thanks! Job demand aside - if we talk about React components, isn’t it just replacement of CSS components, which are plenty and framework-independent? I think even in 5 years the quantity and quality of CSS components will not be beaten by React.

Thanks for feedback and good luck with your SaaS! I am also considering Vue path.

Versatility for me is not the target, I would rather choose efficiency.

Yeah we have a big production all in Blaze. It’s an ERP-type app with a cart, order, and payment modules and features for purchasing, receiving, fulfillment, fraud, shipping, referral program and more. Probably one of the largest apps done in Blaze. It’s a mess and we hate working in the codebase. For the past couple years we developed new features in React to bring some sanity to the project, but it’s still 95% Blaze.

Now we are redeveloping the app into smaller, discrete serverless service apps with Vuejs + GraphQL and microservices.

Meteor was a trailblazer and we had a good run with it. But Vue combines ideas from Blaze, React, Polymer and other frameworks to deliver a truly exceptional developer experience for creating and maintaining complex components.

We continue to use handlebars for email templates. It’s much better suited for that kind of task that for building and maintaining web UI.

I agree with @tomsp

I would hire a React developer for my Vuejs project before I’d hire a Blaze developer.

If your looking for a Meteor mentor, contact @serkandurusoy he’s a very personable, knowledgeable and passionate educator. We’ve been working with his for years.

3 Likes

Thank you @maxhodges for the shout out.

And @Volodymyr yes, as you see from the general reaction here, although blaze/spacebars is still quite versatile, robust and feature complete for rapid prototyping, it has fallen behind in its 3rd party component/library ecosystem as well as performance comparisons, and has not generally benefited from overall advances in the javascript space.

For the more forward-looking ui codebases, you should consider react and vue.

I’d say spending a little time (perhaps a few days to a week) to learn react and its general ecosystem (redux, react router) and best practices (immutability, data flow, component oriented design) will most definitely help you train yourself to be more savvy of general ui development.

You can then take that knowledge, explore vue (a few days would suffice) and then decide which one works better for you.

Of course, there are some other comparison metrics between the two and the way they provide solutions to specific problems such as (native) mobile, server side rendering, static site generation, 3rd party component/library ecosystem, and some qualitative comparisons for their core governance and community involvement models etc.

My take is that there’s no right and wrong in this. Whichever one you choose, you will not have made a mistake. The main issue for the past few years in javascript library/framework space has generally been the javascript fatigue where a once leading framework becoming almost obsolete over the course of a few months, yet both react and vue have proven that they’d far outlive your codebase, at least its current/upcoming iteration through at least a couple refactor cycles across at least a couple years.

A lot of people would say that vue is extremely easy to pick up and become productive with.

And a lot of other people would say that react is generally pure javascript and a set of best practices, therefore it pays off to learn and use it.

If you are suffering from what’s called analysis paralysis and finding yourself overwhelmed with the amount of information and the strength of arguments on both sides making it hard to choose, seriously just flip a coin and like I’ve said, you will not have made a mistake :slight_smile:

Edit:
I’d also like to link back to a post from @hwillson

I think this is a good summary of where blaze is today. I myself tend to prefer react and advise new apps to begin with either one of react or vue, but the matter of the fact is, it is not going to be blaze or react or vue that’s going to make or break it for you :slight_smile:

5 Likes

…Even a developer who has been writing components properly in Blaze since the dawn of time? If so, I’m curious why.

Few examples I know of from my little corner of the world:

1 Like

$500 to learn react? LOL

I have bought this course off udemy for $10 and it took me about 2 weeks to finish it, yet, solid experience come with practice.

redux was confusing, so I ended up using another library called undux https://undux.org/, which has similar API to Meteor Sessions.

2 Likes

Thanks for links! You are right that such offline courses are good when you do not have the guts to take focus on something. One of my friends even does not like video courses, he thinks that books are better but I think videos are a good balance between offline education and books.

As @serkandurusoy mentions, React is very Javascript intensive, so I think an accomplished React dev would generally make a stronger Vue dev than someone coming from the more template-oriented Blaze. Learning the template language is the easy part. The differences can especially become apparent when you get into Flux-like state management.

Actually an accomplished React dev would probably make a better VueJs dev than your average Vue dev :wink: (A lot of people come to Vue from PHP, so they have little node experience)

My another guess is that Blaze attracts visually-oriented people.

I’m a fan of template vs pure render functions for most cases! This might be interesting:

but personally I prefer Vue without Meteor. Vue isn’t just a template system, it’s a reactivity system. Vue’s approach to data is opinionated enough that a Meteor <> Vue integration is a bit of a kluge.

2 Likes

If you guys use Blaze, you should really try out Reval!


4 Likes

Good points, Max, but that was kind of evident already. What I meant was this: React gives you the tooling and the constraints to build components. Blaze doesn’t and never did.

To build reusable components in Blaze the way now one can easily do in React requires a shift of thinking that goes way beyond simple familiarity with the templating language. Also requires a good eye for data flow architecture. All these point to good discipline and solid knowledge of vanilla JavaScript, and to me that is of much more value than the React experience. Hence the question.

Everybody’s so excited about components in React, I am a bit puzzled - are there are really good components that go beyond GUI (which can be dealt with by CSS components)? Could you provide some examples? I mean, I have seen one in Meteor Kitchen - react-currency component but isn’t npm is also about it?

And is it really really could not be done before and cannot now be achieved without React?

React has made components extremely popular (a good thing). People think that React is the best way to build components (a bad thing - the jury deliberates constantly on this one).

Componentising is more about a way of thinking than about a software framework or library. You can build smart components in vanilla JS. Just try a Google Search.

Don’t side with any tribe. Pick something you’re comfortable with and work. The product is more important than the stack.

2 Likes

Sure, thanks for focusing on right direction, would you suggest some reading, close to Meteor or/and Javascript on these topics?

2 Likes

@Volodymyr here’s a funny and very educational read: https://hackernoon.com/how-i-converted-my-react-app-to-vanillajs-and-whether-or-not-it-was-a-terrible-idea-4b14b1b2faff

1 Like

or not

This package does a ton of hacks and I can make no guarantees about its stability or the backwards compatibility of future version.