<?xml version="1.0" encoding="UTF-8"?><feed
	xmlns="http://www.w3.org/2005/Atom"
	xmlns:thr="http://purl.org/syndication/thread/1.0"
	xml:lang="en-US"
	>
	<title type="text">Eric Lightbody</title>
	<subtitle type="text">eric lightbody</subtitle>

	<updated>2024-04-19T15:05:59Z</updated>

	<link rel="alternate" type="text/html" href="https://ericlightbody.com" />
	<id>https://ericlightbody.com/feed/atom/</id>
	<link rel="self" type="application/atom+xml" href="https://ericlightbody.com/feed/atom/" />

	<generator uri="https://wordpress.org/" version="6.9.4">WordPress</generator>
	<entry>
		<author>
			<name>elightbo</name>
							<uri>http://192.168.50.105:8002</uri>
						</author>

		<title type="html"><![CDATA[Proper JSON encoding with PHP]]></title>
		<link rel="alternate" type="text/html" href="https://ericlightbody.com/2015/09/23/proper-json-encoding-with-php/" />

		<id>http://ericlightbody.com/?p=529</id>
		<updated>2024-04-19T15:05:58Z</updated>
		<published>2015-09-23T03:04:47Z</published>
		<category scheme="https://ericlightbody.com" term="PHP" /><category scheme="https://ericlightbody.com" term="zend framework" />
		<summary type="html"><![CDATA[I’ve decided to write posts that may wind up just being a reference to msyelf. There have been so many times that I wish I could remember how I did things a certain way, and I think that my blog could be a good archive of past programmering. I mean, I’d certainly love it if [&#8230;]]]></summary>

					<content type="html" xml:base="https://ericlightbody.com/2015/09/23/proper-json-encoding-with-php/"><![CDATA[<p>I’ve decided to write posts that may wind up just being a reference to msyelf. There have been so many times that I wish I could remember how I did things a certain way, and I think that my blog could be a good archive of past programmering. I mean, I’d certainly love it if you did find them useful, but don&#8217;t be mad if you don&#8217;t.</p>
<p>I recently ran into this nasty bug with our api at work. We started receiving an empty response body along with no errors. Very long story short, it wound up being a json encoding issue. We were using Zend_Json to encode, and my thinking was that there would be some nice wrappers around <a href="http://php.net/manual/en/function.json-encode.php">json_encode</a> to help out with Exceptions, etc. It turns out it just winds up calling <a href="http://php.net/manual/en/function.json-encode.php">json_encode</a> unless you explicitly tell it to use Zend’s built-in encoder.</p>
<p>The problem with json_encode is that it doesn’t throw any sort of exception if it can’t encode what you throw at it. Heck, it doesn’t even return false. What you get back is a nice NULL. That NULL wound up being blindly given back in our api. Oddly enough, errors do happen, and you can get them. Check out <a href="http://php.net/manual/en/function.json-last-error-msg.php">json_last_error_msg()</a>. Knowing this, you can handle errors, log them, and maybe even send a friendly message back in the api. In our case, we threw an exception with the attempted string to encode, and the error message that came back from<a href="http://php.net/manual/en/function.json-last-error-msg.php"> json_last_error_msg</a>.</p>
<p>Check out <a href="http://nitschinger.at/Handling-JSON-like-a-boss-in-PHP">Handling JSON like a boss in PHP</a> for more info.</p>
]]></content>
		
					<link rel="replies" type="text/html" href="https://ericlightbody.com/2015/09/23/proper-json-encoding-with-php/#comments" thr:count="4" />
			<link rel="replies" type="application/atom+xml" href="https://ericlightbody.com/2015/09/23/proper-json-encoding-with-php/feed/atom/" thr:count="4" />
			<thr:total>4</thr:total>
			</entry>
		<entry>
		<author>
			<name>elightbo</name>
							<uri>http://192.168.50.105:8002</uri>
						</author>

		<title type="html"><![CDATA[Zend PHP 5.5 certification studying]]></title>
		<link rel="alternate" type="text/html" href="https://ericlightbody.com/2015/08/25/zend-php-5-5-certification-studying/" />

		<id>http://ericlightbody.com/?p=521</id>
		<updated>2024-04-19T15:05:58Z</updated>
		<published>2015-08-25T03:15:19Z</published>
		<category scheme="https://ericlightbody.com" term="development" /><category scheme="https://ericlightbody.com" term="PHP" /><category scheme="https://ericlightbody.com" term="php" />
		<summary type="html"><![CDATA[I somewhat recently acquired my Zend PHP 5.5 Certification (YAY!!) , and want to share my experience with studying and the test itself. First off, some thoughts on the test. I’m not the best test taker in the world, so to say I was nervous about this one is an understatement. When I entered the [&#8230;]]]></summary>

					<content type="html" xml:base="https://ericlightbody.com/2015/08/25/zend-php-5-5-certification-studying/"><![CDATA[<p>I somewhat recently acquired my Zend PHP 5.5 Certification (<a href="http://www.zend.com/en/yellow-pages/ZEND026457">YAY</a>!!) , and want to share my experience with studying and the test itself. First off, some thoughts on the test. I’m not the best test taker in the world, so to say I was nervous about this one is an understatement. When I entered the room, what followed was one step away from a strip search. I was asked if I had a phone, or anything else in my pockets to I guess help me cheat on the test. If my memory serves me correct, I proceeded to hand over my keys and phone to the friendly lady administering the test. This did not help out my nerves one bit.</p>
<p>The test itself was administered on one of their laptops. There are 70 questions, and you are given 90 minutes to complete them all. Most questions are multiple choice, and some are free text. The free text questions aren’t as scary as they sound. They typically just ask for a small bit of PHP that you’re asked to write out.</p>
<p>To study for the test, I relied heavily on the <a href="http://www.zend.com/en/services/certification/php-certification-study-guide">ZCE study guide</a>. It’s basically an outline of what to study on <a href="http://php.net">php.net</a>. I hit every bullet point, and looked on <a href="http://php.net">php.net</a> for everything. During the process, I also had a folder of php scripts I wrote to make sure I understood what a function, concept, etc. is. It’s one thing to read it, but completely different to use it.</p>
<p>After taking my notes and writing PHP, I downloaded <a href="http://www.lornajane.net/posts/2014/zend-certified-php-developer-5-5">Lorna Jane’s flashcards</a>. They were extremely helpful to pound the topics I studied down my brain. More importantly they helped me to understand what I did and did not know. Check out her blog post while you’re there. She has some great tips on studying for the exam. I didn’t purchase the sample question pack, but my guess is it’s worth the money.</p>
<p>My recommendation with the test is to schedule the exam as soon as you feel at least somewhat comfortable with the material. I did that, and it was nice to have a deadline to help pressure me into studying. Before I did that, I kind of procrastinated the studying, because there is always something more exciting to do. Don’t be afraid to fail, because even if you don’t pass the first time, you will without a doubt get to better understand the core of PHP throughout your studying. Good luck!</p>
]]></content>
		
					<link rel="replies" type="text/html" href="https://ericlightbody.com/2015/08/25/zend-php-5-5-certification-studying/#comments" thr:count="0" />
			<link rel="replies" type="application/atom+xml" href="https://ericlightbody.com/2015/08/25/zend-php-5-5-certification-studying/feed/atom/" thr:count="0" />
			<thr:total>0</thr:total>
			</entry>
		<entry>
		<author>
			<name>elightbo</name>
							<uri>http://192.168.50.105:8002</uri>
						</author>

		<title type="html"><![CDATA[Overloading Zend_Soap_Client _doRequest()]]></title>
		<link rel="alternate" type="text/html" href="https://ericlightbody.com/2013/04/04/overloading-zend_soap_client-_dorequest/" />

		<id>http://www.ericlightbody.com/?p=486</id>
		<updated>2024-04-19T15:05:58Z</updated>
		<published>2013-04-05T00:01:13Z</published>
		<category scheme="https://ericlightbody.com" term="development" /><category scheme="https://ericlightbody.com" term="PHP" /><category scheme="https://ericlightbody.com" term="zend framework" />
		<summary type="html"><![CDATA[I wrote a soap client a while ago using Zend Framework 1 that was consuming data, and needed to log each request for debugging purposes. Thought I&#8217;d share a couple of things that I learned. I&#8217;m overloading the public function _doRequest() so that I can do the extra processing needed to do my logging.&#160;You&#8217;ll first [&#8230;]]]></summary>

					<content type="html" xml:base="https://ericlightbody.com/2013/04/04/overloading-zend_soap_client-_dorequest/"><![CDATA[<p>I wrote a soap client a while ago using Zend Framework 1 that was consuming data, and needed to log each request for debugging purposes. Thought I&#8217;d share a couple of things that I learned.</p>
<pre class="brush: php; title: ; notranslate">
class My_Test_Soap_Client extends Zend_Soap_Client
...

public function _doRequest()
{
$argList = func_get_args();
$options = $this-&amp;amp;amp;gt;_getOptions();
if ($options&#x5B;'testsoapclient'] == true) {
$soapLogger = new Zend_Log();
$writer     = new Zend_Log_Writer_Stream($options&#x5B;'logginglocation']);
$soapLogger-&amp;amp;amp;gt;addWriter($writer);
$soapLogger-&amp;amp;amp;gt;info($argList&#x5B;1]);
}

return call_user_func_array("parent::_doRequest", $argList);
}

/**
* Don't do this...just here for reference
*/
protected function _getOptions()
{
return array(
'testsoapclient'  =&amp;amp;amp;gt; true,
'logginglocation' =&amp;amp;amp;gt; '/some/path/to/log/'
);
}
</pre>
<p>I&#8217;m overloading the public function _doRequest() so that I can do the extra processing needed to do my logging.&nbsp;You&#8217;ll first notice func_get_args(). I&#8217;m using this for my own convenience. I don&#8217;t have to stay current with any new arguments that may come.</p>
<p>The other important bit is</p>
<pre class="brush: php; title: ; notranslate">
call_user_func_array("parent::_doRequest", $argList)
</pre>
<p>This simply is calling the original parent _doRequest() with the $argList we obtained earlier.</p>
]]></content>
		
					<link rel="replies" type="text/html" href="https://ericlightbody.com/2013/04/04/overloading-zend_soap_client-_dorequest/#comments" thr:count="0" />
			<link rel="replies" type="application/atom+xml" href="https://ericlightbody.com/2013/04/04/overloading-zend_soap_client-_dorequest/feed/atom/" thr:count="0" />
			<thr:total>0</thr:total>
			</entry>
		<entry>
		<author>
			<name>elightbo</name>
							<uri>http://192.168.50.105:8002</uri>
						</author>

		<title type="html"><![CDATA[Order by in Zend Framework]]></title>
		<link rel="alternate" type="text/html" href="https://ericlightbody.com/2013/03/20/order-by-in-zend-framework/" />

		<id>http://www.ericlightbody.com/?p=488</id>
		<updated>2024-04-19T15:05:58Z</updated>
		<published>2013-03-21T01:17:12Z</published>
		<category scheme="https://ericlightbody.com" term="development" /><category scheme="https://ericlightbody.com" term="zend framework" /><category scheme="https://ericlightbody.com" term="zend" /><category scheme="https://ericlightbody.com" term="zend_db" />
		<summary type="html"><![CDATA[Came across a nice &#8220;gotcha&#8221; using Zend _Db in Zend Framework 1 if you&#8217;re being sloppy like I was. When you&#8217;re ordering by multiple columns, always make sure to use an array. Bad: $select->order('col1', 'col2', 'col3'); Correct: $select->order(array('col1', 'col2', 'col3')); If you take a look at the order function in Zend_Db_Select, it takes a mixed [&#8230;]]]></summary>

					<content type="html" xml:base="https://ericlightbody.com/2013/03/20/order-by-in-zend-framework/"><![CDATA[<p>Came across a nice &#8220;gotcha&#8221; using Zend _Db in Zend Framework 1 if you&#8217;re being sloppy like I was. When you&#8217;re ordering by multiple columns, always make sure to use an array.</p>
<p><strong>Bad</strong>:</p>
<pre class="lang:php">$select->order('col1', 'col2', 'col3');</pre>
<p><strong>Correct</strong>:</p>
<pre class="lang:php">$select->order(array('col1', 'col2', 'col3'));</pre>
<p>If you take a look at the order function in Zend_Db_Select, it takes a mixed parameter (string or array) and operates on that. If you&#8217;re not seeing PHP warnings, you won&#8217;t notice that the parameters &#8216;col2&#8217; and &#8216;col3&#8217; are being ignored.</p>
]]></content>
		
					<link rel="replies" type="text/html" href="https://ericlightbody.com/2013/03/20/order-by-in-zend-framework/#comments" thr:count="0" />
			<link rel="replies" type="application/atom+xml" href="https://ericlightbody.com/2013/03/20/order-by-in-zend-framework/feed/atom/" thr:count="0" />
			<thr:total>0</thr:total>
			</entry>
		<entry>
		<author>
			<name>elightbo</name>
							<uri>http://192.168.50.105:8002</uri>
						</author>

		<title type="html"><![CDATA[Zend Form presentation with ZF1]]></title>
		<link rel="alternate" type="text/html" href="https://ericlightbody.com/2013/03/20/zend-form-presentation-with-zf1/" />

		<id>http://www.ericlightbody.com/?p=491</id>
		<updated>2024-04-19T15:05:58Z</updated>
		<published>2013-03-21T00:53:30Z</published>
		<category scheme="https://ericlightbody.com" term="development" /><category scheme="https://ericlightbody.com" term="zend framework" /><category scheme="https://ericlightbody.com" term="zend" /><category scheme="https://ericlightbody.com" term="zend_form" />
		<summary type="html"><![CDATA[Well it&#8217;s been nearly a year since I&#8217;ve done the presentation, so what better time than now to show it off? I did this presentation on Zend Form using Zend Framework 1 at mkepug. Download my slides: Zend_Form Also, awesome new thing I learned! If you own a Mac, and want to present with it. ALWAYS [&#8230;]]]></summary>

					<content type="html" xml:base="https://ericlightbody.com/2013/03/20/zend-form-presentation-with-zf1/"><![CDATA[<p>Well it&#8217;s been nearly a year since I&#8217;ve done the presentation, so what better time than now to show it off? I did this presentation on Zend Form using Zend Framework 1 at <a title="Milwaukee PHP Users Group" href="http://www.mkepug.org">mkepug</a>.</p>
<p>Download my slides: <a href="https://ericlightbody.com/wp-content/uploads/2024/03/Zend_Form.pdf">Zend_Form</a></p>
<p>Also, awesome new thing I learned! If you own a Mac, and want to present with it. ALWAYS bring your display dongle.</p>
]]></content>
		
					<link rel="replies" type="text/html" href="https://ericlightbody.com/2013/03/20/zend-form-presentation-with-zf1/#comments" thr:count="0" />
			<link rel="replies" type="application/atom+xml" href="https://ericlightbody.com/2013/03/20/zend-form-presentation-with-zf1/feed/atom/" thr:count="0" />
			<thr:total>0</thr:total>
			</entry>
		<entry>
		<author>
			<name>elightbo</name>
							<uri>http://192.168.50.105:8002</uri>
						</author>

		<title type="html"><![CDATA[Textmate to vim &#8211; Part one]]></title>
		<link rel="alternate" type="text/html" href="https://ericlightbody.com/2011/05/24/switching-from-textmate-to-vim/" />

		<id>http://www.ericlightbody.com/?p=456</id>
		<updated>2024-04-19T15:05:58Z</updated>
		<published>2011-05-25T02:16:04Z</published>
		<category scheme="https://ericlightbody.com" term="productivity" /><category scheme="https://ericlightbody.com" term="osx" />
		<summary type="html"><![CDATA[I, like many others, switched to the Mac largely due to Textmate; an excellent text editor that completely crushed the editor I was using at the time, Dreamweaver. Unfortunately, Textmate&#8217;s development has all but stopped. That and an excellent post by Jonathan Snook on journeying into vim helped push me to try it out. Transitioning [&#8230;]]]></summary>

					<content type="html" xml:base="https://ericlightbody.com/2011/05/24/switching-from-textmate-to-vim/"><![CDATA[<p>I, like many others, switched to the Mac largely due to Textmate; an excellent text editor that completely crushed the editor I was using at the time, Dreamweaver. Unfortunately,<br />
Textmate&#8217;s development has all but stopped. That and an excellent post by Jonathan Snook on <a href="http://snook.ca/archives/other/word-of-vim">journeying into vim</a> helped push me to try it out.<span id="more-456"></span></p>
<p>Transitioning to any new tool is tough. The transition from Textmate to vim was especially tough for me because I love Textmate, and vim is completely different from any other<br />
editor I&#8217;ve used. I wouldn&#8217;t be writing this, though, if I didn&#8217;t feel like it was worth the transition.</p>
<p>I&#8217;m not going to write too much on vim movement and editing so much, because it has been done so well already by many others, including <a href="http://ontwik.com/tools/vim-from-novice-to-professional-by-derek-wyatt-p1/">Derek Wyatt</a>. I&#8217;d rather focus talking about how to duplicate the features that make Textmate so popular, and how you can make them happen in vim. I hope to make this part one of a series as I learn more.</p>
<h4>Command-T</h4>
<p>The very first feature I was looking to replace was Textmate&#8217;s Command-T feature, which allows you to type in part (or all) of a file-name to open. It&#8217;s an extremely slick feature<br />
that allows you to open a file very quickly without navigating to it in your directory tree.</p>
<p><a href="http://www.ericlightbody.com/wp-content/uploads/2011/05/Textmate.png"><img fetchpriority="high" decoding="async" class="size-full wp-image-463 alignnone img-border" title="Textmate" src="http://www.ericlightbody.com/wp-content/uploads/2011/05/Textmate.png" alt="" width="577" height="304" /></a></p>
<p>I was using vim&#8217;s <a href="&quot;http://www.vim.org/scripts/script.php?script_id=3025">command-t plugin</a>, which does a great job of bringing up files, but I then discovered<br />
peep-code&#8217;s awesome <a href="http://peepcode.com/products/peepopen">peep-open</a>, which has a fuzzy search and extremely relevant results. It&#8217;s almost as if they brought Quicksilver to your text editor! The beautiful thing about it compared to Textmate&#8217;s built-in results are that the path is included in your results, allowing you to dial in your results extremely fast. The full instructions are on their website.</p>
<p><a href="http://www.ericlightbody.com/wp-content/uploads/2011/05/Peep-open.png"><img decoding="async" class="alignnone size-full wp-image-464 img-border" title="Peep-open" src="http://www.ericlightbody.com/wp-content/uploads/2011/05/Peep-open.png" alt="" width="551" height="382" /></a></p>
<p>So, one feature knocked down, many more to go. Future posts will talk about wrapping text, zen coding, the idea of a project, and more. I&#8217;m hoping to make this a discussion; how<br />
have you begun to replace your editor with vim? What features in Textmate can&#8217;t you live without?</p>
]]></content>
		
					<link rel="replies" type="text/html" href="https://ericlightbody.com/2011/05/24/switching-from-textmate-to-vim/#comments" thr:count="4" />
			<link rel="replies" type="application/atom+xml" href="https://ericlightbody.com/2011/05/24/switching-from-textmate-to-vim/feed/atom/" thr:count="4" />
			<thr:total>4</thr:total>
			</entry>
		<entry>
		<author>
			<name>elightbo</name>
							<uri>http://192.168.50.105:8002</uri>
						</author>

		<title type="html"><![CDATA[Readability 2.0 is a win for humankind]]></title>
		<link rel="alternate" type="text/html" href="https://ericlightbody.com/2011/02/14/readability-2-0-is-a-win-for-humankind/" />

		<id>http://www.ericlightbody.com/?p=443</id>
		<updated>2024-04-19T15:05:59Z</updated>
		<published>2011-02-14T18:44:22Z</published>
		<category scheme="https://ericlightbody.com" term="productivity" />
		<summary type="html"><![CDATA[I’ve been a bit behind on the the internets lately; apparently there is a new readability 2.0 out. With 2.0, they have introduced browser plugins, some various new features, mobile apps and, most importantly, a new pay model. With this model, users pay a $5 monthly fee and publishers / content creators are receiving  70% [&#8230;]]]></summary>

					<content type="html" xml:base="https://ericlightbody.com/2011/02/14/readability-2-0-is-a-win-for-humankind/"><![CDATA[<p><!-- p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Helvetica} p.p2 {margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Helvetica; min-height: 14.0px} span.s1 {letter-spacing: 0.0px} --><a href="http://www.ericlightbody.com/wp-content/uploads/2011/02/couch.jpg"><img decoding="async" class="alignleft size-full wp-image-446 img-border" title="Readability Logo" src="http://www.ericlightbody.com/wp-content/uploads/2011/02/couch.jpg" alt="Readability Logo" width="48" height="48" /></a>I’ve been a bit behind on the the internets lately; apparently there is a new <a href="https://www.readability.com/">readability 2.0 out</a>. With 2.0, they have introduced <a href="https://www.readability.com/addons/">browser plugins</a>, some <a href="https://www.readability.com/learn-more/">various new features</a>, mobile apps and, most importantly, a new pay model. With this model, users pay a $5 monthly fee and publishers / content creators are receiving  70% of the money that readability receives from their users.<span id="more-443"></span></p>
<p>I have been using their bookmarklet for quite some time to make web pages easier to read. Typically I use it to turn off the 500 million annoying ads on various sites, or sometimes just to make a poorly designed site easier to read.  My initial thought when I found about readability 2.0 admittedly was “Why in the world would I pay for something when I already have it? The internet is free!” But, that thinking is very old school.</p>
<p>In my ideal world, I would have the opportunity to pay for television completely ad-free. There are many reasons for this; perhaps I’ll talk more about it in a future post.  I know there is the apple tv, vudu, amazon video, etc. etc. I use these services quite extensively to purchase shows, but what about things like televised sports, news broadcasts, etc.?</p>
<p>I would love to see an internet that follows that same model. Authors should have the opportunity to make money writing quality content. Our current model has moved heavily towards quick posts to grab people’s attention and linking the snot out of content; image galleries being one example. I thoroughly enjoy when an author puts a lot of thought and time into an article; it’s a huge reason I follow <a href="http://perishablepress.com/">perishable press’s blog</a>, for example.</p>
<p>Part of my excitement of this ad-free internet with more in-depth writing probably has something to do with my recent reading of <a href="http://www.amazon.com/Fahrenheit-451-Ray-Bradbury/dp/0345342968">Fahrenheit 451</a>. The author depicts a future where there are no books. It came to this point in the story by writers shortening things down, abridging them, and making them as easy to digest as possible. It was a very thought-provoking book, and honestly it was quite scary to see the similarities of our current society with the society depicted in this book.</p>
<p>So here is my plug. I am going to put my money where my mouth is and pay for this service. Sure, I could get it for free. However, If I can help in any way possible to keep away distracting ads and help to bring quality content to the internet, then I’m all for it. Maybe readability is the start of something big, and I definitely want to be a part of it.</p>
]]></content>
		
					<link rel="replies" type="text/html" href="https://ericlightbody.com/2011/02/14/readability-2-0-is-a-win-for-humankind/#comments" thr:count="4" />
			<link rel="replies" type="application/atom+xml" href="https://ericlightbody.com/2011/02/14/readability-2-0-is-a-win-for-humankind/feed/atom/" thr:count="4" />
			<thr:total>4</thr:total>
			</entry>
		<entry>
		<author>
			<name>elightbo</name>
							<uri>http://192.168.50.105:8002</uri>
						</author>

		<title type="html"><![CDATA[2011 Goals]]></title>
		<link rel="alternate" type="text/html" href="https://ericlightbody.com/2011/01/19/2011-goals/" />

		<id>http://www.ericlightbody.com/?p=418</id>
		<updated>2024-04-19T15:05:59Z</updated>
		<published>2011-01-20T01:55:59Z</published>
		<category scheme="https://ericlightbody.com" term="Uncategorized" /><category scheme="https://ericlightbody.com" term="goals" /><category scheme="https://ericlightbody.com" term="marathon" /><category scheme="https://ericlightbody.com" term="personal" />
		<summary type="html"><![CDATA[I usually set goals for myself at the beginning of the year, but they get lost in my brain or whatever non-official place I decide to put them in. I think by actually writing these down and making them public there is a much higher chance of me actually accomplishing them. Train hardcore for the [&#8230;]]]></summary>

					<content type="html" xml:base="https://ericlightbody.com/2011/01/19/2011-goals/"><![CDATA[<p>I usually set goals for myself at the beginning of the year, but they get lost in my brain or whatever non-official place I decide to put them in. I think by actually writing these down and making them public there is a much higher chance of me actually accomplishing them.<span id="more-418"></span></p>
<ol>
<li><strong>Train hardcore for the Boston Marathon.</strong><br />
In 2010 I <a href="http://www.dailymile.com/people/elightbo/entries/1813325">completed my first marathon</a> which was great, and I definitely caught the bug. The plan is to hit up the cellcom maraton once again, and use it to gauge my future training for Boston.</li>
<li><strong>Read at least two books a month and review.</strong><br />
This goal is a bit easier through audiobooks. So much good happens filling my brian with material from books rather than the TV. I don&#8217;t plan on reviewing everything I read, but some reviews would be quite nice.</li>
<li><strong>Switch to the dvorak keyboard layout</strong><br />
One of my heros, Matt Mullenweg (founding developer of WordPress) <a href="http://ma.tt/2003/08/on-the-dvorak-keyboard-layout/">inspired me to switch to Dvorak</a>.<strong> </strong></li>
<li><strong>Get a tattoo</strong><br />
Enough procrastinating with this one already. Time to make it happen.</li>
<li><strong>Launch litesinteractive.com</strong><br />
litesinteractive.com&#8217;s purpose will be to showcase my web-work  and show potential clients what I&#8217;m made of. <strong></strong></li>
<li><strong>Want less</strong><br />
This is way too vague to be a real goal I suppose, but I definitely struggle with lusting after the latest Apple products, bikes, and tons of other crap I don&#8217;t really need. Thanks to blogs like  <a href="http://zenhabits.net/">zen habits</a> I&#8217;m realizing how much this stuff has been taking over my life.<strong> </strong></li>
<li><strong>Redesign this site</strong><br />
I&#8217;ve talked about it <a href="http://www.ericlightbody.com/2010/presentation-progressive-enhancement-and-lack-of-posts/">before</a>, but this site is showing its age. I&#8217;d like to make it easier on myself for creating content.<strong></strong></li>
<li><strong>Get my wife home full-time with the kids again</strong><br />
This will be done by landing more side projects as income to pay off our student and car loans.</li>
</ol>
<p>I&#8217;ll keep you posted on the progress of my goals throughout the year. What are your goals for the new year?</p>
]]></content>
		
					<link rel="replies" type="text/html" href="https://ericlightbody.com/2011/01/19/2011-goals/#comments" thr:count="7" />
			<link rel="replies" type="application/atom+xml" href="https://ericlightbody.com/2011/01/19/2011-goals/feed/atom/" thr:count="7" />
			<thr:total>7</thr:total>
			</entry>
		<entry>
		<author>
			<name>elightbo</name>
							<uri>http://192.168.50.105:8002</uri>
						</author>

		<title type="html"><![CDATA[Presentation, progressive enhancement, and lack of posts]]></title>
		<link rel="alternate" type="text/html" href="https://ericlightbody.com/2010/11/04/presentation-progressive-enhancement-and-lack-of-posts/" />

		<id>http://www.ericlightbody.com/?p=398</id>
		<updated>2024-04-19T15:05:59Z</updated>
		<published>2010-11-05T02:39:52Z</published>
		<category scheme="https://ericlightbody.com" term="Uncategorized" /><category scheme="https://ericlightbody.com" term="css3" /><category scheme="https://ericlightbody.com" term="html5" /><category scheme="https://ericlightbody.com" term="wordpress" />
		<summary type="html"><![CDATA[Well, it looks like I haven&#8217;t written since April 17th; completely unacceptable. I wanted to post some slides of my recent presentation, and get in writing what I would like to do with this blog in the near future. First, the presentation. I talked about progressive enhancement to the awesome cwcw group. Alright, confession time; [&#8230;]]]></summary>

					<content type="html" xml:base="https://ericlightbody.com/2010/11/04/presentation-progressive-enhancement-and-lack-of-posts/"><![CDATA[<p>Well, it looks like I haven&#8217;t written since April 17th; completely unacceptable. I wanted to post some slides of my recent presentation, and get in writing what I would like to do with this blog in the near future.<span id="more-398"></span></p>
<p>First, the presentation. I talked about progressive enhancement to the awesome <a href="http://www.uwec.edu/cwcw/">cwcw group</a>. Alright, confession time; this is the first presentation I&#8217;ve done professionally ever. I think the last time I did anything like this was in college 7ish years ago. I was confident going into it, but got pretty nervous talking in front of people. Oh well, I think the message was clear enough in spite of my nervousness.  The slides may not be all that useful by themselves, but if there is interest, I can write more about what I talked on.  For now, if you are intersted in it, please <a href="http://ericlightbody.com/wp-content/uploads/2010/11/progressiveenhancement-101104204651-phpapp01.pdf">download my slides</a> and check out these links that I used for references:</p>
<ul>
<li><a href="http://www.stuffandnonsense.co.uk/blog/about/what_does_browser_testing_mean_today/">What does browser testing mean today?</a> &#8211; The definitive progressive enhancement article, in my opinion. This is what got me into the idea in the first place.</li>
<li><a href="http://www.alistapart.com/articles/understandingprogressiveenhancement/">Understanding Progressive Enhancement</a> &#8211; Great A List Apart article introducing the concept.</li>
<li><a href="http://perishablepress.com/press/2010/01/11/css3-progressive-enhancement-smart-design/">CSS3 + Progressive Enhancement = Smart Design</a> &#8211; One of my favorite blogs; Jeff  Starrt goes into detail why progressive enhancement rocks and how to do it.</li>
<li><a href="http://www.alistapart.com/articles/taking-advantage-of-html5-and-css3-with-modernizr/">Taking Advantage of HTML5 and CSS3 with Modernizr</a> &#8211; Another excellent A List Apart article talking about an amazing tool, modernizr.</li>
</ul>
<h4>Hopes for a better blog</h4>
<p>
When I first designed this blog, I was brand new to WordPress, and brand new to blogging in general.  I am happy with how it turned out, but I&#8217;ve realized that I&#8217;ve made it a bit too difficult to keep up with it. I enjoy writing, but don&#8217;t do it very much because I feel like every post has to be very involved; a tutorial, list post, etc. I&#8217;ve learned a lot since then, and want to incorporate WordPress post types so that I can do shorter posts; and do so more frequently.  It&#8217;ll be rocking HTML5 and CSS3, and it would be a great excuse to play around with media queries, too.  TMI, I&#8217;m sure, but I am excited to start making new things happen.</p>
]]></content>
		
					<link rel="replies" type="text/html" href="https://ericlightbody.com/2010/11/04/presentation-progressive-enhancement-and-lack-of-posts/#comments" thr:count="2" />
			<link rel="replies" type="application/atom+xml" href="https://ericlightbody.com/2010/11/04/presentation-progressive-enhancement-and-lack-of-posts/feed/atom/" thr:count="2" />
			<thr:total>2</thr:total>
			</entry>
		<entry>
		<author>
			<name>elightbo</name>
							<uri>http://192.168.50.105:8002</uri>
						</author>

		<title type="html"><![CDATA[Controlling where the reply goes in your WordPress theme]]></title>
		<link rel="alternate" type="text/html" href="https://ericlightbody.com/2010/04/17/controlling-where-the-reply-goes-in-your-wordpress-theme/" />

		<id>http://www.ericlightbody.com/?p=377</id>
		<updated>2024-04-19T15:05:59Z</updated>
		<published>2010-04-18T01:35:29Z</published>
		<category scheme="https://ericlightbody.com" term="wordpress" /><category scheme="https://ericlightbody.com" term="template" />
		<summary type="html"><![CDATA[Here is another nice quick tip for you WordPress fans. I found through some research that it is quite easy to tell WordPress where your comments reply section should go. If you take at one of the comments on my site and hit reply, your reply falls below the comment border like this: I really [&#8230;]]]></summary>

					<content type="html" xml:base="https://ericlightbody.com/2010/04/17/controlling-where-the-reply-goes-in-your-wordpress-theme/"><![CDATA[<p>Here is another nice quick tip for you WordPress fans.  I found through some research that it is quite easy to tell WordPress where your comments reply section should go.  If you take at one of the comments on my site and hit reply, your reply falls below the comment border like this:<span id="more-377"></span><br />
<img loading="lazy" decoding="async" class="img-border" src="http://www.ericlightbody.com/wp-content/uploads/2010/04/ericlightbodydotcom-comments-reply.jpg" border="0" alt="ericlightbodydotcom comments reply.jpg" width="600" height="643" /><br />
I really don&#8217;t care for the separation, and wanted something more like Chris does over at <a href="http://www.css-tricks.com">css-tricks.com</a><br />
<img loading="lazy" decoding="async" class="img-border" src="http://www.ericlightbody.com/wp-content/uploads/2010/04/css-tricksdotcom-comments-reply.jpg" border="0" alt="css-tricksdotcom comments reply.jpg" width="505" height="636" /><br />
It turns out that this is actually quite easy, but took me some time to find out.</p>
<p>If you have a blog that is supporting comment replies, then in all likelihood you&#8217;ll see the function comment_reply_link in your functions.php file.  In my case, I use Ian Stewart&#8217;s awesome <a href="http://themeshaper.com/wordpress-theme-comments-template-tutorial/">comments template</a> and all of that is already taken care of for me when I create new WordPress themes.  In the <a href="http://codex.wordpress.org/Template_Tags/comment_reply_link">WordPress documentation for the function</a>, they mention the add_below parameter.  That&#8217;s exactly what we need.  Simply put the id of the html element you would like it to fall after.  WordPress tacks on the post id # so that the reply form falls under the correct comment.  In my case, I have one of my comments wrapped like:</p>
<pre class="lang:html">
<div id="div-comment-16" class="comment-content"></div>
</pre>
<p>So, my comment_reply_link looks something like this:</p>
<pre class="lang:php">
if ($args['type'] == 'all' || get_comment_type() == 'comment') {
	comment_reply_link(
		array_merge(
			$args, array(
			'reply_text' => __('Reply', 'shape'),
			'login_text' => __('Log in to reply.', 'shape'),
			'depth'      => $depth,
			'before'     => '<div class="comment-reply-link">"',
			'after'      => '</div>',
			'add_below'  => 'div-comment',
		)));
}
</pre>
]]></content>
		
					<link rel="replies" type="text/html" href="https://ericlightbody.com/2010/04/17/controlling-where-the-reply-goes-in-your-wordpress-theme/#comments" thr:count="0" />
			<link rel="replies" type="application/atom+xml" href="https://ericlightbody.com/2010/04/17/controlling-where-the-reply-goes-in-your-wordpress-theme/feed/atom/" thr:count="0" />
			<thr:total>0</thr:total>
			</entry>
	</feed>
