News
Weather
This weekend, all the prophecies were confirmed. Ice fell from the sky, vehicles careened into cars and trees and off bridges, children were loosed from their schools -- all exactly as it had been written. WFAA weather oracle Pete Delkus watched with smug satisfaction as, one by one, his predictions...
By Eric Nicholson
December 9, 2013
Does Pete Delkus have the power to do more than merely predict the weather?Wfaa, CC BY-SA 4.0, via Wikimedia Commons
We have a favor to ask
We're in the midst of our summer membership campaign, and we have until August 25 to raise $5,500. Your contributions are an investment in our election coverage – they help sustain our newsroom, help us plan, and could lead to an increase in freelance writers or photographers. If you value our work, please make a contribution today to help us reach our goal.
Progress to goal
$5,500
$3,600
Audio By Carbonatix
`,`
Related
- Updated: Every Texas School District Book Ban
`,`
Related
- After Punishing Primaries, Key Runoffs Could Tilt Texas Legislature Further Right
`,`
Related
- 'It’s a Real Shame': Important Projects Left Out of Dallas' 2024 Bond Package
`,`
Related
- Lt. Gov. Dan Patrick Recommends Banning, Regulating Delta-8, Delta-9
`,`
Related
- After Controversial Departure, Dallas Area Habitat for Humanity Appoints New CEO
`,`
Related
- Historic Forest Theater in South Dallas To Begin Renovations
`,`
Related
- Wilmer's Greedy Annexation Grabs Run Afoul of the Law, Rile Homeowners
`,`
Related
- Dallas Council Member Says Juvenile Curfew Should Stay; State Law Says Otherwise.
`,`
Related
- A View of the Solar Eclipse in Dallas, From the Out-of-Towners Who Came To See It
` ];
This weekend, all the prophecies were confirmed. Ice fell from the sky, vehicles careened into cars and trees and off bridges, children were loosed from their schools -- all exactly as it had been written.
WFAA weather oracle Pete Delkus watched with smug satisfaction as, one by one, his predictions were confirmed. He'd always been good, but this was uncanny.
Then, in the umpteenth hour of poring over hypnotically colored weather maps, nerves frayed by a surfeit of caffeine and a massive sleep deficit, it hit him: What if those weren't just predictions. What if he was actually controlling the weather?
And so, Pete Delkus transcended mere meteorology and ascended into the pantheon.
See also: Pete Delkus Found Your Lack of Faith Disturbing and Your Sarcasm Annoying
It's hard to pinpoint the exact moment this happened, but the transformation was becoming evident by early Sunday afternoon. Note the use of the first-person pronoun in this tweet:
The thaw wont last long...we'll refreeze tonight when lows drop into the middle 20s.
— Pete Delkus (@wfaaweather) December 8, 2013
Here, in what at the time seemed an act of hubris, he becomes some sort of weather event:
Love it that graphics are now being named after me!! MT @matt_marks66 @Dallas_Observer Umm......"RePete"... pic.twitter.com/hJwRMGshf8
— Pete Delkus (@wfaaweather) December 9, 2013
By Sunday evening, he'd begun demanding that his followers worship him as a deity.
Ok...kiddies. Schools are closing!! Here's the latest...more to come! http://t.co/HBzGyrF3oKTell me now...who's your hero?!?
— Pete Delkus (@wfaaweather) December 8, 2013
Another reason to love me! MT @dallasschools: All Dallas ISD schools and offices closed due to weather on Monday.
— Pete Delkus (@wfaaweather) December 9, 2013
Even the Baptists are convinced:
On Icemeggedon Weekend a special appearance by @wfaaweather Pete Delkus pic.twitter.com/pTKgEkIw8E
— Jack Graham (@jackngraham) December 8, 2013
Send your story tips to the author, Eric Nicholson.
') let lineHeight = jQuery('[line-height-check]').get(0).clientHeight; jQuery('[line-height-check]').remove() if (jQuery(element).prop('tagName').match(/HIDDEN/i) !== null) { jQuery(element).children('div').last().css({ marginBottom: `${lineHeight*2}px` }); } else { jQuery(element).css({ marginTop: `${lineHeight*2}px`, marginBottom: `${lineHeight}px` }); } // const insertionBlockClass = `fdn-paragraph-insertion-block`; const styleElementHook = `fdn-paragraph-insertion-styles`; jQuery(element).addClass(insertionBlockClass); if (jQuery(`[${styleElementHook}]`).length === 0) { jQuery('div.fdn-content-body, div #storyBody').append('
') const paragraphLineHeight = jQuery('[line-height-check]').get(0).clientHeight; jQuery('[line-height-check]').remove() const styleElement = jQuery(`
`); const styleText = ` div.fdn-content-body br+.${insertionBlockClass}:not([hidden]), div #storyBody br+.${insertionBlockClass}:not([hidden]) { margin-top: ${paragraphLineHeight*2}px; margin-bottom: ${paragraphLineHeight}px; } div.fdn-content-body br+.${insertionBlockClass}[hidden] > div:last-of-type, div #storyBody br+.${insertionBlockClass}[hidden] > div:last-of-type { margin-bottom: ${paragraphLineHeight*2}px; } ` styleElement.text(styleText); jQuery('head').append(styleElement); } // } } jQuery(element).insertBefore(this.paragraphEndNodes[index]); } else { console.warn('Foundation.ParagraphTool.insertElemenAt: invalid insertion index', index); } } this.insertElemenAtEnd = function (element) { if (this.paragraphEndNodes.length) { let lastNode = this.getNodeAtIndex(this.paragraphEndNodes.length -1); if (this.isDoubleBrParagraphBreak(lastNode) || this.isBrParagraphBreakBeforeBlockElement(lastNode)) { if (jQuery(element).get(0).tagName.match(/SCRIPT/i) !== null) { jQuery('
').insertAfter(this.paragraphEndNodes[index]); jQuery('
').insertAfter(this.paragraphEndNodes[index]); } else { jQuery('div.fdn-content-body, div #storyBody').append('
') let lineHeight = jQuery('[line-height-check]').get(0).clientHeight; jQuery('[line-height-check]').remove() if (jQuery(element).prop('tagName').match(/HIDDEN/i) !== null) { jQuery(element).children('div').last().css({ marginBottom: `${lineHeight*2}px` }); } else { jQuery(element).css({ marginTop: `${lineHeight*2}px`, marginBottom: `${lineHeight}px` }); } } } } this.bodyContainer.append(element); } this.getNodeAtIndex = function (index) { return this.paragraphEndNodes[index]; } }
`); } var paragraphCount = myParagraphTool.getParagraphEndNodeCount(); // No need to insert if there aren't enough paragaphs if (paragraphCount >= parseInt(item.requiredCountToDisplay)) { // Matches specific paragraph insertion indexes if (item.insertPoint.match(/^\d+$/) !== null) { var insertIndex = parseInt(item.insertPoint) - 1; // Insert within content if (insertIndex < paragraphCount) { myParagraphTool.insertElemenAtIndex(componentElement, insertIndex); } // Append to the end if the insert point is beyond the paragraph count else { myParagraphTool.insertElemenAtEnd(componentElement) } } // Matches for 1/2, 1/4, 2/3, 5/6, etc else if (item.insertPoint.match(/^[1223456]\/[23456]$/) !== null) { var fractionMatch = new RegExp(/^([123456])(?:\/)([23456]$)/); var fractionPart = parseInt(item.insertPoint.match(fractionMatch)[1]); var fractionWhole = parseInt(item.insertPoint.match(fractionMatch)[2]); var fractionValue = fractionPart / fractionWhole; var fractionIndex = Math.floor(myParagraphTool.paragraphEndNodes.length * fractionValue) - 1; myParagraphTool.insertElemenAtIndex(componentElement, fractionIndex); } // Matches for every Nth insertion point else if (item.insertPoint.match(/^\d*th$/i) !== null) { var intervalIndex = parseInt(item.insertPoint.match(/^(\d*)th$/i)[1]); var startingIndex = parseInt(item.startingPoint) - 1; var insertionMax = parseInt(item.maxInsertions) || 100; var insertionCount = 0; for (var i = startingIndex; i < myParagraphTool.paragraphEndNodes.length && insertionCount < insertionMax; i++) { if ((i - startingIndex) % intervalIndex === 0) { let currentNode = myParagraphTool.getNodeAtIndex(i); const clonedComponent = componentElement.clone(); myParagraphTool.insertElemenAtIndex(clonedComponent, i); insertionCount++; } } } } }); Foundation.Content['7132290'].setupInlineComponents = function () { return true; }; if (typeof callback === 'function') { callback(); } }, 200); } Foundation.Content['7132290'].previewInsertionPoints = function () { var myParagraphTool = Foundation.Content['7132290'].paragraphTool myParagraphTool.paragraphEndNodes.each((index, item) => { const insertionPointPlaceholder = jQuery(`
`) myParagraphTool.insertElemenAtIndex(insertionPointPlaceholder, index); }); return 'Paragraph insertion placeholders applied.'; }