t009 wrote: |
---|
It took me 3 hours to get through steps 1-7 of a drill on Chapter 4 Stroustrups book "PPPc++(2014)." It says the book was set up so that a chapter could be completed a day and I spent at least 6 hours to get from the beginning of the chapter to an incomplete drill. So I am very bad at this or I am doing something wrong because, I think a chapter a day would probably mean about 3 hours tops. |
In the preface it says:
This book is for someone who has never programmed before but is willing to work hard to learn. It helps you understand the principles and acquire the practical skills of programming using the C++ programming language. My aim is for you to gain sufficient knowledge and experience to perform simple useful programming tasks using the best up-to-date techniques. How long will that take? As part of a first-year university course, you can work through this book in a semester (assuming that you have a workload of four courses of average difficulty). If you work by yourself, don’t expect to spend less time than that (maybe 15 hours a week for 14 weeks). |
15*14 = 210 hours,
divided by 27 chapters,
gives an average time of almost 8 hours per chapter.
This is just an estimate made by the book author. I don't think you should feel bad if you need to spend more time. Everyone is different and have different background knowledge so the time is obviously going to vary between individuals.
t009 wrote: |
---|
Some of the issues I had was understanding the instructions, which is something that happens often. |
I think this is sometimes intentional. In the real life you are not going to get detailed instructions to follow exactly. Being able to make sense of a problem and turn it into code is a useful skill.
Try to understand the problem as a whole but don't let it overwhelm you. Often the problem can be broken down into smaller sub-problems that can be solved individually one by one.
The important thing is not that you solve the problems exactly. It's just a way to get you to think about code and force you to write code which is what you will learn from.
t009 wrote: |
---|
Then when I try to find similar solutions, it sucks. As a beginner I don't know what I am looking for and sometimes the answers are beyond the scope of what I need to do at the moment. |
I don't think you should do that too much, at least not before you have written your own solution. Someone who knows the language better is likely going to write the code differently, using features that a beginner doesn't understand.
Learning from other people is of course also important but there are many dos and don'ts floating around (often accompanied with strong opinions) which can be off putting to a beginner. One example is the discouraged use of global variables. If you cannot understand why people say this, and instead think it would be useful, then it might not be such a bad idea to actually use them so that you learn first hand what problems they lead to.
Writing code is in my experience the best way to learn. Make your own mistakes and learn from them. Be open minded and learn from others, but don't listen blindly to "best practices" without a motivation that you can agree with.