How to Advance Your Coding

This post summarizes the introductory points of some tips and tricks on how to break into coding as a high-schooler.

This post summarizes the introductory points of some tips and tricks on how to break into coding as...

Share to Twitter Share to Facebook Share to LinkedIn Share to Reddit Copy to Clipboard

Lucy is XdHacks Mini’s Chief Director of IT. Lucy is also a self-taught programmer. 


At XdHacks, we believe that high-school students have incredible self-learning skills, and our Lucy is a prime example! Her interest in coding started when she took interest in Khan Academy’s Game Design courses, because she wanted to create her own game. She continued her interest academically taking courses such as Programming 11 and AP Compsci, and she took web development courses outside of school. She credits Stack Overflow as a solid place to learn, in addition to citing her interest in machine learning. Lastly, Lucy highly recommends the free Harvard CS50 Web Programming course, as it teaches you Django and a solid foundation for web programming. 


Lucy defines some stages of coding she thinks is a good metric to evaluate where you might fall in your coding journey. 


Beginner: You learn some basic syntax, such as print() functions. You choose your main language. 


Amateur: You can solve simple programming problems in your main language, and you’re trying to build programs that can accomplish a given task. Often at this stage, you practice programming by solving basic problems. 


Intermediate: You can solve programming problems and know most other functions in your main language, and you know one specific field beyond basic programming (such as web development, neural networks, cybersecurity). You can probably teach beginners how to program in your main language at this stage. 


Junior: You focus on one specific field, and can teach amateurs in that one specific field. You might know a few more languages other than your main one, and maybe you’ve explored some other fields you might go into. 


Middle: You can find jobs in any specific field. 


Senior: You are a professional in the industry. 


Assuming most of our audience and participants are within the beginner to intermediate stage, Lucy emphasizes heavily the importance of completing projects, as courses can only do so much. The hands-on learning aspect not only is a learning process for you, but also a way recruiters can see what you’ve accomplished: it's a win-win. 


Next, Lucy elaborates a bit on what language you might want to choose when you are a beginner coder. She recommends JavaScript as a sort of “all-in-one” language and just a great resource considering how many libraries have been built upon it. Additionally, you can pursue game development, and have an easier time in programming competitions. She also recommends Python (3), as it is often used in other languages such as Flask or Django. It concerns areas of programming such as backend web development. Furthermore, it plays a big role in machine learning, blockchain automation, and is also a good language for programming competitions. Python is also used for data analysis and its visualization. Overall, Lucy recommends Python over JavaScript due to its ease of use in terms of resources available. 


Aside from her top two picks of JavaScript and Python, she recommends languages such as Java, an object-oriented language, which is also used in AP Compsci. C++ is an efficient language, but is a bit harder to learn. C is similar to C++, albeit older. 


To get started learning, she recommends websites such as: 


She also presents the option of doing programming problems, such as through 


This blog post is a loose transcription of the first 10 minutes of Lucy’s “How to Start Coding in High School: Tips and Tricks” workshop given during XdHacks’ 2021 Consultants event. To watch the whole workshop and learn things such as setting up your computer, going through a deconstruction of XdHacks Mini’s website, and a Q&A session, visit the link below: