5 answers
Asked
559 views
Software-Engineering and Coding
Where and how can I learn really advanced coding and when is the best time to start?
Login to comment
5 answers
Updated
Fred’s Answer
It depends on what you mean by "advanced" coding.
Writing code is actually 90% thinking, and only 10% typing. Math classes are good for training your brain to do this. Coding classes are also good, but you can do a LOT of learning without formal education. Download the Java JDK, or Python, or some other language development kit, and start doing your own projects. There are tons of places online that will give you sample problems to try.
Focus on writing clear, simple code that is easy to understand. A significant cost of software is in the refactoring of old code - adding features, fixing bugs, etc. The easier your code is to understand, the easier it is to re-factor later. The saying is "Always write code like the next person to read it is a homicidal maniac who has your home address.".
It's never too early (or too late) to start learning to code. But learn to do it RIGHT, so that you don't have bad habits you later have to break.
Writing code is actually 90% thinking, and only 10% typing. Math classes are good for training your brain to do this. Coding classes are also good, but you can do a LOT of learning without formal education. Download the Java JDK, or Python, or some other language development kit, and start doing your own projects. There are tons of places online that will give you sample problems to try.
Focus on writing clear, simple code that is easy to understand. A significant cost of software is in the refactoring of old code - adding features, fixing bugs, etc. The easier your code is to understand, the easier it is to re-factor later. The saying is "Always write code like the next person to read it is a homicidal maniac who has your home address.".
It's never too early (or too late) to start learning to code. But learn to do it RIGHT, so that you don't have bad habits you later have to break.
Updated
Umme habiba’s Answer
Pick any programming language if you know and start from basic and implement the side project. this is begining level
Now we move to framework its second level then work on full stack project
Now we move to framework its second level then work on full stack project
Updated
David’s Answer
A good place to start is to understand requirements. You can learn to write elegant code but if it doesn't match what is required then you are wasting everyone's time. There are lots of places on the web that describe good and bad requirements. Understanding requirements will give you a great base for approaching the writing. Like the pervious comment, its more about thinking than writing. Understanding the requirements will also help you know how best to test the code you write. There are lots of places on line that can help you understand how to test well. Learn to write automated testing code.
Updated
John’s Answer
As Fred mentioned, the biggest thing here is thinking through concepts. The name of the game here is problem-solving, and thinking about how we might systematically approach and solve the issues at hand. After knowing how to solve the problem, then we can look at actually implementing the solution (writing the code).
Frankly, there's no bad time to start. A lot of the tools online that can help you practice this problem-solving (Project Euler comes to mind) do require you to know a bit of the coding syntax first, so before you can start practicing solving more difficult problems, you'll need to practice implementing simpler solutions. Over time, the problems will require more complex solutions, and practicing the implementation will come with that.
Frankly, there's no bad time to start. A lot of the tools online that can help you practice this problem-solving (Project Euler comes to mind) do require you to know a bit of the coding syntax first, so before you can start practicing solving more difficult problems, you'll need to practice implementing simpler solutions. Over time, the problems will require more complex solutions, and practicing the implementation will come with that.
Updated
Jas’s Answer
I agree with all the answers here and to add a little bit more I would say once you've understood the basics of programming a really great to get into more advanced concepts would be to find a problem that you're passionate about solving and try to develop a software application that can help you with this. You'll find in your development journey that there will be lots of obstacles which will help you learn and familiarize yourself with new concepts!