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.
To get started learning, she recommends websites such as:
She also presents the option of doing programming problems, such as through
- Codewars (free): https://www.codewars.com/
- LeetCode: https://leetcode.com/ (Paid, but good investment if you wish to go into the industry as it provides resources with respect to that)
- Projects you pursue on your own.
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: