Introduction
My name is Josh. I’m a computer science major and software engineer, but more generally I am a borderline-obsessive tech enthusiast.
As a recent computer science graduate, I’m at the peak of my exploratory stage regarding my career in technology. This blog is my dumping ground for discoveries and useful knowledge I’ve encountered along the way.
Programming is my most passionate hobby, and I really hope that this site speaks for itself in that regard.
My specialties, however, tend to revolve around cybersecurity and system administration tech; I run a pretty extensive homelab setup and tend to tinker for long hours into the night. When I’m not re-installing Fedora Server for the tenth time today, I keep myself busy with a wide variety of projects.
Data science, scientific programming, web dev, kernel dev, game dev, audio processing, data viz, distributed databases — you name it, I’ve (probably) dabbled in it. Programming is my most passionate hobby, and I really hope that this site speaks for itself in that regard.
Portfolio
While most of my highlighted projects can be found under /dev/projects/
, a high-level overview of my projects and career can be found below.
Meme Insider
Meme Insider is a digital trends magazine with a focus on meme content, founded back in 2017. Initially, I worked as a lead writer, helping organize the written content on our site and provided editing services for other staff writers. Later, I worked as our sole technical director, in charge of development projects and IT maintenance for the site.
In October 2020, Meme Insider worked alongside the Instagram team to provide a special Instagram edition of Meme Insider, commemorating the 10-year anniversary of their platform. From my end, my primary duties were providing site reliability services and serving promotional web content. This partnership became Meme Insider’s most impactful event, growing and shaping the unique subscriber base we have today.
GillesPy2
GillesPy2 is an open source Python library for modeling stochastic simulations, primarily using the Gillespie Method. This library was my primary project at NEMAC. This library is primarily used by StochSS, a simulation IDE platform for modeling stochastic systems.
Thus far, my most significant contributions to this project:
-
Implementation of the Tau Hybrid C++ solver, a re-implementation of our Python solver with a focus on performance and reliability.
-
Refactor of the simulation build process, allowing for templated simulations using C++ native language constructs. User-defined propensity functions must be compiled, and our new build system allows for an airtight way to construct user-defined simulations.
Munkey: A Distributed Password Manager
This was my senior capstone project. It was less of a “project” and more of an “exploration of peer-to-peer distribution for sensitive data.”
Munkey is a unique approach to a password manager; it is based on a questioning of the typical way that a password manager works. What if, instead of being a traditional desktop-based password manager or cloud-based manager, your devices could share password data directly between each other?
It uses mDNS for peer discovery, allowing your devices to automatically discover each other over a local area network. Each device stores a local copy of your encrypted database, syncing with your other devices as changes are made.
Fundamentally, this was a terrible, terrible idea. Instead, it showed the many faults and drawbacks of decentralized and peer-to-peer software.
While this project has been shelved as an exploratory senior capstone project, I do intend to take these ideas and reimplement it with a more sensible implementation (see: not peer-to-peer). This project sparked an interest in federated software, which is likely going to be the approach I’ll take with this. More on that soon!
Contact
If you’d like to get in touch, shoot an email to josh@joshdotc.dev or DM me on Twitter.