Codecademy Best Site for Learning Javascript

Not sure if this was mentioned before. But this should be a sticky!

I found this site a week ago http://www.codecademy.com and I have been learning a LOT about javascript and have been able to apply what I learned into Unity. I strongly recommend it.

It starts off for beginners, shows the absolute basics and gets pretty complex after about 100 courses. Its free and online. Just wanted to share with others who are as interested in learning Javascript as I am.

Big note on this one:
JavaScript for Web is in now way related to Javascript for Unity. This site teaches Javascript for Web.
It is a clunky decision by Unity, but Unity’s Javascript is not Web JavaScript, does not share the same syntax, features, speed, underlying mechanics, etc… Do not confuse the two. That said despite my preferences against Web Javascript, it’s still a useful language to know.

Ntero, I didn’t know there was a difference in the language. I thought Javascript was Javascript. It’s strange because the code I use works. Maybe I’ve just been lucky. I guess I should find another source for learning Javascript? How would I know if Im learning Javascript for web appose to javascript for Unity?

Unity’s JavaScript was made by Unity, and so you will only see tutorials for Unity’s JavaScript when it’s directly talking about using Unity.

I believe the naming clash has to do with the Unity wanting to advertised using known languages. C# and Boo are well known languages, and their own Scripting language has a syntax similar to JavaScripts (though under the hood it’s drastically different), so they advertised it as JavaScript so it looked good for marketting.

If you want to learn Unity’s JavaScript, your only choice is Unity based tutorials/learning resources, which is why I normally suggest for people who don’t know either language to focus on C#, because there are magnitudes more resources that are not Unity related than are with regards to programming. And many of the Unity resources can also be multilingual or in C# as well(Boo is somewhat rare).

Ntero,

I see what you mean. I actually just started reading this link that explains a lot about Unity’s JS:
http://www.unifycommunity.com/wiki/index.php?title=Head_First_into_Unity_with_UnityScript

Im going to take your advise and start learning C#. Since C# is widely used. Im just afraid that since its more difficult Im going to run into far more headaches and problems.

It’s not more difficult, but it is more verbose. Javascript does things behind the scenes for you, and so it can make C# look intimidating with all it’s: public class MyClass : public MonoBehaviour stuff, or how it handles StartCoroutines, but once you learn the syntax(or explicitly declare things in Javascript), it becomes much easier to read your code after it’s written and understand what it’s doing and why it’s doing it, which is a very good thing.

There is more to write in C#, and a few more symbols/keywords that may not be instantly recognizable, but they are both written very similarly and operate nearly identically, so one is not really harder than the other, beyond about the first day of learning.

Teriander if you want some great video tutorials on writing UnityScript.
Go to www.unity3dstudent.com

Also I agree, UT has confused a lot of people with the language name. In fact I’d go so far as to say they ditch the language altogether and we all live in a world of C# with tutorials in C#, examples in C#, and everyone on the forums speaking C#! Talk about a unified platform for making games, a unified language would be nice too!

C# is more complex for people coming from a non programing background. i think learing C# strait up would be alot more daunting then learning unity script then learning c# as syntax in unityscript is tonnes easyer IMO then C#.

Now boo thats something that dosent need to exist :smile:

I still think learning C# with the intellisense is easier than the javascript without it.

Every time that intellisense window pops up people can get a better idea of what an object is and what it can do. Whereras Javascript you are coding blind.

I really honestly don’t see how C# is more difficult. It gets you into good habits early as well. If anything about it was harder the difference would be negligible, like a week extra time to learn/adapt if that.

Also we’re not living in the old days of computer books, there are countless videos, tutorials and forums to support those learning that make things a lot easier than they were 10-15 years ago. Also the languages have gotten better. If somebody wants to learn a language there is no better or easier time than now to do so.

I still think learning C# with the intellisense is easier than the javascript without it.

Every time that intellisense window pops up people can get a better idea of what an object is and what it can do. Whereas Javascript you are coding blind.

I really honestly don’t see how C# is more difficult. It gets you into good habits early as well. If anything about it was harder the difference would be negligible, like a week extra time to learn/adapt if that.

Also we’re not living in the old days of computer books, there are countless videos, tutorials and forums to support those learning that make things a lot easier than they were 10-15 years ago. Also the languages have gotten better. If somebody wants to learn a language there is no better or easier time than now to do so.

Hmm, I think makes it easier to learn the API if you already know how to program, but if you’ve never programmed before intellsense isn’t so useful.
In my opinion the best language to learn to program in is the one language for which you can find the best tutorials. This may turn out not to be the best language to structure a large project but I also think its much easier to learn to program in another language if you’ve already learnt basic programming concepts.

I had a look at the Code academy tutorials and they’re pretty good. The examples are slightly boring but the interactive step by step approach could be good if you’ve never programmed before. If you’re in this position I wouldn’t worry about the differences between UnityScript and Javascript. They’re not that large and most of the stuff you learn will be directly applicable.

Of course, what would be ideal is if Unity were to hire Code Academy to write a “Learn programming with unity” course in a similar way. As far as I know most of the Unity tutorials assume you have a basic programming knowledge. A dedicated course would get round this problem and attract a large number of people who would then think of Unity as the “the programming environment I know best”.