We’ll be at Google Cloud Next ’24 in Las Vegas, April 9-11

Back to top
D-Code: Teaching Detroit Students How to Code

Developers Kyle Ofori and Brandy Foster reflect on their time at DEPSA

At Detroit Labs, we believe that helping individuals gain access to STEM education makes our community and world a better place to live. It is part of the foundation of our Apprenticeship Program, and is felt strongly by people throughout the company — especially those who participate in many forms of community outreach.

After Android Apprentice Team Beta graduated in winter of 2014, developers Brandy Foster and Kyle Ofori visited various Detroit Public Schools with other DL teammates and started the D-Code outreach program. The goal was to show students, especially Detroiters, what professional opportunities are out there. They talked about Detroit Labs, tech, and what they do as developers, but there were a few missing steps. Kyle felt that they were telling students about what IS possible, but were not giving guidance, access, or proper tools to get there.

I sat down with this power duo– and my former Apprentice Team Beta classmates (Beta4Lyfe) — to learn about their students at DEPSA, D-Code as a program, what they learned about teaching, and what students are truly capable of if you believe in them.

D-Code - Smiling Developers

Elyse Turner (ET): What is D-Code and how did you get involved in teaching for DEPSA?

*Brandy Foster (BF): *D-Code is the brainchild of Kyle Ofori.

Kyle Ofori (KO): Well, it was a group effort eventually.

BF: Right, but at first!

KO: (laughs) Right.

BF: Detroit Labs visited a few inner city Detroit Public Schools, sometime during or after our Apprenticeship class. After presenting and fielding questions, we felt that, especially at the inner city schools, we were telling them about these wonderful, interesting, stable careers but not giving them any access to them. After seeing this, Kyle wanted to do more and work together to teach these kids how to code.

KO: We started thinking about what we wanted to teach, and knew that we would want to start a class in the Fall (2015). We started to figure out how to make that happen. At some point, Kevin Smith (PSG Partners) reached out to Erika Carlson (Director of Apprenticeship and Training at DL) and proposed the same type of class that we had independently been planning, at DEPSA. The difference with [working with] him is that he would be the go-between so we could focus on teaching. I was torn about expanding the team for a day or so, but then realized having people backing and behind the program would be beneficial to all!

D-Code - Teaching Detroit students how to code

*ET: Why did you choose to focus on youth in Detroit? *

KO: It’s important to be working with city students who did not have access to opportunities like this through their schools or personal connections, because as we can see, there is not a lot of diversity in the Detroit tech community. I wanted to start a program that would address that specifically. Students who may not have access to technology, or wouldn’t have the connections to get them interested or make things available. I ultimately wanted to give those students an opportunity to be a part of this [tech] world. Access to computers, education, and a stable career.

BF: I am Detroit-born and raised. This is my hometown, my city. I am a parent of DPS students. It is very important to me to give back to the school that raised me, and where my children go. I want to build a bridge of accessibility now that I have a direct path to these opportunities. Diversity in tech is not good. Diversity in Detroit is even worse. Think about it: the citizens of Detroit are predominantly black. If you take a look at the booming tech scene here, there are not many minorities at all. I feel as though I need to be the bridge to bring tech education to the huge minority population of Detroit, something positive in the terrible mess we are in right now. There are people being gunned down, protesting everywhere, but at the end of the day, change can’t happen without resources and opportunity.

Tech is the future. If you continue to widen the gap with technology, diversity, education, and access, then poverty and systemic racism will continue on. To combat prejudice, it is important to teach inner city minority youth about tech. Give them access to technology and construct a bridge that helps them catch up. When you have incredible STEM jobs in Detroit and other cities, minorities are not included in this. I see it as all hands on deck; you have to do whatever you can, and anything you can.

KO: I moved to Detroit to teach, so being in an environment that was 99% black with young people learning, this was my impression of Detroit. Then when I started working here, the city itself was not reflected. *There is no reason that two people in the same city should be living in different universes. *

ET: How did you prepare the curriculum?

BF: Here’s what was interesting. Originally we were going to be at a different school. We started with what we wanted to cover and started forming the curriculum around that school. We were having weekly JavaScript meetings in the fall to make the curriculum. We had help from other Labbers who knew JavaScript and wanted to help out with the course. We planned out a 26-week course, the overall goal of text adventure, broken down to weeks, broken down to classes (two per week). We started breaking it down from the large goal to the smallest task. We did project planning, epics, features, tasks!

*KO: *To me it felt more chaotic than that. I was all about the slides, because I didn’t want to spend too much time looking at large level. I was detail and nitty-gritty. It was a good balance.

