<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>joedonahue.org</title>
	<atom:link href="http://joedonahue.org/feed/" rel="self" type="application/rss+xml" />
	<link>http://joedonahue.org</link>
	<description>&#34;In order to become who you must, you need to give up who you are.&#34;</description>
	<lastBuildDate>Thu, 15 Mar 2012 21:13:18 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
<xhtml:meta xmlns:xhtml="http://www.w3.org/1999/xhtml" name="robots" content="noindex" />
		<item>
		<title>Festival of Life 2012</title>
		<link>http://joedonahue.org/2012/03/15/festival-of-life-2012/</link>
		<comments>http://joedonahue.org/2012/03/15/festival-of-life-2012/#comments</comments>
		<pubDate>Thu, 15 Mar 2012 21:13:18 +0000</pubDate>
		<dc:creator>pastor joe</dc:creator>
				<category><![CDATA[Daily Grind]]></category>

		<guid isPermaLink="false">http://joedonahue.org/?p=447</guid>
		<description><![CDATA[]]></description>
			<content:encoded><![CDATA[<p><img title="" class="alignnone" alt="image" src="http://joedonahue.org/files/2012/03/wpid-2012-03-15_14-15-22_728.jpg" /></p>
]]></content:encoded>
			<wfw:commentRss>http://joedonahue.org/2012/03/15/festival-of-life-2012/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Extending DataControlField &#8211; EditableButtonField</title>
		<link>http://joedonahue.org/2012/01/14/extending-datacontrolfield-editablebuttonfield/</link>
		<comments>http://joedonahue.org/2012/01/14/extending-datacontrolfield-editablebuttonfield/#comments</comments>
		<pubDate>Sat, 14 Jan 2012 19:57:02 +0000</pubDate>
		<dc:creator>pastor joe</dc:creator>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[Daily Grind]]></category>

		<guid isPermaLink="false">http://joedonahue.org/?p=425</guid>
		<description><![CDATA[It turns out that once you start extending DataControlField, you never turn back.  I have discovered joy in reducing code duplication and creating reusable components by converting common GridView tasks into new DataControlFields. Here&#8217;s another fun one: EditableButtonField. A &#8220;normal&#8221; ButtonField is a read-only control which has no built-in behavior when the row is being [...]]]></description>
			<content:encoded><![CDATA[<p>It turns out that once you start extending DataControlField, you never turn back.  I have discovered joy in reducing code duplication and creating reusable components by converting common GridView tasks into new DataControlFields. Here&#8217;s another fun one: EditableButtonField.</p>
<p>A &#8220;normal&#8221; ButtonField is a read-only control which has no built-in behavior when the row is being edited.  With the EditableButtonField control, it will convert to a TextBox and provide immediate access to the DataTextField element.  Nifty!</p>
<p>Note that this control simply extends ButtonField rather than extending the full DataControlField.  Also note that I am assuming a ButtonType of &#8220;Link&#8221; and this would probably explode into itty bitty bits if you tried a Button.</p>
<p>&lt;code&gt;</p>
<p>using System;<br />
using System.Collections.Generic;<br />
using System.Web;<br />
using System.Web.UI;<br />
using System.Web.UI.WebControls;</p>
<p>namespace JoeDonahue.resources {<br />
public class EditableButtonField : ButtonField {</p>
<p>private Boolean inEditMode;</p>
<p>public override void InitializeCell(DataControlFieldCell cell,<br />
DataControlCellType cellType, DataControlRowState rowState, int rowIndex) {<br />
base.InitializeCell(cell, cellType, rowState, rowIndex);</p>
<p>switch (cellType) {<br />
case DataControlCellType.DataCell:<br />
this.InitializeDataCell(cell, rowState);<br />
break;<br />
case DataControlCellType.Footer:<br />
this.InitializeFooterCell(cell, rowState);<br />
break;<br />
case DataControlCellType.Header:<br />
this.InitializeHeaderCell(cell, rowState);<br />
break;<br />
}<br />
}</p>
<p>protected void InitializeDataCell(DataControlFieldCell cell, DataControlRowState rowState) {</p>
<p>cell.DataBinding += new EventHandler(OnDataBindField);</p>
<p>this.inEditMode = (rowState &amp; (DataControlRowState.Edit | DataControlRowState.Insert)) != 0;</p>
<p>if (inEditMode) {<br />
TextBox t = new TextBox();<br />
cell.Controls.Clear();<br />
cell.Controls.Add(t);<br />
} else {<br />
// Default behavior is OK<br />
}<br />
}</p>
<p>protected void InitializeHeaderCell(DataControlFieldCell cell, DataControlRowState rowState) {<br />
}</p>
<p>protected void InitializeFooterCell(DataControlFieldCell cell, DataControlRowState rowState) {<br />
}</p>
<p>protected virtual void OnDataBindField(object sender, EventArgs e) {<br />
TableCell cell = (TableCell)sender;<br />
IDataItemContainer container = (IDataItemContainer)cell.NamingContainer;<br />
object boundvalue = GetBoundValue(container);<br />
String selectedValue = boundvalue.ToString();</p>
<p>/* Set the corresponding text or selectedValue */<br />
if (inEditMode) {<br />
object dataItem = DataBinder.GetDataItem(container);<br />
boundvalue = DataBinder.GetPropertyValue(dataItem, DataTextField);<br />
selectedValue = boundvalue.ToString();</p>
<p>TextBox t = (TextBox)cell.Controls[0];</p>
<p>if (selectedValue != null &amp;&amp; selectedValue.Length &gt; 0)<br />
t.Text = selectedValue;</p>
<p>} else {<br />
LinkButton l = (LinkButton)cell.Controls[0];<br />
l.Text = selectedValue;<br />
}</p>
<p>}</p>
<p>object GetBoundValue(IDataItemContainer controlContainer) {<br />
object dataItem = DataBinder.GetDataItem(controlContainer);<br />
return DataBinder.GetPropertyValue(dataItem, DataTextField);<br />
}</p>
<p>public override void ExtractValuesFromCell(System.Collections.Specialized.IOrderedDictionary dictionary, DataControlFieldCell cell, DataControlRowState rowState, bool includeReadOnly) {</p>
<p>base.ExtractValuesFromCell(dictionary, cell, rowState, includeReadOnly);</p>
<p>this.inEditMode = (rowState &amp; (DataControlRowState.Edit | DataControlRowState.Insert)) != 0;</p>
<p>string value = null;</p>
<p>if (cell.Controls.Count &gt; 0) {<br />
Control control = cell.Controls[0];<br />
if (control == null)<br />
throw new InvalidOperationException(&#8220;The control cannot be extracted&#8221;);</p>
<p>if (inEditMode)<br />
value = ((TextBox)control).Text;<br />
else<br />
value = ((LinkButton)control).Text;</p>
<p>}</p>
<p>if (dictionary.Contains(this.DataTextField))<br />
dictionary[this.DataTextField] = value;<br />
else<br />
dictionary.Add(this.DataTextField, value);<br />
}<br />
}</p>
<p>}</p>
<p>&lt;/code&gt;</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://joedonahue.org/2012/01/14/extending-datacontrolfield-editablebuttonfield/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Now Using Gmail Tablet &amp; iPad Interface</title>
		<link>http://joedonahue.org/2011/12/01/now-using-gmail-tablet-ipad-interface/</link>
		<comments>http://joedonahue.org/2011/12/01/now-using-gmail-tablet-ipad-interface/#comments</comments>
		<pubDate>Thu, 01 Dec 2011 13:41:42 +0000</pubDate>
		<dc:creator>pastor joe</dc:creator>
				<category><![CDATA[Daily Grind]]></category>

		<guid isPermaLink="false">http://joedonahue.org/?p=370</guid>
		<description><![CDATA[I use a Samsung Netbook with greater frequency, and have been really annoyed with the 3-pane look which includes a Chat section which I don&#8217;t even use. The alternative: Use the Gmail Interface which has been optimized for small screens. Initial research recommended changing the User Agent String, which is both difficult (or not possible, [...]]]></description>
			<content:encoded><![CDATA[<p>I use a Samsung Netbook with greater frequency, and have been really annoyed with the 3-pane look which includes a Chat section which I don&#8217;t even use.  The alternative: Use the Gmail Interface which has been optimized for small screens.</p>
<p>Initial research recommended changing the User Agent String, which is both difficult (or not possible, depending on your browser) and unnecessary.  The following link works just as well:</p>
<p><a href="https://mail.google.com/mail/mu/mp/864/">https://mail.google.com/mail/mu/mp/864/</a></p>
<p>This has not been optimized for all browsers, so use at your own risk.</p>
]]></content:encoded>
			<wfw:commentRss>http://joedonahue.org/2011/12/01/now-using-gmail-tablet-ipad-interface/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Custom DataControlField containing DropDownList</title>
		<link>http://joedonahue.org/2011/11/29/custom-datacontrolfield-containing-dropdownlist/</link>
		<comments>http://joedonahue.org/2011/11/29/custom-datacontrolfield-containing-dropdownlist/#comments</comments>
		<pubDate>Wed, 30 Nov 2011 02:28:10 +0000</pubDate>
		<dc:creator>pastor joe</dc:creator>
				<category><![CDATA[Code]]></category>

		<guid isPermaLink="false">http://joedonahue.org/?p=354</guid>
		<description><![CDATA[While the idea is far from new (and can be seen in various implementations here, here, and here), every example I had found fell short of being exactly what I was looking for. My requirements, briefly, were: Call a custom DataControlField from within a DetailsView Do so from the ASP, not programmatically in the code-behind [...]]]></description>
			<content:encoded><![CDATA[<p>While the idea is far from new (and can be seen in various implementations <a href="http://www.codeproject.com/KB/webforms/GridViewComboBoxField.aspx">here</a>, <a href="http://msdn.microsoft.com/en-us/magazine/cc163673.aspx#S5">here</a>, and <a href="http://rnowik.com/ASP-NET-Writing-a-Custom-DataControlField.aspx">here</a>), every example I had found fell short of being exactly what I was looking for. My requirements, briefly, were:</p>
<ul>
<li>Call a custom DataControlField from within a DetailsView</li>
<li>Do so from the ASP, not programmatically in the code-behind</li>
<li>Display a Label in View mode, but display a DropDownList in Edit Mode</li>
<li>The DropDownList must be tied to a SQLDataSource</li>
<li>The Update event, clearly, should save the selected value</li>
<li>Intellisense Integration. Because it gives me warm fuzzies.</li>
</ul>
<h2>Why?</h2>
<p>Among the many variations uncovered above, one plaguing question kept arising &#8211; Why? This can easily be done by simply using a TemplateField. My answer is: Frequency.<br />
This is not a once-in-a-lifetime requirement. I use this functionality &#8211; a lot. And while I appreciate the flexibility of the TemplateField, it is kind of annoying to me that I have to keep re-writing the same lines of code over-and-over again every single page I want to slap a DropDownList in a DetailsView. The DRY (Don&#8217;t Repeat Yourself) principle forced me over the edge.</p>
<h2>Introducing&#8230; The DropDownField</h2>
<p>While I expect to be revising both this page and the code as it is used out in the wild, I&#8217;ll be keeping this page updated both with my findings and any feedback I received.</p>
<h3>The ASP Code</h3>
<p>This run-of-the-mill DetailsView is bound to a SQLDataSource, as is the source for the DropDownList.</p>
<blockquote class="code"><p>&lt;res:DropDownField HeaderText=&#8221;Status&#8221; DataSourceID=&#8221;StatusData&#8221; DataTextField=&#8221;status&#8221; DataValueField=&#8221;status&#8221; /&gt;</p></blockquote>
<p>The prefix for the control is &#8220;res&#8221;, which is defined in the web.config.</p>
<blockquote class="code"><p>&lt;add assembly=&#8221;JoeDonahue&#8221; namespace=&#8221;JoeDonahue.resources&#8221; tagPrefix=&#8221;res&#8221; /&gt;</p></blockquote>
<h3>DropDownField.cs</h3>
<p>revision 2 &#8211; Updated 11/30/2011 <br/></p>
<blockquote class="code"><p>
using System;<br />
using System.Collections.Generic;<br />
using System.Web;<br />
using System.Web.UI;<br />
using System.Web.UI.WebControls;</p>
<p>namespace JoeDonahue.resources {<br />
    public class DropDownField : DataControlField {</p>
<p>        public String DataTextField {<br />
            get {<br />
                object dataTextField = ViewState["DataTextField"];<br />
                if (dataTextField != null) {<br />
                    return dataTextField.ToString();<br />
                }<br />
                return string.Empty;<br />
            }<br />
            set {<br />
                this.ViewState["DataTextField"] = value;<br />
            }<br />
        }</p>
<p>        public string DataValueField {<br />
            get {<br />
                object dataValueField = ViewState["DataValueField"];<br />
                if (dataValueField != null) {<br />
                    return dataValueField.ToString();<br />
                }<br />
                return string.Empty;<br />
            }<br />
            set {<br />
                this.ViewState["DataValueField"] = value;<br />
            }<br />
        }</p>
<p>        public String DataSourceID {<br />
            get {<br />
                object dataSourceID = ViewState["DataSourceID"];<br />
                if (dataSourceID != null) {<br />
                    return dataSourceID.ToString();<br />
                }<br />
                return string.Empty;<br />
            }<br />
            set {<br />
                this.ViewState["DataSourceID"] = value;<br />
            }<br />
        }</p>
<p>        public string SelectedValue {<br />
            get {<br />
                object selectedValue = ViewState["selectedValue"];<br />
                if (selectedValue != null) {<br />
                    return selectedValue.ToString();<br />
                }<br />
                return string.Empty;<br />
            }<br />
            set {<br />
                this.ViewState["selectedValue"] = value;<br />
            }<br />
        }</p>
<p>        private Boolean inEditMode;</p>
<p>        /** Methods **/</p>
<p>        protected override DataControlField CreateField() {<br />
            return new DropDownField();<br />
        }</p>
<p>        public override void InitializeCell(DataControlFieldCell cell,<br />
            DataControlCellType cellType, DataControlRowState rowState, int rowIndex) {<br />
            base.InitializeCell(cell, cellType, rowState, rowIndex);</p>
<p>            switch (cellType) {<br />
            case DataControlCellType.DataCell:<br />
                this.InitializeDataCell(cell, rowState);<br />
                break;<br />
            case DataControlCellType.Footer:<br />
                this.InitializeFooterCell(cell, rowState);<br />
                break;<br />
            case DataControlCellType.Header:<br />
                this.InitializeHeaderCell(cell, rowState);<br />
                break;<br />
            }<br />
        }</p>
<p>        protected void InitializeDataCell(DataControlFieldCell cell, DataControlRowState rowState) {</p>
<p>            cell.DataBinding += new EventHandler(OnDataBindField);</p>
<p>            this.inEditMode = (rowState &#038; (DataControlRowState.Edit | DataControlRowState.Insert)) != 0;</p>
<p>            if (inEditMode) {<br />
                DropDownList ddl = new DropDownList();<br />
                ddl.ID = this.DataTextField;<br />
                ddl.DataSourceID = this.DataSourceID;<br />
                ddl.DataTextField = this.DataTextField;<br />
                ddl.DataValueField = this.DataValueField;<br />
                cell.Controls.Add(ddl);<br />
            } else {<br />
                Label l = new Label();<br />
                cell.Controls.Add(l);<br />
            }<br />
        }</p>
<p>        protected void InitializeHeaderCell(DataControlFieldCell cell, DataControlRowState rowState) {<br />
        }</p>
<p>        protected void InitializeFooterCell(DataControlFieldCell cell, DataControlRowState rowState) {<br />
        }</p>
<p>        protected virtual void OnDataBindField(object sender, EventArgs e) {<br />
            TableCell cell = (TableCell)sender;<br />
            IDataItemContainer container = (IDataItemContainer)cell.NamingContainer;<br />
            object boundvalue = GetBoundValue(container);<br />
            String selectedValue = boundvalue.ToString();</p>
<p>            /* Set the corresponding text or selectedValue */<br />
            if (inEditMode) {<br />
                object dataItem = DataBinder.GetDataItem(container);<br />
                selectedValue = (String)DataBinder.GetPropertyValue(dataItem, DataValueField);<br />
                DropDownList ddl = (DropDownList)cell.Controls[0];<br />
                ddl.SelectedValue = selectedValue;<br />
            } else {<br />
                Label l = (Label)cell.Controls[0];<br />
                l.Text = selectedValue;<br />
            }</p>
<p>        }</p>
<p>        object GetBoundValue(IDataItemContainer controlContainer) {<br />
            object dataItem = DataBinder.GetDataItem(controlContainer);<br />
            return DataBinder.GetPropertyValue(dataItem, DataTextField);<br />
        }</p>
<p>        public override void ExtractValuesFromCell(System.Collections.Specialized.IOrderedDictionary dictionary, DataControlFieldCell cell, DataControlRowState rowState, bool includeReadOnly) {</p>
<p>            base.ExtractValuesFromCell(dictionary, cell, rowState, includeReadOnly);</p>
<p>            string value = null;</p>
<p>            if (cell.Controls.Count > 0) {<br />
                Control control = cell.Controls[0];<br />
                if (control == null)<br />
                    throw new InvalidOperationException(&#8220;The control cannot be extracted&#8221;);<br />
                value = ((DropDownList)control).SelectedValue;<br />
            }</p>
<p>            if (dictionary.Contains(this.DataValueField))<br />
                dictionary[this.DataValueField] = value;<br />
            else<br />
                dictionary.Add(this.DataValueField, value);<br />
        }<br />
    }<br />
}
</p></blockquote>
<h3>Helpful Resources</h3>
<p>The following links were really helpful in accomplishing this. Thanks!</p>
<ul>
<li><a href="http://www.codeproject.com/KB/webforms/GridViewComboBoxField.aspx">Creating an ASP.NET GridView Custom Field of type DropDownList</a></li>
<li><a href="http://www.aarongoldenthal.com/post/2009/05/25/Creating-a-Data-Control-Field-The-CounterField.aspx">Creating a Data Control Field &#8211; The Counter Field</a></li>
<li><a href="http://rnowik.com/ASP-NET-Writing-a-Custom-DataControlField.aspx">Writing a Custom Data Control Field</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://joedonahue.org/2011/11/29/custom-datacontrolfield-containing-dropdownlist/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Family Vacation 2011 &#8211; Day 2</title>
		<link>http://joedonahue.org/2011/11/26/family-vacation-2011-day-2/</link>
		<comments>http://joedonahue.org/2011/11/26/family-vacation-2011-day-2/#comments</comments>
		<pubDate>Sat, 26 Nov 2011 21:19:20 +0000</pubDate>
		<dc:creator>pastor joe</dc:creator>
				<category><![CDATA[Daily Grind]]></category>
		<category><![CDATA[Family]]></category>
		<category><![CDATA[Myrtle Beach Vacation 2011]]></category>

		<guid isPermaLink="false">http://joedonahue.org/?p=376</guid>
		<description><![CDATA[After a strange (not not unusual) night which resulted with all 4 of us sleeping together, I woke up with the roosters at 4:30am, unable to return to sleep.  I learned a few things about roosters that morning: they don&#8217;t just crow once and be done with it; They continue to do so.  A lot. [...]]]></description>
			<content:encoded><![CDATA[<p><img style="display: block; margin-right: auto; margin-left: auto;" src="http://joedonahue.org/files/2011/12/wpid-2011-11-26_10-52-22_384.jpg" alt="image" /></p>
<p>After a strange (not not unusual) night which resulted with all 4 of us sleeping together, I woke up with the roosters at 4:30am, unable to return to sleep.  I learned a few things about roosters that morning: they don&#8217;t just crow once and be done with it; They continue to do so.  A lot.  So me and the roosters chilled out and played games on my phone for a couple hours.  Welcome to the first full day of vacation!</p>
<p>About 6 I crawled back into bed with the fam, and Andrew was starting to wake up.  By 6:30 we had woken up the rest of the house, and it was as comical as it was sad.  Not everyone are early birds like us, but our gracious hosts laughed with us, put on the coffee, and took us out back to greet the chickens&#8230; who were still asleep.  This was a first at the Murphy home: Waking up before the chickens.  We stood outside the roost, beckoning them out, but had no takers for several minutes.  Finally one brave chicken came out to be chased by Andrew, and the rest followed.</p>
<p>This was the first of many blessings of the day and has convinced me that the best way to spend vacation, if at all possible, is with friends.  We easily could have picked a destination with a hotel for a night on the way to break up the trip, but instead we had this self-contained mini-adventure which took us into parts of Lynchburg that will not show up on any website or advertisement.  But it was places where people are living their lives, sharing, and in community together; Where the Spirit reigns instead of touristy consumerism and entertainment.</p>
<p>After feeding the chickens and a pancake breakfast, we followed Carolyn over to her brother&#8217;s home, and visited with him and their friends Anita, Drew &amp; fam, who we had met once before when they visited Maine. Another trip led us to a place where Kyle is building a home, log-cabin style.  He is still &#8220;timberframing&#8221; if I recall the word correctly, and the project is true to the vision. As Care led us around the area, she put it this way: &#8220;<em>Our faith has been shaped by the restoration of things which have been abused or broken</em>.&#8221;</p>
<p>{If you only read that quote once, you&#8217;ll need to stop and go back.}</p>
<p>And so they build a home on a stretch of land which has been abandoned and dormant for years, while others look for the latest in real-estate development zones. They cherish community and life together where others build fences.</p>
<p>As we walked around the area, we stumbled across a group of half-a-dozen goats, pictured above with Andrew.</p>
<p>With that, we had to gather up the children and hit the road.  Another 5 or 6 hours of driving awaited us, but it was another uneventful drive and we checked into our condo just outside Myrtle Beach, South Carolina by 5pm. We unpacked, completed an initial review of the playground, and settled in for the night, exhausted, but glad for the journey so far and looking forward to the day ahead.</p>
]]></content:encoded>
			<wfw:commentRss>http://joedonahue.org/2011/11/26/family-vacation-2011-day-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Family Vacation 2011 &#8211; Day 1</title>
		<link>http://joedonahue.org/2011/11/25/family-vacation-2011-day-1/</link>
		<comments>http://joedonahue.org/2011/11/25/family-vacation-2011-day-1/#comments</comments>
		<pubDate>Fri, 25 Nov 2011 20:11:00 +0000</pubDate>
		<dc:creator>pastor joe</dc:creator>
				<category><![CDATA[Daily Grind]]></category>
		<category><![CDATA[Family]]></category>
		<category><![CDATA[Myrtle Beach Vacation 2011]]></category>

		<guid isPermaLink="false">http://joedonahue.org/2011/11/29/family-vacation-2011-day-1/</guid>
		<description><![CDATA[We joined the masses of Americans getting up in the early hours of Black Friday as we hit the road for our family vacation to Myrtle Beach, South Carolina.  Even Andrew was wide awake at 2:30am as we loaded the last items into the car (including not ONE hunting bow, but TWO!) and set out. [...]]]></description>
			<content:encoded><![CDATA[<p><img style="display: block; margin-right: auto; margin-left: auto;" src="http://joedonahue.org/files/2011/11/wpid-2011-11-26_09-31-47_42.jpg" alt="image" /></p>
<p>We joined the masses of Americans getting up in the early hours of Black Friday as we hit the road for our family vacation to Myrtle Beach, South Carolina.  Even Andrew was wide awake at 2:30am as we loaded the last items into the car (including not ONE hunting bow, but TWO!) and set out. Julie had gone to bed early the night before in order to take the first leg of the trip while I set out on 2 missions which would ultimately fail: a charger for the pump to an air mattress which ended being the wrong kind and nearly catching fire and a trip to Walmart which would NOT open at 10pm as advertised; By 10:15 I got the drift and went home for a nap.</p>
<p>The way was sure (with some help from Toby Levesque) and the gas tank was full.  First stop: Lynchburg, Virginia!</p>
<p>The first 14 hours were pretty uneventful, and we made it to the Murphy&#8217;s home just in time to eat dinner together and greet Kyle (the &#8220;daughter-stealer&#8221; as Toby likes to call him) and Jeremy as they returned, dejected from a full day of deer-hunting in which no deer received the memo.</p>
<p>While still early in our adventure, our primary reason for traveling South in the first place was everything I could have wanted. The kids played with Sparrow while Julie and I sat with Care, Kyle and Jeremy just to talk, laugh,to share an evening and a pot of coffee (and apple pie!) together. After the usual negotiations to determine sleeping arrangements, we turned in for the night, only marginally aware that it was only 8:30pm.</p>
]]></content:encoded>
			<wfw:commentRss>http://joedonahue.org/2011/11/25/family-vacation-2011-day-1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Bible Quiz Kickoff 2011</title>
		<link>http://joedonahue.org/2011/09/10/bible-quiz-kickoff-2011/</link>
		<comments>http://joedonahue.org/2011/09/10/bible-quiz-kickoff-2011/#comments</comments>
		<pubDate>Sun, 11 Sep 2011 03:47:52 +0000</pubDate>
		<dc:creator>pastor joe</dc:creator>
				<category><![CDATA[Daily Grind]]></category>

		<guid isPermaLink="false">http://joedonahue.org/2011/09/10/bible-quiz-kickoff-2011/</guid>
		<description><![CDATA[Wrapped up quizzing tonight and we have one more night at camp.We brought 3 students, who all did great in the quiz seats. One (Corey) made it to the Novice All-Star quiz, which is made up of the top 10 first-year quizzers. Great group of kids!]]></description>
			<content:encoded><![CDATA[<p><img style="display:block;margin-right:auto;margin-left:auto;" alt="image" src="http://joedonahue.org/files/2011/09/wpid-2011-09-10_12-06-48_460.jpg" /></p>
<p>Wrapped up quizzing tonight and we have one more night at camp.We brought 3 students, who all did great in the quiz seats. One (Corey) made it to the Novice All-Star quiz, which is made up of the top 10 first-year quizzers. Great group of kids!</p>
]]></content:encoded>
			<wfw:commentRss>http://joedonahue.org/2011/09/10/bible-quiz-kickoff-2011/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Festival of Life 2011</title>
		<link>http://joedonahue.org/2011/03/18/festival-of-life-2011/</link>
		<comments>http://joedonahue.org/2011/03/18/festival-of-life-2011/#comments</comments>
		<pubDate>Fri, 18 Mar 2011 04:04:05 +0000</pubDate>
		<dc:creator>pastor joe</dc:creator>
				<category><![CDATA[Daily Grind]]></category>

		<guid isPermaLink="false">http://joedonahue.org/?p=343</guid>
		<description><![CDATA[We&#8217;ve made it to Festival of Life 2011 at Eastern Nazarene College! After spending the day doing a photo scavenger hunt in Boston (in which I ended up eating Arepas for the first time!) we joined 4 other districts (Philly, Upstate, Mid-Atlantic and New England) for opening ceremonies and the first few competitions!]]></description>
			<content:encoded><![CDATA[<p><img style="display:block;margin-right:auto;margin-left:auto;" alt="image" src="http://joedonahue.org/files/2011/03/wpid-2011-03-17_13-22-34_863.jpg" /></p>
<p>
We&#8217;ve made it to Festival of Life 2011 at Eastern Nazarene College! After spending the day doing a photo scavenger hunt in Boston (in which I ended up eating Arepas for the first time!) we joined 4 other districts (Philly, Upstate, Mid-Atlantic and New England) for opening ceremonies and the first few competitions!</p>
]]></content:encoded>
			<wfw:commentRss>http://joedonahue.org/2011/03/18/festival-of-life-2011/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How Do I Get Myself Into These Things?</title>
		<link>http://joedonahue.org/2011/02/22/how-do-i-get-myself-into-these-things/</link>
		<comments>http://joedonahue.org/2011/02/22/how-do-i-get-myself-into-these-things/#comments</comments>
		<pubDate>Wed, 23 Feb 2011 02:02:31 +0000</pubDate>
		<dc:creator>pastor joe</dc:creator>
				<category><![CDATA[Family]]></category>

		<guid isPermaLink="false">http://joedonahue.org/?p=338</guid>
		<description><![CDATA[]]></description>
			<content:encoded><![CDATA[<p><img class="aligncenter size-medium wp-image-339" title="IMG_2703" src="http://joedonahue.org/files/2011/02/IMG_2703-225x300.jpg" alt="" width="225" height="300" /></p>
]]></content:encoded>
			<wfw:commentRss>http://joedonahue.org/2011/02/22/how-do-i-get-myself-into-these-things/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Spring 2011 Module, Nazarene Theological Seminary</title>
		<link>http://joedonahue.org/2011/02/01/spring-2011-module-nazarene-theological-seminary/</link>
		<comments>http://joedonahue.org/2011/02/01/spring-2011-module-nazarene-theological-seminary/#comments</comments>
		<pubDate>Wed, 02 Feb 2011 01:15:41 +0000</pubDate>
		<dc:creator>pastor joe</dc:creator>
				<category><![CDATA[Daily Grind]]></category>

		<guid isPermaLink="false">http://joedonahue.org/?p=336</guid>
		<description><![CDATA[After a year away, NTS called me back for my last set of 2-week module classes. I still have another year left, but all the remaining classes will be online. I took Worship: Proclaiming and Enacting God&#8217;s Story in the morning (8:30am &#8211; 12:15pm) with Dr. Kieth Schwanz and 6 other students from Kansas City, [...]]]></description>
			<content:encoded><![CDATA[<p><img style="display: block; margin-right: auto; margin-left: auto;" src="http://joedonahue.org/files/2011/02/wpid-2011-01-27_09-15-53_102.jpg" alt="image" /></p>
<p>After a year away, NTS called me back for my last set of 2-week module classes. I still have another year left, but all the remaining classes will be online.</p>
<p>I took Worship: Proclaiming and Enacting God&#8217;s Story in the morning (8:30am &#8211; 12:15pm) with Dr. Kieth Schwanz and 6 other students from Kansas City, Washington, and Chicago.	We had lunch together once (at sweet tomatoes, where we presented a &#8220;condolences&#8221; card for the professor&#8217;s birthday), traveled to a couple area churches for discussion of liturgy, organized and led a chapel service, and spoke with Tim Suttle, recent NTS grad, musician, author, and pastor.</p>
<p>The evenings found me with Dr Judi Schwanz (Keith&#8217;s wife) from 5:30 to 9:45 for Core Relationships for Christian Ministry. There were 15 of us, including my roommate Richard and longtime friend Ryan Ardrey. This class is designed for first-semester seminarians, but I just happen to miss it until now &#8211; and found it incredibly insightful as in-service student with a local ministry context.  It was primarily a discussion on self-care for surviving in ministry for the long haul, rather than burning out and making my personal life and family suffer in the process.  Highlights include MBTI discussion (I&#8217;m an INFP!), meeting new friends, assigning a new type to Richard (IJJJ), opening class in prayer and mediation, andsmall groups.</p>
<p>Traveling was a lot of fun, and was facilitated by the VanAmburgs and Crystal Quinlan. Got to spend some time with Brad Hays (bang!), Beth &amp; Steve O&#8217;Neill (and fam!), Jay and Kelly Wilson (brinner!), Arthur Bryant (and Jack Stack).</p>
]]></content:encoded>
			<wfw:commentRss>http://joedonahue.org/2011/02/01/spring-2011-module-nazarene-theological-seminary/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

