1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

Confused about all of the different JavaScript technologies available

Discussion in 'HTML, Graphics & Programming' started by Cromulent, Aug 26, 2018.

  1. Cromulent

    Mobster

    Joined: Nov 1, 2007

    Posts: 2,684

    I've always done server-side programming in Python and have never really done much on the client side, so my JavaScript knowledge is abysmal. I want to fix that, but I'm perplexed.

    I want to be able to do the client side and the server side all in JavaScript, so I don't need to worry about changing language depending on what side of things I am working on. I know enough to know that I need to use Node.js on the server side, but there is a whole host of technologies available which I find quite confusing.

    Bower, Grunt, Gulp, Webpack, React, Express, Angular, Backbone, jQuery, Underscore etc. There are far too many to list, and I have no idea what I should start off with.

    Can anyone recommend a technology stack that works for both server and client side programming, please? I'd also like to make sure I am using Docker for CI/CD and of course I'll be using Git and Gitlab for source code control.

    I'd like to use something that makes use of the most up-to-date web technologies available. I'm not interested in supporting older browser versions. I'll only be supporting the absolute latest browsers, so I'm not worried about things not working in Internet Explorer for instance.
     
  2. jakspyder

    Mobster

    Joined: Aug 12, 2008

    Posts: 2,987

    Location: Edinburgh

    node.js isn't really like front end JS. The technologies you listed are a mix of frameworks, package managers and preprocessors. The entire JS/front end ecosystem is a minefield of mess and confusion. There isn't really a single solution or tech stack, its very situational and preference based. Read up on react, vue and angular as front end frameworks. Pick on that interests you or sounds the most engaging, while learning about that framework, the relevant tools related to it will usually be mentioned such as webpack and how that plays into things. Personally i liked vue.js as i found it the easiest to mentally wrap my head around (side note, im lame at JS and ended up avoiding web dev like the plague).

    Docker is quite simple to pick up, so it might be worth just running through some docker basics first so you can easily sort your development environment. If i was honest, attempting to pick up all these technologies at once you're going to lose the plot (in the JS world, you may well just lose the plot anyway!). Something like open source github + travis CI (free for open source) + docker is one tooling set that remains powerful but free and fairly easy to pick up.

    I'd possibly try and learn node.js in isolation from front end work too, keep the front end to normal HTML/CSS for now and learn node. Honestly i'd just sack it all in and take up knitting. good luck! :p
     
  3. FloatingPoint

    Gangster

    Joined: Feb 9, 2017

    Posts: 161

    Eventually it’ll all come full circle back to Action Script.
     
  4. mid_gen

    Sgarrista

    Joined: Dec 20, 2004

    Posts: 7,559

    Location: Düsseldorf

    This thread has triggered PTSD flashbacks to when I had to write some tools in JS a couple of years ago

    *shudder*
     
  5. Cromulent

    Mobster

    Joined: Nov 1, 2007

    Posts: 2,684

    I'm going to try out a front-end framework first I think. This might sound backwards, but I'm used to doing web development in Python using the Django web framework so by using a front-end only JavaScript framework I can get up to speed with JavaScript much quicker. Backbone.js looks like an interesting one to start off with. It might help me make nicer interfaces in my Django apps.
     
  6. Dj_Jestar

    Caporegime

    Joined: Oct 18, 2002

    Posts: 28,279

    Location: Back in East London

    Backbone is old. The author recommended picking up something like Vue.js, Google's Angular, or Facebook's React frameworks instead - and I agree. I used Backbone for years, it was pretty amazing when it came out, but now the three I just listed really do supersede it in nearly every way.

    I recommend trying Vue.js first. It has the least amount of configuration required to get running and, in my opinion, has the cleanest API, templating of the three.
     
    Last edited: Sep 7, 2018
  7. chroniclard

    Sgarrista

    Joined: Apr 23, 2014

    Posts: 8,512

    Personally I am loving Angular(6, soon to be 7) at the moment, currently writing a system in it. However its just for the UI. Back end is .net core web api and sql server. :)
     
  8. Cromulent

    Mobster

    Joined: Nov 1, 2007

    Posts: 2,684

    Thanks. I'll look into Vue.js. It sounds like an interesting option.

    I've wanted to get into ASP.NET Core now that it is cross-platform as I do most of my development on Linux. I'll also look into Angular.
     
  9. chroniclard

    Sgarrista

    Joined: Apr 23, 2014

    Posts: 8,512

    Problem is there are hundreds of ways of achieving the same thing these days. Pick a few popular ones, have a read about them, do some hello worlds. Pick the one you like the best. :p