Creating a Web Development Club

The Independence Coding Club, as large as it is now with nearly 40 members total, originally started as a late-night idea that I initially thought would never see fruition. A few weeks before school began, my friend Shazeb Wani and I were on a call discussing various ideas for what to do for extracurriculars over the next school year. Initially, we planned to see what coding or computer science clubs our school offered. After looking around, we found that the only computer science-related clubs were a competitive programming club and an iOS app development club. Shazeb and I were not particularly interested in either club, and after much talk, we ended the call with us joking about starting our web development club. However, as the start of the school grew closer, we decided to give it a shot. After finding a club sponsor, we started creating plans for the club. First, we got several other students to help us out with the club by being club officers. Then, we started telling other students to join the club once the school year began. We were initially very nervous about how many would want to join the club, as web development does not sound like the most exciting subject to most. So, we decided that when presenting the club to others, we would present it not as an opportunity to learn how to code but as an opportunity to learn skills used in real-life applications. We also told others that in addition to just teaching web development, we were happy to help others with any other sort of coding project that they may have. This strategy worked very well, and we got most of our members. A few weeks after the school year began, we started meeting once a week. We first taught everyone how to code using Scratch, which places more emphasis on the logic behind programs and less on the syntax.  Scratch is a simple game creation website that uses "block code" to create the reason behind the games. We spent several months on this, as we wanted to ensure everyone understood how to approach and think through problems. 


Shazeb Wani(Vice President), teaching how to make a simple game
    
After the first quarter, we decided to start teaching actual web development. We made the lesson plans loosely based on what other officers and I had learned from Harvard's CS50x Introduction to Programming, which emphasizes web development. The plans include teaching HTML, CSS, JavaScript, and general web development guidelines. Most of the coding is through Replit, a free web hosting site. It is straightforward, and Replit allows for easy use of the three core languages together, which makes it ideal for beginners. 
A simple Replit website


 Looking forward, we have several plans for the rest of the year. We will finish teaching the basics of web development once we go over the basics of JavaScript. After spending a few classes practicing and perfecting all the skills we taught, we plan to have each club member create their website, but we are doing so by using a few unorthodox methods. We want to give students as much creative freedom as they wish, just giving them the tools and simple guidelines to create the final project. In addition, we also want them to find and research their web frameworks to base their website, although this is for those more comfortable with web development. We will teach how to use AI tools, such as ChatGTP, to further both their knowledge and efficiency in web development. Although relatively new, AI tools like ChatGTP and GitHub Copilot can be commonly found in the real world. My intention with the implantation of these tools is not to have members copy and paste code from them but to truly learn and grow from them. I know how frustrating it can be to spend hours upon hours searching the web for a solution for a minor bug, and I hope these tools can shorten the hours to just a few seconds. In addition, I am also excited to see how AI can help members bring more complex website ideas, such as CSS animations, come to light. 

Although the Independence Web Development Club has been going well overall, the club has faced some challenges. For example, at the start we made the tough decision to teach just web development. At first, we wanted to teach other concepts, such as data analysis, but we decided that these were too advanced for beginner programmers. However, this idea could make a return next year, as we could give the option to more experienced students to learn data analysis instead of web development again. The other big issue the club faced was that many members did not attend the club regularly. Although this was not a big deal initially, as we were going over more introductory material, this would have been a much bigger problem in the future if we had not solved it quickly. Fortunately, sending a reminder to everyone in the club about when we were meeting as early in the day as possible significantly increased the number of people who attended, compared to only sending a reminder one or two hours before the meeting started. In short, the Independence Coding Club has created a small but powerful community of coders who are all learning how to develop websites together.

Special thanks to: Shazeb Wani, Connor Barkman, Om Shah and Adharsh Sivaganesan

Comments

Popular Posts