11 answers
Asked
1958 views
What are some good websites to advance/strengthen your coding skills.
17 year old junior applying to colleges this year #college #engineering #coding
Login to comment
11 answers
Updated
Nattakarn’s Answer
Hello, Hakim
Please see below for the some websites that you can learn and practice coding.
10 Best Websites to Practice Coding Online
1. freeCodeCamp: https://www.freecodecamp.org/
Complete the coding challenges and build projects for nonprofits. This free online coding community contains tutorials to learn various coding languages and practice coding with tons of interactive exercises. The site is in partnership with nonprofits to help users gain experience and land a developer job afterwards. freeCodeCamp also offers verified certificates.
2. Coderbyte: https://coderbyte.com/
Test yourself with a collection of the best coding challenges in Coderbyte. You can solve the challenges online using 10 different programming languages. The site also offers tutorials and coding exercises on data structures and algorithms.
3. DataCamp:https://www.datacamp.com/
Explore data science and code with the site’s online editor using Python and R. Their courses offer short quality tutorials and more on applying what you have learned. The site also lets you apply your skills to solve real-world problems.
4. HackerRank: https://www.hackerrank.com/
Practice your coding skills in the largest learning and competition community. The site offers a lot of algorithm tutorials and tons of coding practices to choose from. Since the site also connects developers to companies, users can get hired by companies as well.
5. HackerEarth: https://www.hackerearth.com/challenges/?utm_source=collab&utm_medium=bloglink&utm_campaign=cloudemp
Challenge yourself and compete with over three million developers worldwide. Join in various monthly coding challenges ranging from beginner to advanced level. HackerEarth supports over 35 programming languages and their platform can be accessed for free for developers. They have a wide range of practice tracks available such as Data Structures, Algorithms, and more where developers can learn and analyse their performance by solving over 100 problems in each of the tracks and rank on the leaderboard.
6. CodinGame: https://www.codingame.com/start
Improve your coding skills to the next level by solving tons of fun coding challenges in more than 25 languages and data structures. CodinGame lets you practice coding in pure code with online games. You can also learn other programming languages crafted by their top developers. Strengthening your coding skills could also land you a job with their partner companies.
7. TopCoder: https://www.topcoder.com/challenges/?pageIndex=1
Compete against other designers, developers, and data scientists in one of the original online competitive programming platforms. They have Single Round Matches offered a few times a month at a specific time. The top rankers are one of the best and hard to beat programmers.
8. Project Euler: https://projecteuler.net/
Explore a domain of mathematical challenges and data structures that require more than mathematical insights to solve. The coding problems on the site give an inductive chain learning experience meaning each problem introduces new concepts that can help solve other problems. Unlike the other sites on the list, you can not code on the website itself so you would have to solve it on a sheet of paper.
9. Codewars: https://www.codewars.com/
Solve coding challenges and data structures created by an online community of developers in Codewars. Since this is a community-based website, you can create your own code and discuss solutions on online forums for each coding challenge. The challenges on the site earn you a spot on their ranking system. The higher your rank, the more difficult your challenges will be.
10. LeetCode: https://leetcode.com/
Hone your coding skills and be technical test-ready for a job interview. With over 750 questions to solve and 14 popular languages to use, you can practice your skills and participate in contests along with hundreds of thousands of other users. LeetCode also has a “Mock Interview” so users can prepare for technical job interviews.
Please see below for the some websites that you can learn and practice coding.
10 Best Websites to Practice Coding Online
1. freeCodeCamp: https://www.freecodecamp.org/
Complete the coding challenges and build projects for nonprofits. This free online coding community contains tutorials to learn various coding languages and practice coding with tons of interactive exercises. The site is in partnership with nonprofits to help users gain experience and land a developer job afterwards. freeCodeCamp also offers verified certificates.
2. Coderbyte: https://coderbyte.com/
Test yourself with a collection of the best coding challenges in Coderbyte. You can solve the challenges online using 10 different programming languages. The site also offers tutorials and coding exercises on data structures and algorithms.
3. DataCamp:https://www.datacamp.com/
Explore data science and code with the site’s online editor using Python and R. Their courses offer short quality tutorials and more on applying what you have learned. The site also lets you apply your skills to solve real-world problems.
4. HackerRank: https://www.hackerrank.com/
Practice your coding skills in the largest learning and competition community. The site offers a lot of algorithm tutorials and tons of coding practices to choose from. Since the site also connects developers to companies, users can get hired by companies as well.
5. HackerEarth: https://www.hackerearth.com/challenges/?utm_source=collab&utm_medium=bloglink&utm_campaign=cloudemp
Challenge yourself and compete with over three million developers worldwide. Join in various monthly coding challenges ranging from beginner to advanced level. HackerEarth supports over 35 programming languages and their platform can be accessed for free for developers. They have a wide range of practice tracks available such as Data Structures, Algorithms, and more where developers can learn and analyse their performance by solving over 100 problems in each of the tracks and rank on the leaderboard.
6. CodinGame: https://www.codingame.com/start
Improve your coding skills to the next level by solving tons of fun coding challenges in more than 25 languages and data structures. CodinGame lets you practice coding in pure code with online games. You can also learn other programming languages crafted by their top developers. Strengthening your coding skills could also land you a job with their partner companies.
7. TopCoder: https://www.topcoder.com/challenges/?pageIndex=1
Compete against other designers, developers, and data scientists in one of the original online competitive programming platforms. They have Single Round Matches offered a few times a month at a specific time. The top rankers are one of the best and hard to beat programmers.
8. Project Euler: https://projecteuler.net/
Explore a domain of mathematical challenges and data structures that require more than mathematical insights to solve. The coding problems on the site give an inductive chain learning experience meaning each problem introduces new concepts that can help solve other problems. Unlike the other sites on the list, you can not code on the website itself so you would have to solve it on a sheet of paper.
9. Codewars: https://www.codewars.com/
Solve coding challenges and data structures created by an online community of developers in Codewars. Since this is a community-based website, you can create your own code and discuss solutions on online forums for each coding challenge. The challenges on the site earn you a spot on their ranking system. The higher your rank, the more difficult your challenges will be.
10. LeetCode: https://leetcode.com/
Hone your coding skills and be technical test-ready for a job interview. With over 750 questions to solve and 14 popular languages to use, you can practice your skills and participate in contests along with hundreds of thousands of other users. LeetCode also has a “Mock Interview” so users can prepare for technical job interviews.
Updated
Doc’s Answer
Hakim my suggestion is trying to become proficient in one language rather than trying to learn a little of a few, the same way you would take French, German and Italian all three at once. So which language to begin with? That has a lot to do with what you’re trying to accomplish, but there are three that stand out for their multi-faceted applications, consistent utility and accessibility to beginners. They are Python, Ruby and JavaScript.
PYTHON – Developed in the 80’s, is considered one of the easiest coding languages to learn. It’s free, open source, and most often classified as a scripting language (meaning it doesn’t require an explicit compilation step). It’s one of the most ubiquitous programming languages today, and used by the likes of Google, Yahoo! and NASA.
RUBY – Beginner-accessible and is a extremely prevalent scripting language. It’s dynamic, object-oriented scripting language used to develop websites and mobile apps. Ruby was designed by Yukihiro Matsumoto to be easy, logical, and not require advanced knowledge of commands. Ruby on Rails, helped expand its usefulness for the web, and is used to make the framework for Twitter, Groupon and GitHub. It’s also often used for backend development. JavaScript (not Java) is most often used as aclient-side scripting language for front-end development. It’s the most frequently used programming language to make websites and games for Internet use, much of its syntax comes from the programming C Language.
JAVASCRIPT – JavaScript is a programming language that allows you to implement complex things on web pages. Every time a web page does more than just sit there and display static information for you to look at—displaying timely content updates, interactive maps, animated 2D/3D graphics, scrolling video jukeboxes, or more—you can bet that JavaScript is probably involved. JavaScrip is universal, running on all platforms and is in your browser (no installation required). Anything you want to build on the web will require some knowledge of JavaScript.
Hope this is helpful Hakim
PYTHON – Developed in the 80’s, is considered one of the easiest coding languages to learn. It’s free, open source, and most often classified as a scripting language (meaning it doesn’t require an explicit compilation step). It’s one of the most ubiquitous programming languages today, and used by the likes of Google, Yahoo! and NASA.
RUBY – Beginner-accessible and is a extremely prevalent scripting language. It’s dynamic, object-oriented scripting language used to develop websites and mobile apps. Ruby was designed by Yukihiro Matsumoto to be easy, logical, and not require advanced knowledge of commands. Ruby on Rails, helped expand its usefulness for the web, and is used to make the framework for Twitter, Groupon and GitHub. It’s also often used for backend development. JavaScript (not Java) is most often used as aclient-side scripting language for front-end development. It’s the most frequently used programming language to make websites and games for Internet use, much of its syntax comes from the programming C Language.
JAVASCRIPT – JavaScript is a programming language that allows you to implement complex things on web pages. Every time a web page does more than just sit there and display static information for you to look at—displaying timely content updates, interactive maps, animated 2D/3D graphics, scrolling video jukeboxes, or more—you can bet that JavaScript is probably involved. JavaScrip is universal, running on all platforms and is in your browser (no installation required). Anything you want to build on the web will require some knowledge of JavaScript.
Hope this is helpful Hakim
Great insight!
Ella Rossiter
Thank You Ella. Life is an echo. What you send out comes back. What you sow you reap. What you give you get. What you see in others exists in you. Regardless of who you are or what you do, if you are looking for the best way to reap the most reward in all areas of life, you should look for the good in every person and in every situation and adopt the golden rule as a way of life.
Doc Frick
Updated
Richard’s Answer
For quick, easy reference and coding you can't beat
https://www.w3schools.com/
A good developer will often need to adapt to different code bases as you go. You can start with one to get good at, but more importantly for your career you want to learn the right methodologies which apply to all languages. Then it is quick and easy to pick up new languages because you know what you are trying to do and learning syntax is the easy part. So I highly recommend that in addition to learning language, you really focus on methodologies.
For example, what is a Semaphore? Why would you need it, then how would it apply to a given language, or not. Concepts of re-usable code, modular design, revision control, avoiding arbitrary constraints, clear maintainable code which others could understand, either from good comments or clear design, etc. These are the things that will carry you and help you learn quickly what is needed in different languages.
https://www.w3schools.com/
A good developer will often need to adapt to different code bases as you go. You can start with one to get good at, but more importantly for your career you want to learn the right methodologies which apply to all languages. Then it is quick and easy to pick up new languages because you know what you are trying to do and learning syntax is the easy part. So I highly recommend that in addition to learning language, you really focus on methodologies.
For example, what is a Semaphore? Why would you need it, then how would it apply to a given language, or not. Concepts of re-usable code, modular design, revision control, avoiding arbitrary constraints, clear maintainable code which others could understand, either from good comments or clear design, etc. These are the things that will carry you and help you learn quickly what is needed in different languages.
Updated
Rakesh’s Answer
Just an addition on top of others comment, I recommend exploring the Open source projects so as that might help with your Advanced coding skills may be a code review/ feature / bug fix on the repos. Participating in Tech conferences / following engineering blogs across companies you are passionate about.
Updated
Lucie’s Answer
Lots of great answers here, I found that in order to advance in coding a few sources very helpful:
- LinkedIn Learning: A lot of good content and very well done, entertaining and with good images to convey the message. I think the subscription is $29/month but well worth it. There might be some free content too.
- YouTube: Needs a little bit more discipline but you can definitely find a lot of good tips and tricks for coding on YouTube and follow the YouTubers.
- Meetup: You have coding groups that meetup virtually or in person and even better specialized in the language you want to deepen (Python, Java, etc.)
- Local groups and clubs: Always good to know but there are usually local schools that have groups open as a hobby. Coding is a huge trend right now and googling it in your area should give you some good results.
Hope this helps,
Cheers
- LinkedIn Learning: A lot of good content and very well done, entertaining and with good images to convey the message. I think the subscription is $29/month but well worth it. There might be some free content too.
- YouTube: Needs a little bit more discipline but you can definitely find a lot of good tips and tricks for coding on YouTube and follow the YouTubers.
- Meetup: You have coding groups that meetup virtually or in person and even better specialized in the language you want to deepen (Python, Java, etc.)
- Local groups and clubs: Always good to know but there are usually local schools that have groups open as a hobby. Coding is a huge trend right now and googling it in your area should give you some good results.
Hope this helps,
Cheers
Updated
James’s Answer
I'm a fan of PluralSight myself but make sure you focus on the fundamental of programming and not just the specifics of a particular language. Once you have the fundamentals, you can apply them across a range of languages. There will be a time when going deep on the behavior of a single language will be valuable, but that is rare.
The reality of today's world is that you are almost never writing code for yourself, for only you to read. You need to write code that someone else can look at in 6 months, a year, 5 years and have *them* understand what the code does and why.
Understanding the algorithms and design patterns and writing what is essentially self-documenting code are key skills to making your code last regardless of which language it's written in.
The reality of today's world is that you are almost never writing code for yourself, for only you to read. You need to write code that someone else can look at in 6 months, a year, 5 years and have *them* understand what the code does and why.
Understanding the algorithms and design patterns and writing what is essentially self-documenting code are key skills to making your code last regardless of which language it's written in.
Updated
Akanksha’s Answer
I would recommend hackerrank, geeksforgeeks and leetcode. Pick any you feel comfortable with.
Updated
Kris’s Answer
I like https://udemy.com, https://codeacademy.com, and https://pluralsight.com.
Updated
Simeon’s Answer
If you have any interest in gaming, I would recommend taking a crack at coding for video games. It is hard to develop skills without using projects with deadlines to develop those skills. There are game jams where coders work towards developing games around a certain theme. You'd get experience in not just coding, but also in optimization, debugging, and developing code in response to user feedback and review. One of the more popular game jams is done on itch.io by Game Maker's Toolkit (You can find his videos about previous years game jams on Youtube).
Updated
Heidi’s Answer
I have found Udemy to be a great resource as well. It offers a wide range of courses that can help you learn new skills and/or strengthen existing skills.
Updated
Jay’s Answer
Hakim,
Pluralsight is a great starting place for a wide variety of programming courses. It offers a lot of focused content that can take you on a real learning path in the specific areas you are interested in. As a huge benefit, if you are looking for programming they have embedded applications where you can work on areas from specific code snippets all the way to full programs, all within the site. They also help track and record your progress as you advance.
Additionally, Amazon AWS, Google GSP, and Microsoft Azure all offer a ton of content that you can use to help kick start your learning.
Best of luck.
Pluralsight is a great starting place for a wide variety of programming courses. It offers a lot of focused content that can take you on a real learning path in the specific areas you are interested in. As a huge benefit, if you are looking for programming they have embedded applications where you can work on areas from specific code snippets all the way to full programs, all within the site. They also help track and record your progress as you advance.
Additionally, Amazon AWS, Google GSP, and Microsoft Azure all offer a ton of content that you can use to help kick start your learning.
Best of luck.