On August 2nd, Wayfair Engineering hosted our second annual Community Coding Day. You can read about our first annual Community Coding Day here and a complimentary school-year program that I built, called ENGage, here.
Our goal for these programs is to expose students from under-served communities to Computer Science and provide them with a welcoming experience into our office space, with the hopes of exciting them about a career in software engineering. We do this in partnership with non-profit organizations that are already doing long-term work in these communities, seeking to catalyze their mission to set their students up for success in school, college, and beyond.
We also work towards this goal by prioritizing students’ high quality experiences in every aspect of our planning – student-to-mentor ratios are 1:1 because we recognize that getting to talk to an engineer about their work is just as important as being exposed to coding. The schedule allows for time to explore and enjoy our office because we know that, for students that are aspiring first-generation college students, being welcomed into an office space isn’t to be taken for granted. All of these things are a result of a lot of intentionality and hard work from a huge team of people – Community Coding Day 2019 hosted over 100 students and required over 100 Wayfair engineers to serve as mentors. Nicole Tan was one of our mentors and I am so excited to invite her to share her experience mentoring at Community Coding Day 2019.
Mentor Spotlight: Nicole
Hi! My name is Nicole and I am a Creative Technologist at Wayfair, working as a creative technologist on the research and development team within Wayfair, called Wayfair Next. I signed up for Community Coding Day with a small cohort from my team. It seemed like an awesome way to give back because it isn’t every day that you get the opportunity to encourage students to pursue STEM in a 1:1 setting while also catering to their interests.
Growing up, I wasn’t exposed to Computer Science classes in school and stumbled into the field by chance in college. As I progressed to higher level classes, the number of women and people from minority demographics rapidly decreased. With fewer and fewer people looking like me in classes, there were many times where I considered switching fields because I didn’t feel like there was a place carved out for me. I felt that I didn’t belong. With a lack of visible role models, my own questions in college ranged from “What can I do with a job in software?” to “Can I eventually find my place here?” Community Coding Day seemed to be the perfect first step to make sure that other students wouldn’t struggle with the same questions that I did.
When Community Coding Day finally came along, I remember sitting in the room where we were hosting the event kick-off. Minutes before mentors were to be paired with mentees, I immediately noticed an air of excitement – the students continuously fidgeted in their seats, constantly turning back to check out the rows of mentors behind them while we enthusiastically described Scratch and Python projects we planned to work on with each other.
I happened to be paired with the best possible mentee ever: Y, a sixth grader from Steppingstone Academy. She was intelligent beyond her years and had an aspirational mindset (her goals for the next few years are to beat Usain Bolt’s record AND to cure cancer). She also had the makings of a great engineer in that she never hesitated to ask questions and was willing to make mistakes, persist, and then try again with more vigor.
While getting to know each other, Y talked about how much she loved drawing, so we began by creating a basic Paint Box app in Scratch. I drew out a diagram for what we’d create – an app where you could choose your color, then draw with your mouse – to generate some excitement and to show her the bigger picture before breaking down the project into more manageable chunks. At some points, things didn’t go smoothly – the mouse would not follow the paintbrush or the paintbrush would output the wrong color. However, we were able to talk through each roadblock to understand why it didn’t work the way we expected it to, and break down each problem. Making mistakes became a part of the process instead of a hindrance; not only did we get to explore different functionalities within Scratch (which inspired new features that we later added to our project), more importantly Y was able to understand how analysis is fundamental in learning how to become a better engineer.
Community Coding Day’s curriculum was open ended – as a mentor, I was given suggested activities, but also the tools to tailor tasks to Y’s interests. After we finished the Paint Box app, Y came up with more creative additions of her own and we ran with it. As we had stumbled onto some of the animated sprites prior, she decided she wanted to change the “Clear All” button into a balloon that would pop (with noises too!) and become a burst balloon when clearing the screen.
Over lunch, Y told me about all the hobbies she enjoys (from gymnastics to track to drawing to watching Bleach), who her best friends at Steppingstone were, her dream of being a doctor someday, her aspirations to get into Boston Latin, and how hard she’d been studying to get in. Beyond having some time to collectively unwind, this was a space to create a personal connection with Y beyond the academic context already established. Her excitement to share her dreams and interests with me sparked enthusiasm in myself; it was so inspiring to find someone so passionate and willing to learn.
After eating, I brought her to my desk and the Wayfair Next Lab. She took a fond liking to some of the toys on my desk, in particular a few of the rubber ducks given to us during Wayfair orientation to remind us about ‘Rubber Duck Debugging’ – the process of analyzing broken code by explaining goals and the flow line-by-line – so I ended up giving her one as a small memento. In the Wayfair Next Lab, I showed her a few of the gadgets we regularly used, including a holographic display, the 3D printer, and a few of our VR headsets. As we made our way around the lab, Y pointed excitedly at different objects, asking how each worked. Time and time again, she was surprised software engineers could work on such varied media and that code could create experiences for all of these devices.
For our afternoon coding session, we worked with Python and the Turtle Library to build a Turtle racing simulation. The Turtle Library allows users to write basic Python commands to guide their on-screen turtle through forward movements, backward movements, and x-degree rotations. In the turtle racing simulation project, the goal was to draw a racetrack and then have turtles race against each other, with a random winner each time. The challenge in this exercise was understanding directions from the turtle’s perspective, instead of the user staring at the screen. Y had a hard time visualizing this, even when we drew our the turtle’s desired movement on paper, so we used the rubber duckie I had given her as a physical tool to represent the turtle’s changing orientation. Y ended up loving using this tangible toy as an aid for directionality and immediately picked up on where we were going wrong and fixed the code all on her own.
After a full day of learning, Y and I sadly had to say our goodbyes. I found that I wasn’t drained from a day of talking, but rather motivated to work even harder and be a better role model for kids. With how hard she worked and how eager she was to learn, she inspired me to do better. The next time she comes around, I hope to show her even more cool things that we’ve had the opportunity to work on!
I’m so grateful to have been given the opportunity to teach kids, even for a little bit, about what I do at work and hopefully encourage them to pursue a similar path. I also really appreciated that, as a mentor, I wasn’t expected to change the world that day. Instead, I was encouraged and equipped to hone in on my connection with this student which will hopefully spark current and future enthusiasm in STEM. Rather than being given a strict schedule to follow, I was given the freedom to cater the day to my student’s skills and interest levels, which allowed me to focus on giving the best experience possible.
Community Coding Day, to me, was just the tip of the iceberg in getting the wider Wayfair community involved in diversity initiatives and incremental change at Wayfair, and in our community. To be able to remove some of the intimidation and mystery behind Computer Science and software engineering, to show kids that they, too, can create really cool things, and to spark that yearning for learning were some of my personal goals for the day. I’m thankful that I had the privilege to participate and to learn from our students. A big thanks to Karina and the entire CoCo Day team for such a great event and for constantly looking for ways to chip away at systemic barriers to better the community.