DEV Community

Ben Halpern
Ben Halpern

Posted on

What are the latest trends in front-end JavaScript?

What are the newest popular ideas and/or projects? What's trending up and what's trending down?

Top comments (49)

Collapse
 
etresoft profile image
John Daniel

Which would be better? To receive a nickel for every time someone says jQuery is trending down or passé? Or to receive a nickel for every time someone uses jQuery to solve a problem?

Regardless of any nickel distribution rates, those two actions are consistently two of the top trends in front-end Javascript.

Collapse
 
6temes profile image
Daniel

At my day job, I work in a Rails + React/Redux app and it is really fun to work with.

On the other hand, I just started a side project and the amount of hours I can spend on it is limited Because of that, I chose to "go back" to the regular Rails with some sprinkles of jQuery for some animations and I must say that, not only it makes my life really easier, but it also allows me to develop really faster.

Collapse
 
stefandorresteijn profile image
Stefan Dorresteijn

I've worked with people who used jQuery to solve ReactJS problems. I don't think jQuery is every fully going to disappear.

Collapse
 
ethanarrowood profile image
Ethan Arrowood

I wonder what problems they are solving. I've found using the native DOM api much more efficient and easier to maintain than using jQuery. Also I think React has exposed a new document model api so I can't imagine there is any use for jQuery in React.

Thread Thread
 
stefandorresteijn profile image
Stefan Dorresteijn • Edited

There really isn't any use for it but people stick to what they know. In this case it was about Bootstrap functionality being called from React components using jQuery instead of the React Bootstrap packages.

Thread Thread
 
vitalcog profile image
Chad Windham

"There really isn't any use for it but people stick to what they know"

This, and only this is the explanation of people using Jquery now days. (okay there are also some occasional "it makes it easier for me to support IE" situations, but still...)

Collapse
 
vitalcog profile image
Chad Windham

"I don't think jQuery is every fully going to disappear"

Well, there are still COBAL jobs around. And Jquery was literally used in 90+% of EVERYTHING on the web for a long time. So it will stick around for a very, very long time. (Combined with the fact that some developers will keep using it because "$() is so much less work than document.querySelector()" )

I've personally been in the dev world for a very short amount of time. And I've already met several developers who, ultimately, are pretty darn good devs, but still can't make a web page without Jquery. They just haven't been able to adapt. I never want to be that person...

(Those same devs also tend to suck at modern CSS, like display: flex/grid for layout stuff, and HAVE to use bootstrap...)

Thread Thread
 
jenc profile image
Jen Chan • Edited
And Jquery was literally used in 90+% of EVERYTHING on the web for a long time.

I missed that boat...

Thread Thread
 
stefandorresteijn profile image
Stefan Dorresteijn

Be glad, it was not a great time for frontend development

Thread Thread
 
jenc profile image
Jen Chan

What is wrong with Jquery? An extra 200kb never killed any page no?

Thread Thread
 
vitalcog profile image
Chad Windham

