The Kennel is the host of innovative software created at Virginia Tech for introductory computing education. Currently, the Kennel includes both CORGIS and BlockPy.


The CORGIS project aims to transform early computer science projects by introducing real-world data via simple-to-use client libraries. Data Science offers an authentic context for your students to solve real-world problems with programming. The CORGIS project has over 40 libraries for subjects such as politics, education, literature, construction, and more!

CORGIS offers full support for Java, Python, and Racket, in addition to making its data files available in common data formats like JSON and CSV. Some datasets are also available through our unique Visualizer platform, which enables data science exploration directly within the browser!

Publications related to CORGIS:


BlockPy is a web-based Python environment that lets you work with blocks, text, or both. Designed for Data Science and equipped with powerful tools like the State Explorer and Guided Feedback, BlockPy lets students solve authentic, real-world problems.

The goal of BlockPy is to give you a gentle introduction to Python but eventually mature you into a more serious programming environment (such as Spyder or PyCharm). Long-term, we may support some game/animation design stuff that Scratch/Snap does, but that's not the real goal.

The BlockPy project is aimed at solving some hard technical problems: having a block-based environment for a dynamic language can be tricky - are a given pair of square brackets representing list indexing or dictionary indexing? Our goal is to use advanced program analysis techniques to provide excellent support to learners.

BlockPy owes much of its power to Google's Blockly project, the Skulpt project, Codemirror, and a host of other libraries. For a complete list, see the project GitHub.

Publications related to BlockPy:

The People Behind Kennel

Austin Cory Bart
Primary Developer (CORGIS, BlockPy)
Ryan Whitcomb
Developer (CORGIS)
  • Status: Undergraduate (Computational Modeling and Data Analytics) at Virginia Tech
Javier Tibau
Developer (BlockPy)
Luke Gusukuma
Developer (BlockPy)
  • Status: PhD student (Computer Science) at Virginia Tech
Dennis Kafura
Clifford A. Shaffer
Eli Tilevich
Omar Saleem
Former Developer (CORGIS)
  • Status: Undergraduate (Computer Science) at Virginia Tech
Jason Riddle
Former Developer (CORGIS)
  • Status: Undergraduate (Computer Science) at Virginia Tech