Horizon Simulation Framework: Picasso Interface
Tools: C#, Windows Forms, XML, Regular Expressions, MS Visual Studio
Systems toolkit interface for satellite modeling, including COE catalog, import tools,
multi-threaded execution, scripting support, and result / state visualizations.
Kifiew (Kifu Viewer)
Basic web application with HTML5 File support for drag-and-dropping SGF files for easy playback
of matches from the board game go. You can find the source on GitHub, and the live deployment on a subdomain of my personal server. If you need
some SGF files to test, try my favorite source, GoKifu!
Artemis Application Engine
Tools: C++, OpenGL, SDL
Cross-platform application library for rapid development of programs with fast and high-quality
graphics and interface requirements.
Tools: C++, SDL, Artemis Engine
Pacman, the iconic evildoer, has invaded the ancestral ghost lands for the last time. Use your
arrow keys to hunt down Pacman with Blinky, Pinky, Inky, and Clyde, and eliminate him!
MacCormacks Algorithm for Rocket Nozzles
Tools: Fluid Dynamics, Iterative Numerics, C++, Artemis engine
Simulates properties of supersonic flow in rocket nozzle with known geometry using iterative
(MacCormack's) techniques in 1d, including 3d model of subject nozzle, real-time state plots,
and user-controlled iteration.
MOC Nozzle Geometry
Tools: Fluid Dynamics, Method of Characteristics, C++, Artemis engine
Calculates optimal minimum-length nozzle geometry for a desired exit speed (corresponds to ideal
Tools: C++, Artemis engine
Given boundary geometry, generates an interpolated grid of desired density for computational
LUCCA: Library of Utilities for C/C++ Astrodynamics
Tools: C/C++, Astrodynamics, Numerical Mathematics
The Library of Utilities for C/C++ Astrodynamics (LUCCA) is an open-source (MIT license)
collection of methods and classes for solving both common and complex problems in aerospace
engineering. It is designed and written in C/C++ for fast execution and near-universal platform
support. Problems include a variety of propagation models, orbit determination, kinematics,
launch models, and orbit controllers.
CUBEN: C/C++ Computational Numerics
Tools: C/C++, Numerical Mathematics
The C/C++ Computational Numerics library (CUBEN) is an open-source (MIT license) set of methods
and classes for solving both common and complex problems in numerical mathematics. It is
designed and written in C/C++ (leveraging the Eigen library for vector and matrix support) for
fast execution and near-universal platform support. Problems include multiple root-finding
algorithms, numerous methods for solving systems of equations, classes for modeling different
categories of numerical functions, ODE and PDE solvers, pseudo-random number generation,
least-squares tools, and many others.
QuX: Queried XML
Tools: C/C++, File I/O Data Interfaces, SQL, XMl
Queries XML (QuX) is an experimental proof-of-concept demonstrating an alternative to
traditional XML interfaces for low-level languages like C++. I've found the traditional,
official approaches to be very redundant, overly complex, heavy on resources, and overly
abstract. Queries XML, or QuX, is a way to use traditional SQL-style SELECT, INSERT, and UPDATE
queries to manipulate XML files and data structures. QuX is very useful for simple, lightweight
serialization, state / data management, and other data-intensive operations that engineers
frequently face. Developers needing to interface low-level code with XML data, like design
requirements, will also find QuX useful.
Tools: Python, cherrypy
Thin-layer data server for providing uniform RESTful query access to a multitude of data formats
by drag-and-drop copy, including tabular (.CSV, .XLSX, .SQL) and document (.JSON, .UNQ, .XML)
formats. My first fully-deployed PyPi package! You can find the source code on GitHub. But what really gets crazy is when you use it
to wrap an Excel spreadsheet in a Docker image. Drop-in containerized datastore with complete
transparency and multi-table storage, for a single file!
Impulse web application toolkit
Impulse is an instantaneous web application starter kit. It is NOT a framework--there are
no new programming languages, markups, or abstractions to learn that you don't probably already
know. To create a new web application, you simple copy and paste the project contents into a new
folder and bam! you're on your way! Check out the source code on GitHub to get started. When you're ready, building
into a distributable installer or executable with electron-builder is a snap.
'Kirke' Website CMS
Tools: PHP, MySQL, HTML, CSS
Lightweight and node-based website CMS for management of personal websites, with database
support and node abstraction for content, users, and other custom forms of data.
In Space, No One Can Hear You 'Oorah'
Tools: Space Mission Analysis, Contemporary Military Doctrine, Space Policy
This paper outlines an
evolution roadmap of crewed space military operations, or CSMOs, for future Marine-like
expeditionary forces operating in the space domain, including TTPs and OTE structures.
Originally presented at NavyCon 2021 as a commentary on the commnon "space marine" archetype
in science fiction, this has since received coverage from other publications like the
military community news site "Task & Purpose".
Post-Sparse Data Architecture Standards for Modern SSA
Tools: Systems Engineering, Data Architecting, DevSecOps
The volume and diversity of SSA data is increasing at an exponential rate, even as flight
safety, security, and traffic management requirements impose greater demands on analysis and
prediction such data drives. New tools, technologies, and development methods are required
to keep pace with an evolving data environment and operator needs. Data architects must face
the need to relax structure requirements to maintain flexibility in the face of a
multiplicity of data fusees and widely-varying precision and accuracy.
We outline several key technologies that can enable rapid turnaround of software and pipeline
architecting for an evolving SSA data environment. These include robust standards for both
end-client and data-pipeline nodes across synchronous-poll and asynchronous-socket use
cases. The end result is a near-real-time common analysis environment supporting
collaborative users and transparent processing.
Procedural Vignette Generation
Tools: Systems Engineering, Space Architecting, Scenarios and Vignettes
Outlines an approach designed to procedurally generate vignettes for arbitrary architectures and
mission areas, specific to given threat sets and scenario-driven contexts.
Resilience as Stability
Tools: Systems Engineering, Space Architecting, Controls Engineering
Proposes a methodology by which resilience of complex architectures can be construed and
approached as a problem of stability in the control of an architecture. Controls techniques are
applied to the architecting process to ensure satisfaction of resilience requirements.
Controls Engineering Overview
Tools: Controls Engineering, LaTeX, Education
Article introducing the basic elements of controls engineering to other engineers.