Nothing is "wrong" with Jquery. But I literally write vanilla JS faster than Jquery (because I don't use Jquery, so I always have to refer to the docs more often.) Modern JS isn't hard. If somebody has to use Jquery because they can't write vanilla JS they are holding themselves back. So for me, an extra 200kb of dead weight I don't use, would bother me.

Collapse
 
vitalcog profile image
Chad Windham

"a nickel for every time someone uses jQuery to solve a problem"

That isn't a trend. That is people being stuck using an older method they are more comfortable with versus using a newer (arguably better) method that they are uncomfortable with.

Collapse
 
etresoft profile image
John Daniel

You are probably right. It is quite common to see people using whatever the latest Shiny New Thing is being blogged about and then having to deal with buggy behaviour, crashes, untested edge cases, and security flaws. I guess I'm "stuck" with my successful and profitable app that I don't have to completely re-test with every update or rebuild from scratch just to impress someone on the internet.

Thread Thread
 
vitalcog profile image
Chad Windham

Yeah sure. I'm actually an advocate of just using the base tech though. The "better" method I was referring was writing javascript without Jquery. If you can't do that then what are you doing? Javascript isn't a "shiny new thing" btw... Didn't mean to offend you.

Thread Thread
 
etresoft profile image
John Daniel

I thought you were talking about angular, vue, react, or any one of a dozen trending frameworks. I have had situations where either I didn't want to include jQuery or I couldn't due to certain technical restrictions. In those cases, writing raw Javascript is the only option. While I can do that if I need to, it is not a good idea to eschew low-cost and low-risk assistance without good reason. Sometimes, that is a hard decision to make, but not with jQuery vs. nothing.

Thread Thread
 
vitalcog profile image
Chad Windham

I have to use frameworks everyday. So that I can get paid. I don't like them very much, but knowing how to use them pays well at the moment. I don't even like CSS preprocessors because they seem useless to me. (Just to be clear, I can and do use them, because work, I just don't like them.)

I've commented in other posts on Dev.to that

Business requirements ≠ trendy frameworks

Most (even at an enterprise level) web app requirements would not be too hard to meet with HTML, CSS and vanilla JS. I think frameworks (while amazing works of software engineering) are VERY overused right now.

"it is not a good idea to eschew low-cost and low-risk assistance without good reason"

Can you give me an example of how using Jquery vs writing modern JS without Jquery is compromising low-cost/low-risk assistance? I have yet to run into a situation that I needed Jquery for (other than business requirement where I had to put in a bootstrap datepicker that required Jquery). But even sanitizing forms/inputs with vanilla JS regex expressions seems pretty quick and easy to me. Jquery is literally nothing special, deep down it is just JS so what is it needed for?

Thread Thread
 
etresoft profile image
John Daniel

I agree with you about the CSS preprocessors. I tried one once and was not impressed.

I think the difference is that I don't get paid. I have my own business. My revenue is direct from my end users. That is an anomaly these days. More importantly, it is a completely different mindset. I don't need to impress anyone with my resume. I don't need to impress clueless managers with buzzwords that they recognize, but don't understand. I don't have a development budget where I can pick and choose tools based on their cost rather than their value. What drives modern technology is almost entirely social. People want to impress with their buzzwords and the size of their budgets. The ideal, sweet spot is a set of frameworks that helps developers advance their careers with Shiny New Things and helps managers maintain a bloated budget to pay for it all. If you are one of the Big Boys, its all just free money after all.

But for me, I pick tools and technologies based entirely on value. It isn't that I'm "comfortable" with old tools or "uncomfortable" with new ones. If I can knock something out with Perl, XSL, XML, or Objective-C with a minimum of time and effort, why would I do something else? That is literally taking food off the table. If jQuery does it and I can hack it up in 5 minutes, why spend the time to roll my own? When I need to do Javascript, jQuery is one of those rare tools that makes problems go away.

Thread Thread
 
vitalcog profile image
Chad Windham

It sounds like we have very similar mindsets. I personally make it a point to not use jquery because I want to be able to code whatever it does just as quickly with modern vanilla JS. But I'm also very intentionally pursuing being really, really good at JS. But that is very specific to what I do and suites my career as a "UI" developer well at the moment. Sounds like you are much more well rounded in your skill set than I am so makes sense to not invest extra time in learning bare bones es6 as a focus.

Collapse
 
khophi profile image
KhoPhi

The only thing I can think of is Progressive Web Apps.

Projects like Ionic pushing PWAs so hard. Google doing same.

Gartner even predicting about 50% of public facing comsumer apps to be PWAs by 2020.

With Safari ramping up to support service workers fully, nothing stands in the way of PWAs becoming massive.

All my web applicationa since last year are PWAs, with one even using Server Side Rendering and the benefits it brings to the table many.

Collapse
 
restoreddev profile image
Andrew Davis

Definitely seeing more and more hype around Progressive Web Apps. Learning how to make a PWA is one of my goals this year.

Collapse
 
gokatz profile image
Gokul Kathirvel

Exactly.., even more with the first class support by Microsoft 😍

Collapse
 
zzzzbov profile image
Timothy

The pipeline operator is becoming a thing (hopefully sooner rather than later).

for await will be nice as well.

Collapse
 
6temes profile image
Daniel

Pipeline operator will be sweet. I really like to use the Lodash/fp compose funtion, but I would be nice if they integrated it in the language.

Collapse
 
dance2die profile image
Sung M. Kim • Edited

I can think of a few things.

☝️ Trending Up

  1. Convention based transpiling (create-react-app, Webpack4, parceljs)
  2. I see many people promoting functional javascript code.
  3. Component based libraries - React, Web Components, etc.

👇 Trending Down

  1. jQuery
  2. 🤔 ...
Collapse
 
oninross profile image
Nino Ross Rodriguez

I am trying to see the benefits of Webpack. The only thing that I can see that is beneficial with it is "tree-shaking" and yet its not off the shelf

Collapse
 
andrewlucker profile image
Andrew Lucker

WebAssembly for Rust is supposed to enter stable release in September. Not Javascript technically, but will probably affect front-end.

Collapse
 
vitalcog profile image
Chad Windham

THIS. To me is exciting. But then I see stuff like Dart, Elm etc. not taking off and I don't know what to think.

Collapse
 
ben profile image
Ben Halpern

Yes absolutely

Collapse
 
aswathm78 profile image
Aswath KNM
  1. PWA's

  2. Online IDE's like stackblitz

  3. Libraries like React after its newer release 16.3 , VueJS

  4. React Ecosystem in total

  5. Serverless Hosting for PWA's and Mobile Apps(AWS AppSync , AWS Lambda and Firebase).

  6. Code Formating (parceljs, prettier etc..)

Thats all I know. Anything Else i missed?

Collapse
 
papaponmx profile image
Jaime Rios

Just GraphQL and Headless Chrome. There is a project called Puppeteer that makes it easier to work with headless Chrome.

It's not entirely Front End but definitely it is a thing.

Collapse
 
lexlohr profile image
Alex Lohr

Up:

  • New JS Standards, both recently established (like service workers, WebRTC 1.0, javascript modules, web assembly) and in the making (JS observables, optional chaining, decorators)
  • Typing/Typechecking in JS
  • Using vanilla HTML/CSS/JS for the initial load and enhance it with a framework afterwards

Down:

  • Supporting outdated browsers
  • next new framework hype
Collapse
 
newtorob profile image
Robert Newton • Edited

Trending up: Vue, GraphQL

Trending down: ~JSON~ Meant JQuery... really low on sleep... I'll add another trending to make up for it

Collapse
 
ben profile image
Ben Halpern

Seriously? What's replacing JSON?

Collapse
 
newtorob profile image
Robert Newton

Lol, my bad, I am low on sleep and saw JSON on my screen, meant Jquery

Thread Thread
 
ben profile image
Ben Halpern

😄

Collapse
 
thesdev profile image
Samir Saeedi

Have you heard of MessagePack?
ASP.NET Core SignalR supports it alongside JSON for server-client communication.

Collapse
 
buinauskas profile image
Evaldas Buinauskas

Leaving reply for a notification. I'm curious.

Collapse
 
nickytonline profile image
Nick Taylor • Edited

I think the camp is divided on this still, but regardless, the adoption of static typing in JavaScript is increasing.

My experience has been with TypeScript, so in this space there are several large projects in OSS land that have been or started using TypeScript. The thread in this tweet names some big ones.

On the Flow side, I have less knowledge of projects using it as I don't really work in that space, but I'm aware that FireFox DevTools and spectrum have embraced types with Flow. If you know of other large OSS projects using Flow, please comment.

Also related...

Collapse
 
tiffany profile image
tiff

Coming from a Java/C background in university this really really intrigues me. It was one of my big hangups context switching, learning web while studying Java. I am interested to see where this goes. There was an article I read by Eric Elliott called The Shocking Secret About Static Types where he basically says that static typing in JavaScript is not necessary and doesn't necessarily reduce bugs.

It is an interesting, albeit controversial, take.

Collapse
 
nickytonline profile image
Nick Taylor

It's definitely not necessary as many have built large scale applications in Javascript before Flow and TypeScript, but in my experience, if you want to scale your team quickly on a project, avoid silly mistakes like typos and be able to refactor quicker, you need something like TypeScript. Couple that with editors that have plugins or native support for TypeScript, and you all of a sudden have a way better developer experience.

I agree partially with him about it not preventing bugs. TypeScript eliminates certain kinds of bugs: runtime errors due to typos, potentially issues related to type coercion and stuff like assigning a completely different type to a variable because these are caught at transpilation (compile) time. Basically a lot of the same issues that would fail at compile time in strongly type languages like C# or Java.

Collapse
 
kayis profile image
K

Things are getting commodotized all the way. Moving thingsfrom front-end devs to designers and from back-end devs to front-end devs, because they are just easier to handle now.

Stuff like Pagedraw could accelerate the UI development (which is the slowest part I think) and also moving it from developers to designers.

Glueing together the back-end with the UI is still a major pain-point that needs to be handled by a dev.

On the other hand, serverless makes back-end development much simpler and allows front-end devs to get into it easier.

This gives back-end devs more time to consider tech that was too hard or time-consuming to learn years ago, like machine learning etc.

Collapse
 
khophi profile image
KhoPhi • Edited

I'm back again. One trending project I forgot to mention is Flutter.

Yes! Flutter.

You welcome!

ps: Currently taking the Flutter course on Udacity

Collapse
 
oninross profile image
Nino Ross Rodriguez

on the top of my head the following:

  1. Progressive web apps - now that Apple has open the gates for service workers
  2. Going back to basics with vanilla JavaScript (and loving it)
  3. The fight of the frameworks/libraries - namingly React and Vue
Collapse
 
vitalcog profile image
Chad Windham

"Going back to basics with vanilla JavaScript (and loving it)"

YES! +1

Collapse
 
iriskatastic profile image
Iren Korkishko

That's a good question, Ben! I'm exactly in the middle of my next JS digest to put all the cool repos I've recently found. There I already see some interesting frontend trends to follow. Hope, I'll manage to finish it this week!

Collapse
 
belhassen07 profile image
Belhassen Chelbi

Definitely PWA .. and tensorFlow.js was released couple of weeks ago ..