Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

JavaScript

Is it my imagination or is the JavaScript section in Treehouse a Snoozee Fest

Usually Treehouse has some pretty lively interesting videos.

The JavaScript dude seems to be Zzzzzzz ZZzzzzzzz

Putting me to sleep. Seems like a nice guy. But the other programming language instructors seem far more interesting, engaging than this section.

19 Answers

Nick Pettit
STAFF
Nick Pettit
Treehouse Teacher

Hi James Bond,

I believe you're talking about JavaScript Foundations, which Jim Hoskins teaches. Is that correct?

This is an older course that was shot some time ago, so it's probably due for a refresh in the next year or so. What did you like about it, and what do you think we should do differently? Any specific portions that could be better?

We've been considering teaching JavaScript and programming via a browser-based game project. Would that be interesting to you?

Nick

Yes Please.

That would be great. Something more lively and engaging would fit the bill quite nicely.

Kevin Korte
Kevin Korte
28,148 Points

Hey Nick Pettit and Jim Hoskins ,

I kinda agree that the Javascript Foundations course is a little rough to get through. I don't think it's Jim though.

It's just a lot of core information to process back to back.

I said this in the other thread about what could make this place better, so for me:

I know Javascript can do some really cool things. But as it is now, it's hard for me to visualize how I'm going to use what is being taught in the Javascript foundations course. So to start out lessons showing some really excellent uses of Javascript to help get us excited that we can learn build this interaction into our own sites; breakdown the major components of that javascript file, and then learn those components one by one.

Essentially your idea of building up to a browser based game accomplishes that. I like seeing the end result first, and than learning and building up to that. It helps me put together the pieces in my mind as I'm learning.

Nick Pettit
STAFF
Nick Pettit
Treehouse Teacher

Hi Kevin Korte,

Thanks for that very detailed and thoughtful analysis! I totally agree: JavaScript would probably be better taught through a project, which is why I suggested we teach it via a simple in-browser game that you create as you learn new programming concepts.

It's a lot of information to take in and hold in your brain's working memory, but applying it in small chunks would be much better.

I'll have to think about this some more, as we might not be able to get to a redux of JavaScript for some time. However, when we do, I'd like it to be a project-focused course.

Kevin Korte
Kevin Korte
28,148 Points

Definitely! I think it might be the hardest language to grasp so far because there are so many moving parts. But it seems a lot of the foundational things that can be learned from javascript translate to other languages.

It's a tough challenge. Being technical enough to teach the moving parts so that we can build custom javascript ourselves, while keeping motivation and excitement high.

Excited to see what is to come.

And Jim makes it look all so easy!

Hmmmm. OK.

So your saying that JS is THE Most difficult language to learn?

You know, for the benefit of your students, and as a review for everyone else, including yourselves, can you give a informal ranking, perhaps a link to which languages are the most difficult and which are the easiest? On the RoadMap of life we have a "Miles to your Destination" - mostly smooth highway, bumpy road, jagged edge, etc. You all seem to be pretty down to earth and I think that this approach, defining how easy a particular language is in terms of this road analogy "Miles to your destination" and the speed at which you can go (e.g. smooth high speed highway vs. jagged cliffside road) can be of enormous benefit to students as well as educators in helping to understand the terrain embarking on.

This is a very good analogy, Road Signs, speed, and length to destination. I realize that you can do this in a nice audio-visual format and it would be wonderful, but can you for the moment inform on how difficult JS is as opposed to Python as opposed to Ruby on Rails. Zero to Hero Clocking speed. I think some clarity is required in terms of the terrain the student is dealing with, its lengths, and the final destination (e.g. make APPS, make WebSites, General programming)

TreeHouse is on the right path, but I think a little more user friendly navigation of "The Road Ahead" would be fabulously useful. Again, just fire off something quick in text in terms of JS vs. Ruby vs. Python and the terrain, speed, length of the road, final destination. Thanks.

Ummm Nick. You do intend to eventually answer this, Yes?

Nick Pettit
STAFF
Nick Pettit
Treehouse Teacher

Hi James Bond,

Sorry for the slow reply! All of these languages require a pretty equal level of effort to learn, so no, we don't have any plans right now to rank languages by difficulty. It also depends a lot on your previous experience. For example, if you've learned one programming language, picking up the next one will be easier.

We do rank Projects and Deep Dives from Beginner, Intermediate, and Advanced. I would look to that as your guide. Does that make sense?

hmmm No, does not, since other sites DO Rank and rank it pretty nicely. Let me show you.

If they can do it, you can do it.

hmmm No, does not, since other sites DO Rank and rank it pretty nicely. Let me show you.

https://www.udemy.com/blog/modern-language-wars/

