## Calculate Distance Between Zip Codes Part 2: Build the Search Engine

With a database full of zip codes, latitudes, and longitudes, you can get all the entries that are within a given radius using the Haversine formula…and a little help from Google. This week's post will build on the work done last time by developing a search engine where users can enter a zip code and a search radius. The script will then output all the records within the given radius. [Continue reading]

## Calculate Distance Between Zip Codes Part 1: Geocode Database Entries with the Google Maps API

A few years back I looked into using the Google Maps API to calculate the distance between two zip codes. The proof of concept seemed to work well enough. But when I attempted to perform larger-scale calculations, the solution began falling apart. And it was slow… So I needed to develop an alternative solution. [Continue reading]

## Going Live with Incomplete Code; Is It Okay?

Even though it isn't required, should code be left incomplete? For example, the last property/value pair in a CSS declaration doesn't need a semi-colon. The code validates and functions normally. So why worry about that last character? [Continue reading]

## Calculating the Distance between Zip Codes Using the Google Maps API – Part 2

Last week, we went over the basics for accessing the Google Maps API and calculating mileage between zip codes with Google's Distance Matrix service. The problem is that the service only lets us work with 25 origin and 25 destination points at a time. A custom solution is needed to go beyond that. [Continue reading]

## Calculating the Distance between Zip Codes Using the Google Maps API – Part 1

A request came in recently to develop a feature for getting a list of organizations near a zip code provided by the user. They're looking for something very similar to a jobs website where you can narrow the search results to show only the ones within a 50 or 100 mile radius. The Google Maps API and Google's Distance Matrix service seem like great solutions for the problem. [Continue reading]