Get Even More Visitors To Your Blog, Upgrade To A Business Listing >>

Why We Chose Node.js Over Deno?

Posted on Jun 9 • Originally published at amplication.com After the introduction of Node.js in 2009, it quickly gained strong momentum and wide adoption, making it the de-facto standard for writing server-side Javascript apps in the 2010s decade. Then, when Ryan Dahl - the creator of Node.js no less - introduced Deno in 2018 in his controversial JSConf EU talk titled "10 Things I Regret About Node.js", it seemed like Node.js' reign was at risk.When we started Amplication in 2020, focusing on JavaScript backends (well, TypeScript, but that's a story for another blog post, perhaps), we had to decide - are we going with the veteran Node.js, or are we going with the new, shiny and fast-growing kid on the block - Deno.Our decision may surprise some of you, but it was easy for us to make it - we chose Node.js over Deno. Moreover, in 2020, this was a more obvious choice. However, if I had to go back to that decision today, it's still clear that we would have made the same decision!This article gives an overview of the platforms, history, performance, security, and all other critical features provided by each runtime environment and shows how Node.js is still the king of JavaScript/TypeScript backend runtime environments.Node.js is a server-side JavaScript runtime built on the V8 engine from Chrome, which was introduced in 2009 by Ryan Dahl and has since become one of the popular server-side JavaScript runtimes. Developers have widely adopted Node.js due to its scalability, performance, and vast ecosystem of libraries and frameworks. Most companies prefer Node.js as server-side runtime because JavaScript can also be a scripting language for building client-side applications.As of 2023, Node.js has evolved well and is a popular and widely used JavaScript runtime environment for building server-side applications. Many companies use Node.js and enjoy strong community support on the Internet. In April of 2023, the latest Node.js version, version 20, was released. The most significant update for Node.js 20 was introducing a Permission model that actually follows Deno, where users can explicitly mention runtime permissions such as filesystem access or restricting worker threads. Node.js comes bundled with the stable version of WebCrpto API, HTTP/1.1 KeepAlive by default, and many other noticeable updates.Noticeable Node.js pros include:While some cons of using Node.js are:In conclusion, Node.js is an excellent choice for building web applications and APIs due to its exceptional speed, scalability, and JavaScript ubiquity. With its vast ecosystem of libraries, frameworks, and tools available via NPM, developers can rapidly create robust applications. The active and supportive community surrounding Node.js ensures ample resources for learning and problem-solving. While some limitations exist, such as single-threaded execution and potential callback complexities, developers can mitigate them with modern JavaScript features and architectural patterns. Overall, Node.js empowers developers to create high-performance applications efficiently, making it a compelling option for modern web development.Deno is a newer JavaScript runtime introduced in 2018 by Ryan Dahl, the same creator of Node.js. Deno is targeting some of the shortcomings of Node.js, including security concerns and the lack of built-in support for modern JavaScript features. Deno is built on the Rust programming language (with Tokio runtime), focusing on default security measures. Deno consists of several components Node.js lacks, such as a built-in module system, support for TypeScript out of the box, and the ability to import modules directly from their URL.The state of Deno as of 2023 is that Deno has gained significant traction and is becoming a popular alternative for developers, even though Node.js is still the dominant player in building server-side applications. Deno is quickly getting the attention of developers and catching up. Its module system allows dependency management and versioning, an advantage for large-scale projects.Noticeable Deno pros include:While some cons of using Deno are:Node.js and Deno have significant differences in architecture and features. Some key points to look at here are maturity, security, community support, and TypeScript support.All in all, both Node.js and Deno are remarkable frameworks for building server-side JavaScript apps. However, Node.js is still the first choice for most developers over Deno to create server-side JavaScript apps. With a vast community and many companies using Node.js, it constantly evolves with new features; Node.js is still the ultimate game changer in building server-side JavaScript apps.Pro tip: If you're building modernized Node.js apps and services, and are looking for a simple way to develop and maintain your application via microservices, consider using tools like Amplication to rapidly improve your development efficiency and productivity to create faster release times!Thank you for reading!Templates let you quickly answer FAQs or store snippets for re-use. Are you sure you want to hide this comment? It will become hidden in your post, but will still be visible via the comment's permalink. Hide child comments as well Confirm For further actions, you may consider blocking this person and/or reporting abuse MedCode - May 30 Scofield Idehen - May 30 Scofield Idehen - Jun 6 Leonardo Montini - Jun 5 Once suspended, amplication will not be able to comment or publish posts until their suspension is removed. Once unsuspended, amplication will be able to comment and publish posts again. Once unpublished, all posts by amplication will become hidden and only accessible to themselves. If amplication is not suspended, they can still re-publish their posts from their dashboard. Note: Once unpublished, this post will become invisible to the public and only accessible to Muly Gottlieb. They can still re-publish the post if they are not suspended. Thanks for keeping DEV Community safe. Here is what you can do to flag amplication: amplication consistently posts content that violates DEV Community's code of conduct because it is harassing, offensive or spammy. Unflagging amplication will restore default visibility to their posts. DEV Community — A constructive and inclusive social network for software developers. With you every step of your journey. Built on Forem — the open source software that powers DEV and other inclusive communities.Made with love and Ruby on Rails. DEV Community © 2016 - 2023. We're a place where coders share, stay up-to-date and grow their careers.



This post first appeared on VedVyas Articles, please read the originial post: here

Share the post

Why We Chose Node.js Over Deno?

×

Subscribe to Vedvyas Articles

Get updates delivered right to your inbox!

Thank you for your subscription

×