Veteran fighter pilot from Grand Rapids turning 100

GRAND RAPIDS, Michigan (WOOD) – A Grand Rapids fighter pilot who fought in World War II is just days away from his 100th birthday.

First Lieutenant Gerald Graham served in the 339th Fighter Group, 505th Fighter Squadron, and flew for the U.S. Army from a British air base near Cambridge.

Graham turns 100 on November 21st and still lives with his wife in his hometown.

“I’ve flown 67 missions,” said Graham. “I enrolled in August ’42 and was not released. I was put inactive in May ’45. “

He flew his P-51D, the Mary Lee, named after the woman he would marry.

Graham enlisted in the army to become a pilot with little knowledge of airplanes or flying, and qualified for an aviation cadet program.

“When I was young, an airplane was rare,” said Graham.

He’s still grateful knowing he made it home when so many didn’t.

“I’ve been shot at a thousand times, I don’t know,” said Graham. “My plane wasn’t hit once and I looked at it and thought, ‘A bird can’t fly through there.’ Never a dent or a scratch. “

First Lieutenant Gerald Graham served in the 339th Fighter Group, 505th Fighter Squadron. (Courtesy)

Just before D-Day, Graham and a friend were sent to London on vacation. They found out about the invasion when they saw a driver holding up a newspaper.

“It said ‘Invasion’ and here we were in London,” said Graham. “So my buddy and I went back to the hotel, got our things and got on the train.”

He made it back to fly his plane on the next mission. Graham’s job was to escort bombers to their destinations.

“We’d have a squad above us, one on each side to protect them as they go in, and the Germans would, you know, they knew we were coming. There are spotters, ”said Graham.

When the war ended, the army made him inactive – with fewer pilots – and transferred him back to the United States

Graham remembers where he was when the war was officially over.

“I was stationed at a base in Dalhart, Texas, and of course we knew that straight away,” said Graham. “Everything stood still.”

`)); // Facebook Script Embed (function (d, s, id) {var js, fjs = d.getElementsByTagName (s)[0]; if (d.getElementById (id)) return; js = d.createElement (s); = id; js.src = “″; fjs.parentNode.insertBefore (js, fjs); } (Document, ‘script’, ‘facebook-jssdk’)); // Twitter Script Embed (function (d, s, id) {var js, tjs = d.getElementsByTagName (s)[0]; if (d.getElementById (id)) return; js = d.createElement (s); = id; js.setAttribute (‘async’, ”); js.src = “”; tjs.parentNode.insertBefore (js, tjs); } (Document, ‘script’, ‘twitter-js’)); } // Simplify some iframe stuff var iframes = $ (‘iframe’); iframes .filter (‘.responsive’) .each (function (_, frame) {// 16×9 response ratio iframes var $ frame = $ (frame); $ (frame) .css ({position: ‘absolute’, top: 0 , left: 0, right: 0, width: ‘100%’, height: ‘100%’,}). parent (). addClass (‘wood-responsive-container wood-responsive-container-16×9’);}) ; var lazyFrames = iframes .filter (‘[data-lazy-src]’); Function woodMakeLazyFrame (selector) {var observer; var options = {root: null, rootMargin: ‘0px’, threshold: 0,}; function handler (entries, Observer) {entries.forEach (function (entry) {var ioR = entry.intersectionRatio; if (ioR> 0) { =; Observer.unobserve (entry .Target); } }); } Observer = new IntersectionObserver (handler, options); Observer.observe (selector); } lazyFrames.each ((_, frame) => woodMakeLazyFrame (frame)); }); } (jQuery))

Comments are closed.