Projects.
On this page, you will find a selection of various programming projects that I've completed over the years.
Kubernetes networking plugin
December 2021
Source code: https://github.com/jacobdunefsky/k8s-test-net
As my final project in my computer networks class, I implemented a CNI plugin which provides networking functionality to a Kubernetes cluster running on Linux nodes. The plugin consisted of two components. One component was the CNI script itself, responsible for assigning IP addresses and setting up veth pairs when a new pod is created. The other component was a setup script, to be run on each node, responsible for ensuring that each node is automatically connected to the same overlay network as the other nodes in the cluster.
Read more: Kubernetes networking plugin
Investigating Embeddings of Czech Nouns by Case
December 2021
Source code: https://github.com/jacobdunefsky/transformercase
For my final project in my NLP class, I investigated the way in which various NLP models, including two based on the widely-used Transformer architecture, embed Czech nouns depending on their grammatical case. In order to do this, the project made use of standard techniques in modern NLP, such as the analysis of word embeddings. Other components of the project included creating a dataset by scraping Wiktionary; introducing an intuitive geometrically-motivated numerical measure of similarity; finetuning a Transformer model; and generating graphs with Matplotlib.
For the report, please see https://raw.githubusercontent.com/jacobdunefsky/transformercase/main/EmbeddingsOfCzechNouns.pdf.
bastet: BAsic Static TEmplating sysTem
Summer 2021
Source code: https://github.com/jacobdunefsky/bastet
A small static templating system that I built on the side over the summer of 2021. Supports includes, variables, conditionals, foreach loops, lists, CSV tables, among other features. Lightweight enough to fit in a single Python 3 file.
Read more: bastet: BAsic Static TEmplating sysTem
StudyUp
Spring 2021
StudyUp was a website I created that helped Yale students find study groups. Launched to all Yale undergrads just before finals in Spring 2021, by the end of finals, 206 users had joined, with 24 study groups created.
The website was built with Django on the backend and HTML5/CSS3/vanilla JS on the frontend. Features included Google Calendar integration, integration with Yale's authentication system, and automated email notifications.
Read more: StudyUp
Conformal mapper
2018
Source code: https://github.com/jacobdunefsky/conformal
A Python script that visualizes functions on the complex plane as conformal transformations of any given image. Given a function f(z)=f(x+yi) and an image, the Python script computes the transformation of the image according to the function as follows: pixel (x, y) in the output image has the color of pixel f(x+yi) in the original image. Thus, conformal mapping provides a useful way to visualize, in two dimensions, the behavior of a complex function.
Synthesizer
2018
Source code: https://github.com/jacobdunefsky/synth
"synth" is a synthesizer written in C++ using PortAudio and SFML. Instruments include a sine wave, a saw wave with chorus, a square wave with adjustable duty cycle, and multiple bell-like sounds created with additive synthesis. Polyphony is supported, and an oscilloscope view displays the current waveform being output by the synthesizer. A complementary program, "track", allows for the playback with the synthesizer of monophonic melodies, stored in a simple text format.
Read more: Synthesizer