Applying open source lessons to getting veterans to code

Jon Deng
5 min readJun 29, 2016

--

TL; DR - CodeConf: from nervous about my relative inexperience to stoked about what’s possible in open source

Operation Code and GitHub recently provided the opportunity for me to attend CodeConf in LA through the GitHub diversity scholarship program. As a formal introduction to the open source software community, CodeConf completely blew me away about what a passionate and connected developer community can create. As I met super-cool developers who were working on super-cool tools to improve life and work, I was struck with the openness of the community, especially to a relative noob like me, and grateful for the opportunity to join a network that but for Operation Code, I would have never had access to. Lastly, coming to LA turned out to be especially propitious for me when my girlfriend called and told me she had gotten her dream job as a prosecutor in LA, meaning that I’m going to be moving out here later this year. Congrats Jules!!!

I felt my relative privilege to other veterans very keenly … to even be aware of software development as a future career path.

During the conference, however, I felt my relative privilege to other veterans very keenly, to be connected to Operation Code and to even be aware of software development as a future career path to actively pursue. As a new developer traveling along the path, how can I build enduring bridges that will make it easier for other veterans to follow in my footsteps? I spent a lot of time thinking about how the lessons from the speakers at CodeConf can be applied to create a sustainable path for other veterans to travel into software development.

Having way too much fun at CodeConf

Nadia Eghbal, an open source researcher, gave a talk at CodeConf about two specific models of contributions to open source projects.

This is what the top 100 contributors for Rust, an open source systems programming language, look like in terms of number of commits per user:

Courtesy Nadia Eghbal

As you can see, the data shows what Nadia calls a “fat tail”, a large number of contributors who have all made between 0–100 commits. Rust is a project that is maintained by a large number of users making small contributions to keep it going.

Contrast this to Clojure, another open source programming language:

Courtesy Nadia Eghbal

This graph shows that in Clojure, one contributor (the creator of the language) makes a large majority of the commits with a few other co-contributors. Most of the users of Clojure have made 0 commits to the project.

Many veterans organizations focused on improving employability among veterans look a lot like Clojure, with many users and only a few contributors. The veteran is the client and the organization providing services (i.e. resume writing, job workshops, practice interviews) is the monolithic contributor. There is a very visible divide between the served population and the creators of this service. This type of veterans organization is hard to scale, because the services are created by a core group of contributors and the user-base, the veterans, are not involved in the creation and maintenance of the services. Additionally, I would argue, this type of setup is less effective because veterans have less skin in the game, and more of an incentive to game the system, taking as many resources as possible rather than creating sustainable paths for the future.

Operation Code, on the other hand, looks more like Rust with an active and decentralized community contribution model. From day one, veterans joining Operation Code are encourage to join the Slack Channel, fork the repository, hack the website, create tutorials — in short to build bridges for themselves and everyone after them. At CodeConf, I spent a lot of time thinking about how to lessen the barrier between the user (veteran learning to code) and contributor and I came to the conclusion that the only sustainable and scalable way to get lots of veterans on the path to becoming software developers is to allow them to contribute to their own experience in an open source community contributor model.

Team building and collaborative work on the Operation Code Slack Channel

An organization can help provide the framework for veterans to learn to code, but it cannot do the learning for them. One of the best ways to develop veteran skills is to encourage them to build things that help others.

One of the best ways to develop veteran skills is to encourage them to build things that help others.

In the spirit of making the small step from user to contributor, David, the founder of Operation Code, convinced me to help build a landing page providing a small tutorial and resources for veterans learning to code in Python. I am super stoked, but also intimidated about going forward. If anyone has any advice and experience to relate on creating an engaging educational experience in a blog post/ tutorial form, I’d love to get your perspective and feedback!

Hit me up on twitter or medium @jondeng.

Veteran-founded, and led, Operation Code is on a mission to get active military, citizen-soldiers, veterans and their families coding and building software to change the world. And the GitHub repo is here.

--

--

Jon Deng

Web Worker. Los Angeles. Formerly @USArmy. Likes running in the woods. I write to think better.