Is it good practice for a beginner C++ coder to use autocomplete?
-
I have Dev C++ on my system to practice writing C++ code from my C++ Programming for the Absolute Beginner book. So far, the constant repetition and copying have improved my muscle memory. Then, recently, I just noticed that this application could autocomplete my line. My biggest worry is that this autocomplete thing would make me fail the Computer Science placement exam. I really want to take the placement exam, so then I can get tested into the software development class and skip the introductory CS classes. On the school's website, it says that the placement exam takes place on paper and pencil, so that implies I should know how to write everything down to smallest detail and get it accurate enough so the algorithms would run correctly. Should beginners use Autocomplete? Maybe it's good practice for a beginner to write code on paper and then transfer the code onto the computer?
-
I have Dev C++ on my system to practice writing C++ code from my C++ Programming for the Absolute Beginner book. So far, the constant repetition and copying have improved my muscle memory. Then, recently, I just noticed that this application could autocomplete my line. My biggest worry is that this autocomplete thing would make me fail the Computer Science placement exam. I really want to take the placement exam, so then I can get tested into the software development class and skip the introductory CS classes. On the school's website, it says that the placement exam takes place on paper and pencil, so that implies I should know how to write everything down to smallest detail and get it accurate enough so the algorithms would run correctly. Should beginners use Autocomplete? Maybe it's good practice for a beginner to write code on paper and then transfer the code onto the computer?
Member KL wrote:
Maybe it's good practice for a beginner to write code on paper and then transfer the code onto the computer?
That's a good idea for anyone, not just beginners.
"One man's wage rise is another man's price increase." - Harold Wilson
"Fireproof doesn't mean the fire will never come. It means when the fire comes that you will be able to withstand it." - Michael Simmons
"You can easily judge the character of a man by how he treats those who can do nothing for him." - James D. Miles
-
Member KL wrote:
Maybe it's good practice for a beginner to write code on paper and then transfer the code onto the computer?
That's a good idea for anyone, not just beginners.
"One man's wage rise is another man's price increase." - Harold Wilson
"Fireproof doesn't mean the fire will never come. It means when the fire comes that you will be able to withstand it." - Michael Simmons
"You can easily judge the character of a man by how he treats those who can do nothing for him." - James D. Miles
That sounds completely impractical... perhaps good for a learner but you'd never get anything done if you were writing things on paper first before transposing the same exact thing onto real code.
-
I have Dev C++ on my system to practice writing C++ code from my C++ Programming for the Absolute Beginner book. So far, the constant repetition and copying have improved my muscle memory. Then, recently, I just noticed that this application could autocomplete my line. My biggest worry is that this autocomplete thing would make me fail the Computer Science placement exam. I really want to take the placement exam, so then I can get tested into the software development class and skip the introductory CS classes. On the school's website, it says that the placement exam takes place on paper and pencil, so that implies I should know how to write everything down to smallest detail and get it accurate enough so the algorithms would run correctly. Should beginners use Autocomplete? Maybe it's good practice for a beginner to write code on paper and then transfer the code onto the computer?
It depends how much work your auto-complete does for you. As a learner, you should avoid auto-complete that makes classes and sets of methods for you. If however, all it's doing is completing a word, well... you're learning to program, not to spell... so that little bit of help won't undo what you're learning. At the end of the day what will make you a better programmer will ultimately be how many hours you spend programming. Practice, practice, practice.... Good luck! :cool:
-
I have Dev C++ on my system to practice writing C++ code from my C++ Programming for the Absolute Beginner book. So far, the constant repetition and copying have improved my muscle memory. Then, recently, I just noticed that this application could autocomplete my line. My biggest worry is that this autocomplete thing would make me fail the Computer Science placement exam. I really want to take the placement exam, so then I can get tested into the software development class and skip the introductory CS classes. On the school's website, it says that the placement exam takes place on paper and pencil, so that implies I should know how to write everything down to smallest detail and get it accurate enough so the algorithms would run correctly. Should beginners use Autocomplete? Maybe it's good practice for a beginner to write code on paper and then transfer the code onto the computer?
I don't see any problem using Autocomplete, it is just a typing aid. As long as you don't use Autocomplete to avoid learning the syntax. I never write my programs on paper before typing. I only resort to paper to draw diagrams when the current problem is complicated. I do this because I use a very good analyze method. I recommend Dijkstra Top-Down method it is a good start. https://en.wikipedia.org/wiki/Top-down_and_bottom-up_design[^] https://en.wikipedia.org/wiki/Structured_programming[^] https://en.wikipedia.org/wiki/Edsger_W._Dijkstra[^] https://www.cs.utexas.edu/users/EWD/ewd03xx/EWD316.PDF[^]
Patrice “Everything should be made as simple as possible, but no simpler.” Albert Einstein
-
That sounds completely impractical... perhaps good for a learner but you'd never get anything done if you were writing things on paper first before transposing the same exact thing onto real code.
I guess you never had the joy of writing your code in pencil, on fixed width coding sheets. These were then sent to the data prep department to be punched onto Hollerith (80 column) cards, before being submitted to the computer room for compilation. And then you had to wait a couple of hours for the results which showed you had missed a comma on the second line. :mad:
-
I guess you never had the joy of writing your code in pencil, on fixed width coding sheets. These were then sent to the data prep department to be punched onto Hollerith (80 column) cards, before being submitted to the computer room for compilation. And then you had to wait a couple of hours for the results which showed you had missed a comma on the second line. :mad:
Luckily, no... that would be painful! I have however worked on FPGAs, that's a similarly slow process of building/routing. You're not writing things on paper but you're definitely waiting for a really long time for synthesis and routing. I was working on these guys a few years ago now but our builds would take about a couple of hours too. You'd be really disappointed when things didn't quite work or you forgot some debug traces. X|
-
I don't see any problem using Autocomplete, it is just a typing aid. As long as you don't use Autocomplete to avoid learning the syntax. I never write my programs on paper before typing. I only resort to paper to draw diagrams when the current problem is complicated. I do this because I use a very good analyze method. I recommend Dijkstra Top-Down method it is a good start. https://en.wikipedia.org/wiki/Top-down_and_bottom-up_design[^] https://en.wikipedia.org/wiki/Structured_programming[^] https://en.wikipedia.org/wiki/Edsger_W._Dijkstra[^] https://www.cs.utexas.edu/users/EWD/ewd03xx/EWD316.PDF[^]
Patrice “Everything should be made as simple as possible, but no simpler.” Albert Einstein
Definitely use a whiteboard or paper for architecting a complicated system (or a software tool like Visio). Last thing you want to do is spend a bunch of time writing software that doesn't really make sense in the grand scale of things (architecture-wise). :thumbsup:
-
Definitely use a whiteboard or paper for architecting a complicated system (or a software tool like Visio). Last thing you want to do is spend a bunch of time writing software that doesn't really make sense in the grand scale of things (architecture-wise). :thumbsup:
Albert Holguin wrote:
Definitely use a whiteboard or paper for architecting a complicated system (or a software tool like Visio).
That is what I do when I say
PPolymorphe Wrote:
I only resort to paper to draw diagrams when the current problem is complicated.
Albert Holguin wrote:
Last thing you want to do is spend a bunch of time writing software that doesn't really make sense in the grand scale of things (architecture-wise).
Can only agree.
Patrice “Everything should be made as simple as possible, but no simpler.” Albert Einstein
-
Albert Holguin wrote:
Definitely use a whiteboard or paper for architecting a complicated system (or a software tool like Visio).
That is what I do when I say
PPolymorphe Wrote:
I only resort to paper to draw diagrams when the current problem is complicated.
Albert Holguin wrote:
Last thing you want to do is spend a bunch of time writing software that doesn't really make sense in the grand scale of things (architecture-wise).
Can only agree.
Patrice “Everything should be made as simple as possible, but no simpler.” Albert Einstein
ppolymorphe wrote:
That is what I do when I say
PPolymorphe Wrote:
I only resort to paper to draw diagrams when the current problem is complicated.
I was only agreeing/elaborating...
-
ppolymorphe wrote:
That is what I do when I say
PPolymorphe Wrote:
I only resort to paper to draw diagrams when the current problem is complicated.
I was only agreeing/elaborating...
-
I have Dev C++ on my system to practice writing C++ code from my C++ Programming for the Absolute Beginner book. So far, the constant repetition and copying have improved my muscle memory. Then, recently, I just noticed that this application could autocomplete my line. My biggest worry is that this autocomplete thing would make me fail the Computer Science placement exam. I really want to take the placement exam, so then I can get tested into the software development class and skip the introductory CS classes. On the school's website, it says that the placement exam takes place on paper and pencil, so that implies I should know how to write everything down to smallest detail and get it accurate enough so the algorithms would run correctly. Should beginners use Autocomplete? Maybe it's good practice for a beginner to write code on paper and then transfer the code onto the computer?
Academic point of view: You should avoid using autocomplete or similar helpers so that you can have better hands-on. Professional point of view: You should not miss any helpers (autocomplete, automation etc.) so that you become more productive. Best wishes :)