Launching a JS compiler : how to deal with strong expectations about NectarJS

Adrien Thierry
codeburst
Published in
4 min readJan 10, 2018

--

A month ago, we published an article on Medium regarding NectarJS, our JavaScript compiler project. We were explaining the project, his genesis and where we are yet.

With more than 18000 reads, near 300 keys distributed, more than 450 stars on Github and around 70 people on slack, we can tell that the result is amazing.

To be honest, we didn’t expected such a viral buzz and we are delighted by this result and all the supportive comments and good reactions we received.

However in the days following the publication of the article, we immediately understood that creating such expectation is a big honor but also a big challenge especially for an early stage project like ours.

Here’s how we decided to address them.

Technical expectations

It’s logical for developers to have questions and attempts about this kind of project, even if developing a tool like this takes a lot of time for a small team and if it became fastly difficult to answer to everyone on a large field of questions.

Considering the number of technical issues, we decided to etablish two technical priorities :

- Providing a complete documentation.

We decided to work full time on a Documentation which will cover NectarJS client, supported modules and API, to make developers able to create their own modules in C or other languages.

In a near future, we want to add modules or pieces of code from different languages, and also to compile them (like Go,Ruby, or even Python) directly with NectarJS.

- Implementing Require.

Require is a function coming from NodeJS ecosystem and very useful to import modules. It is really important that NectarJS supports this feature to be compatible with NodeJS ecosystem.

To be as compatible as possible with NodeJS and let people compiles NodeJS applications, we are working on this function to improve it significantly and support a maximum of NodeJS features and modules.

Business model expectations

We first wanted to address this expectation later in the project but regarding all reactions we have understood that licensing question was problematic and that we had to clarify the big talk about price now.

Let’s be clear : the compiler is free for the moment and probably forever.

Selling licences when the compiler would be in beta sounded a good idea in order to answer the funding problem of the launch of this project because right now we haven’t got enough resources to be as fast as we want.

However we aim to explore different ways to finance this project in a lean approach : gathering informations and feedback from the market and making the best move to launch this project succesfully.

For example, we are looking at the marketplace model which would allow people to share, and/or sell their work on NectarJS for any purpose : IOT (Arduino, Chips, Raspberry), Smartphone (Android, iOS), Desktop apps (Windows, Linux, Mac), Web Apps (WASM, ASM.JS), DApps (Lisk, Truffle, Iex.ec), and much more.

Blockchain expectations

Surprisingly, some of the comments were not only about JS compilation, but on blockchain and cryptomining perspectives, that we already witnessed since few months and especially on the cost of cryptomining.

We know that some people uses web app / browsers plugins to mine Monero or others. These algorithms are written in JS, but are not as efficient as they could be. With NectarJS, we could compile them in WASM for optimising it and reduce ecological cost of blockchain.

We should gain between 10% and 30% on mining rates (following mathematicals benchmarks we made), which is really promising. We also plan to make a bridge with CUDA / OpenCL libraries.

Blockchain revolution

To go further in our reflection, we reflected how blockchain can strengthen applications security. For example, some people cloned Angry Bird, putting in it a malware, and sent overtaxed sms . We want to make that impossible by sealing applications in the blockchain. That’s something possible with NectarJS. In addition, some people made us discover Lisk, a full JS blockchain project we find amazing.

Community

As we say before we want NectarJS to become a tool that help people to develop for everything, with everything, and we know that it’s impossible without bringing together a large community around NectarJS.

If you want to help us you can subscribe on slack here : http://api.nectarjs.com:3000/

You can always test NectarJS in your browser here : NectarJS Sandbox

We will continue to explain our journey in further articles and still listening the awakening community.

Thank you for supporting us,

Adrien

--

--