KIPP Silo is at heart and by necessity a distrubted development project. We are data analysts, data managers, special projectors, DBAs, systems architects tasked with gathering, consolidating, analyzing, and reporting on data to students, teachers, school leaders, regional team members, authorizing agencies, donors, and myriad other stakeholders. We are located across 20 regions and 141 schools and arranging our schedules is aking ot align planets—it happens, but rarely. Consequntly we will be utilizing standard tools and techniques used for open source development projects. These are tried and true methods and tools that have been deployed to develop everything from client applications (like Spotify and Zappos) to whole programming langues (like R and Julia). So here are the tools will use:

Version Control System

  • GitHub This is simply the most important technology we will use. GitHub is a web-based hosting service for projects that use the Git revision control system. It has social networking features such as feeds, followers and the network graph to display how developers work on their versions of a repository. GitHub also operates a pastebin-style site, wikis for the individual repositories and web pages that can be edited through a git repository. It is even hosting this site!
  • git The version control system used by GitHub.

Cloud Deployment

Relational Database Management Systems

Scripting languages

  • Python
  • R Slow, but well understood by folks in the network. R has a tremendously helpful and active user community and an amazing universe of add on packages. It’s graphical capabilities, especially the ggplot2 pacakge, are really unparalled
  • Julia If you really want to be in the avant-guarde of scientific computing and high performance interpreted languages that use JIT compilers, feel free.