Menu Icon Close
App Development

9 Myths About Meteor JS That You Should Definitely Avoid

9 myths about Meteor JS
February 24, 2016
By admin
Reading Time: 5 minutes

Meteor is a full-stack JavaScript development platform for the modern Web Applications development and Mobile Applications development. It is said that “Meteor JS is to Node JS as Rails was to Ruby”. NodeJS is the server side version of JavaScript which uses google chrome V8 whereas Meteor is a platform for developing isomorphic JavaScript apps. Isomorphic Javascript apps are Javascript applications that can run on both client side and server side. The backend and the frontend share the same code so it becomes to see results in real time. Currently, the meteor version that has been rolled out is Meteor version 1.2.1 and the Meteor version 1.3 beta has already been announced. Many developers believe that when it’s easier to start with a full-stack framework, the faster you will hit the wall when the app becomes more specific.

But this is not the case, here are some of the myths that many new Meteor JS users face:

M1: Meteor JS has Authentication issues

To authenticate a user on the app, Meteor provides an “Account” package that handles things over DDP, security, sessions revocation, reset the password and many more things. Meteor is all about DDP. This is not a major issue as the client hardly requires API endpoints, which is a major requirement if you don’t want to talk on DDP.

M2: With Meteor JS you cannot shut down your app

Many Developers complain that the server cannot be shutdown gracefully. But this is the world of cloud, apps can crash anytime, so we need to design apps like this so they don’t crash and there is no need to shut them down. Apps are written for Heroku already have to deal with this from the beginning. This is not something new for developers, so it’s hardly a problem.

M3: Meteor has subscription scalability issues

MeteorJS has this issue that if you want to access the data form the Client-side then, you need to subscribe to the MongoDB collection. The server then tails the oplog to detect changes and pushes the new data to the client. Well this is not entirely false, as subscribing too much is the problem of the app, Meteor has this nice data caching features on the server, that you don’t need to interact on the client side. There are some workarounds for this as all you need is a reactive DB support.

M4: The applications are not real time

This is a complete fallacy; all the applications are real-time by default. Lately many applications like Twitter, Facebook are moving towards a near real-time web, and users will demand from other apps as well to provide a real-time experience. Meteor has real-time built into its core. When you update your database, the data in your templates also gets updated automatically. In MeteorJS you just build a web application as you normally do, and out of the box it just happens to be real time.

M5: You need to specialization in multiple languages at the client and server side

One of the most frustrating parts of being a Web developer is you may require specialization in multiple languages to develop an interface where the client and server can interact with each other seamlessly. You need to think of the frontend, the backend, the data base, and there are many other things that squeeze in-between to make things more complex for you. Surprisingly in terms of MeteorJS, you don’t need to learn multiple languages, you can create anything with the just one-line code. For Example, if you want to insert a Blog Post then all you need to type is:


BlogPosts.insert({
Title: ‘Hello World’,
Content: ‘This is sample content.’,
Published: true
});

This doesn’t require any special treatment. You write one line of code and are provided with a boat-load of functionality in addition to being able to use a familiar syntax throughout the development cycle.

M6: Smart Packages is of no help

Many developers complain that they should be able to add packages in the traditional way, i.e. first to create a database of users and then deploy that on the platform. But this approach is wrong as it wastes a lot of time, what if this can be done in just a single line code like that in Meteor JS. In Meteor the accounts can be created in as a simple way as

Meteor add accounts – password

This is all you need to do to create an account with a password. This is the advantage of smart packages. Suppose if you want to let your users sign in through their twitter account then all you need to do is:

Meteor add accounts – twitter

This will allow users to sign in through their twitter account. Developers may complain that this reduces their flexibility, but as long as the purpose is solved and we don’t need to do more research-based indexing it’s better to stick to Meteor JS.

M7: The Beginners in the Web Development should avoid Meteor JS

This myth is predominantly very much irrelevant, developers feel that before trying your hands on Meteor, they should first try their hands on Node JS (containerize an application), which is a more basic form of developing apps. The node itself is just a low-level framework providing functions for sending and receiving HTTP requests and performing other I/O whereas Meteor JS has a client and server interface, thus whatever changes are made on the server that automatically reflects on the Client side.

M8: The learning curve is too steep

Many of the old developers argue that the learning curve of Meteor JS is too steep and it is very difficult for any newbie to learn Meteor JS. This is completely false, as anyone can learn meteor JS and you can start rolling out apps within hours. Many of the technology companies have contemplated that earlier when it used to take them months to roll out a multi-functional app while using traditional platforms, now it hardly takes them a couple of weeks using MeteorJS platform.

M9: Meteor JS apps do not work well with SEO

Another Myth which developers need to avoid completely. Meteor works fine with SEO and in some cases, it has been proven that it performs far better than building on other platforms. All you need to do is to install spiderable packages and to deploy the modules you will be requiring phantom JS. While some say that this is not 100% perfect solution, but things will improve over time when options like server-side rendering will come into existence.

Conclusion

While writing this article, the meteor is still in its nascent stage, with the current version that is rolled out is still at 1.2.1. They have already announced the meteor JS 1.3 beta version. But you can’t expect that all the big companies with a big budget will shift to this technology overnight. The shift will happen as tools will become available that allow small teams and individual developers to make real-time applications quickly and easily. There are also many other advantages of MeteorJS in terms of Security and the Meteor forums. The Meteor forum is pretty active and helps a lot of in terms of building your app. As they say it in the Meteor world “It’s fun doing programming with Meteor, but it’s only up to the companies to adopt it.

TAGS :

Invest in better
solutions today

Contact Us