Birding Optimizer
I am currently developing a tool with a conservation biologist that helps birders select locations to visit based on a weighted probability of seeing a bird they haven't seen before. The algorithm fetches recent observations (last 30 days) from eBird hotspots within a defined radius, then calculates the frequency of each species as a probability (sightings ÷ total checklists). For each location, it computes an "expected value"—the sum of probabilities for all species not yet on your life list—representing the average number of new birds you'd likely see on a visit. Hotspots are then ranked using a distance-weighted score (expected new species $\div \sqrt{\text{distance}}$), balancing the probability of seeing lifers against travel effort. A working demo focused on Chicago's West Side is deployed on Vercel, allowing users to walk through the full pipeline with their own eBird API key and life list.
Technologies: Python, R, rebird, ebirdst,
Link: View Demo