<?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/" version="2.0">

<channel>
	<title>Levi Jackson</title>
	
	<link>http://www.levijackson.net</link>
	<description>My tagline</description>
	<lastBuildDate>Sun, 22 Apr 2012 16:10:40 +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/levijackson/tyZh" /><feedburner:info xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" uri="levijackson/tyzh" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><feedburner:emailServiceId xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">levijackson/tyZh</feedburner:emailServiceId><feedburner:feedburnerHostname xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://feedburner.google.com</feedburner:feedburnerHostname><item>
		<title>Drupal 7 uploaded image disappears each day</title>
		<link>http://www.levijackson.net/drupal-7-uploaded-image-disappears-each-day/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=drupal-7-uploaded-image-disappears-each-day</link>
		<comments>http://www.levijackson.net/drupal-7-uploaded-image-disappears-each-day/#comments</comments>
		<pubDate>Sun, 22 Apr 2012 16:07:42 +0000</pubDate>
		<dc:creator>Levi Jackson</dc:creator>
				<category><![CDATA[Web Development]]></category>
		<category><![CDATA[Drupal]]></category>

		<guid isPermaLink="false">http://www.levijackson.net/?p=310</guid>
		<description><![CDATA[I was recently doing some development in Drupal 7 where I created a custom block that had an image upload field. The image was processed and it was desaturated, brightened and saved. A problem that came up was that every morning when I came in to work on the site, the image was gone. The [...]]]></description>
			<content:encoded><![CDATA[<p>I was recently doing some development in Drupal 7 where I created a custom block that had an image upload field. The image was processed and it was desaturated, brightened and saved. A problem that came up was that every morning when I came in to work on the site, the image was gone. The actual file was missing from the server.</p>
<p>I figured it must be happening when Drupal ran a cron job for it to happen so regularly. After a bit of reading on the Drupal forums as well as Stackoverflow I found <a href="http://api.drupal.org/api/drupal/includes!file.inc/group/file/7" target="_blank">this page that describes the file object in depth</a>. I found out that images I had uploaded only had a status flag of 0, which means the file is temporary and removed when the cron is run. I was able to fix the issue by adding this bit of code in to update the status of the image file to 1.</p>
<pre class="brush: php; title: ; notranslate">
$imageFile = file_load($edit['block_image_nam']);
$imageFile-&gt;status = 1; // set to 1 so that it does not get deleted in cleanup
file_save($imageFile);</pre>
<p>A pretty simple fix to an annoying problem. Good to know Drupal does some file cleanup and hope it comes in handy for someone else!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.levijackson.net/drupal-7-uploaded-image-disappears-each-day/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>“A design isn’t finished when there is nothing more to add, but when there is nothing left to take away.”</title>
		<link>http://www.levijackson.net/a-design-isnt-finished-when-there-is-nothing-more-to-add-but-when-there-is-nothing-left-to-take-away/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=a-design-isnt-finished-when-there-is-nothing-more-to-add-but-when-there-is-nothing-left-to-take-away</link>
		<comments>http://www.levijackson.net/a-design-isnt-finished-when-there-is-nothing-more-to-add-but-when-there-is-nothing-left-to-take-away/#comments</comments>
		<pubDate>Thu, 19 Apr 2012 02:30:35 +0000</pubDate>
		<dc:creator>Levi Jackson</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.levijackson.net/?p=292</guid>
		<description><![CDATA[“A design isn’t finished when there is nothing more to add, but when there is nothing left to take away.&#8221; I read that quote once a few months back and it stuck with me.  It is such an interesting thing to say and it just makes my mind start moving at what it really means. [...]]]></description>
			<content:encoded><![CDATA[<blockquote><p>“A design isn’t finished when there is nothing more to add, but when there is nothing left to take away.&#8221;</p></blockquote>
<p>I read that quote once a few months back and it stuck with me.  It is such an interesting thing to say and it just makes my mind start moving at what it really means. When you starting out doing anything, designing a site, programming a class, or even building a house, you have this grand vision of how it will work.</p>
<p>So you throw all of your ideas together and make a plan to build the best and most useful application on the internet. The quote is a reminder to step back from <em>your</em> goals every so often so that you can take a hard look and decide if something is <em>really</em> useful. That initial excitement and feature list can blind you to the fact that most users will not use or care about 20% of the functionality. Removing that 20% will increase usability by decreasing the learning curve for the users.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.levijackson.net/a-design-isnt-finished-when-there-is-nothing-more-to-add-but-when-there-is-nothing-left-to-take-away/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Hick’s Law</title>
		<link>http://www.levijackson.net/hicks-law/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=hicks-law</link>
		<comments>http://www.levijackson.net/hicks-law/#comments</comments>
		<pubDate>Sat, 10 Mar 2012 01:42:48 +0000</pubDate>
		<dc:creator>Levi Jackson</dc:creator>
				<category><![CDATA[Laws]]></category>

		<guid isPermaLink="false">http://www.levijackson.net/?p=288</guid>
		<description><![CDATA[On the web, Hick&#8217;s law is usually used to describe the usability/user experience of an app. The more choices a user has, the longer it will take to make a decision, so it is important to keep things simple to convert more visitors into users.  Hick&#8217;s law can be applied and considered all around us [...]]]></description>
			<content:encoded><![CDATA[<p>On the web, <a title="Hick's Law on Wikipedia" href="http://en.wikipedia.org/wiki/Hick's_law" target="_blank">Hick&#8217;s law</a> is usually used to describe the usability/user experience of an app. The more choices a user has, the longer it will take to make a decision, so it is important to keep things simple to convert more visitors into users.  Hick&#8217;s law can be applied and considered all around us though, it isn&#8217;t just something that applies to the web.</p>
<h3>Whittle down the options</h3>
<p>Given the choice of picking a doctor or dentist most people can get overwhelmed by the sheer number of them (I know I was). It could takes weeks to decide between ratings, services, location, hours, and insurance when considering 100 options. In this situation I have found the best route is to ask your neighbors, friends, and co-workers if they have any recommendations. This helps reduce the number of choices from hundreds down to a more manageable number of 5-10. Researching and picking from this set of 5-10 doctors is far easier and quicker than picking from that group of 100.</p>
<h3>On the web</h3>
<p>Applying the above example to building a web site/app would be to keep the options simple and to the point. It doesn&#8217;t mean make sure you only have xx amount of options, it means make sure the user can find what they need without overloading them with choices. This is most apparent to me with the concept of feature creep when developing. If you allow every feature request from users/clients to make their way into an application, you can very easily wind up with a product that has a confusing interface. If only one user has asked you to to add in calendar functionality you need to consider if the feature is something everyone can benefit from or if it is something the one user would. If it is just that one user then it may not be worth adding the calendar widget into the interface if it cannot be integrated in a seamless manner.</p>
<p>Hick&#8217;s law doesn&#8217;t just apply to buttons and options in a select list. It can also apply to the overall design. The reason Call to Actions work so well is because they are normally just a few options for the user to pick from before a user gets overwhelmed with the site navigation. Although applying Hick&#8217;s law to a site doesn&#8217;t necessarily mean to limit the number of choices overall, it can mean hiding options until a user has picked a path. This helps make sure the user doesn&#8217;t get flustered or inadvertently click on something they should not.</p>
<h3>Final thoughts</h3>
<p>It is always interesting learning about how users interact with a site. For me a light turns on when I read something and then realize I do just that. Since I develop sites for a living I consider myself an advanced web user, I don&#8217;t need a lot of explanation to get a task done. So when I get confused I know it is either because I am over-thinking the situation or because it really just makes no sense. In both cases it can be a good idea to think back to the basics. How is the app going to be used? Will a normal user (a non power user) need all of the options, or did I only include those because I wanted them?</p>
]]></content:encoded>
			<wfw:commentRss>http://www.levijackson.net/hicks-law/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Using CSS3 Pie: border-radius not showing up?</title>
		<link>http://www.levijackson.net/using-css3-pie-border-radius-not-showing-up/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=using-css3-pie-border-radius-not-showing-up</link>
		<comments>http://www.levijackson.net/using-css3-pie-border-radius-not-showing-up/#comments</comments>
		<pubDate>Sat, 03 Mar 2012 02:51:14 +0000</pubDate>
		<dc:creator>Levi Jackson</dc:creator>
				<category><![CDATA[Web Development]]></category>

		<guid isPermaLink="false">http://www.levijackson.net/?p=296</guid>
		<description><![CDATA[I&#8217;ve been doing a bit with the CSS3 property border-radius and I have been finding myself wanting a more manageable method of using rounded corners in IE that could also scale well. So for me the options were to use an HTML Component (HTC) file, or to use static images. In my head I visualized the [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been doing a bit with the CSS3 property border-radius and I have been finding myself wanting a more manageable method of using rounded corners in IE that could also scale well. So for me the options were to use an <a href="http://msdn.microsoft.com/en-us/library/ms531018(v=vs.85).aspx" target="_blank">HTML Component (HTC)</a> file, or to use static images. In my head I visualized the pros and cons of the two methods. I weighed the pros and cons of both of them:</p>
<h3>Using HTC</h3>
<p><strong>Pros</strong>: can easily change the size of the element<br />
<strong>Cons</strong>: sometimes buggy to work with, even if it works for you it doesn&#8217;t mean it works everywhere</p>
<h3>Using Images</h3>
<p><strong>Pros</strong>: works everywhere<br />
<strong>Cons</strong>: doesn&#8217;t scale</p>
<p>After debating about it I came to the conclusion that if I can get the HTC file to work properly it may leave a small segment of users without the border-radius. To me that wasn&#8217;t a big issue because the border-radius is more aesthetic than functional so I accepted the risk. I did some research and I picked out <a href="http://css3pie.com/" target="_blank">CSS3 Pie</a> to use because it had the most documentation and support. It was pretty easy to get up and running with it, which was a quick ego booster. Unfortunately I did hit some snags early on. The bit of advice I kept seeing was that if it doesn&#8217;t show up at all, or the border is skewed a bit, to make sure the element has position:relative; and z-index:0; on the element. This most likely keeps the absolutely positioned borders inside of the element and the z-index keeps the borders &#8220;above&#8221; the old 90 degree borders.</p>
<p>I was able to get the borders to work quite easily on half of my elements and then I was stuck. I spent an hour or so researching problems and possible solutions until it hit me. I was using jQuery to add a special class for just IE and my CSS classes were utilizing this class. I was a victim of poor timing. CSS3 Pie was processing and rendering the border-radius before jQuery had a chance to add the class. All I had to do was to modify my CSS so that it didn&#8217;t utilize the class. The other option of course would have been to use IE conditionals to include a different stylesheet. I normally do not do that to keep down the numbers of requests per page load.</p>
<h3>The summary</h3>
<p>Be mindful of the way you are referencing CSS3 Pie in your CSS file. Make sure none of the classes used to target the element are added after the page has loaded by Javascript. HTC files are processed inline before the Javascript is.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.levijackson.net/using-css3-pie-border-radius-not-showing-up/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Blog</title>
		<link>http://www.levijackson.net/blog/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=blog</link>
		<comments>http://www.levijackson.net/blog/#comments</comments>
		<pubDate>Mon, 13 Feb 2012 02:29:03 +0000</pubDate>
		<dc:creator>Levi Jackson</dc:creator>
		
		<guid isPermaLink="false">http://www.levijackson.net/?page_id=252</guid>
		<description><![CDATA[Blog placeholde rpage]]></description>
			<content:encoded><![CDATA[<p>Blog placeholde rpage</p>
]]></content:encoded>
			<wfw:commentRss>http://www.levijackson.net/blog/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SpamAlytics – A Look Into Spam On My Site</title>
		<link>http://www.levijackson.net/projects/spamalytics-a-look-into-spam-on-my-site/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=spamalytics-a-look-into-spam-on-my-site</link>
		<comments>http://www.levijackson.net/projects/spamalytics-a-look-into-spam-on-my-site/#comments</comments>
		<pubDate>Sun, 12 Feb 2012 02:42:24 +0000</pubDate>
		<dc:creator>Levi Jackson</dc:creator>
		
		<guid isPermaLink="false">http://www.levijackson.net/?post_type=project&amp;p=42</guid>
		<description><![CDATA[This project stemmed from my curiousity into who was spamming my site. I would get between 10-30 spam messages a day coming from both my contact form as well as what I assumed to be a the result of my e-mail being scraped.  I have been collecting data on the spammers so that I am [...]]]></description>
			<content:encoded><![CDATA[<p>This project stemmed from my curiousity into who was spamming my site. I would get between 10-30 spam messages a day coming from both my contact form as well as what I assumed to be a the result of my e-mail being scraped.  I have been collecting data on the spammers so that I am able to learn more about them. For instance, about 80% of the spam coming from the site contact forms is coming from just two pages. Using the data I was able to setup some non-captcha spam filters that keep the spam from ever getting to my inbox by using heuristics to determine some non-human qualities. Overall it was a fun project that got me working with Google Interactive Charts, Smart Template Engine, Memcache and Google Maps Version 3.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.levijackson.net/projects/spamalytics-a-look-into-spam-on-my-site/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Contact form 1</title>
		<link>http://www.levijackson.net/wpcf7_contact_form/contact-form-1/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=contact-form-1</link>
		<comments>http://www.levijackson.net/wpcf7_contact_form/contact-form-1/#comments</comments>
		<pubDate>Sat, 11 Feb 2012 03:08:11 +0000</pubDate>
		<dc:creator>Levi Jackson</dc:creator>
		
		<guid isPermaLink="false">http://www.levijackson.net/?wpcf7_contact_form=contact-form-1</guid>
		<description />
			<content:encoded />
			<wfw:commentRss>http://www.levijackson.net/wpcf7_contact_form/contact-form-1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Thank You</title>
		<link>http://www.levijackson.net/thank-you/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=thank-you</link>
		<comments>http://www.levijackson.net/thank-you/#comments</comments>
		<pubDate>Sat, 11 Feb 2012 03:03:21 +0000</pubDate>
		<dc:creator>Levi Jackson</dc:creator>
		
		<guid isPermaLink="false">http://www.levijackson.net/?page_id=80</guid>
		<description><![CDATA[Thank you for contacting me, I will get back to you as soon as possible.]]></description>
			<content:encoded><![CDATA[<p>Thank you for contacting me, I will get back to you as soon as possible.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.levijackson.net/thank-you/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Contact Me</title>
		<link>http://www.levijackson.net/contact-me/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=contact-me</link>
		<comments>http://www.levijackson.net/contact-me/#comments</comments>
		<pubDate>Tue, 07 Feb 2012 03:02:17 +0000</pubDate>
		<dc:creator>Levi Jackson</dc:creator>
		
		<guid isPermaLink="false">http://www.levijackson.net/?page_id=31</guid>
		<description><![CDATA[There are a few ways to get in touch with me. You can email me directly at levi@levijackson.net, find me on Twitter, LinkedIn, or Facebook, or just fill out the form below.]]></description>
			<content:encoded><![CDATA[<p>There are a few ways to get in touch with me. You can email me directly at levi@levijackson.net, find me on <a href="http://twitter.com/levijackson" target="_blank">Twitter</a>, <a href="http://www.linkedin.com/in/levijackson" target="_blank">LinkedIn</a>, or <a href="http://www.facebook.com/profile.php?id=68902044" target="_blank">Facebook</a>, or just fill out the form below.</p>
[contact-form-7]
]]></content:encoded>
			<wfw:commentRss>http://www.levijackson.net/contact-me/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>About Me</title>
		<link>http://www.levijackson.net/about-me/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=about-me</link>
		<comments>http://www.levijackson.net/about-me/#comments</comments>
		<pubDate>Tue, 07 Feb 2012 03:00:48 +0000</pubDate>
		<dc:creator>Levi Jackson</dc:creator>
		
		<guid isPermaLink="false">http://www.levijackson.net/?page_id=28</guid>
		<description><![CDATA[I grew up in Torrington Connecticut, a town known primarily for the production of ball bearings. Having no interest in that, I went off to Champlain College up in Burlington, Vermont to earn my Bachelors of Science in Web Site Development and Management. After freelancing for several years while going to school I settled into [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.levijackson.net/wp-content/uploads/2012/02/levi-jackson.png" style="float:left;margin-right:10px;"><img class="size-full wp-image-280 alignleft" title="levi-jackson" src="http://www.levijackson.net/wp-content/uploads/2012/02/levi-jackson.png" alt="" width="200" height="578" /></a>I grew up in Torrington Connecticut, a town known primarily for the production of ball bearings. Having no interest in that, I went off to Champlain College up in Burlington, Vermont to earn my Bachelors of Science in Web Site Development and Management. After freelancing for several years while going to school I settled into a nice internship/future job with<a href="http://www.unionstreetmedia.com" target="_blank"> Union Street Media</a>. Eventually I started making my way south returning first to Torrington and within a year moving to Flushing, New York to pursue a career with <a href="http://www.curran-connors.com" target="_blank">Curran &amp; Connors</a>. That is where you now find me, creating some stellar web sites for things ranging from annual reports to content managed web sites.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.levijackson.net/about-me/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

