Tell us more about your project and we may be able to offer more detailed suggestions.
The maps are done with OpenLayers, a mapping library, paired with vanilla JS. This library allows us to ignore many of the details of browser compatibility and basic dragging, zooming, and projection math and concentrate on things like animation.
A very important thing we pay close attention to is page load speed. We want visitors to see the page as quickly as possible, and everything not absolutely necessary to come in later. For example, the maps don’t begin loading until you can see the page. Then, after the maps load, the ads begin to load. It’s important that failures of external resources, like ads or social sharing tools, never hold up our page load if their servers are down.
For example, our mapping technology recently switched from units in degrees to units in meters. With the way our site is built, we could have made this change entirely on the server side or entirely on the client side. Either the server could switch to emitting coordinates in meters and the client side left alone, or the client side could convert to meters and no change at all would be required on the server side. We opted for the latter, but either option was open to us. If the communication layer between server and client were at all obfuscated and anything but the simplest data structures were passed between, this upgrade would’ve been a disaster that required careful coordination of fixes on both sides.