We Connect The Dots with STEAM and coding for students

I’d like to tell you about my experience volunteering and teaching with an organization offering STEAM education, called We Connect the Dots, as well as the courses we offer the impact these initiatives have on students.

I’ve been writing code for longer than I haven’t been. Writing code is a big part of who I am. My interest in experimenting with software development as a child led to my career as a professional software developer and my role today, as a principal program manager for Microsoft Visual Studio App Center.

When I was young and learning how to code, there were few computers families could afford, no Internet, and just a few magazines and books on the topic. Computers weren’t in our schools, so there weren’t any classes and I had to teach myself.

Fast-forward to today, where learning to code is a vastly different experience. For instance, anyone at any age can now purchase a credit-card sized computer, called the Raspberry Pi, for $25. Computer engineers piloted this technology in 2012 because they noticed that students arrived at University with limited coding experience. Years later, and with three versions of the wildly popular programming device available, the Rasberry Pi Foundation has given students an easy and affordable way to learn programming.

The Raspberry Pi is just one way to learn coding – there are more avenues awaiting anyone of any age, whether through books, websites, courses, Hackathons or MeetUps, to name a few.  Initiatives around STEM (Science, Technology, Engineering and Math) or STEAM (Science, Technology, Engineering, Arts and Math) education help bring technology to students from elementary school through middle school and high school. In many cases, these programs teach coding through web and/or mobile app development. Other programs focus on coding on inexpensive programmable systems, like the Raspberry Pi or Arduino devices.

 

Meeting We Connect The Dots

 

Through a serendipitous meeting via my full-time role at Microsoft, where I serve as program manager on the Visual Studio App Center team, I encountered Laurie Carey, the founder of an organization called We Connect the Dots that provides STEAM programs for high school and college students. As a former Microsoft employee, Laurie brought her expertise to facilitate collaboration with volunteer resources across the country. We Connect The Dots has a permanent education facility in NY, delivers a yearly three-day code-a-thon (a sleep-over web development training event) in locations around the world, and hosts other educational events. Before I knew it, I was developing an advanced web development course for them.

 

How a Code-A-Thon works

 

STEM and STEAM programs are all about getting students interested in technical fields; they couple hands-on work with technical instruction to engage and inspire students, arming them with the skills and motivation to continue coding after they complete the course.

For the We Connect The Dots Code-A-Thon, the organization works with local school systems to secure logistics, educational materials (including engaging videos and blogs), and volunteer coordination. Most of the education is self-guided, so the students gather in groups and work together through the weekend with some expert guidance.

 

First year students

 

In We Connect the Dots, first year students start with hands-on coding and educational materials before selecting a cause they feel strongly about. Next, they work with their teammates to build a web site to build awareness about that cause, or otherwise help the cause. With assistance from volunteer mentors, the students split up into teams and work from Friday afternoon through Sunday morning, using trial and error to start building their site and a community – just by eating, playing and sleeping in the same facility. Students build sites using a simple browser-based editor and the Twitter Bootstrap framework, then publish and host the sites through Github (an online version control system and one of the most popular publishing portals for source code in the world). Students get an immersive quickstart in web development using some simple, easy-to-use tools.

 

Second year students

 

Over the years, I’ve watched web development shift from HTML-based with JavaScript accessories, to JavaScript-based and HTML templates. Git guides version control for most everyone’s projects, from hobbyists to open source enthusiasts and enterprise developers. With all the technical needs in modern web application development, we knew our students needed to learn more than just HTML in order to be successful in the job market.

Feeling confident that our first year students knew how to build websites, we focused second year coursework on providing skills relevant to the large, modern, reactive web applications used by career developers.

Although the second year course has the same objective, to build a web site that helps promote or help a particular cause, these returning students experience learning through an advanced web development class, using more advanced tools and technologies to build their apps:

The rules for the second-year students were:

  • Each student must commit code to their project using Git (judges would check commit history during judging)
  • Students must build an app with at least one static page*
  • Students must consume and render data from at least one online data source**
  • Students must submit data to an online data source (using a form)

 

Transferable skills

 

You may be asking yourself: Why teach modern web development for the advanced course instead of mobile development? The beauty of modern development is that solid web development skills are extremely transferable, to mobile, desktop, IoT, connected devices, and beyond. While web development doesn’t immediately translate to Obj-C/Swift or Java mobile app development, it does create a solid foundation that students can build upon. And, since we focused on React development, students can easily apply their newfound web skills to React Native-based mobile development. Students also used free, open-source and cross-platform Visual Studio Code to code their apps, and used a simple Azure database as an online data source.

 

Want to get involved?

 

If this program sounds interesting to you, help us expand We Connect the Dots to other cities across the US and around the world. Introduce us to your community and, once the event’s scheduled, volunteer your services to help. We need your time and skills to assist and mentor these students. We also need sponsors to help pay for meals and other consumables used during the event. Leverage your network of friends and business associates to help sponsor your local event. That’s what I’m doing.

* Our volunteer instructors know that most modern web applications work in some way with dynamic data, so we decided to require students to use both static and dynamic data. We believe asking them to go beyond pages and start working with forms gives them more useful skills for the future.

** For the data source, We Connect the Dots pointed students some online sources, but also built an online discussion database using Azure. As part of the criteria listed above, students had to post data to an online data source, and this discussion database was created to give them a streamlined way to implement this.