Douglas B. Rumbaugh
Douglas Rumbaugh is an Assistant Professor at Harrisburg University. He earned his Ph.D. in Computer Science and Engineering under Dr. Dong Xie at Penn State University. Prior to this, he was a member of the computer science faculty at Harrisburg University of Science and Technology, as well as an IT consultant working with both legacy and modern data systems. He holds degrees in both computer science and mechanical engineering, and enjoys programming, working with Unix-like systems, and teaching.
Selected Publications
- Practical Dynamic Extension for Sampling Indexes (2023)
Proceedings of the ACM on Management of Data
Recent Blog Posts
- Completing the Square I taught a precalculus class last semester, which included completing the square. I realized as I was teaching it that nobody in my own math education (so far as I can recall) ever explained why it worked. This post is an adaptation of some notes I wrote for the class describing the underlying math behind a high school algebra "favorite".
- Using eqn for Website Equation Formatting The eqn command supports MathML output, which can be used to statically translate equations on the back-end of a site generation framework, avoiding the requirement to use MathJax, or some other Javascript framework, for this purpose. This article discusses approaches for using eqn to do just this, as well as some issues that arise when doing so.
- Linked Lists Revisted In a previous post I discussed linked lists versus arrays, and ran a number of simple benchmarks with both structures to demonstrate that the common advice of "use linked lists for insertion heavy workloads" doesn't always pan out in practice. But it got me thinking about possible ways to account for some of the root causes of the poor list performance. So in this post I'll look at a pair of variations on the structures to further examine their performance.
- Asynchronous Task Dependency Management with Promises and Futures I recently found myself in need of a simple solution to ordering asynchronous tasks based on simple dependencies: they can complete in any order, but most commit in a specific order. This article discusses the details of solving this problem using simple promises and futures.