91³Ô¹ÏÍø

Watch CBS News

What's inside the big building at the Chestnut Hill Reservoir near Boston College?

CHESTNUT HILL - In the upscale village of Chestnut Hill, the home of the Boston Marathon's Heartbreak Hill, there's a building near Boston College that catches your eye.

"It really was the pride of Boston"

It's the , next to the Chestnut Hill Reservoir.

"When this opened to great fanfare in 1888, it really was the pride of Boston," Eric Peterson, the museum's executive director, told WBZ-TV.

The 13-year-old museum houses three massive steam engines that were critical to the growth of Boston during the Gilded Age of the late 1800s and early 1900s.

ihh-water-works-museum-frame-1029.jpg
The museum in Chestnut Hill houses steam engines that once pumped water to Boston and its surrounding villages. CBS Boston

"They needed water pumped up," said Peterson. " So how do you get water up? You use giant steam engines to do it."

The engines would pull water from the reservoir, then pump it to Fisher Hill Reservoir in Brookline, which has since been filled in. From there, it supplied neighborhoods like Beacon Hill. 

"Prior to that time, you would have seen people going up and down the hill to get their water from down below with buckets, essentially," said Peterson.

30 million gallons of water a day

At its peak, the engines pumped 30 million gallons of water a day into the city. Despite their massive size and capabilities, the pumps were deemed obsolete and decommissioned in 1980. The building was left abandoned until it was redeveloped and reopened in 2011.

"There's no other engines in the world, except this left," said Peterson.

The beautiful brass and wood machines, full of valves, dials and pipes, now stand as testament to Boston's ride as an industrial power. The museum is free and open to the public Wednesdays to Sundays, from 11 a.m. to 4 p.m. Special access tours that go up on the engines cost $18.

View CBS News In
CBS News App Open
Chrome Safari Continue
const link = doc.createElement('link'); link.rel = 'stylesheet'; link.href = '/fly/fly/bundles/cbsnewscontent/css/cmp-banner.min.css?v=296763317a51cab90faa73f1bb146d5c'; doc.head.appendChild(link); doc.body.innerHTML = CONSENT_MESSAGE; } else { el.insertAdjacentHTML('afterend', CONSENT_MESSAGE); } }); } function hidePrivacyMessage() { // Remove from the main document document.querySelectorAll(`.${CONSENT_MESSAGE_CLASS}`).forEach(el => el.remove()); // Remove from inside any iframes document.querySelectorAll('iframe').forEach(iframe => { const doc = iframe.contentDocument || iframe.contentWindow.document; doc.querySelectorAll(`.${CONSENT_MESSAGE_CLASS}`).forEach(el => el.remove()); }); } function activateGatedScripts() { // Handle both new format (cmp-gated-script) and old OneTrust/Ketch format (optanon-category-4) const gatedScripts = Array.from(document.querySelectorAll('script.cmp-gated-script, script.optanon-category-4')); // Activate scripts sequentially with a small delay to avoid timing issues let delay = 0; gatedScripts.forEach(function(placeholder, index) { setTimeout(function() { // Skip if already processed if (placeholder.hasAttribute('data-cmp-processed')) { return; } placeholder.setAttribute('data-cmp-processed', 'true'); const newScript = document.createElement('script'); newScript.type = 'text/javascript'; // Try new format first (data-cmp-src), then fall back to old format (data-src) const src = placeholder.getAttribute('data-cmp-src') || placeholder.getAttribute('data-src'); if (src) { newScript.src = src; } else if (placeholder.textContent) { // Inline script - just copy the content newScript.textContent = placeholder.textContent; } // Handle new format attributes (data-cmp-attrs) - for both inline and external scripts const attrs = placeholder.getAttribute('data-cmp-attrs'); if (attrs) { const tempDiv = document.createElement('div'); tempDiv.innerHTML = '
<\/div>'; const tempAttrs = tempDiv.firstChild.attributes; for (let i = 0; i < tempAttrs.length; i++) { // For external scripts, allow defer/async. For inline scripts, skip them (not valid) if (src || (tempAttrs[i].name !== 'async' && tempAttrs[i].name !== 'defer')) { newScript.setAttribute(tempAttrs[i].name, tempAttrs[i].value); } } } // Copy other attributes from old OneTrust format for (let i = 0; i < placeholder.attributes.length; i++) { const attr = placeholder.attributes[i]; // Skip attributes we've already handled or don't want to copy if (!['class', 'data-src', 'data-type', 'data-cmp-src', 'data-cmp-attrs', 'data-cmp-processed', 'type', 'async', 'defer', 'src'].includes(attr.name)) { newScript.setAttribute(attr.name, attr.value); } } placeholder.parentNode.replaceChild(newScript, placeholder); // If external script, manually trigger window.onload handlers after it loads // This handles widgets that use window.onload for initialization if (src) { newScript.addEventListener('load', function() { // If page already loaded and script set a new onload handler, trigger it if (document.readyState === 'complete' && window.onload) { const originalOnload = window.onload; window.onload = null; // Clear temporarily to prevent loops originalOnload(); // Execute the handler } }); } }, delay); delay += 500; // 500ms delay between each script to allow full loading }); } cbsoptanon.onScriptsReady(function(cmp) { cmp.ot.targetingAllowed(function(allowed) { if (!allowed) { showPrivacyMessage(); } else { activateGatedScripts(); } }); cmp.ot.awaitInitialConsent(function(consent_model) { cmp.ot.addOnConsentChangedHandler(function() { cmp.ot.targetingAllowed(function(allowed) { if (allowed) { hidePrivacyMessage(); activateGatedScripts(); } else { showPrivacyMessage(); } }); }); }); });