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

<channel>
	<title>Ryan on the Internet &#187; Dorky Code</title>
	<atom:link href="http://ryanimel.com/category/dorky-code/feed/" rel="self" type="application/rss+xml" />
	<link>http://ryanimel.com</link>
	<description>Entrepreneur and web developer</description>
	<lastBuildDate>Wed, 11 Jan 2012 17:03:44 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>A bird&#8217;s eye view of your forum with Dashboard Forum Activity</title>
		<link>http://ryanimel.com/2011/dashboard-forum-activity-wordpress-plugin/</link>
		<comments>http://ryanimel.com/2011/dashboard-forum-activity-wordpress-plugin/#comments</comments>
		<pubDate>Thu, 30 Jun 2011 17:28:11 +0000</pubDate>
		<dc:creator>Ryan Imel</dc:creator>
				<category><![CDATA[Dorky Code]]></category>

		<guid isPermaLink="false">http://ryanimelblog.aspiringindie.com/?p=1221</guid>
		<description><![CDATA[I enjoy comments. They are easily the number one metric I use to determine whether a day&#8217;s worth of blogging was well spent. The way I check for comment activity is via the Recent Comments Dashboard widget. It puts comments &#8230; <a href="http://ryanimel.com/2011/dashboard-forum-activity-wordpress-plugin/">Continue reading <span class="meta-nav">&#8594;</span></a><div class="addthis_toolbox addthis_default_style" addthis:url='http://ryanimel.com/2011/dashboard-forum-activity-wordpress-plugin/' addthis:title='A bird&#8217;s eye view of your forum with Dashboard Forum Activity' ><a class="addthis_button_facebook"></a><a class="addthis_button_twitter"></a></div>]]></description>
			<content:encoded><![CDATA[<p>I enjoy comments. They are easily the number one metric I use to determine whether a day&#8217;s worth of blogging was well spent. The way I check for comment activity is via the Recent Comments Dashboard widget. It puts comments in one spot, on my Dashboard (where I usually am) and does it in a nice simple way.</p>
<p>Since I&#8217;ve started using the new bbPress plugin more, I find myself wanting the same thing there. I want to quickly see new topics and replies, the same as I can via the Recent Comments widget. So, I created the Dashboard Forum Activity plugin to do just that.</p>
<h3>Dashboard Forum Activity</h3>
<p>You can download <a title="Dashboard Forum Activity plugin" href="http://wordpress.org/extend/plugins/dashboard-forum-activity/">Dashboard Forum Activity</a> from the WordPress.org Plugin Directory. The plugin will add a widget to your Dashboard (only if you are an admin, or more specifically have the manage_options capability) showing newly created topics and replies on your bbPress-powered forum.</p>
<p>From the widget you can jump in and edit any topics or replies, as well as view them on the front end of the site. (Almost the) Same as the Recent Comments widget.</p>
<p>I have further plans for this plugin, but wanted to start simple and get it out. I&#8217;ve started using it today as well, and already enjoy it. I hope you will too!</p>
<div class="addthis_toolbox addthis_default_style" addthis:url='http://ryanimel.com/2011/dashboard-forum-activity-wordpress-plugin/' addthis:title='A bird&#8217;s eye view of your forum with Dashboard Forum Activity' ><a class="addthis_button_facebook"></a><a class="addthis_button_twitter"></a></div>]]></content:encoded>
			<wfw:commentRss>http://ryanimel.com/2011/dashboard-forum-activity-wordpress-plugin/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Admin Bar Hover Intent WordPress plugin</title>
		<link>http://ryanimel.com/2011/admin-bar-hover-intent-wordpress-plugin/</link>
		<comments>http://ryanimel.com/2011/admin-bar-hover-intent-wordpress-plugin/#comments</comments>
		<pubDate>Sun, 01 May 2011 09:20:17 +0000</pubDate>
		<dc:creator>Ryan Imel</dc:creator>
				<category><![CDATA[Dorky Code]]></category>

		<guid isPermaLink="false">http://ryanimelblog.aspiringindie.com/?p=1214</guid>
		<description><![CDATA[I&#8217;m one of the folks that doesn&#8217;t at all mind the WordPress Admin Bar, added to WordPress in version 3.1. Using it as much as I do, though, it bugs me just how sensitive the Admin Bar dropdowns are. I &#8230; <a href="http://ryanimel.com/2011/admin-bar-hover-intent-wordpress-plugin/">Continue reading <span class="meta-nav">&#8594;</span></a><div class="addthis_toolbox addthis_default_style" addthis:url='http://ryanimel.com/2011/admin-bar-hover-intent-wordpress-plugin/' addthis:title='Admin Bar Hover Intent WordPress plugin' ><a class="addthis_button_facebook"></a><a class="addthis_button_twitter"></a></div>]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m one of the folks that doesn&#8217;t at all mind the WordPress Admin Bar, added to WordPress in version 3.1. Using it as much as I do, though, it bugs me just how sensitive the Admin Bar dropdowns are. I was in the process of fixing it for myself, when I figured it would make a nice simple plugin that others might benefit from as well.</p>
<p>This plugin slows down the dropdown so that it only opens up after a moment&#8217;s hesitation on the Admin Bar. It only effects logged in users, so shouldn&#8217;t add any overhead to your site.</p>
<p>You can download the Admin Bar Hover Intent plugin <a title="Admin Bar Hover Intent plugin" href="http://wordpress.org/extend/plugins/admin-bar-hover-intent/">from the WordPress Plugin Directory</a>.</p>
<p>That&#8217;s pretty much it, since this plugin is pretty straightforward. Hope you find it useful!</p>
<div class="addthis_toolbox addthis_default_style" addthis:url='http://ryanimel.com/2011/admin-bar-hover-intent-wordpress-plugin/' addthis:title='Admin Bar Hover Intent WordPress plugin' ><a class="addthis_button_facebook"></a><a class="addthis_button_twitter"></a></div>]]></content:encoded>
			<wfw:commentRss>http://ryanimel.com/2011/admin-bar-hover-intent-wordpress-plugin/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Installing ionCube PHP Loader on Bluehost</title>
		<link>http://ryanimel.com/2009/installing-ioncube-php-loader-on-bluehost/</link>
		<comments>http://ryanimel.com/2009/installing-ioncube-php-loader-on-bluehost/#comments</comments>
		<pubDate>Fri, 09 Jan 2009 12:59:52 +0000</pubDate>
		<dc:creator>Ryan Imel</dc:creator>
				<category><![CDATA[Dorky Code]]></category>
		<category><![CDATA[Bluehost]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://www.ryanimel.com/?p=658</guid>
		<description><![CDATA[I&#8217;m an avid WordPress user (every site I start up and run, and many of my clients&#8217; sites as well) and when installing a new Plugin this morning I ran into a little problem. After about an hour of fiddling &#8230; <a href="http://ryanimel.com/2009/installing-ioncube-php-loader-on-bluehost/">Continue reading <span class="meta-nav">&#8594;</span></a><div class="addthis_toolbox addthis_default_style" addthis:url='http://ryanimel.com/2009/installing-ioncube-php-loader-on-bluehost/' addthis:title='Installing ionCube PHP Loader on Bluehost' ><a class="addthis_button_facebook"></a><a class="addthis_button_twitter"></a></div>]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m an avid WordPress user (every site I start up and run, and many of my clients&#8217; sites as well) and when installing a new Plugin this morning I ran into a little problem. After about an hour of fiddling around on various FAQs and forum topics, I was able to deduce a solution. And rather than dust myself off and walk away, I&#8217;m posting this so that others might have an easier time than I did.</p>
<p><span id="more-658"></span>Now, first a little bit more detail might be necessary. The exact error I ran into was this:</p>
<blockquote><p>Site error: the file (filename) requires the ionCube PHP Loader ioncube_loader_lin_5.2.so to be installed by the site administrator.</p></blockquote>
<p>(If anyone cares, this happened when installing a Plugin called WP-Member to a blog I run called Frontending. More on the relevancy of adding in that Plugin before long <img src='http://ryanimel.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> .)</p>
<p>Nobody likes errors. When I saw this I did what any able minded person of the modern world would do. I Google&#8217;d it. Odds are that you might have discovered this very post by running a search like I did.</p>
<h3>Walking through the solution</h3>
<p>It should be said, although the post title says so, that this solution is only likely to work when you are hosted by Bluehost. As I am, this is how I figured it out.</p>
<p>So what is ionCube? Apparently it&#8217;s a PHP encoder of some sort, that certain applications use in order to run. In my research I was able to see a couple of examples, one where a Joomla plugin was the culprit, in other cases a WordPress Plugin called Fedafi. Basically the host is only set up with the basics of ionCube, and we need to supplement it. </p>
<p>Open up your site in an FTP client and browse to the topmost level. This is the level that lists public_html as a folder. You should see a folder called ioncube. Crack that sucker open and you should see two files (at least), ioncube_loader_lin_ts.so and ioncube_loader_lin.so. You probably won&#8217;t see the ioncube_loader_lin_5.2.so file mentioned in the error message. That makes sense, right?</p>
<p>Run over to <a title="ionCube loaders" href="http://www.ioncube.com/loaders.php">the ionCube site</a> and grab the appropriate zip full of the loader you need. Now, in order to determine which of the files you should download, you&#8217;ll need to know your server&#8217;s OS and architecture. You can find this located in your Bluehost Cpanel along the left sidebar. Mine is running on Linux (OS) and x86_64 (architecture). Find your own and grab the corresponding zip file from the ionCube loaders page.</p>
<p>Unzip and throw the two files with 5.2 at the end into your site&#8217;s ioncube folder, the one we identified a minute ago. Now we should be good, right? Well, almost.</p>
<h3>Traversing php.ini</h3>
<p>Odds are that you&#8217;ve heard of php.ini at one point or another, most likely when editing it (or at times creating it) in order to increase the size of files you can upload to your site. Before stepping into this dunghole of a problem myself, I had only ever modified php.ini in order to do that. Now, it&#8217;s time for a bit more of an understanding of how php.ini works in cooperation with Bluehost&#8217;s Cpanel.</p>
<p>In your Bluehost Cpanel, jump into PHP Config. I usually just run a find/text search on the page to see where it&#8217;s located. You should see three options, like in the image below:</p>
<p> </p>
<div id="attachment_659" class="wp-caption aligncenter" style="width: 499px"><a href="http://www.ryanimel.com/wp-content/uploads/2009/01/picture-2.png"><img class="size-medium wp-image-659" src="http://www.ryanimel.com/wp-content/uploads/2009/01/picture-2-489x500.png" alt="First, pay attention to the first three options regarding the PHP you are running." width="489" height="500" /></a><p class="wp-caption-text">First, pay attention to the first three options regarding the PHP you are running.</p></div>
<p>You can see that, in my case, I&#8217;m now running PHP5 with FastCGI. There is a lot having to do with this decision that I won&#8217;t cover here, but one reason related to the issue at hand is that we want to be able to only have to deal with one instance of php.ini, and not copy it ourselves into every directory that will be using it. That would just be a pain in the ass. (Note that choosing FastCGI is not necessary for this to work, but it makes it a bit less painful, I think.)</p>
<p>Assuming that you don&#8217;t have any major modifications done to your php.ini file, go ahead and hit the &#8220;Install php.ini Master File&#8221; button, after selecting IonCube from the options above it. Keep in mind that if you do have any worthwhile modifications done to php.ini, you can just copy them and paste them into your new php.ini file when it&#8217;s there.</p>
<p>Take a look into your public_html folder. There should now be a php.ini.default file. Kill the file ending so it is just php.ini. Now download it and open it up so that we can make the modification we need to.</p>
<p>Toward the bottom of your php.ini file you should see the references to the basic ionCube loaders. It should look something like this:</p>
<p> </p>
<div id="attachment_660" class="wp-caption aligncenter" style="width: 510px"><a href="http://www.ryanimel.com/wp-content/uploads/2009/01/picture-5.png"><img class="size-medium wp-image-660" src="http://www.ryanimel.com/wp-content/uploads/2009/01/picture-5-500x149.png" alt="Note that the path referencing the ioncube files may be slightly different for you." width="500" height="149" /></a><p class="wp-caption-text">Note that the path referencing the ioncube files may be slightly different for you.</p></div>
<p>At line 118 and 119, we see the references to the two files that were originally in use at our site. But we want to add two more, two references to the two 5.2 files that we added.</p>
<p>The key here is to maintain the nomenclature of line 118, but duplicate it for the two new files. So we&#8217;re going to add two lines that look like this: zend_extension=/home/sitename/ioncube/filename. We&#8217;re also going to add them directly after the [Zend] at line 1123.</p>
<p>Use this image as a reference:</p>
<p> </p>
<div id="attachment_661" class="wp-caption aligncenter" style="width: 510px"><a href="http://www.ryanimel.com/wp-content/uploads/2009/01/picture-6.png"><img class="size-medium wp-image-661" src="http://www.ryanimel.com/wp-content/uploads/2009/01/picture-6-500x181.png" alt="Again, note that the path to the two files you add will need to be adjusted from what's displayed here." width="500" height="181" /></a><p class="wp-caption-text">Again, note that the path to the two files you add will need to be adjusted from what&#039;s displayed here.</p></div>
<p>Once you have those two lines (in the above, the lines added to 1124 and 1125) in your php.ini file, save that puppy.</p>
<p>Given a minute or two for your cache to clear (force a reload if necessary) you should be good to go with whatever problem you&#8217;re facing. In my case, I was immediately able to successfully activate WP-Member. So I&#8217;m a happy camper.</p>
<p>It should be mentioned that I found a good deal of help with this issue at these following sites.</p>
<ul>
<li><a title="WP-Member.com support page" href="http://wp-member.com/interactive-faq/wp-member-error-messages/error-message-site-error-the-file-wp-contentpluginswp-memberwp-member-mainphp-requires-the-ioncube-php-loader-to-be-installed-by-the-site-administrator/#more-630">The FAQ page I started with regarding this error, at WP-Member&#8217;s support site</a></li>
<li><a title="Bluehost support thread" href="http://forum.bluehost.com/showthread.php?t=13509">This thread at the Bluehost forums with a couple of people trying to figure this problem out</a></li>
</ul>
<p>I appreciate their help, and only put this together so that there is one consistent tutorial on the issue. Hope it helps someone!</p>
<div class="addthis_toolbox addthis_default_style" addthis:url='http://ryanimel.com/2009/installing-ioncube-php-loader-on-bluehost/' addthis:title='Installing ionCube PHP Loader on Bluehost' ><a class="addthis_button_facebook"></a><a class="addthis_button_twitter"></a></div>]]></content:encoded>
			<wfw:commentRss>http://ryanimel.com/2009/installing-ioncube-php-loader-on-bluehost/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How I CSS</title>
		<link>http://ryanimel.com/2007/how-i-css/</link>
		<comments>http://ryanimel.com/2007/how-i-css/#comments</comments>
		<pubDate>Sat, 15 Dec 2007 00:14:26 +0000</pubDate>
		<dc:creator>Ryan Imel</dc:creator>
				<category><![CDATA[Dorky Code]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[how i]]></category>

		<guid isPermaLink="false">http://www.ryanimel.com/how-i-css/</guid>
		<description><![CDATA[Cascading style sheets are an essential component of the web. I remember back when they weren&#8217;t, or more accurately back when they weren&#8217;t as popular (about the time they were only being used to set font colors). Let&#8217;s just say &#8230; <a href="http://ryanimel.com/2007/how-i-css/">Continue reading <span class="meta-nav">&#8594;</span></a><div class="addthis_toolbox addthis_default_style" addthis:url='http://ryanimel.com/2007/how-i-css/' addthis:title='How I CSS' ><a class="addthis_button_facebook"></a><a class="addthis_button_twitter"></a></div>]]></description>
			<content:encoded><![CDATA[<p>Cascading style sheets are an essential component of the web. I remember back when they weren&rsquo;t, or more accurately back when they weren&rsquo;t as popular (about the time they were only being used to set font colors). Let&rsquo;s just say I&rsquo;m very happy that the web is moving toward the separation of content, style, and behavior.</p>
<p><span id="more-141"></span></p>
<p><img src='http://www.ryanimel.com/wp-content/uploads/2007/12/css.jpg' alt='CSS on paper' /></p>
<p>Today I would like to talk about style, and some of the ways I go about writing <abbr title="Cascading Style Sheets">CSS</abbr>. There are lots of methods and tips to find out there, but hopefully I can share something unique that might help you in your writing habits.</p>
<p><!--more--></p>
<h3>Importing Stylesheets</h3>
<p>One of the first things I will do in a style sheet is drop in a few imported style sheets, like this:</p>
<p><code><br />
@import url('css/typography.css');<br />
@import url('css/layout.css');<br />
</code></p>
<p>Importing style sheets keeps <abbr title="Cascading Style Sheets">CSS</abbr> trimmed and clean. I also tend to use certain styles over and over again like typography or layout styles. Usually these style sheets can be modified to a small extent to make them usable for a new site design, without having to re-do all of the same code as before.</p>
<h3>Reset.css</h3>
<p>A style sheet to reset styles initially is crucial to have. By not resetting all of the default styles on the page, you are allowing the browser to decide for itself how it should display certain elements. I tend to agree with the great <abbr title="Cascading Style Sheets">CSS</abbr> giant Eric Meyer, who has said:</p>
<blockquote cite="Eric Meyer"><p>
Elements are nothing alone. They act the way they are told&hellip;And I don&rsquo;t want anything acting like anything unless I tell it to.
</p></blockquote>
<p><a href="http://meyerweb.com/eric/thoughts/2007/05/01/reset-reloaded/" rel="met colleague">Meyer&rsquo;s <code>reset.css</code></a> is the best, which is why I use it.</p>
<h3>Ems and Pixels</h3>
<p>If it were up to me everything on the web would be sized in ems. Unfortunately, it isn&rsquo;t always possible to build (what I think of as) a <em>vector</em> web just yet. Right now we&rsquo;re stuck with raster. But while there is an excuse when it comes to sizing elements and their spacing/alignment, there is no excuse for anything but ems for typography.</p>
<p>I start by defining the font size in the body element to 62.5%. This sets the base font size (1em) to 10 pixels, which is pretty easy to scale and keep track of as you go. Then, if I want 12 pixel text, I set the font size to 1.2 ems. You get the picture.</p>
<p>Clean Code</p>
<p>When it comes to the literal act of laying out code things can get pretty messy fast. I&rsquo;ve gone back and forth about the best way to do this. I used to write in this common way:</p>
<p><code><br />
div.style {<br />
&nbsp;&nbsp;font-size: 1.2em;<br />
&nbsp;&nbsp;line-height: 1.8em;<br />
&nbsp;&nbsp;margin-bottom: 1.8em;<br />
}<br />
</code></p>
<p>And that works really well. Recently, though, I&rsquo;ve been doing it this way:</p>
<p><code><br />
div.style { font-size: 1.2em; line-height: 1.8em; margin-bottom: 1.8em; }<br />
</code></p>
<p>Using this method, I find I don&rsquo;t have to scroll nearly as much, and to my eyes it looks very clean.</p>
<h3>Commenting</h3>
<p>Commenting the styles as I write them is integral and serves two distinct purposes: organizing code into appropriate sections and describing styles/decisions/hacks/anything for the purpose of being able to understand it all later.</p>
<p>I use comments to break up my code pretty simply, usually something like:</p>
<p><code><br />
/* Header */</p>
<p>/* Sidebars */</p>
<p>/* Footer */<br />
</code></p>
<p>And that works pretty well. I also use it to describe certain stylistic decisions and explain some code to myself, for the sake of my sanity later. Every once and a while I think: <q cite="Me">But I understand how this works. It isn&rsquo;t really complicated.</q> Ah, but once I walk away from it, three months later, it will be complicated. The best advice I&rsquo;ve ever heard, when it comes to commenting code, is to think of yourself looking at this three months from now: that is how someone else will look at it, and that&rsquo;s, in the end, why you want to comment (for yourself and others).</p>
<h3>What I Want to Begin to Do</h3>
<p>I am pretty good about listing my contact information, version information, <abbr title="Et Cetera">etc.</abbr> in each style sheet, but I am not very good about leaving notes about when the last edit was made. I think that would really be helpful information, especially considering how it seems I am always updating and re-editing code across many different sites/themes/blogs.</p>
<h3>Speak up</h3>
<p>Was any of this helpful? And even if it wasn&rsquo;t, point out where you disagree. And finally, what are you <em>not</em> doing that you want to be sure and <em>start</em> doing in your code?</p>
<h3>Credit</h3>
<p>I was inspired to write this post after reading <a href="http://www.thinkvitamin.com/features/design/creating-sexy-stylesheets">Creating Sexy Stylesheets</a> over at Think Vitamin. <a href="http://www.elementfusion.com/stuff-to-read2">Tim Wall at Element Fusion</a> was kind enough to point my attention there.</p>
<div class="addthis_toolbox addthis_default_style" addthis:url='http://ryanimel.com/2007/how-i-css/' addthis:title='How I CSS' ><a class="addthis_button_facebook"></a><a class="addthis_button_twitter"></a></div>]]></content:encoded>
			<wfw:commentRss>http://ryanimel.com/2007/how-i-css/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Styling Images with CSS</title>
		<link>http://ryanimel.com/2007/styling-images-with-css/</link>
		<comments>http://ryanimel.com/2007/styling-images-with-css/#comments</comments>
		<pubDate>Mon, 15 Oct 2007 01:59:38 +0000</pubDate>
		<dc:creator>Ryan Imel</dc:creator>
				<category><![CDATA[Dorky Code]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[semantic markup]]></category>
		<category><![CDATA[xhtml]]></category>

		<guid isPermaLink="false">http://www.ryanimel.com/120/styling-images-with-css/</guid>
		<description><![CDATA[Maybe I&#8217;m being a bit too picky, but styling images with inline code doesn&#8217;t (always) seem like the best option. To me, it isn&#8217;t even a question of utility, such as whether inline or imported styles are the most effective &#8230; <a href="http://ryanimel.com/2007/styling-images-with-css/">Continue reading <span class="meta-nav">&#8594;</span></a><div class="addthis_toolbox addthis_default_style" addthis:url='http://ryanimel.com/2007/styling-images-with-css/' addthis:title='Styling Images with CSS' ><a class="addthis_button_facebook"></a><a class="addthis_button_twitter"></a></div>]]></description>
			<content:encoded><![CDATA[<p>Maybe I&rsquo;m being a bit too picky, but styling images with inline code doesn&rsquo;t (always) seem like the best option. To me, it isn&rsquo;t even a question of utility, such as whether inline or imported styles are the most effective and easiest to use. No, it seems to be more of an issue of what is <em>correct</em> and <em>proper</em>. I question myself on this constantly, as any good semanticist should.<span id="more-120"></span> I ask myself:</p>
<ul>
<li>Where, grammatically, should this content go?</li>
<li>What markup is available that would correctly show this?</li>
<li>If necessary, how can I style this so that it appears like it seems it should?</li>
</ul>
<p>From these questions I try to find the best way to mark up content. In this way I want to look at images, most particularly images in blog posts, and see what the best way to mark them up might be.</p>
<h3>Where, grammatically, should this content go?</h3>
<p>An image is a unique form of content. There seem to be two uses for images, and I&rsquo;ll attempt to define them below.</p>
<dl>
<dt>Decorative images</dt>
<dd>Used to decorate the design of a website, usually not critical to the consumption of content</dd>
<dt>Content images</dt>
<dd>Used as a substantial source of content within the site, and usually is critical to the consumption of content</dd>
</dl>
<p>A couple of examples of what I&rsquo;m talking about:</p>
<p><img src='http://ryanimel.com/files/2007/10/cssimages_example01.jpg' alt='CSS for Images - Example 01, Church Marketing Sucks' class="main" /></p>
<p>The above screen is taken from Church Marketing Sucks, an offshoot of the Center for Church Communication, something I&rsquo;m pretty passionate about. As you can see, the background image on the site is for decoration, as is the header sweeper design. I consider these <em>decorative</em> because they could be stripped away without the content of the site going away.</p>
<p><a href="http://alistapart.com/articles/figurehandler"><img src='http://ryanimel.com/files/2007/10/cssimages_example02.jpg' alt='CSS for Images - Example 01, A List Apart' class="main" /></a></p>
<p>The above screen was taken from an article via A List Apart, which you can see by clicking either the image or <a href="http://alistapart.com/articles/figurehandler">this link</a>. Actually it&rsquo;s not a bad article&mdash;it talks about using Javascript to help with image placement, which is yet another technique. Anyway, the point of this page is that the image within the content is intended to work cooperatively <em>with</em> the content, and would detract from the message if it went away.</p>
<p>I use a different technique, depending on whether the image is intended to contribute to content <abbr title="Versus">vs.</abbr> decoration. If something is intended for decoration, I will do my best to make the image the background of a <code>div</code>. Only if the image is intended to contribute to the content (such as the <abbr title="A List Apart">ALA</abbr> example) will I use an <code>&lt;img&gt;</code> tag.</p>
<h3>What markup is available that would correctly show this?</h3>
<p>One of my pet peeves is when designers use class titles like <code>alignleft</code> and <code>alignright</code> when styling content images. The issue I have with this is the same I would have if these class names were used to name <code>div</code>s being floated to the right or the left. The problem is simple: the purpose of class names is to identify the <em>purpose</em> of the element, and not describe them according to how you will <em>style</em> them. This way, if you change the style of these elements later, they aren&rsquo;t classified incorrectly.</p>
<p>This same principle applies to content images. If content images are styled with <code>alignright</code> or <code>alignleft</code>, either by the user or a <abbr title="What You See is What You Get">WYSIWYG</abbr> editor, their positions can&rsquo;t be changed later without having awkwardly classified images.</p>
<p>I suggest three classes for content images.</p>
<ol>
<li>main</li>
<li>major</li>
<li>minor</li>
</ol>
<p>With this system, I analyzed how images could be aligned and matched them up with appropriate semantic classifications. A <strong>main</strong> image, for instance, is centered horizontally and text doesn&rsquo;t wrap around it. A <strong>major</strong> image floats to the right and wraps text to the left. A <strong>minor</strong> image floats to the left and wraps text to the right.</p>
<p>The <abbr title="Cascading Style Sheets">CSS</abbr> for the images would look like the following.</p>
<p><code><br />
img.main {<br />
margin: 0 auto 1em auto;<br />
display: block;<br />
}<br />
img.major {<br />
float: right;<br />
margin: 0 0 1em 1.5em;<br />
}<br />
img.minor {<br />
float: left;<br />
margin: 0 1.5em 1em 0;<br />
}<br />
</code></p>
<p>Then all you have to do is add <code>class=&ldquo;main&rdquo;</code> or other classes to the <code>img</code> tag and there you have it. Images with proper classifications and correct alignment that could later be changed to fit a new hierarchy or site layout.</p>
<h4>Benefits to Proper Image Classification</h4>
<ul>
<li>Uses classes correctly</li>
<li>Makes content forward&ndash;compatible</li>
<li>It&rsquo;s proper semantics</li>
</ul>
<h4>Negatives to Proper Image Classification</h4>
<ul>
<li>Won&rsquo;t work well with WYSIWYG editors</li>
<li>Requires more work/case by the user</li>
</ul>
<p>These are techniques with kinks which I&rsquo;m still working out. For instance, I still want to figure out a solid way to use this technique in conjunction with captions. I&rsquo;m addicted to Arun Kale&rsquo;s technique in <a href="http://themasterplan.in/themes/the-morning-after/">The Morning After theme</a> which I&rsquo;ve been using at Theme Playground. I&rsquo;ll post once I perfect this technique.</p>
<p>This post was initiated, in part, by Sarah over at BlueJar with her post <a href="http://www.bluejar.com/how-to-position-your-photos-and-images-using-css/">How to Position Your Photos and Images Using CSS</a>. I&rsquo;m kind of a semantics dork, so this topic caught my attention. Overall, I look forward to seeing these things develop, especially as far as valid, semantic blogging is concerned.</p>
<div class="addthis_toolbox addthis_default_style" addthis:url='http://ryanimel.com/2007/styling-images-with-css/' addthis:title='Styling Images with CSS' ><a class="addthis_button_facebook"></a><a class="addthis_button_twitter"></a></div>]]></content:encoded>
			<wfw:commentRss>http://ryanimel.com/2007/styling-images-with-css/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Learn from My Mistakes: Banner.gif</title>
		<link>http://ryanimel.com/2007/learn-from-my-mistakes-bannergif/</link>
		<comments>http://ryanimel.com/2007/learn-from-my-mistakes-bannergif/#comments</comments>
		<pubDate>Sun, 23 Sep 2007 23:38:02 +0000</pubDate>
		<dc:creator>Ryan Imel</dc:creator>
				<category><![CDATA[Dorky Code]]></category>

		<guid isPermaLink="false">http://ryanimel.com/117/learn-from-my-mistakes-bannergif/</guid>
		<description><![CDATA[I had an interesting Sunday last week. I was in the process of finalizing my home church&#8217;s new website to launch, and one of the last things to do was to add a page promoting our new series entitled Why?. &#8230; <a href="http://ryanimel.com/2007/learn-from-my-mistakes-bannergif/">Continue reading <span class="meta-nav">&#8594;</span></a><div class="addthis_toolbox addthis_default_style" addthis:url='http://ryanimel.com/2007/learn-from-my-mistakes-bannergif/' addthis:title='Learn from My Mistakes: Banner.gif' ><a class="addthis_button_facebook"></a><a class="addthis_button_twitter"></a></div>]]></description>
			<content:encoded><![CDATA[<p>I had an interesting Sunday last week. I was in the process of finalizing my home church&rsquo;s new website to launch, and one of the last things to do was to add a page promoting our new series entitled <em>Why?</em>. But when it came to uploading a small image to accompany the page, it wasn&rsquo;t happening.</p>
<p><span id="more-117"></span></p>
<p>I use <a href="http://www.wordpress.org" title="WordPress - Open Source Content Management System">WordPress</a> for every web project I&rsquo;m a part of, and I believe each project is that much better for it. Church websites, personal websites, even company websites &mdash; all benefit by using WordPress. In this case, however, WordPress was not allowing me to upload or place this particular image for my church website.</p>
<p>I began searching the WordPress.org help forums for some, well, <em>help</em>. The only related advice I could find was that some others had experienced similar problems when they had tried hotlinking an image from another server &mdash; or when, somehow, the server didnn&rsquo;t believe the poster had the right to link it. I had never heard of this before, but then again this had never happened to me before either. Since there had been some mix-ups with our domain and hosting server lately, I decided that must be the problem.</p>
<p>So I wiped everything and had the server admin check over and make sure we were clean. Then I re-uploaded everything. I re-installed WordPress and synced all of the databases again. It took around three hours.</p>
<p>Jumped back in to post the image, and guess what?</p>
<p>It didn&rsquo;t work. No difference from earlier.</p>
<p>It turns out that the problem wasn&rsquo;t the server at all. It wasn&rsquo;t even WordPress. The problem was that the image was called <em>banner.gif</em>. And apparently my ad protection (either my browser or otherwise) automatically blocks things called <em>banner.gif</em>.</p>
<p>Imagine my surprise.</p>
<p>So, take this as a word to the wise (as well as a word to anyone wanting to potentially save three hours of their time): <strong>never name an image <em>banner</em></strong>.</p>
<p>I hope I&rsquo;m the only one to suffer through this. So I hesitate to ask: anyone else have a problem like this one?</p>
<div class="addthis_toolbox addthis_default_style" addthis:url='http://ryanimel.com/2007/learn-from-my-mistakes-bannergif/' addthis:title='Learn from My Mistakes: Banner.gif' ><a class="addthis_button_facebook"></a><a class="addthis_button_twitter"></a></div>]]></content:encoded>
			<wfw:commentRss>http://ryanimel.com/2007/learn-from-my-mistakes-bannergif/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>At An Event Apart</title>
		<link>http://ryanimel.com/2007/at-an-event-apart/</link>
		<comments>http://ryanimel.com/2007/at-an-event-apart/#comments</comments>
		<pubDate>Mon, 27 Aug 2007 12:00:57 +0000</pubDate>
		<dc:creator>Ryan Imel</dc:creator>
				<category><![CDATA[Dorky Code]]></category>
		<category><![CDATA[Internet]]></category>

		<guid isPermaLink="false">http://ryanimel.com/113/at-an-event-apart/</guid>
		<description><![CDATA[I&#8217;ll be away for the next two days at An Event Apart in Chicago. If anyone who reads this is also going, it would be great to meet up and chat. Just comment and we can get in touch. I&#8217;m &#8230; <a href="http://ryanimel.com/2007/at-an-event-apart/">Continue reading <span class="meta-nav">&#8594;</span></a><div class="addthis_toolbox addthis_default_style" addthis:url='http://ryanimel.com/2007/at-an-event-apart/' addthis:title='At An Event Apart' ><a class="addthis_button_facebook"></a><a class="addthis_button_twitter"></a></div>]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ll be away for the next two days at <a href="http://aneventapart.com/" title="An Event Apart">An Event Apart</a> in Chicago. If anyone who reads this is also going, it would be great to meet up and chat. Just comment and we can get in touch.</p>
<p>I&#8217;m looking forward to the event. Things like this always get me inspired. I&#8217;m sure I will have lots to say when I return.</p>
<div class="addthis_toolbox addthis_default_style" addthis:url='http://ryanimel.com/2007/at-an-event-apart/' addthis:title='At An Event Apart' ><a class="addthis_button_facebook"></a><a class="addthis_button_twitter"></a></div>]]></content:encoded>
			<wfw:commentRss>http://ryanimel.com/2007/at-an-event-apart/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Smashing Magazine’s 404 Project is a Bit Shady</title>
		<link>http://ryanimel.com/2007/smashing-magazines-404-project-is-a-bit-shady/</link>
		<comments>http://ryanimel.com/2007/smashing-magazines-404-project-is-a-bit-shady/#comments</comments>
		<pubDate>Wed, 01 Aug 2007 13:01:09 +0000</pubDate>
		<dc:creator>Ryan Imel</dc:creator>
				<category><![CDATA[Dorky Code]]></category>

		<guid isPermaLink="false">http://ryanimel.com/103/smashing-magazines-404-project-is-a-bit-shady/</guid>
		<description><![CDATA[A recent post at Smashing shows off a lot of great 404 pages before asking users to create their own and submit it to the site. But, to prove it’s theirs, add the words Smashing Magazine, without a link, to &#8230; <a href="http://ryanimel.com/2007/smashing-magazines-404-project-is-a-bit-shady/">Continue reading <span class="meta-nav">&#8594;</span></a><div class="addthis_toolbox addthis_default_style" addthis:url='http://ryanimel.com/2007/smashing-magazines-404-project-is-a-bit-shady/' addthis:title='Smashing Magazine’s 404 Project is a Bit Shady' ><a class="addthis_button_facebook"></a><a class="addthis_button_twitter"></a></div>]]></description>
			<content:encoded><![CDATA[<p>A recent post at <a href="http://www.smashingmagazine.com/2007/07/25/wanted-your-404-error-pages/">Smashing</a> shows off a lot of great 404 pages before asking users to create their own and submit it to the site. But, <em>to prove it’s theirs</em>, add the words Smashing Magazine, without a link, to your 404 page.<br />
<span id="more-103"></span></p>
<p>Does this strike anyone else as odd?</p>
<p>My first question: Why prove it’s yours? What’s the point?</p>
<blockquote><p>We’d like you to create a beautiful, functional and user-friendly 404 error page for your own web-site. We’ll collect the most creative, usable and elegant solutions and review them in one of our next posts.</p></blockquote>
<p>I don’t understand why there is a necessity for the website to be your own. I’m trying to think of a reason that this would be necessary, but I can’t. Whatever the site is will get the credit, not the person who made it. And I’m sure no one would be upset if someone other than themselves submitted their 404 page to some sort of <em>awesome</em> directory.</p>
<h2>Why Smashing? Why?</h2>
<p>So the next question is: Why would they want people to put “Smashing Magazine” on their 404 page?</p>
<p>Anyone?</p>
<p>Now, I’m not a <span class="caps">SEO</span> expert by any means, but I imagine it couldn’t <em>hurt</em> your search engine listing if you were named on lots (and lots) of 404 pages. Would it improve your ranking? I don’t know. Without a link, it’s probably hard to say.</p>
<p>But maybe that’s the reason they’re doing it. Maybe they want to find out what will happen if they get a lot of responses and “Smashing Magazine” is written everywhere, like graffiti on bathroom walls. Then there’s the number of people who will <strong>forget</strong> to take it off. Already a simple search for <a href="http://www.google.com/search?hl=en&amp;client=firefox-a&amp;rls=org.mozilla%3Aen-US%3Aofficial&amp;q=404+pages&amp;btnG=Search"><em>404 pages</em></a> on Google sets them on the first page.</p>
<p>I’m not sure whether to be mad at Smashing or congratulate them on a clever ploy. What do you think?</p>
<div class="addthis_toolbox addthis_default_style" addthis:url='http://ryanimel.com/2007/smashing-magazines-404-project-is-a-bit-shady/' addthis:title='Smashing Magazine’s 404 Project is a Bit Shady' ><a class="addthis_button_facebook"></a><a class="addthis_button_twitter"></a></div>]]></content:encoded>
			<wfw:commentRss>http://ryanimel.com/2007/smashing-magazines-404-project-is-a-bit-shady/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Published at Daily Blog Tips: Widen Your Blog</title>
		<link>http://ryanimel.com/2007/published-at-daily-blog-tips-widen-your-blog/</link>
		<comments>http://ryanimel.com/2007/published-at-daily-blog-tips-widen-your-blog/#comments</comments>
		<pubDate>Thu, 05 Jul 2007 18:46:08 +0000</pubDate>
		<dc:creator>Ryan Imel</dc:creator>
				<category><![CDATA[Asides]]></category>
		<category><![CDATA[Dorky Code]]></category>
		<category><![CDATA[Published]]></category>

		<guid isPermaLink="false">http://ryanimel.com/?p=97</guid>
		<description><![CDATA[As I&#8217;ve mentioned before, I&#8217;m on a regular posting schedule over at Daily Blog Tips now. A post of mine talking about widening your blog to take advantage of larger average screen sizes went up today. There is a decent &#8230; <a href="http://ryanimel.com/2007/published-at-daily-blog-tips-widen-your-blog/">Continue reading <span class="meta-nav">&#8594;</span></a><div class="addthis_toolbox addthis_default_style" addthis:url='http://ryanimel.com/2007/published-at-daily-blog-tips-widen-your-blog/' addthis:title='Published at Daily Blog Tips: Widen Your Blog' ><a class="addthis_button_facebook"></a><a class="addthis_button_twitter"></a></div>]]></description>
			<content:encoded><![CDATA[<p>As I&#8217;ve mentioned before, I&#8217;m on a regular posting schedule over at <a href="http://www.dailyblogtips.com">Daily Blog Tips</a> now. A post of mine talking about widening your blog to take advantage of larger average screen sizes <a href="http://www.dailyblogtips.com/widen-your-blog-for-goodness-sake/">went up today</a>. There is <a href="http://www.dailyblogtips.com/widen-your-blog-for-goodness-sake/#comments">a decent discussion starting up on the topic</a>, which will be worth checking out if that&#8217;s your kind of thing.</p>
<div class="addthis_toolbox addthis_default_style" addthis:url='http://ryanimel.com/2007/published-at-daily-blog-tips-widen-your-blog/' addthis:title='Published at Daily Blog Tips: Widen Your Blog' ><a class="addthis_button_facebook"></a><a class="addthis_button_twitter"></a></div>]]></content:encoded>
			<wfw:commentRss>http://ryanimel.com/2007/published-at-daily-blog-tips-widen-your-blog/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>IE – Bigger Font Size v. Firefox</title>
		<link>http://ryanimel.com/2007/bigger-firefox/</link>
		<comments>http://ryanimel.com/2007/bigger-firefox/#comments</comments>
		<pubDate>Fri, 30 Mar 2007 14:26:13 +0000</pubDate>
		<dc:creator>Ryan Imel</dc:creator>
				<category><![CDATA[Dorky Code]]></category>

		<guid isPermaLink="false">http://ryanimel.com/?p=78</guid>
		<description><![CDATA[I was up late last night working to make a site functional across browsers. Anyone who does web design knows what those nights are like. I couldn&#8217;t sleep until I figured things out. Part of the reason was it took &#8230; <a href="http://ryanimel.com/2007/bigger-firefox/">Continue reading <span class="meta-nav">&#8594;</span></a><div class="addthis_toolbox addthis_default_style" addthis:url='http://ryanimel.com/2007/bigger-firefox/' addthis:title='IE – Bigger Font Size v. Firefox' ><a class="addthis_button_facebook"></a><a class="addthis_button_twitter"></a></div>]]></description>
			<content:encoded><![CDATA[<p>I was up late last night working to make a site functional across browsers. Anyone who does web design knows what those nights are like. I couldn&#8217;t sleep until I figured things out. Part of the reason was it took a long time for me to find an answer &#8211; which, in the end, I had to reason through myself. Since it isn&#8217;t very often that you are able to Google your problem and find the same problem (with a solution) somewhere else, here is my contribution: my problem and my solution.<br />
<span id="more-78"></span><br />
I had the design tweaked in the CSS and the XHTML offline and working in Firefox. (For anyone who doesn&#8217;t already, always get your site working in Firefox first, then IE after. Trust me on that one.) Though I&#8217;m using em&#8217;s to size throughout, I list the body font size as 12px. Here is the relevant code:</p>
<p><code>body {<br />
font-size: 12px;<br />
}<br />
p {<br />
font-size: 1em;<br />
}</code></p>
<p><code></code>and</p>
<p><code>&lt; id="wrapper" &gt;<br />
&lt; id="content" &gt;<br />
&lt; id="maincontent" &gt;<br />
&lt; p &gt;This is where text would go. &lt; / p &gt; </code></p>
<p><code></code>Everything after &#8220;maincontent&#8221; was the size I wanted in Firefox but not the size I wanted in IE. More specifically, everything (anything sized in ems, which meant the widths of columns, margins, and font sizes) was around 10× the size I wanted it to be. Needless to say it caught my eye.</p>
<p>After about an hour of struggling with it I discovered that IE assigns its own base font size unless something is specified in the parent container. So in Firefox (the correct browser) when no specification is found in the parent element it checks the next highest, the next highest, and finally the body defined font size. Firefox uses the 12px size I specified. To correct for IE, though, I had to duplicate my font specification in the direct container of &#8220;p&#8221; — that is, &#8220;maincontent.&#8221;</p>
<p>Everything is working well right now. I&#8217;d love to talk about the project this is for (a fairly personal one) but I would rather wait until its ready for release. I hope this post helps someone else with the same problem somewhere down the line — I know it really pissed me off last night.</p>
<div class="addthis_toolbox addthis_default_style" addthis:url='http://ryanimel.com/2007/bigger-firefox/' addthis:title='IE – Bigger Font Size v. Firefox' ><a class="addthis_button_facebook"></a><a class="addthis_button_twitter"></a></div>]]></content:encoded>
			<wfw:commentRss>http://ryanimel.com/2007/bigger-firefox/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

