Welcome to the Treehouse Community

The Treehouse Community is a meeting place for developers, designers, and programmers of all backgrounds and skill levels to get support. Collaborate here on code errors or bugs that you need feedback on, or asking for an extra set of eyes on your latest project. Join thousands of Treehouse students and alumni in the community today. (Note: Only Treehouse students can comment or ask questions, but non-students are welcome to browse our conversations.)

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and a supportive community. Start your free trial today.

Python

Difficulty with Challenges

Hello, I was just wondering if others are having trouble starting challenges. There have been a few challenges now that I can't even think about how to go about solving it. Once I start looking up information on what it is asking me to do I finally start to get an idea about how to start writing my code. Does anyone else find themselves in this situation? When I get an answer or get close to it I make sure that it makes sense to me but sometimes I wonder if I just think it makes sense when in reality it doesn't? I don't have any kind of background in programming so I was just wondering how others feel. If I am having trouble starting off challenges should I start over from the basics to make sure that I am actually learning?

3 Answers

My way to solve problems is to think: "How would I do this manually in real life?"

For example, if your challenge is to reverse a string, I think to myself, "How would I do this step-by-step on my own?" There are several ways to do this manually, but my preferred way is to imagine two strings: the one you are reversing and the one you want to be the result (aka the new reversed string).

On the first "step", you take the first letter of the first string, and append it to the end of the second string. Then you take the second letter and repeat, then the third, etc. The You repeat the process until the second string is done, then you return it.

It should be apparent that a loop is needed. (Notice the word "step")

def reverse(string):
    new_string = ''
    for i in range(len(string)):
        new_string += string[i]
    return new_string

This way of solving problems usually works for most basic problems.

Eventually, when you do a lot of these kind of problems, it starts to get easier because you've seen many kinds of problems. It is expected to be difficult at first, though. You are doing excellent! Keep on learning and good luck :+1:

Thanks Alexander. That is a good way to view it. I think I just over think the problem instead of trying to break it down. I will try that next time!

Jt Miller
Jt Miller
1,242 Points

I find that the beginning is more difficult because you are building a programmers mindset, knowing syntax and knowing how to use it is different.

Yes. I agree. Its the mindset!I often "Oh why didn't I think of that!"Thanks for your kind words. I am glad I am not the only one.

Podrig Leoghain
Podrig Leoghain
5,094 Points

I second what Justice Miller said. Don't worry, I'm feeling the same way but taking the advice of others whixh is... Keep pushing on and trying your best. Pray for the strength to endure a hard life ?

Thanks for your reply!I will continue to work on it. I enjoy the challenges and researching what I am missing. I just wonder if others are the same. Good to you in your journey :)