My name is

Doug
Fenstermacher

A pragmatic software developer for audacious projects.

My Projects

From long runs to code sprints

As a former runner, I relentlessly pursue my goals. My finish line isn't a medal, it's a solution. My experiments aren't for headlines, but a better tomorrow. I want to fill the cracks in the world rather than widen them.

I like to craft sustainable solutions tailored to specific challenges. Explore my snippets and mini-projects that serve as components of sustainable solutions.

Web/App Development

I craft dynamic web experiences from the ground up using Python, PHP, and Java to sculpt robust backends. I use ReactJS and AngularJS to build apps that work even when the wifi doesn’t.

Data Analysis

I translate data into data-driven intelligence. Python helps me create wrangle complex datasets and create anomaly detectors and personalized recommendations systems, while ReactJS visualizes my creations.

Machine Learning

I bring languages and visions to life – building and deploying Natural Language Processing and Computer Vision models used in real-world applications. My toolkit includes crafting tailored loss functions like hierarchical cross-entropy for nuanced learning and classification.

Mechanism Design

I craft economic mechanisms that align individual actions with collective goals, like efficient markets or sustainable resource use. Think puzzles with purpose, building systems that guide behavior without coercion.

Operations Research

Unraveling the tangled threads of resource allocation through operations research, I wield linear and combinatorial tools to sculpt streamlined, cost-optimal solutions.

System Architecture/Design

I architect resilient, scalable systems using Docker orchestration, microservices via REST APIs, and Gitlab CI/CD pipelines for robust development - I build the foundation for smooth, high-traffic experiences.

My blog offers a glimpse into my mind, where I explore messy, real-world problems problems and their solutions. I look into sustainable solutions, impact-driven design, and practical approaches that go beyond the next shiny trend.

Experiment

Fair Division of Goods: Sophisticated Mechanisms and Synthesis

Synthesizing fair division theory into practice - frameworks for algorithm selection, multi-objective optimization, and real-world applications from classrooms to welfare systems

Tags

Fairness Math
Experiment

Fair Division of Goods: Optimizing for Social Welfare

Part 4 explores the shift from individual fairness to collective welfare in allocation problems. How utilitarian, Nash, and maximin welfare functions embody different philosophical commitments about efficiency versus equity, and when to prioritize the group over the individual.

Tags

Data Fairness Math Python
Experiment

Fair Division of Goods: The Indivisibility Challenge

Part 3 explores why perfect fairness becomes impossible with indivisible goods like houses and watches, and how relaxed fairness notions (EF1, MMS) and simple algorithms (round-robin) provide practical solutions when theoretical perfection is unattainable.

Tags

Data Fairness Math Python
Experiment

Fair Division of Goods: Cake Cutting

Part 2 explores cake-cutting algorithms for divisible goods, establishing theoretical foundations before confronting the harsh reality that most real-world problems involve indivisible items where perfect fairness often becomes impossible.

Tags

Data Fairness Math Python
Blog

Balancing LLM Prompt Analytics and User Privacy

Learn how to implement effective prompt analytics for large language models while safeguarding user privacy. Discover key strategies, best practices, and ethical considerations in this guide.

Tags

Data Llm
Experiment

Neural Variational Document Models with PyTorch for Topic Extraction

Discover how Neural Variational Document Models, implemented using PyTorch, improve topic modeling and unsupervised learning in natural language processing. Learn about the architecture, training process, and applications of these latent variable models for text analysis and beyond.

Tags

Data Math Nlp Python