7 answers
7 answers
Updated
Peace’s Answer
There are a number of things you can do to become better at coding! Some of the most effective ways to improve your coding skills include:
- Practice, practice, practice! The more you code, the better you'll become. Try to find small projects to work on, even if they're just for fun.
- Read code written by other developers. Reading code can help you learn new techniques and approaches, and it can also give you ideas for how to improve your own code.
- Take advantage of online resources. There are many websites, forums, and social media groups dedicated to coding, and these can be a great h elp in developing your coding skills.
- Also find a coding buddy or mentor. This will hasten the learning process.
- Take part in coding challenges or competitions. These can help you practice your skill and push yourself to new height.
Take an online coding class or workshop.
Take part in coding challenge.
Set plans for yourself and work towards it.
- Practice, practice, practice! The more you code, the better you'll become. Try to find small projects to work on, even if they're just for fun.
- Read code written by other developers. Reading code can help you learn new techniques and approaches, and it can also give you ideas for how to improve your own code.
- Take advantage of online resources. There are many websites, forums, and social media groups dedicated to coding, and these can be a great h elp in developing your coding skills.
- Also find a coding buddy or mentor. This will hasten the learning process.
- Take part in coding challenges or competitions. These can help you practice your skill and push yourself to new height.
Peace recommends the following next steps:
Updated
Sean’s Answer
Everyone learns differently, but what's always worked for me is having a clear goal in mind before I start. For instance, I struggle to work through a tutorial, but if I set myself the goal of making a specific program (for instance, a small game or website), I find it very natural to learn "along the way". It's best to set a project that matches your level of expertise: anything from building a calculator program that takes numbers and does arithmetic on them, all the way up to something like building a raytracer from scratch. You'll need to be comfortable searching for the solutions to problems and making lots of simple mistakes!
Bear in mind that this might not work well for you. Some people like more structure to the learning process, and there's nothing wrong with that. I'd also suggest not putting too much pressure on yourself to build a portfolio or to share your projects publicly - if you do, that's great, but if they're only ever a learning tool that's great too!
Bear in mind that this might not work well for you. Some people like more structure to the learning process, and there's nothing wrong with that. I'd also suggest not putting too much pressure on yourself to build a portfolio or to share your projects publicly - if you do, that's great, but if they're only ever a learning tool that's great too!
Updated
Godwin’s Answer
I concur with Peace's proposition. Here's a practical plan to follow:
1) Start by selecting your desired role and the programming language you wish to master. If you're unsure, seek guidance from a mentor.
2) After deciding on the technology, pinpoint the Learning Path specific to that technology. If you opt for Microsoft Technology, numerous free training materials are available on Microsoft Learning - https://learn.microsoft.com/en-us/training/browse/. LinkedIn Learning also offers some free content.
3) Finish the learning path and apply your newfound knowledge in coding.
4) Embark on a sample project to further enhance your skills.
5) Lastly, secure a certification. Not only will it gauge your skill level, but it will also boost your chances in job interviews.
1) Start by selecting your desired role and the programming language you wish to master. If you're unsure, seek guidance from a mentor.
2) After deciding on the technology, pinpoint the Learning Path specific to that technology. If you opt for Microsoft Technology, numerous free training materials are available on Microsoft Learning - https://learn.microsoft.com/en-us/training/browse/. LinkedIn Learning also offers some free content.
3) Finish the learning path and apply your newfound knowledge in coding.
4) Embark on a sample project to further enhance your skills.
5) Lastly, secure a certification. Not only will it gauge your skill level, but it will also boost your chances in job interviews.
Updated
Sarah’s Answer
Hi Edwin,
There are many ways you can improve at a coding language.
1) Code projects in that coding language (whether that be something like a Tic Tac Toe game or something that is so unique and fun to you). Have fun when making projects, and try various test cases, including edge cases, to make sure your projects work).
2) Take all your assignments in your Computer Science classes seriously. Try your hardest on your assignments first, and if you get very stuck despite working hard to debug your code, go to office hours. Try many test cases, including edge cases, on your code for your assignments. Study hard for your exams, and do so for more than just a week (whether that be reviewing every line of code in your assignments, or just studying in general). Pro tip: start your assignments early and go to office hours early (not right before the deadline), so that office hours would not be so packed with students.
3) If you are hoping to program in that language, especially for technical interviews, try LeetCode (https://leetcode.com/explore/), which will give you a plethora of coding interview problems to work on. Here is a YouTube video by someone who knows a lot about using LeetCode to your best advantage: https://www.youtube.com/watch?v=htT1bhFSNxo
Also, while and after you write a solution for a LeetCode problem, clearly talk through your thought process and solution to a friend or non Computer Science major so that they can understand what you are saying. Not only is this also expected in coding interviews in addition to coming to a correct, optimized solution, but this will also help you develop your coding logic skills while also improving in a programming language.
4) Additionally, there are many built in methods for each programming language. Learn as many as you can and use them in small programs, later in big programs. You might be programming in Java, for example, when you get to a point where you wonder how to split a string into an array of words. If you search that up on Google, you can read about a built in Java method called split() for strings. Look at the small programs given for those methods on websites, and understand every single line of code.
5) For the programming language you are using, search up best practices and ways to make your code more readable, both for you and everyone else looking at it.
6) After you code any project (whether inside or outside class) and get your code to work, review your code and make sure you understand what each line is doing. Try the project again to solve the coding problem in a new way. If you rewrite your project with the same logic, the project should become easier for you.
7) If there is any Computer Science topic you are confused about, read an article about it on Google or watch a useful YouTube video about it.
Debugging tips (PLEASE READ!):
1) Once you run into an error, or your program does not work as expected, please don't immediately search up the solution or ask the professor, TA, or generative AI. Truly try to debug your code. Draw out the memory diagrams, trace through your code, read through the man pages for the functions you are using, use print statements to figure out which parts of your code are actually running (i.e. does the conditional statement for your if statement ever evaluate to True?). You might want to take a nap, shower, or do something relaxing before looking at your code again, so that you can have a change in perspective. Ideally, if you ever need to go to office hours after trying so hard but still failing to get your coding assignments working, your professor/TAs should not directly tell you why your program is not working or how to fix it. They should point you to the right direction and give you tips so that you can eventually get your program to work.
2) Every line of code you write must be intentional. Don't just write whatever in your program until it "magically" works. If there is a debugging error in your program, think critically, using the debugging strategies I listed in the above bullet point, about why your program might not be working, what area of your code might be causing this error, and how might you fix this error.
3) Write comments in your code, so the debugging process can be more efficient (and your code would be clearer to understand). Use comments to note areas where your code might not be working.
4) For compiler and runtime errors that you don't understand, feel free to search them up on Google. There will likely be a Stack Overflow thread about the same error you are having.
5) Be determined when debugging your code! Don't ever give up!
Hope this helps!
Search up coding best practices and ways to make your code more readable
Take your Computer Science classes seriously
Review Computer Science topics you are confused about
Code projects (both inside and outside of class)
Follow my debugging tips, and search up compiler and runtime errors you are confused about on Stack Overflow
There are many ways you can improve at a coding language.
1) Code projects in that coding language (whether that be something like a Tic Tac Toe game or something that is so unique and fun to you). Have fun when making projects, and try various test cases, including edge cases, to make sure your projects work).
2) Take all your assignments in your Computer Science classes seriously. Try your hardest on your assignments first, and if you get very stuck despite working hard to debug your code, go to office hours. Try many test cases, including edge cases, on your code for your assignments. Study hard for your exams, and do so for more than just a week (whether that be reviewing every line of code in your assignments, or just studying in general). Pro tip: start your assignments early and go to office hours early (not right before the deadline), so that office hours would not be so packed with students.
3) If you are hoping to program in that language, especially for technical interviews, try LeetCode (https://leetcode.com/explore/), which will give you a plethora of coding interview problems to work on. Here is a YouTube video by someone who knows a lot about using LeetCode to your best advantage: https://www.youtube.com/watch?v=htT1bhFSNxo
Also, while and after you write a solution for a LeetCode problem, clearly talk through your thought process and solution to a friend or non Computer Science major so that they can understand what you are saying. Not only is this also expected in coding interviews in addition to coming to a correct, optimized solution, but this will also help you develop your coding logic skills while also improving in a programming language.
4) Additionally, there are many built in methods for each programming language. Learn as many as you can and use them in small programs, later in big programs. You might be programming in Java, for example, when you get to a point where you wonder how to split a string into an array of words. If you search that up on Google, you can read about a built in Java method called split() for strings. Look at the small programs given for those methods on websites, and understand every single line of code.
5) For the programming language you are using, search up best practices and ways to make your code more readable, both for you and everyone else looking at it.
6) After you code any project (whether inside or outside class) and get your code to work, review your code and make sure you understand what each line is doing. Try the project again to solve the coding problem in a new way. If you rewrite your project with the same logic, the project should become easier for you.
7) If there is any Computer Science topic you are confused about, read an article about it on Google or watch a useful YouTube video about it.
Debugging tips (PLEASE READ!):
1) Once you run into an error, or your program does not work as expected, please don't immediately search up the solution or ask the professor, TA, or generative AI. Truly try to debug your code. Draw out the memory diagrams, trace through your code, read through the man pages for the functions you are using, use print statements to figure out which parts of your code are actually running (i.e. does the conditional statement for your if statement ever evaluate to True?). You might want to take a nap, shower, or do something relaxing before looking at your code again, so that you can have a change in perspective. Ideally, if you ever need to go to office hours after trying so hard but still failing to get your coding assignments working, your professor/TAs should not directly tell you why your program is not working or how to fix it. They should point you to the right direction and give you tips so that you can eventually get your program to work.
2) Every line of code you write must be intentional. Don't just write whatever in your program until it "magically" works. If there is a debugging error in your program, think critically, using the debugging strategies I listed in the above bullet point, about why your program might not be working, what area of your code might be causing this error, and how might you fix this error.
3) Write comments in your code, so the debugging process can be more efficient (and your code would be clearer to understand). Use comments to note areas where your code might not be working.
4) For compiler and runtime errors that you don't understand, feel free to search them up on Google. There will likely be a Stack Overflow thread about the same error you are having.
5) Be determined when debugging your code! Don't ever give up!
Hope this helps!
Sarah recommends the following next steps:
Updated
Aditya’s Answer
Absolutely! Practicing is a fantastic method to get a solid handle on a language. My favorite approach is through building projects. However, if you're pressed for time, tackling data structure and algorithm questions can be equally effective. There's a wealth of excellent websites out there for this purpose. I encourage you to check them out!
Updated
Anmolpreet singh’s Answer
Code consistently! Work on personal projects to apply what you learn. Break down challenges into bite-sized problems. Write, test, debug, and repeat - learn from your errors. Explore online resources, tutorials, and communities to expand your knowledge base. Never stop practicing and feeding your coding curiosity!