I practiced all the things!
I also did the syntax section in codecademy before working through these problems, so I consider this a pretty productive day. :)
It all turned out to be pretty straightforward (which I expected, since I've seen these concepts before) - but it's a boost in confidence to find out that I still remember it.
I'm also going back to these simpler problems to work on my problem-solving skills - to learn to put one foot in front of the other when I code, rather than trying to do everything all at once. My tendency is to try and optimize my code while I'm still in the process of trying to solve the problem. It's not really an issue with simple code, but I've noticed this tendency trips me up when I'm trying to debug more complex programs (i.e. things that contain nested loops and functions). When something isn't working, it can be hard to figure out the source of the problem if I've "brain dumped" my code as it were, rather than working more systematically (i.e. by focusing on solving the simplest component of the program, getting it to work, then building up more complex functionality from there, testing as I go.)
As a writer, I also have the tendency to edit as I'm still working out my ideas, even though I know that editing while writing a draft is a recipe for frustration. I also end up trying to write the perfect thing right at the outset because that's what I see the outlines of first when I approach a problem. That is, when it comes to more complex writing (whether in Python or otherwise), I can see the big, ideal thing I want to achieve (and I have some clue as how to get there), but I have to make a focused effort to really break down all the steps (without hyper-focusing on any one) and to piece out a sequential path for getting there. I think this is also why it can be difficult to see alternative (including simpler) approaches to a problem - I'm so invested in how great my idea's going to be (when I finally get it to work) that I'm reluctant to consider alternatives.
So I'm trying to work on becoming more systematic in my efforts, starting with easier programs. I've tried to work out alternative approaches as well, to encourage more flexibility in my thinking.
#Exercise 2.2: Write a program that uses raw_input to prompt a user for their name and then welcomes them.
name = raw_input("What is your name?\n")
#Exercise 2.3: Write a program to prompt the user for hours and rate per hour to compute gross pay.
Hours = raw_input("Enter hours worked.\n")
Rate = raw_input("Enter hourly rate.\n")
Hours = raw_input("Enter hours worked.\n")
Rate = raw_input("Enter hourly rate.\n")
Pay = float(Hours)*float(Rate)
#Exercise 2.3 (v2, with round function, rounded to nearest whole number.)
Hours = raw_input("Enter hours worked.\n")
Rate = raw_input("Enter hourly rate.\n")
Pay = float(Hours)*float(Rate)
#Exercise 2.5: Write a program which prompts the user for a celsuis temp. Convert the temp to Fahrenheight and print out the converted temp.
temp = raw_input("Enter a temperature in Celsuis.\n")
#Exercise 2.5 (alternate formula). This one also works.
temp = raw_input("Enter a temperature in Celsuis.\n")
#Exercise 2.5 (optimized)
temp = raw_input("Enter a temperature in Celsius.\n")
temp = float(temp)*9/5 + 32