BF: I was building out the large roadmap and starting from that end. Neither Kyle nor I knew JavaScript. We were simultaneously creating a program to teach while also learning.

KO: Towards the end we were rolling!

*BF: *HTML was hard for me, but I think Kyle and I were good in balance.

ET: Tell me about the class structure, lectures, projects. Were there any classroom charters that you all agreed on to be successful?

D-Code - Teaching Detroit students how to code

BF: I wanted no rules, I wanted anarchy! Kyle wanted structure… and Kyle was right. It was a very nuanced discussion we had. We compromised in a good way, and in the end that is why we were so successful.

We had a team agreement, the same that we would use on an actual (Detroit Labs) project. We drafted the agreement up and gave to the students to add to. It was collaborative. We added consequences, and laid everything out on the first day so there were no questions as to how we would all work and play together.

KO: It was a nice balance, we (us, and the class) got to know each other, then part of getting to know each other further was the team agreement. I thought it was interesting because I also learned about how the school works. We asked students how they could learn in a way that made them feel supported and safe, and the students got to talk to us about what was important.

*BF: *We gave them the opportunity to impose social norms onto us (DEPSA term, not ours). They were able to inform us of the norms they wanted us to follow, such as no over the shoulder peepers, and they didn’t want to be compared to another student by us.

KO: That is a good one. It’s easy to get in the habit of comparing, but it was nice to be ready from day one so that we all trusted and respected each other.

BF: It was “I’ll respect you, you respect me,” not, “this is what you do, follow this.” It was a mutual respect thing.

KO: We reminded them that we were learning JavaScript too, so that they could remember to be in charge of their own knowledge.

BF: It’s important to note that one of the things that he and I both noticed working with inner city  kids, is the idea of what a developer looks like, and what you have to have to be a developer. They thought that you had to be a “genius” and “know everything.” We (Kyle and I) were newer developers, and were actively learning with them, so we did have to Google (as any developer does). It helped the students have more confidence when approaching things, seeing that we could struggle and then figure out the problem on our own.

KO: Just so you know, the general class structure went as such: Two classes per week. The first section was HTML. At the end of the section, students worked on a group project. The next section was CSS, followed by a pair project. Finally, we ended with JavaScript, which was followed by a solo project. The class final was a text adventure website/webpage that used all of the skills learned throughout the D-Code class. We also had a visit to Detroit Labs on May 19th, which was awesome.

BF: We would teach and then have them do an exercise. We didn’t just bombard them with information. We would show them how to make a header, and then do an exercise in between topics. We made sure to provide students with slides for reference after class, and independent study. We did two retros, and a small team retro for the group project. We reviewed recent topics at the beginning of every class and broke the ice with a riddle at the beginning of the day. We would wrap up every day with a project.

ET: When you got into the classroom, and started working with the kids, what surprised you most?

BF: For me, before the start, I thought that these kids would show up and give 110% in best case. My surprise was YES! The kids who went through the whole program definitely showed up. They were interested, highly motivated. What surprised me was that we were right. The kids will want it, enjoy it, and be good at this.

KO: I was surprised that I was having such a good time teaching so early on. I was nervous because my first year of teaching was not so happy….. But the first day was great, then second was great, and it was just overall great. There was even one day where I forgot my charger, my computer was dying, I had no slides with me, and we ended up running that class in a different and independent way. They were ready to work by themselves and figure out what they needed to. Quite heartening to see motivation!

ET: What did you learn from the whole process?

BF: Organization is key. Project planning is very important. Trust your gut. At the beginning we didn’t want to overwhelm the students, but then we realized that the kids will always strive to reach the goals you set. If you set more goals, they will strive really hard to reach them. I think if, at the beginning, we believed in us and them a little more, we could have moved faster. I learned that I really, really, really loved teaching. Kyle is a rock star. Having a good team and good teammate is so important. We balanced each other out really well naturally. Doing D-Code again, part of me wants to cry without Kyle (Kyle is going on to a master’s degree program at Harvard).

KO: Having a good team! It was great to have support from so many different avenues. Erika (Carlson) and Robb (Tvorik) helped with course planning. Jake (Payton) and Tim (Fether) had JavaScript ideas, Detroit Labs was very supportive. Having a teacher at DEPSA who we were in contact with, knew the students, and could give us a heads-up as to what’s happening in their lives was very helpful as well. Without all of those people, this endeavor would have been much more of a grind, and less enjoyable.

ET: What made you the happiest or most proud?

BF: Their excitement over their personal accomplishments made me happiest. At the end they were so on it, we were just walking around, no one needed help and we would just be there after a lesson because they were so hungry and willing to do the work.

KO: I loved seeing them working on their final project. They were setting high goals, and working incredibly hard towards them.