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

Can I make a suggestion to the creators of this class?

I've been struggling mightily with this course. One of the main problems I have this course is the challenges. They are not explained well enough so that someone who is a beginner can easily follow them and then come to a solution on their own.

What I would like to see since, this is still classified as a beginner course is a better breakdown of some of the steps that will need to be taken in order to get the proper code.

For example in the following challenge: Challenge Task 1 of 1

Create a function named nchoices() that takes an iterable and an integer. The function should return a list of n random items from the iterable where n is the integer. Duplicates are allowed.

I think it would have been a lot more productive for me(as a beginner) to state that in addition to creating a function, an empty list will be needed, along with a for loop.

As it stands, most of the challenges require to great of a jump for a beginner to know the steps that would be required to solve the code. Since this is a beginner course, I feel like it would more beneficial to the student to focus MORE writing and applying the skills we just learned rather than fumble around trying to decide if we even have the write steps. It's incredibly discouraging when I have no idea what to do after creating a function.

Tagging Kenneth Love so that this will give him a heads up :)

3 Answers

Kenneth Love
STAFF
Kenneth Love
Treehouse Guest Teacher

This message isn't tied to a specific course or challenge, so I'm not 100% sure which one you're talking about.

To address your point, though, yes, I could have said "you'll need to use a list, and a loop, and make a variable named placeholder" or whatever. And that would have made it all easier. Which is exactly why I didn't do it. I know it's hard but it's a code challenge and I want you to have to think and puzzle out the solution. Beginners should basically never pass these code challenges on the first try, in my opinion. You'll remember the things you had to fight for way more than you will the things that just reinforced your "I'm on a roll" mentality.

But, all of that said, I'm more than happy to look at feedback for any specific challenges (you have my email) and I'm in the middle of updating Python Collections now (where I'm pretty sure this challenge is from), so I'm sure this'll get tweaked over the coming weeks.

This is for the Python Collections class.

I understand that the challenges are meant to be difficult. However, the last half of the course was essentially ALL challenges, except for a few quizzes. I think it would have been better to have spread out the challenges a bit more to keep students properly engaged. As a true beginner(barely 30 days into studying Python/programming), it was discouraging to have to look up solutions for the last half of the class.

Kenneth Love
Kenneth Love
Treehouse Guest Teacher

Sure, I can see all that. And I'm definitely not trying to be discouraging. I'll be updating the course soon (before the end of the year) and part of that will be rebalancing all of those challenges (and tweaking them and adding some more).

Kenneth I appreciate you taking the time to respond to me. Other than feeling a tad discouraged at times, I've enjoyed both of the classes I've taken so far. I plan on taking more. Thanks a bunch!

Hey all, I came to this thread on a high because this was one of the FIRST moderately difficult challenges I figured out on my own - other than looking up the formatting of random.choice() - first try, with no errors. It felt so unlikely that I literally didn't believe it, so I refreshed and did the code challenge a second time. It took me just as long, working through the steps, but again - success.

Even then, I searched for this challenge to compare my code to see where I might be able to clean it up.

It can be frustrating, struggling away, but my goodness when you actually figure something out that proves you're retaining some info - it's a beautiful feeling.