{"id":440970,"date":"2022-05-02T22:02:23","date_gmt":"2022-05-02T19:02:23","guid":{"rendered":"https:\/\/en.buradabiliyorum.com\/javascript-web-apps-arent-going-anywhere\/"},"modified":"2022-05-02T22:02:23","modified_gmt":"2022-05-02T19:02:23","slug":"javascript-web-apps-arent-going-anywhere","status":"publish","type":"post","link":"https:\/\/buradabiliyorum.com\/en\/javascript-web-apps-arent-going-anywhere\/","title":{"rendered":"#JavaScript Web Apps Aren\u2019t Going Anywhere"},"content":{"rendered":"<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_84 counter-hierarchy ez-toc-counter ez-toc-custom ez-toc-container-direction\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">Table of Contents<\/p>\n<label for=\"ez-toc-cssicon-toggle-item-6a2de19d30a1a\" class=\"ez-toc-cssicon-toggle-label\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #dd3333;color:#dd3333\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #dd3333;color:#dd3333\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/label><input type=\"checkbox\"  id=\"ez-toc-cssicon-toggle-item-6a2de19d30a1a\" checked aria-label=\"Toggle\" \/><nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-1'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/buradabiliyorum.com\/en\/javascript-web-apps-arent-going-anywhere\/#%E2%80%9CJavaScript_Web_Apps_Arent_Going_Anywhere%E2%80%9D\" >&#8220;JavaScript Web Apps Aren\u2019t Going Anywhere&#8221;<\/a><\/li><\/ul><\/nav><\/div>\n<h1><span class=\"ez-toc-section\" id=\"%E2%80%9CJavaScript_Web_Apps_Arent_Going_Anywhere%E2%80%9D\"><\/span>&#8220;JavaScript Web Apps Aren\u2019t Going Anywhere&#8221;<span class=\"ez-toc-section-end\"><\/span><\/h1>\n<div>\n<img loading=\"lazy\" decoding=\"async\" class=\"type:primaryImage alignnone wp-image-794200 size-full\" data-pagespeed-lazy-srcset=\"https:\/\/www.howtogeek.com\/wp-content\/uploads\/2022\/03\/chrome-logo.png?width=398&amp;trim=1,1&amp;bg-color=000&amp;pad=1,1 400w, https:\/\/www.howtogeek.com\/wp-content\/uploads\/2022\/03\/chrome-logo.png?width=1198&amp;trim=1,1&amp;bg-color=000&amp;pad=1,1 1200w\" sizes=\"auto, 400w, 1200w\" data-pagespeed-lazy-src=\"https:\/\/www.howtogeek.com\/wp-content\/uploads\/2022\/03\/chrome-logo.png?width=1198&amp;trim=1,1&amp;bg-color=000&amp;pad=1,1\" alt=\"Google Chrome logo.\" width=\"1200\" height=\"675\" src=\"\/pagespeed_static\/1.JiBnMqyl6S.gif\" onload=\"pagespeed.lazyLoadImages.loadIfVisibleAndMaybeBeacon(this);\" onerror=\"this.onerror=null;pagespeed.lazyLoadImages.loadIfVisibleAndMaybeBeacon(this);\"\/><\/p>\n<p>Most websites and web applications are written in Java<a href=\"https:\/\/buradabiliyorum.com\/en\/category\/download-scripts-themes-apps\/\" data-internallinksmanager029f6b8e52c=\"9\" title=\"Download Scripts &amp; Themes &amp; Apps\" target=\"_blank\" rel=\"noopener\">Script<\/a>, or at least something that is converted to JavaScript. There have been many attempts over the years to change that, but don\u2019t expect JavaScript to completely go away anytime soon.<\/p>\n<p>Zaplib is a startup company that created a framework for rewriting parts of JavaScript-based web applications in the Rust programming language, which would then run in web browsers using WebAssembly. Rust is a low-level programming language optimized for performance and safety, and many applications have used Rust to significantly improve load times and responsiveness. Mozilla rewrote the CSS engine in the Firefox web browser using Rust in 2017, as part of the \u2018Firefox Quantum\u2019 update, which <a rel=\"nofollow noopener\" target=\"_blank\" href=\"https:\/\/hacks.mozilla.org\/2017\/09\/firefox-quantum-developer-edition-fastest-firefox-ever\/#:~:text=today%E2%80%99s%20Developer%20Edition%20is%20twice%20as%20fast\">doubled Firefox\u2019s typical performance<\/a>. WebAssembly allows sites to write their code in more traditional programming languages, like C++, and run it inside a web browser just like JavaScript.<\/p>\n<p>Zaplib hoped that rewriting web applications in Rust-powered WebAssembly, one section at a time, would result in performance boosts as much as 10x. However, the company\u2019s founders said in a \u2018post-mortem\u2019 that the massive jumps didn\u2019t quite pan out. \u201cOur bet was that it would be 10x more ergonomic to speed up your app, incrementally, in Rust. This did not hold up in real-world implementations,\u201d the team said.<\/p>\n<p>The group noted a few problems with its plan. Most companies were (understandably) hesitant to rewrite their code in a language their engineers might not have been familiar with, but more importantly, there wasn\u2019t a significant speed difference between good JavaScript code and good Rust code. Zaplib helped one company port a simulation tool to Rust, which only ended up being 5% faster than the existing JavaScript version. Zaplib also hoped its hardware-accelerated 2D renderer would help, but most of the performance boost there came from WebGL, which doesn\u2019t need Rust or WebAssembly at all.<\/p>\n<p>This doesn\u2019t mean WebAssembly is terrible or unhelpful \u2014 <a rel=\"nofollow noopener\" target=\"_blank\" href=\"https:\/\/web.dev\/earth-webassembly\/\">Google Earth<\/a> and <a rel=\"nofollow noopener\" target=\"_blank\" href=\"https:\/\/web.dev\/ps-on-the-web\/\">Photoshop<\/a> were both ported to web browsers thanks to WebAssembly, and companies like Microsoft are building frameworks for more developers to make the same transition. There\u2019s absolutely a reason for it to exist, but JavaScript has also evolved significantly in the past few years. The \u2018V8\u2019 engine that handles JavaScript code in Chrome, Microsoft Edge, and other Chromium-based browsers is constantly becoming faster. Recent optimizations made Chrome the fastest web browser available on the Mac, according to Google, and other changes have sped up the Windows and Android versions too.<\/p>\n<p>WebAssembly is already bringing a new wave of applications to the web that couldn\u2019t have existed a few years ago, but don\u2019t expect all JavaScript to go away anytime soon. Zaplib said in its post, \u201cthere are usually simpler ways to find performance improvements than Rust [or WebAssembly].\u201d<\/p>\n<p><small>Source: <a rel=\"nofollow noopener\" target=\"_blank\" href=\"https:\/\/zaplib.com\/docs\/blog_post_mortem.html#-zaplib-post-mortem\">Zaplib<\/a><\/small><\/p>\n<\/div>\n<p><script>\n setTimeout(function(){\n  !function(f,b,e,v,n,t,s)\n  {if(f.fbq)return;n=f.fbq=function(){n.callMethod?\n  n.callMethod.apply(n,arguments):n.queue.push(arguments)};\n  if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0';\n  n.queue=[];t=b.createElement(e);t.async=!0;\n  t.src=v;s=b.getElementsByTagName(e)[0];\n  s.parentNode.insertBefore(t,s) } (window, document,'script',\n  'https:\/\/connect.facebook.net\/en_US\/fbevents.js');\n   fbq('init', '335401813750447');\n   fbq('track', 'PageView');\n  },3000);\n<\/script><\/p>\n<blockquote><p><strong><span style=\"color: #ff6600;\">If you liked the article, do not forget to share it with your friends. Follow us on\u00a0<span style=\"color: #ff0000;\"><a style=\"color: #ff0000;\" href=\"https:\/\/news.google.com\/publications\/CAAqBwgKMLG0nwswvr63Aw\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Google News<\/a><\/span>\u00a0too, click on the star and choose us from your favorites.<\/span><\/strong><\/p><\/blockquote>\n<blockquote>\n<p style=\"text-align: center;\">For forums sites go to <span style=\"color: #ff9900;\"><a style=\"color: #ff9900;\" href=\"https:\/\/forum.buradabiliyorum.com\/\" target=\"_blank\" rel=\"noopener\">Forum.BuradaBiliyorum.Com<\/a><\/span><\/strong>\n<\/p><\/blockquote>\n<blockquote>\n<p style=\"text-align: center;\"><strong>If you want to read more like this article, you can visit our <span style=\"color: #ff9900;\"><a style=\"color: #ff9900;\" href=\"https:\/\/en.buradabiliyorum.com\/technology\/\" target=\"_blank\" rel=\"noopener\">Technology category.<\/a><\/span><\/strong><\/p>\n<\/blockquote>\n<p><span style=\"color: black;\"><a style=\"color: #ff9900;\" href=\"https:\/\/www.howtogeek.com\/802588\/javascript-web-apps-arent-going-anywhere\/\" target=\"_blank\" rel=\"noopener\">Source<\/a><\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>&#8220;JavaScript Web Apps Aren\u2019t Going Anywhere&#8221; Most websites and web applications are written in JavaScript, or at least something that is converted to JavaScript. There have been many attempts over the years to change that, but don\u2019t expect JavaScript to completely go away anytime soon. Zaplib is a startup company that created a framework for&#8230;<\/p>\n","protected":false},"author":1,"featured_media":440971,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"fifu_image_url":"https:\/\/www.howtogeek.com\/wp-content\/uploads\/2022\/03\/chrome-logo.png?height=200p&trim=2,2,2,2","fifu_image_alt":"","footnotes":""},"categories":[18],"tags":[],"class_list":["post-440970","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-technology"],"_links":{"self":[{"href":"https:\/\/buradabiliyorum.com\/en\/wp-json\/wp\/v2\/posts\/440970","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/buradabiliyorum.com\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/buradabiliyorum.com\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/buradabiliyorum.com\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/buradabiliyorum.com\/en\/wp-json\/wp\/v2\/comments?post=440970"}],"version-history":[{"count":0,"href":"https:\/\/buradabiliyorum.com\/en\/wp-json\/wp\/v2\/posts\/440970\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/buradabiliyorum.com\/en\/wp-json\/wp\/v2\/media\/440971"}],"wp:attachment":[{"href":"https:\/\/buradabiliyorum.com\/en\/wp-json\/wp\/v2\/media?parent=440970"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/buradabiliyorum.com\/en\/wp-json\/wp\/v2\/categories?post=440970"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/buradabiliyorum.com\/en\/wp-json\/wp\/v2\/tags?post=440970"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}