Is JavaScript A Good Language?


#1

As the title says, I am wondering a few things about this Language. JavaScript is my first programming language and is the only l programming language I know. I am a beginner. Here are the things I want to know below.

1: Is JavaScript good for beginners like I keep hearing?

2: What are some of the things you can do with JavaScript?

3: What are some of the cons of JavaScript?

If there is anything in this thread that makes it to where I need to move it or change it, let me know and I will.


#2

Try some tutorials and they will tell you from the start what's the pros and cons. There are tens of tutorials and sites out there, but I recomand you just one: khan academy. It will teach you all you need to know about JavaScript.

Have a nice day!


#3

@GabrielMarius

Thank you very much for the reply. I use KhanAcademy, Codecademy and two others to teach myself programming smile


#4

1) Yes good for beginners and after
2) You can do a loooooot of stuff, actually all front-end of the games here are in javascript, so yeah, load of stuff.
3) There is really not so much cons about js, maybe it a little verbose, try coffescript to see the difference. And with JUST javascript, you will find that you might missed some of the good utility functions, but it can be fixed with some awesome libraries like underscore or lodash.

Javascript is awesome, powerful and sometimes confusing, but it comes with a great range of libraries which enhance it.


#5

@CvxFous

Awesome! Thanks for the comment, I shall continue to learn JS.


#6

GUYS!
Please add Coffeescript - it should be really easy. (I can write a manual how to do it smileone script to include to your website - and that's all - you have new language!

As for me - best script language for today and a lot of people who would like to use it!

THANKS!


#8

In fact, what is your experience in programming if you say such crazy things? 1 year? ))

CoffeeScript is a great language and javascript is ugly and difficult comparing to coffeescript.

And I do not want to discuss it here,
I propose to people here add it to the list of languages, it's easy and many people will use it.


#9

Well, I'd say it depends, lets make clear that JavaScript is a scripting language smile

  1. If you like it the hard way, go with C and then C++, if prefer it easier I'd recommend Python and Ruby, but as a general advise, go learning the concepts of objected oriented programming, then learning a new language is just a matter of syntax, more or less
  2. Front-End website stuff, Back-End server stuff with NodeJS and cross platform apps with apache cordova for example
  3. A lot, but google might help better with this question

#10

  1. JavaScript is pretty ease to learn, has a good comunity and support and a lot of online free courses. (FreeCodeCamp.com is a great one and was not mentioned yet)

  2. This is the best part

    • Front End Web Development -> JQuery, Angular, React, etc
    • Back End Web Development -> With nodeJs, that have a great community, good packages and tools and performance
    • Mobile Development -> Apache cordova / PhoneGap (using the same FrontEnd Web code base (with adjustments of course))
    • Desktop Application -> Yes, really (I'm no kidding) With GitHub Electron / nw.js you can create amazing desktop apps like VSCode, Atom, PopCornTime (RIP), and a lot more
  3. It is a script language, so you dont have compiling errors, and manage a JSCode base can be really hard. Has a dificult debuging sometimes, but nothing that take off its pros


#11

Thank you so much for replying to my post @felipe_caputo. This really helps me understand what it does and I will continue to learn it smile.


#12

I do javascript every day. I use it for my works for a massive frontend application. I also use it for some backend structure and fast scripts to help me (if i need a script for a server or as a dev tools, i'm faster at javascript coding than using bash or something else).

In my opinion, if you want to do web development, javascript is a must have. You can't do without it since browsers rely on it. But for backend technologies, you have better. At the moment, Java is way better than NodeJS for a backend. But i suppose it all depends of your skills in Java.

I can't say for Mobile and Desktop Application. I already tried boths with javascript and did some really cool things. But that's not my main domain.


#13

Well, I am not an expert in JavaScript but here is what I think :
1. I do not think so. Javascript is made to always continue running, even if there are mistakes. This is nice is you want to do code for a webpage but it is not good for more advanced features. If other languages such as python, Java, Scala, ... use strong typing, it is not without reason. Giving too much freedom to the programmer is dangerous, expecially with a beginner who will make a lot of mistakes. When you do short programs, it is ok to do easy thing quickly, but when you want to write longer programs, you need to organize yourself. Being a bit constraint helps you to focus on a program which will work. Of course, you can do these things in javascript as you can also do really dirty things in any languages but I think you are too free with javascript and so I you do not know how to program, you will get lost. If you really want a script language, try python which is more useful and force you to have cleaner code (like indentation ! Do not forget indentation !). Otherwise, you can try Java, which has a huge community. Scala is a beautiful version of Java, with functionnal programming as a main features. C/C++ is a bit complicated to begin, and gives too much freedom (even it is useful). If you really want a language that will force you to understand what you do, try OCaml. It is not that much used but you will understand what it means to be constrait smile
2. Web, mainly. You can write quickly code to make a website prettier or even small games (try phaser.io for that)
3. I think I answer that in the first question. I do not thing it is the most awful language but it is good to have the a language used by everybody on the Web. A lot of choices in the language design are strange but as everybody use it and as there is a lot of code written, no one wants to take the risk to choose an other language. It is a bit like Java : when you see some of the language feature, you say just : what ?!? After a moment, you understand that it was a mistake but as Java is retrocompatible, it cannot be corrected that easily. So, you see new features in the later versions of Java that try to compensate the problems, but there are still huge gaps (like for the generics and the way there are used by the JVM).

We can discuss a lot about what is a good language or not and which one is the best. I think it depends a lot of what you want to do with it. I think that just wanting to learn how to program is a good thing. If you are curious, try different language and make your own opinion.