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

Python Python Comprehensions

Youssef Moustahib
Youssef Moustahib
7,779 Points

Yet again another unexplained video by kenneth

I've come to realise this is what Treehouse's python track is going to be. Kenneth barely explained the order of what goes where in a comprehension which is BASICS, then ran through a ton of other things.

I've bought a course on Udemy for $10 that went deep into detail, SLOWLY for beginners, on list comprehensions, dict comprehensions and set comprehensions. I'm now pretty much using Treehouse as an index on what I should learn step by step, then finding the topic on my Udemy courses as they are explaining it far better.

I understand that always when learning something, you should supplement your main learning portal with many other portals to help build upon your understanding. but this is ridiculous.

3 Answers

Balazs Peak
Balazs Peak
46,160 Points

The first language is the hardest

When you start to learn coding, the beginning is the hardest. You are doing a great job with adding more resources to your kit.

Treehouse and other e-learning platforms has great challenges, when it comes to creating the perfect course. For people who just begin with programming altogether, have largely different needs.

You will become better and better, and the whole process will become less and less stressful. Keep coding, and do not give up. If you are tired or distressed, slow down, do 10-20 minutes per day, one week will pass and you will come back stronger than ever. Just do not stop completely.

Keep coding!

Thomas Moore
seal-mask
.a{fill-rule:evenodd;}techdegree seal-36
Thomas Moore
Front End Web Development Techdegree Graduate 25,371 Points

Totally agree. I've seen loads of people saying the same thing on other videos (and I definitely agree).

I'm tired of people just replying with variations of "just rewatch the videos, you'll get it." I've completed the Front-End Web Techdegree and now up to 21,000+ points on Treehouse. That's not to brag in any way (I'm still learning, I'm still a complete beginner, and there is so much more I don't understand, even about the languages I've studied).

What I feel it does qualify me to comment on is that the Python videos - in comparison with front-end web videos like HTML, CSS and JavaScript - are nowhere near as clear. There is no structure. They don't explain up front what is being covered. And they are just a stream-of-consciousness as someone is typing out code.

Also, often the demo work is done in Console (rather than in a file) which makes it even more difficult, as there is no workspace to go back and check over the code samples.

After I finished the FEWD Techdegree I was going to move onto the Python Techdegree, but I realise that would be a waste of time. Like Youssef mentions, I'll instead just use it to identify waypoints that I'll go off and study elsewhere (Udemy etc.)

Binyamin Friedman
Binyamin Friedman
14,615 Points

This is an intermediate workshop and isn't meant to be for beginners. The instructor showed you the syntax and my understanding is that you are expected to try the comprehensions out by yourself.

I personally found the workshop simple to understand. I think it would just be a waste of time to go over set and dict comprehensions separately when they have identical syntax. Python is my second language and it definitely becomes easier to understand syntax with other language experience. This workshop is just better suited for more advanced learners. It isn't fair to call it "ridiculous."

Drew Lopshire
seal-mask
.a{fill-rule:evenodd;}techdegree
Drew Lopshire
Python Web Development Techdegree Student 2,468 Points

Personally I didn't find this video too overwhelming, but I did have to stop periodically and try to explain the concepts to myself. Some amount of this self-explanation is necessary in learning anything, but I understand OP's frustration, and think that a few crucial framing details early in the video would make it much clearer.

Or possibly updating the teacher's notes with a short explanation like the following would help students get a lot more value out of the video: "Comprehensions are a way of doing an in-line operation two existing iterables to make a new iterable. Their form is something like [action_to_take inner_condition_or_iterable outer_condition_or_iterable], where the brackets [] can be replaced with {} or "", depending on whether you're trying to create a list, set, dictionary, or string comprehension.

An example: {round(x/y) for y in range(1, 11) for x in range(2, 21)} outer condition/iterable: for x in range(2, 21) inner condition/iterable: for y in range(1, 11) action: round(x/y) {} create a set of the output