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!

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

General Discussion

Just a suggestion

Has Treehouse considered having a course that went over core programming concepts, which would in-turn eliminate some of the redundant course in some of these tracks? For instance, If I just completed the full-stack JavaScript Track....I kinda hate starting the Python track and having to rewatch videos on If/else, Booleans, Strings, etc.

If there was this Programming Concepts course in each track, and then the Track specific courses that follow could briefly touch on each thing given in the Programming Concepts course for syntax purposes.

1 Answer

Jim Dennis
Jim Dennis
13,075 Points

Speaking as someone who came to Team Treehouse for just a refresh on web technologies (HTML5, CSS3, and full-stack JavaScript) ... after many years of operations (systems administration, site reliability engineering) and coding (mostly in Python) ... I think there's a lot to be said for their "jump in with hands on" approach to coding.

I've interviewed many fresh-out-of-college graduates with CS degrees who floundered at some of the simplest coding tasks (like FizzBuzz --- at a whiteboard or over various different systems like HackerRank, CoderPad, and collabedit.

I agree that the repetition of certain explanations among classes in JavaScript, Python, and Ruby is a bit tedious if you're choosing to go through multiple different introductory level tracks. Perhaps one class that was just: "Common Procedural Programming Principles" that covers just: expressions, statements, conditionals (if, ... then, ... else and case/switch statements), loops (for and while), and function definitions (parameters vs. arguments, return statements, calling and nested calling) and, of course, recursion (every student's favorite).

But even the simplest of these "common" programming structures, even before we consider talking about objects and classes, bumps into details which some languages don't share in common. For example Python has no case/switch statement and JavaScript's execution environments (browser, Node.js server, distributed across MongoDB's embedded engine via map/reduce, etc) makes discussion of simple I/O operations (common to almost all other programming languages) a bit more complicated. (Similar issues apply when comparing PHP to any other language, due to its fundamental assumption of being run in the context of a web server as an HTML page pre-processor engine).

So writing or recording any module which applies broadly enough to the languages offered on Treehouse is tricky because it's likely to get mired in the exceptions.

For my part, I simply hit the speed button and sometimes go mute and just watch the subtitles for stuff that's new to me. Then I slow it back down or hit the back-up slider as necessary.