See? If they can do it, you can do it. No excuses now. Come on.

Nick Pettit
STAFF
Nick Pettit
Treehouse Teacher

Hi James Bond,

There are a ton of factors by which we could rank a language, but I don't think the programming languages we teach have dramatically different learning curves. Slightly different, yes, but not so much so that it's worth highlighting. I think it really depends on what you put into it as a student, the purpose for which you're using the language, how much prerequisite knowledge you're coming in with, and so on.

I'm looping in a few other teachers. They may agree or disagree with me. :)

/cc Jason Seifer Jim Hoskins Randy Hoyt Andrew Chalkley

I dont know Nick. Python is widely regarded to be the easiest language and I believe C considered the most difficult. I think that it is extremely useful to say what a language is designed for, what is the learning curve, as you can see here in this graph. By the way, where are you guys are the CoffeeScript as ALT to Java? I think you guys need a Road Map here, no question about it.

https://www.udemy.com/blog/modern-language-wars/

Nick Pettit
STAFF
Nick Pettit
Treehouse Teacher

Hi James Bond,

I'm not sure what you mean in regards to CoffeeScript. Can you explain?

Oh come now Nick.

http://coffeescript.org/

Is widely known to replace Java.

Nick Pettit
STAFF
Nick Pettit
Treehouse Teacher

Hi James Bond,

A couple things:

  • Java and JavaScript are two different languages and I was a little confused by your question, so I wanted to clarify what you meant.
  • CoffeeScript compiles to JavaScript, so it's not a "replacement" as much as it is an alternative syntax.
  • There are other DSLs and scripting languages built on top of JavaScript, and there's also JavaScript itself; it's unlikely to go away any time soon and it's still important to understand the fundamentals.

We have no plans to cover CoffeeScript on it's own, although that may change in the future. We do however plan to cover some CoffeeScript as a more pervasive element of other projects. For example, we use CoffeeScript in our Code Racer videos.

I apologize if I've caused any frustration. I just want to make sure I'm answering your questions thoroughly and accurately! :)

Andrew Chalkley
STAFF
Andrew Chalkley
Treehouse Guest Teacher

Once I'm done with Database Foundations I'll be looking at JavaScript Foundations and seeing what can be done to increase the interactivity to help people retain the principles Jim's teaching.

As for informally ranking programming languages, I can tell you it's pretty difficult to do because it all depends on the task you want to do.

But here is a stab, hardest to easiest, anything with C/C++/Objective C is pretty tough because you have to deal with pointers and low level computing. If you have little to no background in computing it's going to be tough. I'd say getting your head around object orientated over procedural, so Ruby, Python, Java etc. Then it's procedural languages, BASIC, JavaScript, PHP, etc. And then markup/styling languages, HTML, CSS, etc.

I'd say using scripting languages like PHP, and JavaScript to make rudimentary programs is trivial but trying to make a procedural language in to an OO is pretty messy and challenging to grasp.

As from language to language in each category, its just syntax.

Andrew Chalkley
STAFF
Andrew Chalkley
Treehouse Guest Teacher

Just to reiterate, it's what you want to do. Printing "Hello World" is pretty easy in most languages (with a few exceptions). Sometimes you learn parts of a language or framework, rather than the whole. Learning enough for your current project is enough. Certain things you'll be doing for years thinking it's one thing and suddenly it clicks and you understand it in a new way. It's a non-linier process. The more you use something the more of a feel you have for it.

We all hit walls in our development projects and solving the issue doesn't come from having an encyclopedic knowledge of syntax and grammer but it is often about attitude, perseverance and breaking down that wall. If you hit a wall, you're going to be learning something new.

I'm slogging my way through JIm's Javascript Foundations and getting very frustrated by the Challenges. It seems like they require us to make too many rapid leaps into applying what has just been taught (in excessively lengthy video segments). It would be much better if the videos were divided into shorter segments (no longer than 6-8 minutes each) and then the Challenge task would incrementally build. Most of them ask you to do several things at once, which makes error checking and the "bummer" responses meaningless. I find myself having to constantly go to the Forum section to find a useful answer. That, to me, means the teaching or the design of the course is poor.

I sure hope you can redo this course with either a better instructor or a better approach to the instruction.

kush sharma
PLUS
kush sharma
Courses Plus Student 2,360 Points

Hi, Having read all the above discussion which probably happened 11 month earlier, so does the javascript foundations course is the same or was redone to be more interactive as i am starting that currently, so just curious..?

Andrew Chalkley
Andrew Chalkley
Treehouse Guest Teacher

New JavaScript and jQuery content is dropping April / May. Starting with jQuery Basics on April 7th.