Target Women in Science & Technology (TWIST) volunteers and four Dojo coaches recently hosted the first-ever TWIST EPIC Hack-a-thon on Jan. 15 and will be hosting another on Feb. 18. The TWIST EPIC Hack-a-thon is a new opportunity deriving from the EPIC Awards, a ceremony that honors 25 female high school students in the Twin Cities and surrounding metro area for being engaged, passionate, innovative and curious (EPIC) about science, technology, engineering and mathematics (STEM).

TWIST invited 50 of the past winners to Target headquarters for a daylong hack-a-thon. The event was a tremendous success: By the end of the day, the students, who had little to no prior programming knowledge, were writing their own API endpoints. The takeaway: Target has the internal resources and talent to teach fundamental programming skills to any audience of any age so long as the individual has a desire to learn and an interest in programming.

The Hack-a-thon

The volunteers greeted the students when they arrived at Target headquarters and brought them up to the Dojo space. After some introductions, the Target volunteers and students started playing the Ball Point Agile game — a game that our Dojo coaches use to teach basic Agile principles. This was one of the highlights of the day, according to our survey feedback. After the game, we all went to the Target cafeteria to grab some lunch.

After lunch, it was time to code. Prior to the hack-a-thon, TWIST volunteers built a Java SpringBoot application hooked up to an H2 in-memory database to use as a shell application. This was placed in a public GitHub repo. The coaches and volunteers described mob programming: two groups of four EPIC students along with two Target engineers; mob intervals 10 minutes in length; one person on the code machine; and one person on the research machine. We went over some examples of APIs in the Target world, and then we jumped into the code. At the end of the day, the group came together to demo each mob’s API. (We had two Dojo pods going at the same time.) Both groups exceeded our expectations with the amount of code they wrote and with how quickly they caught onto the structure and syntax of writing Java (and in only four hours of coding!). They added attributes, classes, methods and endpoints to the projects. It was great to see the students have confidence in the work they completed.

Architecture Image: TWIST EPIC participants in their mob formation at the hack-a-thon

After the Hack-a-thon

TWIST put together step-by-step documentation to share with all of the EPIC awardees — not just the ones who could be there for the hack-a-thon. The document includes everything from installing the JDK and JRE, to importing the project in IntelliJ, to testing it in Postman. It is comprehensive documentation on how to pull down and run an API on either a WindowsOS, MacOS or LinuxOS; it contains a section to describe, in common language, the various files that would be updated in order to add new functionality; it contains helpful links (that many Target engineers use); and it provides information on how to find ongoing support. We provide support in the hack-a-thon GitHub repo (TWIST posted the project to a public GitHub account so that the TWIST EPIC winners can collaborate together in one repo), and we will take questions through the TWIST EPIC email account.

What We Learned:

  • The students absolutely LOVED the Agile game and the mob programming.
  • They enjoyed the challenge of learning and were excited about not knowing what to do next.
  • User-centric examples make APIs conceptually easier to understand.
  • It helps to share pictures and diagrams of the database and how information flows through the application.
  • The students really wanted to hear about our experiences and what the real world of development is like. We could not and cannot express enough the importance of failing fast and learning.
  • Presenting demos at the end is a great way to connect the students with their work.

Some of the best outcomes of the hack-a-thon were the flexibility and reusability of the event. We had a small group come together with a few talented engineers, and in about four hours of coding, we were able to teach high-schoolers foundational concepts of writing microservices. There is great potential for repeating and sharing the EPIC Hack-a-thon with other age groups and audiences.

Getting started with coding is not so easy. There are a lot of complications that arise when setting up environments. TWIST volunteers and Dojo coaches worked really hard to get the shell of the app up and running. Immediately following the event, they got to work on sharing documentation so that the program can be used again outside TWIST and Target. We know it can be hard to get started and things rarely work the first time, so we provided support docs. End-to-end programming is learned over time and takes practice, but we need to give people in our community the right tools to test it out!

The long-term goal of the TWIST EPIC program is to evolve a talent pipeline. To achieve this goal, we need to teach valuable and relevant skills and give the EPIC winners opportunities that shed light on the cool tech we are working on at Target.

The TWIST EPIC Awards will be open for 2019 nominations in April. To learn more and get more involved, follow us on Twitter.

Tarah Cleveland is a technical product owner working on a new groupings functionality for Target. In addition to driving innovative technology solutions at Target, Tarah is passionate about advancing women in STEM and is a member of the TWIST steering committee.