Congratulations.
You've picked up some valuable debugging skills.
Remember your programs aren't going to work the first time and you shouldn't expect it,
but with the debugging skills you've started to pick up,
that won't be a problem for you.
At this point, you should be able to distinguish between syntax,
runtime, and semantic errors.
You should be well on your way to developing a habit of looking at
the error messages and developing a skill of interpreting them.
Learn to love your error messages.
You should be internalizing a mantra,
get something working and keep it working.
Celebrate the small wins and in order to celebrate the small wins,
you first have to have those small wins, and finally,
you should now be recognizing some common errors and how to fix them.
So, today's joke. A manager,
a mechanical engineer, and a programmer,
they're driving back from a convention going over
some mountain roads and suddenly the brakes fail.
They fly their careening down the mountain.
They're scraping against the guard rails and fortunately they finally stop in a ditch,
to their great relief.
All three of them they get out and they start to assess the damage.
The manager says, "Let's collaborate,
let's share our ideas,
work together on this, and we can solve this issue."
The mechanical engineer says, "Well,
let's disassemble the whole car
and we'll analyze each part for failure and figure out what went wrong."
The programmer says, "Hey,
why don't we just push the car back up
the hill and go back down and see if it does it again."
Now, don't be that kind of programmer.
Be more like the mechanical engineer.
Read the error messages, figure out what's wrong.
Your life as a programmer will be a lot more pleasant. We'll see you next time.