<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss 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/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>Trey Gourley</title>
	
	<link>http://www.treygourley.com</link>
	<description>Ramblings of a geeky, Midwest guy.</description>
	<lastBuildDate>Wed, 04 Apr 2012 15:36:05 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/TreyGourley" /><feedburner:info uri="treygourley" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item>
		<title>iPad Notetaking</title>
		<link>http://feedproxy.google.com/~r/TreyGourley/~3/3TQvTEPiPOY/</link>
		<comments>http://www.treygourley.com/2012/04/ipad-notetaking/#comments</comments>
		<pubDate>Wed, 04 Apr 2012 15:36:05 +0000</pubDate>
		<dc:creator>Trey Gourley</dc:creator>
				<category><![CDATA[Review]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[ipad apps notetaking]]></category>

		<guid isPermaLink="false">http://www.treygourley.com/?p=219</guid>
		<description><![CDATA[Over the last year I have grown use to taking notes on a tablet.&#160; I gave up my pad of paper and pen (in most cases) and picked up a tablet and stylus.&#160; Up until about a month ago, I was using a Lenovo X220 tablet computer.&#160; This was a quite awesome machine that had [...]]]></description>
			<content:encoded><![CDATA[<p>Over the last year I have grown use to taking notes on a tablet.&#160; I gave up my pad of paper and pen (in most cases) and picked up a tablet and stylus.&#160; Up until about a month ago, I was using a Lenovo X220 tablet computer.&#160; This was a quite awesome machine that had a great touchscreen.&#160; The digital stylus felt very smooth while writing.&#160; The softer screen made the experience feel like I was still writing on paper.&#160; The problem with it was that it was a full laptop.&#160; Big and heavy (relative to an iPad) and it&#8217;s price tag made you think twice before just grabbing it and taking it out in public without putting it in some laptop bag.</p>
<p>A couple of weeks ago I was able to pick up a iPad 3 and the first thing that I needed to find was a way to continue to take digital, handwritten notes.&#160; Below is a quick review of a couple of apps that I found to be good for very different reasons.&#160; I have a iPad stylus that I picked up at my local Best Buy that is a must for any notetaking on the iPad.</p>
<p><strong>Noteshelf</strong> (<a href="http://www.fluidtouch.biz/noteshelf/">http://www.fluidtouch.biz/noteshelf/</a>)</p>
<p>Noteshelf&#160; is very robust notetaking app that costs $5.99.&#160; This is a very reasonable price for many of the options that this app gives.&#160; It organizes your notes in a library of notebooks that very similar to iBooks.&#160; When using the notebooks you have several different options for customizing the layout of the notebook paper. A big problem with writing with the iPad is that you have the tendency to lay your palm on the screen (which causes all sorts of unwanted marks.)&#160; </p>
<p>The really cool aspect of Noteshelf is its vast number of paper layout types you can pick for your notebook.&#160; College ruled, blank, color shades, grid, music score, and even a baseball scorebook page types are all available.&#160; The also make available a ton of additional paper types (and notebook covers) through their in-app purchase store.</p>
<p>Noteshelf has a handy feature that had a slider on the right side of the screen that only allows for writing above it.&#160; That way you can place your palm below that slider and not worry.&#160; Sometimes I do feel like the app fights me sometimes when I try to make very small, precise strokes with the stylus which I need to use the zoom feature to overcome.&#160; Overall I am extremely happy with this app.</p>
<p>Noteshelf screenshots:</p>
<p><a href="http://www.treygourley.com/wp-content/uploads/2012/04/Noteshelf_Library.png"><img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Noteshelf_Library" border="0" alt="Noteshelf_Library" src="http://www.treygourley.com/wp-content/uploads/2012/04/Noteshelf_Library_thumb.png" width="184" height="244" /></a><a href="http://www.treygourley.com/wp-content/uploads/2012/04/Noteshelf_Softball.png"><img style="background-image: none; border-right-width: 0px; margin: 0px 0px 0px 20px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Noteshelf_Softball" border="0" alt="Noteshelf_Softball" src="http://www.treygourley.com/wp-content/uploads/2012/04/Noteshelf_Softball_thumb.png" width="184" height="244" /></a></p>
<p><strong>Paper </strong>(<a href="http://www.fiftythree.com/">http://www.fiftythree.com/</a>)</p>
<p>One issue I had with Noteshelf was that it was great for notetaking, but not very strong with artistic sketching.&#160; There is a required fluidity that is needed when just sketching.&#160; Paper was released in the midst of me testing notetaking apps.&#160; This app is not made for hardcore notetaking.&#160; But was perfectly created for sketching.&#160; It has a fluidity of drawing that I have yet to find in any other app.&#160; The app is initially free and comes with just a pen and eraser tool.&#160; To get all the other drawing tools costs $7.99, but it is very worth it.&#160; </p>
<p>The simplicity of this tool does allow you to really focus on simple sketching.&#160; There are only 9 colors available (my only frustration) but this has not totally hindered me in what I have wanted to do.&#160; The two tools that impress me the most are the pencil tool and the watercolor tool.&#160; The pencil tool looks and feels just as a pencil would.&#160; It will react to the pressure of the stylus and adjust accordingly.&#160; The watercolor tool reacts more to speed than it does pressure, and emulates the uniqueness of watercolor painting very well.</p>
<p>Paper screenshots:</p>
<p><a href="http://www.treygourley.com/wp-content/uploads/2012/04/Paper_Library.png"><img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="Paper_Library" border="0" alt="Paper_Library" src="http://www.treygourley.com/wp-content/uploads/2012/04/Paper_Library_thumb.png" width="244" height="184" /></a><a href="http://www.treygourley.com/wp-content/uploads/2012/04/Paper_Notebook.png"><img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px 0px 0px 20px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="Paper_Notebook" border="0" alt="Paper_Notebook" src="http://www.treygourley.com/wp-content/uploads/2012/04/Paper_Notebook_thumb.png" width="244" height="184" /></a></p>
<p><a href="http://www.treygourley.com/wp-content/uploads/2012/04/Paper_Sketch1.png"><img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="Paper_Sketch1" border="0" alt="Paper_Sketch1" src="http://www.treygourley.com/wp-content/uploads/2012/04/Paper_Sketch1_thumb.png" width="244" height="184" /></a><a href="http://www.treygourley.com/wp-content/uploads/2012/04/Paper_Sketch2.png"><img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px 0px 0px 20px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="Paper_Sketch2" border="0" alt="Paper_Sketch2" src="http://www.treygourley.com/wp-content/uploads/2012/04/Paper_Sketch2_thumb.png" width="244" height="184" /></a></p>
<img src="http://feeds.feedburner.com/~r/TreyGourley/~4/3TQvTEPiPOY" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.treygourley.com/2012/04/ipad-notetaking/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.treygourley.com/2012/04/ipad-notetaking/</feedburner:origLink></item>
		<item>
		<title>Long time no see</title>
		<link>http://feedproxy.google.com/~r/TreyGourley/~3/NihpBwfwCug/</link>
		<comments>http://www.treygourley.com/2012/03/long-time-no-see/#comments</comments>
		<pubDate>Wed, 14 Mar 2012 16:41:21 +0000</pubDate>
		<dc:creator>Trey Gourley</dc:creator>
				<category><![CDATA[Personal]]></category>

		<guid isPermaLink="false">http://www.treygourley.com/?p=213</guid>
		<description><![CDATA[Wow.  How long has it been?  Too long. I look back on the posts on this blog and realize that I have not posted a single article since October 2010.  Back then my goal was to post at least one article per month.  I did pretty well up to October 2010, then nothing.  It was [...]]]></description>
			<content:encoded><![CDATA[<p>Wow.  How long has it been?  Too long.</p>
<p>I look back on the posts on this blog and realize that I have not posted a single article since October 2010.  Back then my goal was to post at least one article per month.  I did pretty well up to October 2010, then nothing.  It was not even a slowdown.  Not an instance where one month turned into two months, then three months.  Nope.  Just a sudden stop.</p>
<p>Funny how we can prioritize everything in our life.  Even the things that are most important to us can somehow move down the &#8220;importance ladder&#8221;.  Other than blogs, I find exercise to be the other thing that I somehow start to miss and then stop.  Truth is that we create the priorities in our life, even when we think we don&#8217;t.</p>
<p>Whether it is family time, church time, reading time, exercise time, or blogging time, we all set our priorities.  How do you manage your priorities?  Do you struggle with trying to fit everything in?</p>
<img src="http://feeds.feedburner.com/~r/TreyGourley/~4/NihpBwfwCug" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.treygourley.com/2012/03/long-time-no-see/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.treygourley.com/2012/03/long-time-no-see/</feedburner:origLink></item>
		<item>
		<title>Building an Online Chat Application – ASP.NET MVC, jQuery, and AJAX</title>
		<link>http://feedproxy.google.com/~r/TreyGourley/~3/k5l6TOk7k-4/</link>
		<comments>http://www.treygourley.com/2010/10/building-an-online-chat-application-asp-net-mvc-jquery-and-ajax/#comments</comments>
		<pubDate>Fri, 15 Oct 2010 15:06:36 +0000</pubDate>
		<dc:creator>Trey Gourley</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Web Development]]></category>
		<category><![CDATA[.net]]></category>
		<category><![CDATA[ajax]]></category>
		<category><![CDATA[asp.net mvc]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[jquery]]></category>
		<category><![CDATA[tutorial]]></category>

		<guid isPermaLink="false">http://www.treygourley.com/?p=201</guid>
		<description><![CDATA[For this month’s IndyNDA ASP.NET SIG, I showcased an example web app that shows off the AJAX power of jQuery and the AJAX-response goodness built into ASP.NET MVC. The basic premise is that we want to have a website that has a live chat on the homepage.  Users can log in and then post new [...]]]></description>
			<content:encoded><![CDATA[<p>For this month’s <a href="http://www.indynda.org">IndyNDA</a> ASP.NET SIG, I showcased an example web app that shows off the AJAX power of jQuery and the AJAX-response goodness built into ASP.NET MVC.</p>
<p>The basic premise is that we want to have a website that has a live chat on the homepage.  Users can log in and then post new messages to that chat.  We do not want any model (data) binding on the server, we want jQuery to ask the server for the data and then post that data on the website.  Also we want jQuery to send new messages sent by a user to the server using AJAX as well.</p>
<p>SIMPLE!  Here we go….</p>
<h4>Getting Started</h4>
<p>You might have seen from some of <a href="http://www.treygourley.com/2010/07/quick-website-prototyping/">my earlier prototyping posts</a> that the biggest hurtle to get through when trying to create a new web app is spending too much time on the “look” of the site.  I am just as guilty as the next guy of spending 3 hours on the padding, margin, and color of a box just to get it to “look just right.”  In this project we just want to get straight to the coding of the AJAX and MVC goodness.  My suggestion is to go get on Google and just search for “free html templates”.  You will have a ton of options.  Just pick one that looks good.  For the downloadable project at the end of this post, I chose the “<a href="http://www.freelayouts.com/templates/-Emporium">Emporium</a>” template from <a href="http://www.freelayouts.com">FreeLayouts.com</a>.</p>
<p>In Visual Studio you will want to create a new “ASP.NET MVC 2 Empty Web Application” project.  To incorporate that template into a new MVC project, just copy the CSS and image folders into the “Content” folder of your project.  You will need to create a new master page in the “Shared” folder and then the copy and paste the relative parts of the HTML template over to the master page.  Be sure to create the title (name the ID “TitleContent”), header (name the ID “HeaderContent”), and main content (name the ID “MainContent”) areas.</p>
<p>Because we started with a blank project you will need to create a “HomeController” in the “Controller” folder.  You can open that class up, right click on the “Index” action method already created, select “Add View…”, and just use the default settings.</p>
<p>Go ahead and hit F5 in Visual Studio and you should see just the template show up.  Now we can get into the AJAX goodness!</p>
<h4>Client Side</h4>
<p>The client side of our application will utilize jQuery to send and receive messages from the server.  jQuery works with the DOM and the HTML objects on the page for the data from the server.  We will have three specific objects that will either give or receive information from jQuery.  We will have a text box and button that will serve as the way a user submits new messages to the chat.  We will have a header tag for status messages as jQuery sends and receives information to the server.  And finally we will have a div chat area that will get set with all the messages to be displayed on the screen.</p>
<p>Below is the new message area:</p>
<pre class="csharpcode"><span class="kwrd">&lt;</span><span class="html">p</span><span class="kwrd">&gt;</span>
<span class="kwrd">&lt;</span><span class="html">input</span> <span class="attr">type</span><span class="kwrd">="hidden"</span> <span class="attr">id</span><span class="kwrd">="newmessage_username"</span> <span class="attr">value</span><span class="kwrd">="SOME USERNAME"</span> <span class="kwrd">/&gt;</span>
Message<span class="kwrd">&lt;</span><span class="html">br</span> <span class="kwrd">/&gt;</span>
<span class="kwrd">&lt;</span><span class="html">input</span> <span class="attr">type</span><span class="kwrd">="text"</span> <span class="attr">id</span><span class="kwrd">="newmessage_messagebody"</span> <span class="attr">size</span><span class="kwrd">="70"</span> <span class="kwrd">/&gt;</span>
<span class="kwrd">&lt;</span><span class="html">input</span> <span class="attr">type</span><span class="kwrd">="button"</span> <span class="attr">value</span><span class="kwrd">="Send"</span> <span class="attr">id</span><span class="kwrd">="newmessage_sendbutton"</span> <span class="attr">onclick</span><span class="kwrd">="sendNewMessage()"</span> <span class="kwrd">/&gt;</span>
<span class="kwrd">&lt;/</span><span class="html">p</span><span class="kwrd">&gt;</span></pre>
<p><!-- .csharpcode, .csharpcode pre { 	font-size: small; 	color: black; 	font-family: consolas, "Courier New", courier, monospace; 	background-color: #ffffff; 	/*white-space: pre;*/ } .csharpcode pre { margin: 0em; } .csharpcode .rem { color: #008000; } .csharpcode .kwrd { color: #0000ff; } .csharpcode .str { color: #006080; } .csharpcode .op { color: #0000c0; } .csharpcode .preproc { color: #cc6633; } .csharpcode .asp { background-color: #ffff00; } .csharpcode .html { color: #800000; } .csharpcode .attr { color: #ff0000; } .csharpcode .alt  { 	background-color: #f4f4f4; 	width: 100%; 	margin: 0em; } .csharpcode .lnum { color: #606060; } -->Below is the status message and chat area</p>
<pre class="csharpcode"><span class="kwrd">&lt;</span><span class="html">h2</span><span class="kwrd">&gt;</span>Chat<span class="kwrd">&lt;/</span><span class="html">h2</span><span class="kwrd">&gt;</span>
<span class="kwrd">&lt;</span><span class="html">h4</span> <span class="attr">id</span><span class="kwrd">="message"</span><span class="kwrd">&gt;&lt;/</span><span class="html">h4</span><span class="kwrd">&gt;</span>
<span class="kwrd">&lt;</span><span class="html">div</span> <span class="attr">id</span><span class="kwrd">="chatarea"</span><span class="kwrd">&gt;</span>
<span class="kwrd">&lt;/</span><span class="html">div</span><span class="kwrd">&gt;</span></pre>
<p><!-- .csharpcode, .csharpcode pre { 	font-size: small; 	color: black; 	font-family: consolas, "Courier New", courier, monospace; 	background-color: #ffffff; 	/*white-space: pre;*/ } .csharpcode pre { margin: 0em; } .csharpcode .rem { color: #008000; } .csharpcode .kwrd { color: #0000ff; } .csharpcode .str { color: #006080; } .csharpcode .op { color: #0000c0; } .csharpcode .preproc { color: #cc6633; } .csharpcode .asp { background-color: #ffff00; } .csharpcode .html { color: #800000; } .csharpcode .attr { color: #ff0000; } .csharpcode .alt  { 	background-color: #f4f4f4; 	width: 100%; 	margin: 0em; } .csharpcode .lnum { color: #606060; } -->To handle both of these areas, we need one function to send data to the server (submit new message) and we need a function to get data (list of new messages for the chat area.)</p>
<p>The key to the client side here is to have unique ID’s for each of the items we want to update with jQuery.  In jQuery we can reference those items by typing $(“#ID_OF_ITEM”).</p>
<p>Below is a function that runs when the website loads.  It sets up a time-based loop that will call a function to update the chat messages.  Basically messages will reload every 5 seconds.</p>
<pre class="csharpcode">$(document).ready(<span class="kwrd">function</span> () {
    $(<span class="str">"#message"</span>).html(<span class="str">"Waiting for update..."</span>);
    <span class="kwrd">var</span> refreshId = setInterval(
        <span class="str">"updateChatArea()"</span>,
        5000);
});</pre>
<p><!-- .csharpcode, .csharpcode pre { 	font-size: small; 	color: black; 	font-family: consolas, "Courier New", courier, monospace; 	background-color: #ffffff; 	/*white-space: pre;*/ } .csharpcode pre { margin: 0em; } .csharpcode .rem { color: #008000; } .csharpcode .kwrd { color: #0000ff; } .csharpcode .str { color: #006080; } .csharpcode .op { color: #0000c0; } .csharpcode .preproc { color: #cc6633; } .csharpcode .asp { background-color: #ffff00; } .csharpcode .html { color: #800000; } .csharpcode .attr { color: #ff0000; } .csharpcode .alt  { 	background-color: #f4f4f4; 	width: 100%; 	margin: 0em; } .csharpcode .lnum { color: #606060; } --><!-- .csharpcode, .csharpcode pre { 	font-size: small; 	color: black; 	font-family: consolas, "Courier New", courier, monospace; 	background-color: #ffffff; 	/*white-space: pre;*/ } .csharpcode pre { margin: 0em; } .csharpcode .rem { color: #008000; } .csharpcode .kwrd { color: #0000ff; } .csharpcode .str { color: #006080; } .csharpcode .op { color: #0000c0; } .csharpcode .preproc { color: #cc6633; } .csharpcode .asp { background-color: #ffff00; } .csharpcode .html { color: #800000; } .csharpcode .attr { color: #ff0000; } .csharpcode .alt  { 	background-color: #f4f4f4; 	width: 100%; 	margin: 0em; } .csharpcode .lnum { color: #606060; } -->Below we have the function to get data from the server.  We are using the getJSON AJAX function built into jQuery.  We will call the webpage “/Home/GetMessage/” (or in MVC speak we call the GetMessage action method in the Home controller.)  The page will return “data” which will be passed to a function.  We update the status message at different times to give the user some feedback that stuff is happening.  We then just loop through the data and inject those messages into the chat area.</p>
<pre class="csharpcode"><span class="kwrd">function</span> updateChatArea() {
    $.getJSON(
       <span class="str">"/Home/GetMessages/"</span>,
        <span class="kwrd">null</span>,
        <span class="kwrd">function</span> (data) {
            $(<span class="str">"#message"</span>).html += <span class="str">"Fetching..."</span>;
            $(<span class="str">"#chatarea"</span>).html(<span class="str">""</span>);
            <span class="kwrd">var</span> x;
            <span class="kwrd">if</span> (data.length &gt; 0) {
                <span class="kwrd">for</span> (x <span class="kwrd">in</span> data) {
                    $(<span class="str">"#chatarea"</span>).html(
                    $(<span class="str">"#chatarea"</span>).html() +
                    <span class="str">"&lt;p&gt;&lt;b&gt;"</span> +
                    data[x].Username + <span class="str">"&lt;/b&gt; &lt;i&gt;("</span> +
                    data[x].PostDateTime + <span class="str">")&lt;/i&gt; - "</span> +
                    data[x].MessageBody + <span class="str">"&lt;/p&gt;"</span>);
                }
            }
            <span class="kwrd">else</span> {
                $(<span class="str">"#chatarea"</span>).html(<span class="str">"&lt;p&gt;No Messages&lt;/p&gt;"</span>);
            }
        });
    $(<span class="str">"#message"</span>).html(<span class="str">"Messages loaded."</span>);
}</pre>
<p><!-- .csharpcode, .csharpcode pre { 	font-size: small; 	color: black; 	font-family: consolas, "Courier New", courier, monospace; 	background-color: #ffffff; 	/*white-space: pre;*/ } .csharpcode pre { margin: 0em; } .csharpcode .rem { color: #008000; } .csharpcode .kwrd { color: #0000ff; } .csharpcode .str { color: #006080; } .csharpcode .op { color: #0000c0; } .csharpcode .preproc { color: #cc6633; } .csharpcode .asp { background-color: #ffff00; } .csharpcode .html { color: #800000; } .csharpcode .attr { color: #ff0000; } .csharpcode .alt  { 	background-color: #f4f4f4; 	width: 100%; 	margin: 0em; } .csharpcode .lnum { color: #606060; } -->Below is the function that will send a new message to the server.  Basically we are sending JSON object (with two key/value pairs: username and messagebody) to “/Home/AddMessage” (or again to the AddMessage action method in the Home controller.)  We are using jQuery to get the information from a hidden username field that was set by the server when the page was created and by a message text box.)</p>
<pre class="csharpcode"><span class="kwrd">function</span> sendNewMessage() {
    $.post(
        <span class="str">"/Home/AddMessage"</span>,
        {
            Username: $(<span class="str">"#newmessage_username"</span>).val(),
            MessageBody: $(<span class="str">"#newmessage_messagebody"</span>).val()
        });
    $(<span class="str">"#newmessage_messagebody"</span>).val(<span class="str">""</span>);
    updateChatArea();
}</pre>
<p><!-- .csharpcode, .csharpcode pre { 	font-size: small; 	color: black; 	font-family: consolas, "Courier New", courier, monospace; 	background-color: #ffffff; 	/*white-space: pre;*/ } .csharpcode pre { margin: 0em; } .csharpcode .rem { color: #008000; } .csharpcode .kwrd { color: #0000ff; } .csharpcode .str { color: #006080; } .csharpcode .op { color: #0000c0; } .csharpcode .preproc { color: #cc6633; } .csharpcode .asp { background-color: #ffff00; } .csharpcode .html { color: #800000; } .csharpcode .attr { color: #ff0000; } .csharpcode .alt  { 	background-color: #f4f4f4; 	width: 100%; 	margin: 0em; } .csharpcode .lnum { color: #606060; } -->That pretty much wraps up the basic client side code.  Let’s take a look at how the server will interact with the client.</p>
<h4>Server Side</h4>
<p>The server side is very simple.  ASP.NET MVC has many built in features that allow you to interact with client side requests. </p>
<p>For setup we do have a simple mock user authentication system setup to allow multiple users to log into the system.  Check that out by downloading the full project.</p>
<p>To store the messages, I have created a simple Entity Framework project that has a single entity, “Message”.  To create the same setup you will need to perform three steps after downloading the project.</p>
<ol>
<li>Create a new database in SQL Server named “OnlineChat”.</li>
<li>Modify the connection string in the web.config file named &#8220;OnlineChatEntities&#8221; with the settings for your development machine.  Look for and replace the YOUR_SQL_SERVER_NAME and the YOUR_SQL_DATABASE_NAME areas in the connection string. <!-- .csharpcode, .csharpcode pre { 	font-size: small; 	color: black; 	font-family: consolas, "Courier New", courier, monospace; 	background-color: #ffffff; 	/*white-space: pre;*/ } .csharpcode pre { margin: 0em; } .csharpcode .rem { color: #008000; } .csharpcode .kwrd { color: #0000ff; } .csharpcode .str { color: #006080; } .csharpcode .op { color: #0000c0; } .csharpcode .preproc { color: #cc6633; } .csharpcode .asp { background-color: #ffff00; } .csharpcode .html { color: #800000; } .csharpcode .attr { color: #ff0000; } .csharpcode .alt  { 	background-color: #f4f4f4; 	width: 100%; 	margin: 0em; } .csharpcode .lnum { color: #606060; } --></li>
<li>Open the OnlineChat.edmx file right-click in the design view and select “Generate Database from Model…”  Go through the steps and it should generate the Message table in the database and setup the connection between the Entity framework and your database.</li>
</ol>
<p>Now looking at the Home controller and responding to those requests from jQuery.</p>
<p>Below is the code for the GetMessage function that is called to get the messages to be placed in the chat area.  This has some pretty simple code.  It queries the data source for 10 messages ordered by their post dates in new first order.  It then adds each of these messages to a LinkedList.  Each of the Message objects are actually moved into anonymous objects inside the LinkedList.</p>
<p>The unique thing about this method is the result it sends.  It uses the built-in MVC type of JsonResult.  This will return in the Javascript-native JSON format.  On top of which we use the Json() method that will serialize the LinkedList (and its objects) into a JSON result.</p>
<pre class="csharpcode"><span class="kwrd">public</span> JsonResult GetMessages()
{
    OnlineChatEntities chatEntities = <span class="kwrd">new</span> OnlineChatEntities();
    var messages = chatEntities.Messages
                               .OrderByDescending(x =&gt; x.PostDateTime)
                               .Take(10);
    var result = <span class="kwrd">new</span> LinkedList&lt;<span class="kwrd">object</span>&gt;();
    <span class="kwrd">foreach</span> (var message <span class="kwrd">in</span> messages)
    {
        result.AddLast(<span class="kwrd">new</span> {
                            Username = message.Username,
                            PostDateTime = message.PostDateTime.ToString(),
                            MessageBody = message.MessageBody });
    }
    <span class="kwrd">return</span> Json(result, JsonRequestBehavior.AllowGet);
}</pre>
<p><!-- .csharpcode, .csharpcode pre { 	font-size: small; 	color: black; 	font-family: consolas, "Courier New", courier, monospace; 	background-color: #ffffff; 	/*white-space: pre;*/ } .csharpcode pre { margin: 0em; } .csharpcode .rem { color: #008000; } .csharpcode .kwrd { color: #0000ff; } .csharpcode .str { color: #006080; } .csharpcode .op { color: #0000c0; } .csharpcode .preproc { color: #cc6633; } .csharpcode .asp { background-color: #ffff00; } .csharpcode .html { color: #800000; } .csharpcode .attr { color: #ff0000; } .csharpcode .alt  { 	background-color: #f4f4f4; 	width: 100%; 	margin: 0em; } .csharpcode .lnum { color: #606060; } -->Below is the GetMessage action method that will receive a new message to be placed in the chat.  If we look at what is sent, we know that jQuery is sending a JSON object that just contains a username and messagebody key/value pair.  We can actually setup a ViewModel class that matches that layout and MVC will automatically bind incoming JSON data to a new C# object.  We then take that new object and insert it into the database (using EF).  We create an anonymous object and then return it the same way we did for the GetMessage method.  Here we are sending a message of success.  On the jQuery side you can use these return messages to error check the sending of a message.</p>
<pre class="csharpcode"><span class="kwrd">public</span> JsonResult AddMessage(NewMessageViewModel message)
{
    Message newMessage = <span class="kwrd">new</span> Message();
    newMessage.Username = message.Username;
    newMessage.MessageBody = message.MessageBody;
    newMessage.PostDateTime = DateTime.Now;

    OnlineChatEntities chatEntities = <span class="kwrd">new</span> OnlineChatEntities();
    chatEntities.Messages.AddObject(newMessage);
    chatEntities.SaveChanges();
    var result = <span class="kwrd">new</span> { message = <span class="str">"Success"</span> };
    <span class="kwrd">return</span> Json(result, JsonRequestBehavior.AllowGet);
}</pre>
<p><!-- .csharpcode, .csharpcode pre { 	font-size: small; 	color: black; 	font-family: consolas, "Courier New", courier, monospace; 	background-color: #ffffff; 	/*white-space: pre;*/ } .csharpcode pre { margin: 0em; } .csharpcode .rem { color: #008000; } .csharpcode .kwrd { color: #0000ff; } .csharpcode .str { color: #006080; } .csharpcode .op { color: #0000c0; } .csharpcode .preproc { color: #cc6633; } .csharpcode .asp { background-color: #ffff00; } .csharpcode .html { color: #800000; } .csharpcode .attr { color: #ff0000; } .csharpcode .alt  { 	background-color: #f4f4f4; 	width: 100%; 	margin: 0em; } .csharpcode .lnum { color: #606060; } -->To see the full project and have all the code available, please download the ZIP file containing the solution and all the code below.</p>
<p><a href="http://www.treygourley.com/wp-content/uploads/2010/10/OnlineChatAJAX.zip">OnlineChatAJAX</a> [Download]</p>
<h4>Taking it a step further…</h4>
<p>After you dig a little deeper in the code you will find an unfinished section in the sidebar of the website.  This is a section that shows all the users currently online and chatting on the website.  This is where you can create the jQuery/AJAX/MVC code and get your hands dirty.</p>
<p>How would you use jQuery and MVC to create a live online user list in the sidebar?  Can you use the same concepts as the GetMessages functions to create a GetUsers?  How will you know a user is still online?  What if they closed their browser or moved to another website? How will you know?</p>
<p>Here is a couple of tips… you will have to move the user authentication into the database (the current project has hard-coded users in mock repositories.)  You will need to have code to check-in a user after a certain time.  And if a user does not check in after a certain time, you can count that person as not online.</p>
<p>Have fun and just keep coding… just keep coding… just keep coding, coding, coding… what do we do, we code, code.</p>
<p><!-- .csharpcode, .csharpcode pre { 	font-size: small; 	color: black; 	font-family: consolas, "Courier New", courier, monospace; 	background-color: #ffffff; 	/*white-space: pre;*/ } .csharpcode pre { margin: 0em; } .csharpcode .rem { color: #008000; } .csharpcode .kwrd { color: #0000ff; } .csharpcode .str { color: #006080; } .csharpcode .op { color: #0000c0; } .csharpcode .preproc { color: #cc6633; } .csharpcode .asp { background-color: #ffff00; } .csharpcode .html { color: #800000; } .csharpcode .attr { color: #ff0000; } .csharpcode .alt  { 	background-color: #f4f4f4; 	width: 100%; 	margin: 0em; } .csharpcode .lnum { color: #606060; } --></p>
<img src="http://feeds.feedburner.com/~r/TreyGourley/~4/k5l6TOk7k-4" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.treygourley.com/2010/10/building-an-online-chat-application-asp-net-mvc-jquery-and-ajax/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		<feedburner:origLink>http://www.treygourley.com/2010/10/building-an-online-chat-application-asp-net-mvc-jquery-and-ajax/</feedburner:origLink></item>
		<item>
		<title>Logos 4 Mac</title>
		<link>http://feedproxy.google.com/~r/TreyGourley/~3/ytzjt9qH3yo/</link>
		<comments>http://www.treygourley.com/2010/09/logos-4-mac/#comments</comments>
		<pubDate>Tue, 28 Sep 2010 12:22:19 +0000</pubDate>
		<dc:creator>Trey Gourley</dc:creator>
				<category><![CDATA[Christianity]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[.net]]></category>
		<category><![CDATA[bible]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[logos]]></category>
		<category><![CDATA[mac]]></category>
		<category><![CDATA[mono]]></category>

		<guid isPermaLink="false">http://www.treygourley.com/?p=198</guid>
		<description><![CDATA[One of the great bonuses of attending the BibleTech 2010 conference in San Fransisco last March was being able to talk to and get to know many of the developers behind the Logos software.  Logos creates one of the most sophisticated (and awesome) Bible study and research software on the market. Back in March, many [...]]]></description>
			<content:encoded><![CDATA[<p>One of the great bonuses of attending the <a href="http://www.bibletechconference.com/">BibleTech 2010 </a>conference in San Fransisco last March was being able to talk to and get to know many of the developers behind the <a href="http://www.logos.com/">Logos software</a>.  Logos creates one of the most sophisticated (and awesome) Bible study and research software on the market.</p>
<p>Back in March, many of the developers were working hard to develop their <a href="http://www.logos.com/mac">Mac </a>offering in the hopes of getting it to the same level of their Windows offering.  Their Windows software had just been released, Logos 4, and it was built on Microsoft technologies, mostly .Net from what I understand.  They have an <a href="http://code.logos.com/blog/">interesting code blog </a>that they post to about various .Net stuff.</p>
<p>The interesting thing about Logos is that they decided to use .Net for their new Mac offering as well.  It was great to hear that they started getting involved in the <a href="http://www.mono-project.com/Mono:OSX">Mono platform </a>so they could utilize their .Net codebase on the Mac.  Not only were they utilizing Mono, but they actively joined the Mono development process.  And from the developers I met a few months ago, Mono is blessed to have some of these extremely smart developers on their side.</p>
<p>Well come this Friday, October 1, Logos 4 Mac will be an official product.  I would like to give a hand to these developers.  It take tons of work to release software on one platform.  But Logos has several with their Windows, iPad, iPhone, web, and now Mac platforms.  Congrats to Logos!</p>
<p>[Note: Logos is having a sweet contest for the launch of Logos 4 Mac. Follow the links below to join the fun!]</p>
<p><a href="http://www.logos.com/mac"><img style="float: right; padding: 0 0 0 5px;" src="http://www.logos.com/images/mac/blog-post.jpg" alt="" /></a><a href="http://www.logos.com/">Logos Bible Software</a> is giving away <a href="http://www.logos.com/mac#giveaway">thousands of dollars of prizes</a> to celebrate the launch of <a href="http://www.logos.com/mac">Logos Bible Software 4 Mac</a>on October 1. Prizes include an iMac, a MacBook Pro, an iPad, an iPod Touch, and more than 100 other prizes!</p>
<p>They’re also having a special limited-time sale on their Mac and PC <a href="http://www.logos.com/basepackages">base packages</a> and <a href="http://www.logos.com/upgrade">upgrades</a>. Check it out!</p>
<img src="http://feeds.feedburner.com/~r/TreyGourley/~4/ytzjt9qH3yo" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.treygourley.com/2010/09/logos-4-mac/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.treygourley.com/2010/09/logos-4-mac/</feedburner:origLink></item>
		<item>
		<title>Random Research Friday – Modern Day Gunsmiths</title>
		<link>http://feedproxy.google.com/~r/TreyGourley/~3/tmwnatEb_k0/</link>
		<comments>http://www.treygourley.com/2010/09/random-research-friday-modern-day-gunsmiths/#comments</comments>
		<pubDate>Fri, 03 Sep 2010 15:56:13 +0000</pubDate>
		<dc:creator>Trey Gourley</dc:creator>
				<category><![CDATA[Personal]]></category>
		<category><![CDATA[Random Research Friday]]></category>
		<category><![CDATA[firearm]]></category>
		<category><![CDATA[gun]]></category>
		<category><![CDATA[gunsmith]]></category>
		<category><![CDATA[randomresearchfriday]]></category>
		<category><![CDATA[research]]></category>

		<guid isPermaLink="false">http://www.treygourley.com/?p=189</guid>
		<description><![CDATA[For this Random Research Friday, I wanted to investigate gunsmithing.  For those who might not know, gunsmithing is the profession of restoring, designing, and repairing firearms.  Just as a car mechanic has to knowledgeable about different automobiles, it takes a lot of knowledge to become a good gunsmith.  Firearms are probably one of the longest [...]]]></description>
			<content:encoded><![CDATA[<p>For this Random Research Friday, I wanted to investigate <a href="http://en.wikipedia.org/wiki/Gunsmith">gunsmithing</a>.  For those who might not know, gunsmithing is the profession of restoring, designing, and repairing firearms.  Just as a car mechanic has to knowledgeable about different automobiles, it takes a lot of knowledge to become a good gunsmith.  Firearms are probably one of the longest running tools that civilization still currently produces.  For centuries we have had firearms, and it takes gunsmiths to keep those firearms in operating condition.</p>
<p>My interest in gunsmithing came through my father.  He was a gunsmith (professionally) for close to 30 years.  He was a meticulous gunsmith and it amazed me to see a seemingly bucket of parts could be assembled into an operating firearm.  He was know by every farmer and hunter in the area as he was the go-to-guy if you had a problem with your firearm.  One reason for that was he was very good at what he did.  As a software guy, I would compare him to the wise senior architect who was almost like Yoda in his knowledge of the firearm force.  But a secondary reason was that there just were not that many gunsmiths around.  Unlike a car mechanic, gunsmithing is niche enough to not get too many people interested in it as a career.</p>
<p>To top off of all the gunsmiths I met through my dad, none of them were younger or anywhere near my age (twenties).  This lead me to wonder, is gunsmithing still a viable career for the new generation?</p>
<p>What I found was a very vibrant, YES!  Not only was I able to find young gunsmiths using the internet to bring the profession into the digital world, but there is a vibrant online community focused on gunsmithing.</p>
<p>The first thing I wanted to research was if the gunsmithing trade school that my dad went to was still around.  Not only is it still around but it looks to be thriving.  The <a href="http://www.pagunsmith.edu">Pennsylvania Gunsmith School</a> is located in Pittsburg.  This is a long standing trade school where students learn the art of gunsmithing.  Students work for 16 months at 8 hours a day for a total of 2500 hours of gunsmith training.  My dad went there in the mid-1970’s to train to become a gunsmith.  From this he created beautiful, custom wood stocks for rifles and shotguns and had the vast experience to come back to Indiana and become a business owner as a gunsmith.  You can see one of my dad&#8217;s custom stocks and simulated case-hardening rifles below.</p>
<p><a href="http://www.treygourley.com/wp-content/uploads/2010/09/rifle_custom_stock.jpg"><img class="size-full wp-image-193 alignnone" title="rifle_custom_stock" src="http://www.treygourley.com/wp-content/uploads/2010/09/rifle_custom_stock.jpg" alt="" width="696" height="268" /></a></p>
<p>A search on YouTube will start showing you how gunsmiths (and gun enthusiasts) are using the internet to take gunsmithing to the next level.  I guess I was lucky enough to have a gunsmith available where I could watch what went into working on a firearm.  Most people would not have that opportunity.  With the popularity of channels like the History Channel, Discovery, and Science Channel and of shows like “How It’s Made”, “Factory Made”, and “Modern Marvels”, people have a desire to know how something is put together and how things work.</p>
<p>Here are a few links to some YouTube videos of younger gunsmiths and enthusiasts who are posting videos about gunsmithing.  Probably the biggest contributor of online videos regarding gunsmithing is from a company named <a href="http://www.midwayusa.com/">MidwayUSA</a>.  If you are familiar with shooting sports, you have probably come across <a href="http://www.midwayusa.com/">MidwayUSA</a> before.  They sell just about anything and everything related to the sport.  <a href="http://www.youtube.com/user/MidwayUSA">Their YouTube channel</a> is full of informational videos on gunsmithing.</p>
<p>Larry Potterfield (CEO of MidwayUSA) – How a Bolt Action Rifle Operates</p>
<div id="scid:5737277B-5D6D-4f48-ABFC-DD9C333F4C5D:eb961661-20b6-4293-92bc-950ed116002a" class="wlWriterEditableSmartContent" style="margin: 0px; display: inline; float: none; padding: 0px;">
<div><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="215" height="161" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="src" value="http://www.youtube.com/v/47mPQjjGrns&amp;hl=en" /><embed type="application/x-shockwave-flash" width="215" height="161" src="http://www.youtube.com/v/47mPQjjGrns&amp;hl=en">�</embed></object></div>
</div>
<p>Pittsburg Tribune – Pennsylvania Gunsmith School Visit</p>
<div id="scid:5737277B-5D6D-4f48-ABFC-DD9C333F4C5D:1396c0b0-c9b8-48f1-84b9-164d27a20b29" class="wlWriterEditableSmartContent" style="margin: 0px; display: inline; float: none; padding: 0px;">
<div><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="213" height="159" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="src" value="http://www.youtube.com/v/Vkv-9mDy0Os&amp;hl=en" /><embed type="application/x-shockwave-flash" width="213" height="159" src="http://www.youtube.com/v/Vkv-9mDy0Os&amp;hl=en">�</embed></object></div>
</div>
<p>MacTeutates – M1 Garand Series</p>
<div id="scid:5737277B-5D6D-4f48-ABFC-DD9C333F4C5D:b3eec746-d8f6-4d52-a198-c63e07ea2049" class="wlWriterEditableSmartContent" style="margin: 0px; display: inline; float: none; padding: 0px;">
<div><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="231" height="173" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="src" value="http://www.youtube.com/v/d5NRs518HOI&amp;hl=en" /><embed type="application/x-shockwave-flash" width="231" height="173" src="http://www.youtube.com/v/d5NRs518HOI&amp;hl=en">�</embed></object></div>
</div>
<p>nutnfancy “Gunsmithing the 1911”</p>
<ul>
<div id="scid:5737277B-5D6D-4f48-ABFC-DD9C333F4C5D:23c5ea8b-bb88-4695-a07c-d3086fc80019" class="wlWriterEditableSmartContent" style="margin: 0px; display: inline; float: none; padding: 0px;">
<div><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="205" height="153" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="src" value="http://www.youtube.com/v/eCF2u3K743A&amp;hl=en" /><embed type="application/x-shockwave-flash" width="205" height="153" src="http://www.youtube.com/v/eCF2u3K743A&amp;hl=en"></embed></object></div>
</div>
</ul>
<p>Of course like all research, there are tons of resources out there that are eventually making their way to the internet.  Gunsmithing is still mostly an “offline” activity.  There are tons of paper resources available.  But with a new generation of gunsmiths coming into the mix, along with that generations requirement that information be available on the internet, I think we will see more and more gunsmithing resources appearing online.</p>
<img src="http://feeds.feedburner.com/~r/TreyGourley/~4/tmwnatEb_k0" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.treygourley.com/2010/09/random-research-friday-modern-day-gunsmiths/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://www.treygourley.com/2010/09/random-research-friday-modern-day-gunsmiths/</feedburner:origLink></item>
		<item>
		<title>IndyNDA Wrap-up for August 2010 – OData</title>
		<link>http://feedproxy.google.com/~r/TreyGourley/~3/l_JjbQ0ae4Y/</link>
		<comments>http://www.treygourley.com/2010/08/indynda-wrap-up-for-august-2010-odata/#comments</comments>
		<pubDate>Tue, 17 Aug 2010 16:36:50 +0000</pubDate>
		<dc:creator>Trey Gourley</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[Web Development]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[indynda]]></category>
		<category><![CDATA[odata]]></category>

		<guid isPermaLink="false">http://www.treygourley.com/?p=185</guid>
		<description><![CDATA[This month at IndyNDA we heard from Dan Rigsby (@DanRigsby) regarding OData.  OData is a web protocol that allows for the querying of data as a service.  OData is built upon REST principle of web services.  REST is a move away from the complicated SOAP protocols that were popular in the 1990’s.  Unfortunately SOAP is [...]]]></description>
			<content:encoded><![CDATA[<p>This month at IndyNDA we heard from <a href="http://www.danrigsby.com">Dan Rigsby</a> (<a href="http://twitter.com/danrigsby">@DanRigsby</a>) regarding <a href="http://www.odata.org/">OData</a>.  OData is a web protocol that allows for the querying of data as a service. </p>
<p>OData is built upon <a href="http://en.wikipedia.org/wiki/Representational_State_Transfer">REST principle</a> of web services.  REST is a move away from the complicated SOAP protocols that were popular in the 1990’s.  Unfortunately SOAP is a standard that became too complicated and was modified by too many organizations to be considered an open specification.  A computer scientist, Roy Fielding, developed the idea that web services and querying data could use the HTTP protocol.</p>
<p>Dan explained that REST is more of a style, not a specification.  REST uses existing web communications (HTTP) and focuses on resources not operations.</p>
<p>4 Tenets of REST:</p>
<ul>
<li>Embrace the URI – parts of the URI map to domain</li>
<li>HTTP Verbs = Methods – GET, PUT, POST, and DELETE – GET is special since it represents 99% of calls</li>
<li>Content-type = Object model – submit/return types of calls – for example XML and JSON</li>
<li>Status code = Result – for example 200 Ok, 201 Created, 404 Not Found</li>
</ul>
<p>Advantages of REST:</p>
<ul>
<li>Web = Reach (interoperability)</li>
<li>Very light weight</li>
<li>Apps become as scalable as the web (cache)</li>
<li>less work on client-side</li>
<li>everything accessible by URI</li>
</ul>
<p>OData is also build using the Atom/Pub XML specification.  Atom is an XML standard for publishing and editing web resources.  You might be familiar with its use for publishing blogs and news on the web.</p>
<p>Advantages of Atom:</p>
<ul>
<li>Atom preserves Metadata – link, updated date, author, etc…</li>
<li>Constructs – complex object such as author could contain name, url, contact…</li>
<li>Atom has a very RESTful structure</li>
</ul>
<p>Dan then linked these pieces back to OData.  OData was meant to expose a data source to the world.  Because it needs to become a standard it was build upon REST and Atom.  Also, data access is standardized (structure, URL, operations) so that any OData client can connect to and query data from any OData resource.</p>
<p>The <a href="http://www.odata.org/home">OData website</a> has lists of both <a href="http://www.odata.org/producers">producers</a> and <a href="http://www.odata.org/consumers">consumers</a> of OData feeds.  In respect to consumers, there is a standalone application, <a href="http://www.silverlight.net/content/samples/odataexplorer/">OData Explorer</a>, that will allow you to navigate an OData feed.  For Visual Studio developers, Microsoft has built the <a href="http://msdn.microsoft.com/en-us/data/bb931106.aspx">WCF Data Services</a> library into the .Net Framework to work with OData feeds.  There are also <a href="http://www.odata.org/developers/odata-sdk">many other developer tools</a> to connect to OData using PHP, Javascript, ruby, and Objective-C.</p>
<p>An example organization that gives OData access to its resources is Netflix (<a href="http://odata.netflix.com/Catalog">http://odata.netflix.com/Catalog</a>)  To get the metadata of the resource structure, you go to <a title="http://odata.netflix.com/Catalog/$metadata" href="http://odata.netflix.com/Catalog/$metadata">http://odata.netflix.com/Catalog/$metadata</a> .  An example of a query that would grab movie titles of rated G movies is <a href="http://odata.netflix.com/Catalog/Titles?$filter=Rating eq 'G'">http://odata.netflix.com/Catalog/Titles?$filter=Rating eq &#8216;G&#8217;</a></p>
<p>You can find Dan Rigsby at <a title="http://www.danrigsby.com/blog/" href="http://www.danrigsby.com/blog/">http://www.danrigsby.com/blog/</a> and on Twitter at <a href="http://www.twitter.com/danrigsby">http://www.twitter.com/danrigsby</a>.</p>
<img src="http://feeds.feedburner.com/~r/TreyGourley/~4/l_JjbQ0ae4Y" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.treygourley.com/2010/08/indynda-wrap-up-for-august-2010-odata/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://www.treygourley.com/2010/08/indynda-wrap-up-for-august-2010-odata/</feedburner:origLink></item>
		<item>
		<title>Thinking about Bibles</title>
		<link>http://feedproxy.google.com/~r/TreyGourley/~3/KTUYo9ZwIiU/</link>
		<comments>http://www.treygourley.com/2010/08/thinking-about-bibles/#comments</comments>
		<pubDate>Sun, 08 Aug 2010 21:52:09 +0000</pubDate>
		<dc:creator>Trey Gourley</dc:creator>
				<category><![CDATA[Christianity]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[bible]]></category>
		<category><![CDATA[study]]></category>

		<guid isPermaLink="false">http://www.treygourley.com/?p=175</guid>
		<description><![CDATA[I have continued to think about what I would want in a Bible.  I continued to think about Bible design after my Random Research Friday a couple of weeks ago where I researched a new note-taking type Bible.

I have continued to develop the idea.  I recently compiled a list of qualities (both design and production) I would like to see in this Bible.]]></description>
			<content:encoded><![CDATA[<p>I have continued to think about what I would want in a Bible.  I continued to think about Bible design after my <a href="http://www.treygourley.com/2010/07/random-research-friday-custom-study-bible/">Random Research Friday</a> a couple of weeks ago where I researched a new note-taking type Bible.</p>
<p>I have continued to develop the idea.  I recently compiled a list of qualities (both design and production) I would like to see in this Bible.</p>
<p>Design:</p>
<ol>
<li>Single column, paragraph form</li>
<li>Parallel translations – literal and dynamic – ESV and NLT</li>
<li>Jesus’ words in red – I love the deep red text I find in some Bibles.</li>
<li>Cross References – I have not decided yet to use both or only one (my mockup shows both)</li>
<li>Footnotes</li>
<li>Left page would be the text, right page would be blank for note taking (very much like a blank Bible)</li>
<li>Possible alternative version where blank right page would contain multiple commentary text for those are not note takers</li>
</ol>
<p>Production:</p>
<ol>
<li>High quality production materials only: soft leather, sewn binding, quality paper</li>
<li>The goal is to make a solid Bible that people can use for 50 years</li>
</ol>
<p>Below you will find a link to a PDF mockup I created (first draft.)  I continue to get excited designing and researching more into this project.</p>
<p><a href="http://www.treygourley.com/wp-content/uploads/2010/08/TreyGourley_Bible_Mockup.png"><img class="size-full wp-image-180 alignnone" style="border: black 1px solid;" title="TreyGourley_Bible_Mockup" src="http://www.treygourley.com/wp-content/uploads/2010/08/TreyGourley_Bible_Mockup.png" alt="" width="432" height="559" /></a></p>
<p><a href="http://www.treygourley.com/wp-content/uploads/2010/08/Trey-Gourley-Bible-Mockup.pdf">Trey Gourley &#8211; Bible Mockup PDF</a></p>
<img src="http://feeds.feedburner.com/~r/TreyGourley/~4/KTUYo9ZwIiU" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.treygourley.com/2010/08/thinking-about-bibles/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://www.treygourley.com/2010/08/thinking-about-bibles/</feedburner:origLink></item>
		<item>
		<title>Big Christian Words</title>
		<link>http://feedproxy.google.com/~r/TreyGourley/~3/lpJ3TE85GMQ/</link>
		<comments>http://www.treygourley.com/2010/08/big-christian-words/#comments</comments>
		<pubDate>Wed, 04 Aug 2010 02:46:17 +0000</pubDate>
		<dc:creator>Trey Gourley</dc:creator>
				<category><![CDATA[Christianity]]></category>
		<category><![CDATA[theology]]></category>

		<guid isPermaLink="false">http://www.treygourley.com/?p=139</guid>
		<description><![CDATA[I was reading through the preface of my ESV Bible and read the following passage&#8230; The ESV also carries forward classic translation principles in its literary style. Accordingly it retains theological terminology &#8211; words such as grace, faith, justification, sanctification, redemption, regeneration, reconciliation, propitiation &#8211; because of their central importance for Christian doctrine and also [...]]]></description>
			<content:encoded><![CDATA[<p>I was reading through the preface of my ESV Bible and read the following passage&#8230;</p>
<blockquote><p>The ESV also carries forward classic translation principles in its literary style. Accordingly it retains theological terminology &#8211; words such as grace, faith, justification, sanctification, redemption, regeneration, reconciliation, propitiation &#8211; because of their central importance for Christian doctrine and also because other underlying Greek words were already becoming key words and technical terms in New Testament times.</p></blockquote>
<p>If you look up the definitions of the words above, you will probably find deep theological definitions that are hard (if not impossible) to understand.  I believe that we all know the meanings of these words, whether or not we use these words specifically.  I thought it would be helpful to do a little research and provide a more laymen definition (aka something I could understand) for these words.</p>
<p><em>Important Point: </em>I have used the links below to help backup my definitions.  An &#8220;official definition&#8221; usually avoids using emotion to describe a word.  For me, sometimes it is the emotional or practical definition that helps me understand the best.  I do not claim to be a theologian, only a believer of God and a desirer of knowing him more.</p>
<p><strong>Grace</strong></p>
<p><em>Laymen Definition: </em>Grace is the undeserving favor or elevating of man from God&#8217;s other creations.</p>
<p><em>Background: </em>Grace is a term that is used primarily in the New Testament (mostly in Paul&#8217;s writings.)  But anytime you might see God showing favor of something in the Old Testament this can be seen as grace also.  Noah and his family were shown favor in God&#8217;s eyes.  They was spared while all other men perished in the flood.  Paul speaks of grace as a holy gift from God so that we can use this gift to further his kingdom.  We are able to do what we do through this grace, for it elevates us up to perform God&#8217;s work.</p>
<p><em>Further study: </em><a href="http://www.biblestudytools.com/dictionaries/bakers-evangelical-dictionary/grace.html">Baker&#8217;s Evangelical Dictionary of Biblical Theology &#8211; Grace</a></p>
<p><strong>Faith</strong></p>
<p><em>Laymen Definition:</em> Faith is a belief, trust, and loyalty in God and his promises, even when we do not understand how God works in our lives and the world around us.</p>
<p><em>Background:</em> I like to think of faith as a promise that you can trust to be kept from God.  When God says he is going to bless or work in a particular way, we can trust that it will happen.  I think of faith as a reminder that the way God works is different than the way I think he should work.  That I must trust him over myself.  Also, if God is leading me towards something, even if I want to resist what God wants, I must be loyal to him and put his desires above my own.</p>
<p><em>Further Study:</em> <a href="http://www.biblestudytools.com/dictionaries/bakers-evangelical-dictionary/faith.html">Backer&#8217;s Evangelical Dictionary of Biblical Theology &#8211; Faith</a></p>
<p><strong>Salvation</strong></p>
<p><em>Laymen Definition: </em>Salvation is God setting free man through faith so he can see God&#8217;s big picture.</p>
<p><em>Background:</em> Salvation is described in many different ways: to save, help in distress, set free, revelation, transition from death to life, gift of grace through faith not of works.  Salvation is an invention of God.  No man can create a way to save or free themselves.  Many have tried through living a good life or provide good works.  But God is the only person who can free us from the bonds of our sins.  Once we receive salvation from God, we are given the picture of his master plan through the Holy Spirit along with the drive to accomplish that which God wants.</p>
<p><em>Further Study:</em> <a href="http://www.biblestudytools.com/dictionaries/bakers-evangelical-dictionary/salvation.html">Backer&#8217;s Evangelical Dictionary of Biblical Theology - Salvation</a></p>
<p><strong>Righteousness </strong></p>
<p><em>Laymen Definition:</em> Righteousness is a state of being that conforms to the way God thinks, speaks, and acts.</p>
<p><em>Background:</em> God is totally good.  He has no evil in him.  So wherever you find God speaking, thinking, or acting it is in a good and perfect way.  For a person to be righteous means that they are living in a way that mimics God.  A person might not be getting it right, but they are honestly trying to live their lives in a righteous way.  Righteousness also refers to the justice that God gives.  Because he is perfectly good, he knows when anything is anything but perfectly good.</p>
<p><em>Further Study:</em> <a href="http://www.biblestudytools.com/dictionaries/bakers-evangelical-dictionary/righteousness.html">Backer&#8217;s Evangelical Dictionary of Biblical Theology &#8211; Righteousness</a></p>
<p><strong>Justification</strong></p>
<p><em>Laymen Definition:</em> Justification is where God pardons us from the punishment of being the guilty people we are simply because we have faith in him and belief that Jesus came to take on the guilty verdict in our place.</p>
<p><em>Background:</em> We are all guilty.  We all have sin inside of us that disconnects us from God.  God does not judge one person different from another based on any earthly virtues (i.e. works, being a good person, doing the right thing, etc&#8230;)  If we were not &#8220;acquitted&#8221; in our trial where God judges us, we would all be found guilty.  We saw above that righteousness is described as a person who is living their lives according to how God (in a perfectly good state) wishes.  Unfortunately, we all fail at being righteous on our own.  Paul describes how Jesus came as a gift to man to redeem us (or make us righteous) from the sins of the first man (Adam.)  Paul says this comes through faith.  Justification is God&#8217;s way of giving us access (through Jesus) to him, in spite of our failures.</p>
<p><em>Further Study:</em> <a href="http://www.biblestudytools.com/dictionaries/bakers-evangelical-dictionary/justification.html">Backer&#8217;s Evangelical Dictionary of Biblical Theology &#8211; Justification</a></p>
<p><strong>Sanctification</strong></p>
<p><em>Laymen Definition:</em> Sanctification is when something is separated and used for the purpose God intends.</p>
<p><em>Background:</em> Sanctification in general usage means to use something for the purpose it was meant.  A pen is sanctified to write.  There are two ways that sanctification exists according to God&#8217;s purpose and design.</p>
<p>First we are made or created to be perfect (sanctified) by design.  We are the image bearers of God and originally made good.  Unfortunately we live in an &#8220;un-sanctified&#8221; way since Adam and Eve&#8217;s original sin.  We are then sanctified from sin by grace through faith.  Meaning, we are in a place that God intends for us to be where he will show us favor because we believe, trust, and are loyal to him and Jesus.</p>
<p>Secondly, God creates the means that lead to sanctification.  God uses people and things (even if those people or things are not willing or unbelieving.)  I see this as we are all created as a means to deliver sanctification to each other.  We all have gifts that God uses to minister.  Even the internet itself (with both good and evil attributes) can be sanctified to minister God&#8217;s desires.</p>
<p><em>Further Study: </em><a href="http://www.biblestudytools.com/dictionaries/bakers-evangelical-dictionary/sanctification.html">Backer&#8217;s Evangelical Dictionary of Biblical Theology &#8211; Sanctification</a></p>
<p><strong>Redemption</strong></p>
<p><em>Laymen Definition:</em> Redemption is where God pays for our freedom from sin through the sacrifice of Jesus on the cross.</p>
<p><em>Background:</em> Redemption in a more general term can be seen as sacrificing something for the gaining of something else.  Forms of redemption might include buying something, setting free from from slavery, or exchanging one thing for another (trading.)  God wants to redeem us from sin.  He wants to be in a relationship with us, but sin disconnects us from God.  To redeem us, God paid the price by sending his son, Jesus, to take on our sins and to free us to reconnect with him.</p>
<p><em>Further Study:</em> <a href="http://www.biblestudytools.com/dictionaries/bakers-evangelical-dictionary/redeem-redemption.html">Backer&#8217;s Evangelical Dictionary of Biblical Theology &#8211; Redemption</a></p>
<p><strong>Regeneration or New Birth</strong></p>
<p><em>Laymen Definition:</em> Regeneration is the transformation or new birth a person experiences through one&#8217;s faith in Jesus as our redeemer.</p>
<p><em>Background:</em> Jesus describes the &#8220;born again&#8221; concept to Nicodemus in John 3.  If we stand on our own, we are not worthy enough to enter the kingdom of God.  We must be born again or regenerated by believing in him (Jesus.)  When we are born, our soul is sinful and not worthy to be a son of God.  When we have faith in God, our soul is regenerated by God&#8217;s spirit to be made worthy to be in God&#8217;s family.</p>
<p><em>Further Study:</em> <a href="http://www.biblestudytools.com/dictionaries/bakers-evangelical-dictionary/new-birth.html">Backer&#8217;s Evangelical Dictionary of Biblical Theology &#8211; New Birth (Regeneration)</a></p>
<p><strong>Reconciliation</strong></p>
<p><em>Laymen Definition:</em> Reconciliation is when our wrong or missing relationship with God is fixed, and we now have a correct and joyous relationship with him.</p>
<p><em>Background:</em> Through sin we have a wrong or missing relationship with God.  Our wrong relationship might be if we hate God or blame God for our problems that result from our sin.  A missing relationship is when someone denies God&#8217;s existence or believe they do not need God.  Paul tells us that when we are regenerated through God&#8217;s redemption, our relationship with him is reconciled and we become new.  Reconciliation can also be between man and man.  God seeks to reconcile our relationship with him.  In the same way, we are to reconcile our the relationships with each other.  Jesus describes this when he speaks in Matthew 5 that if there is a rift between you and your brother, leave you sacrifice to God and go reconcile that relationship first.</p>
<p><em>Further Study:</em> <a href="http://www.biblestudytools.com/dictionaries/bakers-evangelical-dictionary/reconciliation.html">Backer&#8217;s Evangelical Dictionary of Biblical Theology &#8211; Reconciliation</a></p>
<p><strong>Propitiation or Atonement</strong></p>
<p><em>Laymen Definition:</em> Propitiation is a way provided by God to reconcile our relationship with him.</p>
<p><em>Background:</em> In the Old Testament the most common atonement to reconcile our relationship with God was with a sacrificial animal.  The sacrifice was to take on the punishment for sin thus atoning for the sin and providing a way for man to renew his relationship with God.  When God told Abraham to offer up his only son as a burnt offering, he proceeded without hesitation.  While ultimately God provided a ram to replace Isaac as the offering, it was Abraham&#8217;s faith in God that strengthened his relationship.  This story foreshadows the events of Jesus&#8217; life.  God provided his only son as the offering of atonement for all man&#8217;s sins.  A secondary reason for propitiation is to cover all those sins (past, present, and future) not specifically confessed.  A offering is made to recognize that we are not perfect, but to also have faith that God has provided the propitiation to cover our failures.</p>
<p><em>Further Study:</em> <a href="http://www.biblestudytools.com/dictionaries/bakers-evangelical-dictionary/atonement.html">Backer&#8217;s Evangelical Dictionary of Biblical Theology &#8211; Propitiation (Atonement)</a></p>
<p><strong>Elect and Election</strong></p>
<p><em>Laymen Definition: </em>Election is the process that God has chosen that gives the opportunity of salvation to man.</p>
<p><em>Background: </em>The verb &#8220;to elect&#8221; simply means &#8220;to choose&#8221;.  For man, we elect officials in office, husbands/wives, friends, and plans for our weekend.  For God, he makes decisions that fit into his ultimate plan.  He elects the processes, events, and people that fulfill his plan in the world.  In addition, God has chosen a process to receive salvation.  Anyone willing to live in faith and repent will be chosen for salvation by God (or becoming &#8220;the elect&#8221; of God.)</p>
<p><em>Further Study:</em> <a href="http://www.biblestudytools.com/dictionaries/bakers-evangelical-dictionary/elect-election.html">Backer&#8217;s Evangelical Dictionary of Biblical Theology &#8211; Elect (Election)</a></p>
<p><strong>Repentance</strong></p>
<p><em>Laymen Definition: </em>Repentance is the act of turning away from sin, confess you sins to God, and beginning to live in a godly way.</p>
<p><em>Background: </em>The Old Testament has many statements regarding repentance.  It will commonly be translated as &#8220;turn&#8221; or &#8220;return&#8221; meaning to align yourself with God.  It is also required that one confess their sins as part of repentance to receive atonement and forgiveness.  The final requirement is to show obedience to God&#8217;s will for man.  And as Jesus points out in the Sermon on the Mount, this involves both physical obedience (prayer, tithing, marriage, etc&#8230;) but also mental obedience (lust, anger, worry, etc&#8230;)</p>
<p><em>Further Study:</em> <a href="http://www.biblestudytools.com/dictionaries/bakers-evangelical-dictionary/repentance.html">Backer&#8217;s Evangelical Dictionary of Biblical Theology &#8211; Repentance</a></p>
<img src="http://feeds.feedburner.com/~r/TreyGourley/~4/lpJ3TE85GMQ" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.treygourley.com/2010/08/big-christian-words/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.treygourley.com/2010/08/big-christian-words/</feedburner:origLink></item>
		<item>
		<title>Dig Deeper Book Review</title>
		<link>http://feedproxy.google.com/~r/TreyGourley/~3/wPHgLJNhVps/</link>
		<comments>http://www.treygourley.com/2010/07/dig-deeper-book-review/#comments</comments>
		<pubDate>Fri, 30 Jul 2010 00:44:23 +0000</pubDate>
		<dc:creator>Trey Gourley</dc:creator>
				<category><![CDATA[Christianity]]></category>
		<category><![CDATA[Review]]></category>
		<category><![CDATA[bible]]></category>
		<category><![CDATA[dig deeper]]></category>
		<category><![CDATA[study]]></category>
		<category><![CDATA[tools]]></category>

		<guid isPermaLink="false">http://www.treygourley.com/?p=141</guid>
		<description><![CDATA[Dig Deeper by Nigel Beynon and Andrew Sach is a very engaging book that sets out with the goal of giving Bible readers tools (mostly literary tools) to better study and understand the Bible.  I really enjoyed this book, but to really understand it you have to read it through a couple of times.  Also, [...]]]></description>
			<content:encoded><![CDATA[<p><em>Dig Deeper</em> by Nigel Beynon and Andrew Sach is a very engaging book that sets out with the goal of giving Bible readers tools (mostly literary tools) to better study and understand the Bible.  I really enjoyed this book, but to really understand it you have to read it through a couple of times.  Also, you will want to take time to look up the Bible passages they use for examples to showcase the tools.</p>
<p>Here are each of the tools presented in this book&#8230;</p>
<ul>
<li><strong>Author&#8217;s Purpose Tool</strong> - What is the author saying?  Who? What? When? Where? Why?&#8230;</li>
<li><strong>Context Tool</strong> &#8211; everything is connected &#8211; word, sentence, paragraph, section chapter, book, author, Bible</li>
<li><strong>Structure Tool </strong>- How is text divided? How are divisions related?  Types: Bookends, Chaism</li>
<li><strong>Linking Words Tool</strong> &#8211; connecting reasons to results.</li>
<li><strong>Parallels Tool</strong> &#8211; Repeat phrase to help with meaning.  Types: Antithetical (opposite), Chiastic (reverse)</li>
<li><strong>Narrator&#8217;s Comment Tool </strong>- Sometimes the author makes note of something specifically</li>
<li><strong>Vocabulary Tool </strong>- Use a Bible dictionary.  Do not assume the meaning of the word.</li>
<li><strong>Translations Tool </strong>- differences between literal, dynamic, and paraphrase English Bibles.</li>
<li><strong>Tone and Feel Tool </strong>- What emotion does a reading envoke?</li>
<li><strong>Repetition Tool </strong>- What is being repeated? Could it be important?</li>
<li><strong>Quotations and Allusions Tool </strong>- The Bible sometimes quotes itself (quote) and sometimes it refers to itself (allusion)</li>
<li><strong>Genre Tool </strong>- What type of style is this passage?  songs, prophecies, proverbs, laments, visions, speeches, parables, narrative</li>
<li><strong>Copycat Tool </strong>- What are we to copy? What are we to not copy?  Bible description does not mean prescription</li>
<li><strong>Bible Timeline Tool </strong>- Basic Timeline: Creation, Fall, Death of Jesus, Resurrection of Jesus, Return of Jesus.  Where is this passage occurring on the timeline relative to where I am?</li>
<li><strong>&#8220;Who am I?&#8221; Tool </strong>- Who is this person relative to who I am?  We might be the villian, not the hero.</li>
<li><strong>&#8220;So what?&#8221; Tool </strong>- What is the author&#8217;s purpose? Apply the Bible to your life.  Do I need to stop/start doing something? Motives matter!  Action and thought!</li>
</ul>
<p>I have just wrapped up a several-week series in our adult Sunday school where we walked through each of the tools offered in this book.  We had a great time applying these tools to our reading.  The main goal of this book is to not become one of those Christians that takes a passage outside of context or beyond the meaning of the author.  We want to be true to His word.</p>
<p>I think this book is an excellent book for anyone who wants to be able to study closer their Bible.  To help, I created a bookmark with each of the tools to keep in your Bible for easy access.  You will find it attached to this post below.</p>
<p><em><a href="http://www.treygourley.com/wp-content/uploads/2010/07/Dig-Deeper-Bookmark.pdf">Dig Deeper Bookmark [PDF]</a></em></p>
<img src="http://feeds.feedburner.com/~r/TreyGourley/~4/wPHgLJNhVps" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.treygourley.com/2010/07/dig-deeper-book-review/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.treygourley.com/2010/07/dig-deeper-book-review/</feedburner:origLink></item>
		<item>
		<title>Random Research Friday: Custom Study Bible</title>
		<link>http://feedproxy.google.com/~r/TreyGourley/~3/k2ydJNsoYlM/</link>
		<comments>http://www.treygourley.com/2010/07/random-research-friday-custom-study-bible/#comments</comments>
		<pubDate>Fri, 23 Jul 2010 22:26:01 +0000</pubDate>
		<dc:creator>Trey Gourley</dc:creator>
				<category><![CDATA[Christianity]]></category>
		<category><![CDATA[Random Research Friday]]></category>
		<category><![CDATA[bible]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[research]]></category>
		<category><![CDATA[study]]></category>

		<guid isPermaLink="false">http://www.treygourley.com/2010/07/random-research-friday-custom-study-bible/</guid>
		<description><![CDATA[Random Research Friday is taking a day of the week to explore a concept, product, idea, or anything that peaks my interest.  My goal is to chose a topic I do not have vast experience in and just to learn more.

For the inaugural Random Research Friday, I thought I would explore a topic that I have been thing about for a while.  The concept for a custom study Bible came from my own exploration of how I study.  Anyone who knows me will tell you that I am an avid note taker.  But also I enjoy having multiple resources at my disposal at the time that I am studying.

For the inaugural Random Research Friday, I thought I would explore a topic that I have been thing about for a while.  The concept for a custom study Bible came from my own exploration of how I study.  Anyone who knows me will tell you that I am an avid note taker.  But also I enjoy having multiple resources at my disposal at the time that I am studying.]]></description>
			<content:encoded><![CDATA[<p><em>Random Research Friday is taking a day of the week to explore a concept, product, idea, or anything that peaks my interest.  My goal is to chose a topic I do not have vast experience in and just to learn more.</em></p>
<p>For the inaugural Random Research Friday, I thought I would explore a topic that I have been thing about for a while.  The concept for a custom study Bible came from my own exploration of how I study.  Anyone who knows me will tell you that I am an avid note taker.  But also I enjoy having multiple resources at my disposal at the time that I am studying.</p>
<p>Now you might think that the art of note taking and having multiple study resources available at one time has already been solved with software.  Load up <a href="http://www.logos.com/">Logos</a>, <a href="http://www.accordancebible.com/">Accordance</a>, or <a href="http://www.olivetree.com/">Olive Tree</a> on your device of choice and you are good to go.  But for me, the art of taking hand written notes has a vast importance in how I learn.  Highlighting, underlining, circling, and drawing arrows between important points are all necessary for me.  These are things that are cumbersome or unavailable with today’s software.</p>
<p><strong>Idea #1: Custom Designed Bible</strong></p>
<p>So I start by thinking what exactly do I want in a study Bible.  Well an important part of any study is to have multiple translations available.  I would love to be able to place the <a href="http://www.esv.org">English Standard Translation</a> and the <a href="http://www.newlivingtranslation.com/">New Living Translation</a> side-by-side in a two column layout.  In between would be a cross reference system (lets say the already existing ESV system.)  I enjoy my <a href="http://www.esvstudybible.org/">ESV Study Bible</a> for its vast commentary on the Biblical text.  So I would put commentary at the bottom of the page.</p>
<p>For note taking, I would place all the Biblical text on the left hand side of the open Bible.  On the right hand side I would have just blank space for note taking.  I would probably have three-quarters of the blank side as lined paper and the other quarter with no lines for graphs and drawings.</p>
<p>To try and figure out how many pages there will be in this idea I am going to draw from some already existing text.  The two-column ESV cross reference Bible I use normally has around 1340 pages (670 sheets).  If you have one column for ESV and one column for NLT this would essentially double the size to 2640 pages (1340 sheets).  We will make the volumes larger than a normal Bible so we will have extra room to add the study notes to the bottom of the page (meaning no extra pages for commentary.)  Finally if we add one blank page for every page of text, we will double the size again for a total page count of 5280 (or 2640 sheets.)  This is a BIG book!</p>
<p>When I posed this thought on <a href="http://www.twitter.com/treygourley">Twitter</a>, I was able to strike up a conversation with David Eyk (<a href="http://twitter.com/eykd">@eykd</a> <a href="http://eykd.net/">website</a>).  He works for ESV and we were able to go back and forth with ideas.  He mentioned the daunting task of having to typeset a new Bible.  Also dealing with licensing will be a large task to undertake for this project as well.</p>
<p><strong>Idea #2: Handmade Blank Bible</strong></p>
<p>Our conversation moved into alternatives to a “new” Bible.  One would be to create what is called a <a href="http://www.esv.org/blog/2008/01/more-blank-bibles/">blank Bible</a>.  A blank Bible is a project where you remove the original binding, cut off the spine, collate in alternating printed text with blank paper, and then rebind the new book using spiral binding.  These are usually homemade creations that take several hours if not days to complete.  The resulting text, depending on which Bible you start with, can end up being 3, 4, or 9 volumes in size.  The downside of this type of study Bible is that on one page you will have the text on the left and blank paper on the right, and then on the next page you will have the blank page on the left and the text on the right.  My OCD would probably not like that.</p>
<p>This idea would eliminate the problems with licensing and typesetting with a custom Bible.  But would require a lot of manual labor constructing the Bible.</p>
<p>David pointed me to an existing “almost there” solution to this type of setup.  Hendrickson Publishers has a <a href="http://www.hendrickson.com/html/product/563481.trade.html">ESV Loose-leaf Bible</a> that they sell.  You can purchase it with a binder or <a href="http://www.hendrickson.com/html/product/563474.trade.html?category=all">only purchase the loose-leaf pages</a>. The only task you would have to do is to 5-hole punch blank paper and collate it in.</p>
<p><strong>Idea #3: Compromise – Professionally Created Blank Bible</strong></p>
<p>So my thoughts were maybe a compromise could be reached between having a handmade blank Bible or a full featured custom created study Bible.  My thoughts are to see if it would be possible to purchase or license digital version of an already existing Bible text and typesetted design.  Such as a PDF version of the ESV Study Bible.  Then pair that with a professionally printed spiral bound book where you can control what appears on each page.  This would allow for the already existing design to be printed on the left side of an open book and the notes to always be on the right side (sorry left-handed writers.)</p>
<p>This would still have the tasks of acquiring licensing and a digital version of the Bible.  But because we are reusing the original design, we only need to insert blank pages into the existing PDF and figure out how to break it into volumes.  A third party printer can then handle all the printing and binding.</p>
<p>The normal ESV Study Bible is 2752 pages (or 1376 sheets).  We double this to include the blank pages and we get a total size of 5504 pages (or 2752 sheets).  Larger than the custom Bible in Idea #1!</p>
<p><strong>What resources online might make this possible:</strong></p>
<ul>
<li>Licensing would have to be acquired from Crossway, the publishers of the ESV.  There is no promise that this type of agreement is even possible.  I have sent an email to them to see if it is possible.  Without this, Idea #1 and Idea #3 are not possible.</li>
<li>For professional printing I was able to use <a href="http://www.48hrbooks.com/">48hrBooks.com</a> to get a rough estimate of how much it would cost to get a custom Bible created.  They require the completed text to be broken up into 300 page (150 sheets) volumes.  For Idea #1, it would take 18 volumes to cover the overall size of a custom Bible.  For Idea #3 it would take 19 volumes to cover its size.  A print run of 100 editions of both Idea #1 and Idea #3 would cost upwards of $200 a piece.</li>
</ul>
<p><strong>Update &#8211; 7/27/2010</strong></p>
<p>I have received an email from Crossway that they currently do not license typesetted Bible designs to individuals (only estiblished publishers.)  Guess if you are going to create Bible, you need to establish yourself as a publisher but also typeset everything.</p>
<p>I also received an email from Hendrickson that they do not have a version of their ESV loose-leaf Bible with printing only on one side.  But they would keep the suggestion in mind for the future.</p>
<img src="http://feeds.feedburner.com/~r/TreyGourley/~4/k2ydJNsoYlM" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.treygourley.com/2010/07/random-research-friday-custom-study-bible/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		<feedburner:origLink>http://www.treygourley.com/2010/07/random-research-friday-custom-study-bible/</feedburner:origLink></item>
	</channel>
</rss>

