<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>Tom Rogers</title>
	
	<link>http://www.tom-rogers.com</link>
	<description>My personal and technology blog</description>
	<lastBuildDate>Sun, 23 Oct 2011 16:41:46 +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/TomRogers" /><feedburner:info uri="tomrogers" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><feedburner:emailServiceId>TomRogers</feedburner:emailServiceId><feedburner:feedburnerHostname>http://feedburner.google.com</feedburner:feedburnerHostname><item>
		<title>StageForm (My First jQuery Plugin)</title>
		<link>http://feedproxy.google.com/~r/TomRogers/~3/QiTw4aM1e-M/</link>
		<comments>http://www.tom-rogers.com/stageform-my-first-jquery-plugin/#comments</comments>
		<pubDate>Sun, 23 Oct 2011 16:36:45 +0000</pubDate>
		<dc:creator>Tom Rogers</dc:creator>
				<category><![CDATA[Downloadable Starter Projects]]></category>

		<guid isPermaLink="false">http://www.tom-rogers.com/?p=531</guid>
		<description><![CDATA[I love the JQuery javascript library just about as much as I do web development as a whole. The reason I feel that way is that it makes it so easy to improve an existing design through the addition of &#8230; <a href="http://www.tom-rogers.com/stageform-my-first-jquery-plugin/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I love the <a href="http://jquery.com/">JQuery</a> javascript library just about as much as I do web development as a whole. The reason I feel that way is that it makes it so easy to improve an existing design through the addition of more contextual awareness to a web project by shielding developers from all the quirks of differing browser support for certain technologies. No small part of the reason why it has become so successful is the really robust plug-in architecture and ecosystem created around it by the community.</p>
<p>Some of you are probably thinking “Hang on! What even is a plug-in?” Without getting super-geeky, it is basically a way to do a lot of things to any jQuery object (thus being able to utilize functions and methods that already exist) whist keeping all the complex code for the single-track purpose that it serves out of the files where jQuery is being invoked. Maybe a better way to explain that is to use the example that, if you wanted to add AJAX validation to form elements and that required 200 lines of code, having that together with all other JS would be confusing in the future. However, if you were to invest a little more time during initial development writing that 200 lines with a plugin mindset, you could create a function that would fire off all the magic on a selected object (assuming that the plug-in is linked along with the library itself). In the file that you deal with on a day-to-day basis, this would turn those 200 lines for that function into a single one. Just in case you’re interested, it just so happens that that very example I just outlined (the first that came to mind) is actually a <a href="http://bassistance.de/jquery-plugins/jquery-plugin-validation/">real plug-in.</a></p>
<h3>Introducing Stageform</h3>
<p>Admittedly, part of my motivation for creating jquery.stageform.js was that I’d never done it before and needed a purpose on which to base one. Having said that, the function that I decided on was splitting a form into stages in a semantic way and only showing one stage (elements collecting one type of data) at any time. </p>
<h4>Getting More Information</h4>
<p>The latest release, a working demo, feature requests and an outline of how to use all options offered by the plug-in are all available as part of <a href="https://github.com/tomrogers123/StageForm-jQuery-Plugin">the GitHub repository</a> for this project. </p>
]]></content:encoded>
			<wfw:commentRss>http://www.tom-rogers.com/stageform-my-first-jquery-plugin/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.tom-rogers.com/stageform-my-first-jquery-plugin/</feedburner:origLink></item>
		<item>
		<title>Home Truths About Web Accessibility</title>
		<link>http://feedproxy.google.com/~r/TomRogers/~3/_C86r8-tY2Q/</link>
		<comments>http://www.tom-rogers.com/home-truths-about-web-accessibility/#comments</comments>
		<pubDate>Mon, 29 Aug 2011 17:55:35 +0000</pubDate>
		<dc:creator>Tom Rogers</dc:creator>
				<category><![CDATA[Web]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[creating accessible websites]]></category>
		<category><![CDATA[design]]></category>
		<category><![CDATA[screen readera]]></category>
		<category><![CDATA[web development]]></category>
		<category><![CDATA[websites]]></category>

		<guid isPermaLink="false">http://www.tom-rogers.com/?p=445</guid>
		<description><![CDATA[I think a lot of web developers and designers have misconceptions about the ways to best create accessible websites. I say that after doing much research in past days by using screen readers to look at web pages. From that &#8230; <a href="http://www.tom-rogers.com/home-truths-about-web-accessibility/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I think a lot of web developers and designers have misconceptions about the ways to best create accessible websites. I say that after doing much research in past days by using screen readers to look at web pages. From that I learned a number of things about accessibility that contradicted what I previously believed (lots of which I am probably not alone on). So, those finding are what we are going to talk through but first I feel it is important to say that, for most of these issues, I was unable to find solutions that I thought were satisfactory. As a result of that, this post is less about giving actual solutions than just highlighting some general concerns to think about next time you&#8217;re developing a website. Of course, if you&#8217;re someone who has an intimate knowledge of this and can help shed some light, I&#8217;d love to hear what you have to say in the comments.</p>
<h3>Tools For The Job</h3>
<p>Before I even really got into specifics of actually checking my pages, I ran across the hurdle that is having to figure out what to use. A sin that I see committed by a lot of people in the web world (me included) is just saying something along the lines of &quot; we need to make sure this markup is understandable to screen readers.&quot; The gaping flaw in that statement is generalizing screen readers and assuming that they all work the same as this is simply untrue. From what I found, cross-screen-reader quirks can be twice as hard to troubleshoot than cross-browser problems but aren&#8217;t spoken about half as much. The reason I say this is that, with the browser market, the stats make it easy to decide which browsers to support but, using screen readers, it&#8217;s less cut-and-dry. </p>
<p>These are the tools that I had access to and so chose to test with (remember though, the more apps you can test the better):</p>
<ul>
<li>VoiceOver &#8211; This is the tool built in to OS X that can read out content for most of the default applications. Thankfully, one of those that it works with is <a href="http://www.apple.com/safari/" title="Link to page for Safari web browser.">the Safari web browser</a>.</li>
<li><a href="http://www.standards-schmandards.com/projects/fangs/" title="Link to page for Fangs Firefox add-on.">Fangs</a> &#8211; An add-on for <a href="http://www.mozilla.org/products/firefox/" title="Link to page for Firefox.">the Firefox web browser</a> that allows you to load a page and then have a text based transcript of the elements that it found.<br />
  <img src="/wp-content/uploads/article-images/web-accessibility-article-screenshot.jpg" alt="Screenshot showing possible screen reader output for the about page." />
</li>
</ul>
<h3>Things That I Noticed:</h3>
<h4>ALT Attributes For Images Not Placed In Context</h4>
<p>So, the &quot;alt&quot; attribute should always be used on image elements because it is shown in place of the image if it fails to load but is also checked by screen readers. VoiceOver just spoke the text placed in the attribute but didn&#8217;t make clear that the text was connected to an image. The way around this one is just to include notation that is an image within the attribute value before any description of the contents.</p>
<h4>CSS Styling Matters</h4>
<p>A common accessibility tactic is to have an invisible link at the very top of a page to jump the header and navigation and dive into the important content. Theoretically, the benefit of this is that, a user being talked to doesn&#8217;t need to sit through all the stuff for the menu (which would normally come before the actual content) because they have a handy link to jump to where they need to be straight away. Upon trying it, the narration completely skipped over it because the CSS told that link to <code>display: none</code>. If that is the reason, then you have a choice to make; either you display the link for screen readers (and everybody else) even though most of the visitors won&#8217;t need it, or you can just leave it out all together.</p>
<h4>Little Respect For The &quot;tabindex&quot; Attribute</h4>
<p>The tabindex attribute can be applied to any HTML element and is a method to order the elements on the page in terms of tabbing through them with the keyboard. Unfortunately though, in my testing, the applications still failed to show up elements in the order that I had specified.</p>
<h3>Conclusion</h3>
<p>As I said at the start, those are just some interesting things to think about but, if you have any more information, please feel free to share down below.</p>
<p><a href="http://webaim.org/projects/screenreadersurvey/" title="An interesting survey of screen reader usage">An interesting survey of screen reader usage</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.tom-rogers.com/home-truths-about-web-accessibility/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://www.tom-rogers.com/home-truths-about-web-accessibility/</feedburner:origLink></item>
		<item>
		<title>Moving From Static Pages To Using A CMS</title>
		<link>http://feedproxy.google.com/~r/TomRogers/~3/Kwa3tXYFw88/</link>
		<comments>http://www.tom-rogers.com/moving-from-static-pages-to-using-a-cms/#comments</comments>
		<pubDate>Sun, 28 Aug 2011 22:34:28 +0000</pubDate>
		<dc:creator>Tom Rogers</dc:creator>
				<category><![CDATA[Web]]></category>
		<category><![CDATA[content management]]></category>
		<category><![CDATA[drupal]]></category>
		<category><![CDATA[dynamic websites]]></category>
		<category><![CDATA[notes about content management systems]]></category>
		<category><![CDATA[simple html pages]]></category>
		<category><![CDATA[web development]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://www.tom-rogers.com/?p=397</guid>
		<description><![CDATA[For quite a while, the web has been in a transitional period between sites comprised of static HTML files and sites that are generated on-the-fly by content management systems. This change has plenty of advantages but making it can be &#8230; <a href="http://www.tom-rogers.com/moving-from-static-pages-to-using-a-cms/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>For quite a while, the web has been in a transitional period between sites comprised of static HTML files and sites that are generated on-the-fly by content management systems. This change has plenty of advantages but making it can be a large undertaking for website owners and developers. With that fact in mind, I thought I&#8217;d do a post addressing some simple things that I&#8217;ve learned during my time building dynamically generated web applications. As per the title, the focus of all my points have a focus toward the difference between the two concepts. Time to get this party started.</p>
<h3>Separation Of Data, Output and Styling</h3>
<p>If you imagine any modern, static, webpage, you probably have the HTML file (describing the type of content in any given place on the page) and a CSS file (applies visual styles to the markup). Contrasting this to the dynamic approach in which the content is stored in a database and outputted within the markup, what you have is an extra layer of abstraction which is never a bad thing. The benefit of that is the ability to easily alter front-end template files without worrying about the data on the site being lost. A bit of a side advantage to this thought process over the one previously noted is that it makes allowing users to select styles for a predefined list much easier.</p>
<h3>Security Becomes More Important</h3>
<p>Content management systems are software packages that run on servers and more than just some files and folders. Like other apps that run on your desktop OS, they too have updates released for them that need to be implemented. It could be argued that, because your website probably stores data on visitors, you have a much bigger duty to try and ensure that their data isn&#8217;t exploited. All this translates to the fact that you may have to dedicate a bit more time to ensuring that such a website remains secure than you would with a comparable static one.</p>
<h3>Less Control Over Individual Pages</h3>
<p>Due to the abstraction that I noted before, a CMS based site will by default give users less control over the styling of pages on an individual basis. Although to some it may seem so, this is no bad thing. The reason I say that is that, having completely different styling across pages of a single website makes the experience seem disjointed for users. Just to clarify, in no way am I saying that dynamically generated pages should stifle good design. A better explanation maybe is to say that, when theming for a system, the focus is no longer on the look of a piece of content but on preparing styles for the <em>different types of content</em> that a user may add to add to the system.</p>
<h3>The Parsing Of Logic</h3>
<p>As I&#8217;ve been drilling into your brain throughout the article, what makes a CMS different than static HTML is that it relies on running queries that return data from a database. This requires that you have access to server-side technologies (most commonly PHP and MySQL) in order for it to function. Quite clearly, that means the you need to verify that your server can run the scripting languages as required by whatever package you use before taking the time to install and set it up.</p>
<p>From the fact that logic is passed comes a very useful side effect. For example, most systems will allow you to check whether the currently viewing user is logged in or not and then served up different content or layout as a result.</p>
<p>Quick note: even though pages in CMSs are built on the fly, what ultamatly gets sent to the browser is just regular HTML. </p>
<p>So, I hope those tips were helpful to any website owners looking to make the jump away from static pages to a dynamic system.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.tom-rogers.com/moving-from-static-pages-to-using-a-cms/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.tom-rogers.com/moving-from-static-pages-to-using-a-cms/</feedburner:origLink></item>
		<item>
		<title>An Evil WordPress Plugin</title>
		<link>http://feedproxy.google.com/~r/TomRogers/~3/5PkwfDSxIm4/</link>
		<comments>http://www.tom-rogers.com/an-evil-wordpress-plugin/#comments</comments>
		<pubDate>Wed, 17 Aug 2011 14:26:35 +0000</pubDate>
		<dc:creator>Tom Rogers</dc:creator>
				<category><![CDATA[Web]]></category>
		<category><![CDATA[bad wordpress plugin]]></category>
		<category><![CDATA[unwanted link injection]]></category>

		<guid isPermaLink="false">http://www.tom-rogers.com/?p=393</guid>
		<description><![CDATA[Anyone who&#8217;s looked at any of the articles on this site knows that, as far as the web goes I&#8217;m something of a neat-freak. You can imagine then my feeling of horror upon making the discovery that the WordPress plugin &#8230; <a href="http://www.tom-rogers.com/an-evil-wordpress-plugin/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Anyone who&#8217;s looked at any of the articles on this site knows that, as far as the web goes I&#8217;m something of a neat-freak. You can imagine then my feeling of horror upon making the discovery that the WordPress plugin that I was using to power the social media links (that were beside each post) had been injecting invisible spam links into all the pages that it was being used on. Worst still is the fact that this evil script hides the links from display so that site owners may never find out they are there.</p>
<p><img src="/wp-content/uploads/article-images/spam-injection-article-screenshot.png" alt="Unwanted HTML Ads Markup Generated By WP Plugin" /></p>
<p>Having spam links on your site can cause you big problems beyond just bad semantics. Even though you can&#8217;t see them, Google can. My point being that, if a search engine crawler comes to a page and finds any content not related in some way to the main subject, the search rankings for all pages on that domain can suffer.</p>
<p>Needless to say, I&#8217;ve turned off and uninstalled the offending script but also urge you to check the source code of your pages once in a while to ensure that there isn&#8217;t more then you bargained for lurking within. </p>
]]></content:encoded>
			<wfw:commentRss>http://www.tom-rogers.com/an-evil-wordpress-plugin/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://www.tom-rogers.com/an-evil-wordpress-plugin/</feedburner:origLink></item>
		<item>
		<title>Adobe Offering Subscription Models On Popular Apps!</title>
		<link>http://feedproxy.google.com/~r/TomRogers/~3/l1Fh-tkF15w/</link>
		<comments>http://www.tom-rogers.com/adobe-offering-subscription-models-on-popular-apps/#comments</comments>
		<pubDate>Mon, 15 Aug 2011 18:01:05 +0000</pubDate>
		<dc:creator>Tom Rogers</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[adobe pricing]]></category>
		<category><![CDATA[cheap way to buy photoshop]]></category>
		<category><![CDATA[pay as you go adobe products]]></category>
		<category><![CDATA[photoshop]]></category>
		<category><![CDATA[price]]></category>
		<category><![CDATA[software renting]]></category>

		<guid isPermaLink="false">http://www.tom-rogers.com/?p=385</guid>
		<description><![CDATA[If you're part of the design community in any way, shape or form then you are probably aware that <a href="http://www.adobe.com/">Adobe</a> products are often coveted within those circles. I say coveted (as a posed to appreciated) because of how expensive the dam things are; the barrier to entry is less like a barrier and more like a solid wall with hot lava on the top of it. Well, as is hinted toward by the title, Adobe is finally listening to the market and the fact that not everyone who wants to do some casual design work can afford to throw £700 at the project. The way they've answered it is to come up with the idea of what is broadly software rentals on a number of their more premium programs. <a href="http://www.tom-rogers.com/adobe-offering-subscription-models-on-popular-apps/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>OK, so I said in a previous post that this is my corner of the web in which I&#8217;ll post any cool stuff that comes to mind, so here goes.</p>
<p>If you&#8217;re part of the design community in any way, shape or form then you are probably aware that <a href="http://www.adobe.com/">Adobe</a> products are often coveted within those circles. I say coveted (as a posed to appreciated) because of how expensive the dam things are; the barrier to entry is less like a barrier and more like a solid wall with hot lava on the top of it. Well, as is hinted toward by the title, Adobe is finally listening to the market and the fact that not everyone who wants to do some casual design work can afford to throw £700 at the project. The way they&#8217;ve answered it is to come up with the idea of what is broadly software rentals on a number of their more premium programs.</p>
<p>Before talking too much more about how this new model works or giving more two cents, I just need to say that this is already old news. Just now have I discovered it though after looking in the online product store just a few moments ago.</p>
<p>Let&#8217;s get into some details about this and see where the catches arise &#8217;cause there definitely are one or two. So, the first thing to mention is the fact that the subscription route cannot be taken with all products although is open for the big guns. Next is the two sub choices: you have the choice to buy access to the product for one month at a time or to commit yourself for a full year (which saves you quite a sizable sum). In itself, the second of the two paths is one oddity. When I first saw it, I assumed (as would most I think) that the year-long option involved paying one lump sum and having access to the given product for a full year. Upon closer inspection, that&#8217;s not actually what it means at all &#8211; what it means is that you&#8217;ll be committed for a year but, instead of a handing over a one big ball of doe, the payments will still be charged to the registered card on a month-to-month schedule. In simple terms, <strong>you can&#8217;t use the subscription option to buy access to products for more than a month at a time in a single payment.</strong> Another important consideration is that (<a href="http://techcrunch.com/2011/04/11/adobe-unveils-creative-suite-subscription-editions-photoshop-for-50month/">according to another post about this</a>) the roadmap for Adobe releasing new versions of applications to users accessing them via this channel is set at around 24 months (just less than double that of the release of the normal version).</p>
<p>For me, the lack of any semi-permanent service is what kills the fire. Having said that, I do think this is an awesome step forward and will offer a load of awesome apps to new sets of people. Most useful for me is the idea that I could now rent access to Photoshop for one month whilst doing a short-term development project without having to hand over a lorry full of notes.</p>
<p>More information can be found <a href="https://store2.adobe.com/cfusion/store/index.cfm?store=OLS-UK&#038;nr=1#store=OLS-UK&#038;view=ols_prod&#038;categoryOid=6757862&#038;category=/Applications/Photoshop&#038;loc=en_gb">over here</a>. If you&#8217;ve got thoughts on this, I&#8217;m all ears!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.tom-rogers.com/adobe-offering-subscription-models-on-popular-apps/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.tom-rogers.com/adobe-offering-subscription-models-on-popular-apps/</feedburner:origLink></item>
		<item>
		<title>Free Example: Simple Secure Webpage</title>
		<link>http://feedproxy.google.com/~r/TomRogers/~3/ucW2aqv2oPY/</link>
		<comments>http://www.tom-rogers.com/free-example-simple-secure-webpage/#comments</comments>
		<pubDate>Sun, 14 Aug 2011 20:30:24 +0000</pubDate>
		<dc:creator>Tom Rogers</dc:creator>
				<category><![CDATA[Downloadable Starter Projects]]></category>
		<category><![CDATA[free php apps]]></category>
		<category><![CDATA[free source codes]]></category>
		<category><![CDATA[password protect a webpage]]></category>
		<category><![CDATA[secure webpage]]></category>

		<guid isPermaLink="false">http://www.tom-rogers.com/?p=379</guid>
		<description><![CDATA[When starting out in web development, writing a fully-functional application can feel very daunting. For that reason, I&#8217;m offering up the source code for a project that I previously created to password protect a webpage using PHP. You can customize &#8230; <a href="http://www.tom-rogers.com/free-example-simple-secure-webpage/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>When starting out in web development, writing a fully-functional application can feel very daunting. For that reason, I&#8217;m offering up the source code for a project that I previously created to password protect a webpage using PHP. You can customize it and use it for whatever you want.</p>
<h3>Some Notes</h3>
<p>In order to have this work correctly, you&#8217;ll need to be running PHP on the server you put it on. Also, keep in mind that this method of securing a page is far from foolproof and is just for the purpose of being a learning experience. </p>
<p><strong><a href="https://github.com/tomrogers123/Simple-Secure-Page" title="Download Project">Download Project Files</a></strong></p>
]]></content:encoded>
			<wfw:commentRss>http://www.tom-rogers.com/free-example-simple-secure-webpage/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.tom-rogers.com/free-example-simple-secure-webpage/</feedburner:origLink></item>
		<item>
		<title>Defending Your WordPress Blog Against Comment Spam</title>
		<link>http://feedproxy.google.com/~r/TomRogers/~3/q_OCwgEZPWg/</link>
		<comments>http://www.tom-rogers.com/defending-your-wordpress-blog-against-comment-spam/#comments</comments>
		<pubDate>Sun, 14 Aug 2011 13:56:04 +0000</pubDate>
		<dc:creator>Tom Rogers</dc:creator>
				<category><![CDATA[Web]]></category>
		<category><![CDATA[blog]]></category>
		<category><![CDATA[captcha]]></category>
		<category><![CDATA[comment spam]]></category>
		<category><![CDATA[plugins]]></category>
		<category><![CDATA[spam]]></category>
		<category><![CDATA[stop spam comments]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://www.tom-rogers.com/?p=369</guid>
		<description><![CDATA[Throughout the two years that this blog has been WordPress-powered, I&#8217;ve learned about a number of the problems and challenges that the software faces. One of the biggest is spam commenting; out of nowhere sites seem to get bombarded by &#8230; <a href="http://www.tom-rogers.com/defending-your-wordpress-blog-against-comment-spam/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Throughout the two years that this blog has been WordPress-powered, I&#8217;ve learned about a number of the problems and challenges that the software faces. One of the biggest is spam commenting; out of nowhere sites seem to get bombarded by useless comments submitted automatically and in volume. Adding another level of complexity is the fact that it can be difficult to separate those responses that are genuine from those that aren&#8217;t.</p>
<p>As featured in an <a href="http://www.tom-rogers.com/site-redesign-and-updates/" title="Site Redesign and Updates">earlier entry</a>, I recently hit this problem while restructuring and redesigning this site. Throughout the very long process, I discovered some things that will hopefully mean I won&#8217;t find myself in the same position again any time soon (there were almost 5,000 meaningless comments when I first looked). Not one to keep any pearls of wisdom close to the chest, I thought that somebody else might benefit from hearing what worked for me and maybe it&#8217;ll help to stop them getting into the same ugly situation that I was.</p>
<h3>A Note About <a href="https://akismet.com/">Akismet</a></h3>
<p>This is a plugin that ships with WP and as a middle-man between your server and the API for the companion web service. Using a growing database of comments submitted by users, the algorithm decides which posts are spam and leaves them in a queue that can be reviewed by the site administrator. Although, I&#8217;ve not used it myself, reports for those who have appear to agree that it&#8217;s a pretty solid service but far from perfect. Plans are available in pricing from free to $50/month. I personally don&#8217;t see a need to be a subscription to such a service as it simply isn&#8217;t worth it for the amount of traffic I get.</p>
<h3>Establishing What Is Spam</h3>
<p>In my experience, this can be the most important but also most difficult step to take. Setting yourself a definite list of criteria allows you to more easily decide what is malicious and what isn&#8217;t. Moreover, you can make this much easier on yourself by displaying the set of rules to visitors nearby wherever comments get posted. This will create expectations of visitors which, if not followed, can offer an indication as to whether the comment can from a real person or a computer script. Humans can read the guidelines that you set but machines can&#8217;t.</p>
<h3>The <a href="http://wordpress.org/extend/plugins/delete-pending-comments/">Delete All Pending Comments</a> Plugin</h3>
<p>Again, this is a plugin that you can drop in to your WP directory and run with. Quite simply, it does as it says on the tin and was specifically created for sites victimized by spam bombing. As the WP admin paginate pages of comments not yet approved. However, if you&#8217;ve got twenty pages worth of comments that are spam, it can be extremely laborious to go through each one and mark it as spam. Once activated, this great little script will add an option to the backend which will allow you to delete all pending comments at once.</p>
<h3>The <a href="http://wordpress.org/extend/plugins/wp-recaptcha/">WP-reCAPTCHA</a> Plugin</h3>
<p>Even if you think that you don&#8217;t know what a CAPTCHA is, you&#8217;ve likely seen one before. A CAPTCHA is the little box at the end of many webforms that asks you to type the letters that you see in the graphic. They work because bots cannot currently electronically read images so, requiring that it is entered at all points on your website that user input will virtually eliminate spam from automated services. I choose to use a service called reCAPTCHA (hosted by Google) because it is reliable, has APIs for many systems and input from users is used to digitize books.</p>
<p>That&#8217;s all I&#8217;ve got in terms of recommendations but they do a pretty decent job together. Of note though is the fact that, although these solutions should help quite a bit, they aren&#8217;t foolproof. It&#8217;s still really worth checking the comments once in a while to ensure nothing has slipped through the net.</p>
<p>If you have any more suggestions or advice to share, please post them down below.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.tom-rogers.com/defending-your-wordpress-blog-against-comment-spam/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://www.tom-rogers.com/defending-your-wordpress-blog-against-comment-spam/</feedburner:origLink></item>
		<item>
		<title>Site Redesign and Updates</title>
		<link>http://feedproxy.google.com/~r/TomRogers/~3/cFkje00Drjw/</link>
		<comments>http://www.tom-rogers.com/site-redesign-and-updates/#comments</comments>
		<pubDate>Mon, 08 Aug 2011 21:16:35 +0000</pubDate>
		<dc:creator>Tom Rogers</dc:creator>
				<category><![CDATA[Web]]></category>
		<category><![CDATA[site redesign]]></category>

		<guid isPermaLink="false">http://www.tom-rogers.com/?p=355</guid>
		<description><![CDATA[Over the past week or so, you may have noticed some marketable changes and improvements across this site. Considering that well over a year has past since I last gave any love to my little corner of the web, I &#8230; <a href="http://www.tom-rogers.com/site-redesign-and-updates/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Over the past week or so, you may have noticed some marketable changes and improvements across this site. Considering that well over a year has past since I last gave any love to my little corner of the web, I feel that there would be few better ways to kick-start my writing again than to look at it from a new angle. So, here we are with a refreshed look and a number of new things. With that, I think an organic start to the rejuvenation of any site is to discuss changes made and reasons surrounding them. Enough with the long introduction, let’s do it.</p>
<p>Naturally, I’m going to begin with the reason for such a sudden change of heart. If you were a visitor here prior to the reboot, the misfortune of seeing the off the shelf design I was using. That very situation came as a consequence of the fact that, months before, security of the website was compromised and used in a destructive manner. Anyway, the point is that I now feel that it’s time to forget all that and the first stage had to be creating a fresh new image. On a side note, some of the people who follow my thoughts on the web wanted me to do a series (video) on steps required to theme a WordPress blog and I decided there was no better time to do it than it would be based on a project with a real purpose and real goals.</p>
<p>Now we can dive in to all that geeky stuff that we love and start talking about the actual changes made from both a technical and user experience perspective.</p>
<h3>Improved Commenting</h3>
<p>Ok, ok, I know this may sound like a terrible dull way to push from but &#8211; during the revamping – I spent an amount of time on and thus where the most improvement can be seen. Anyone who braved the comment section of any article before will have discovered that they had become spam havens. By the time I looked through the comments panel in the backend, an army of almost 5,000 spam comments was fighting to overtake the posts. </p>
<p>As a mechanism to deal with the problem, I made a number of decisions about exactly what constitutes a meaningful response to a post and used them as a basis to decide what deserved to be published. They are available above the comment posting form of any given article.</p>
<h3>Better Approach To Writing</h3>
<p>All the time that I was making technical alterations, one thought kept occurring to me – the name I chose for the site when I created it around three years back was mine and not one based on inspiration from my interest in technology. After letting that idea sit for a bit I choose that this is my corner of the web to post whatever comes to me that I think other people might want to read. In future, you’ll see that choice result in posts about everything from my favourite television to politics and some tech &#8211; obviously (!).  Moreover, to try and keep my inspiration flowing, I won’t lay down any targets for myself about how often I’ll post or how long each one will be. In the past, I think not being serious about how much time I could dedicate to this was my downfall. To give a point of reference, due to the fact that I only have the use of my right hand and can only type with my index finger, it has taken me at least three solid hours to get this far in writing the article. Right now (apart from being a little tiring) that isn’t a major issue. When it will become one is upon my return to college in just shy of a month. Then I’ll have lots of new challenges and lengthy assignments to complete. At which point, spending this amount of time typing away after a six hour day in the classroom begins to sound far less appealing. The moral being that, this time, I’m not going to put myself in a position where there will be lots of new content to begin with and then fade ‘cause of lack of ideas. </p>
<h3>Cleaner Markup and Design</h3>
<p>I hope the posts here are testaments to the fact that semantic code is important to me. Helping to accomplish that throughout this design are certain structural tools unique to the upcoming HTML 5 specification (use of the aside element as the sidebar hook for example). You’ll notice though, if you snoop around the source code, that I didn’t take implementation of an evolving standard to the bitter end. An earlier post discussed my reasoning for this philosophy but the upshot was that, in my view the industry isn’t yet in a place where it can ignore the use of IE 6 and the constraints imposed by the use of it.  Sparing us all the lengthy justification, I ultimately settled on using new elements for content that isn’t critical to access of information; hence using them in the sidebar and footer areas but little in the header and main content.</p>
<h3>Rating System Employed For Posts</h3>
<p>My idea to implement a rating system for posts came as a solution to the fact that I’d chosen to remove all comments that merely showed a general likening or disliking toward the content and thus added no real value to the discussion of the way that comments should. Approaching things in this way have several advantages; the people who wish to show a general opinion can do so in a structured manner and there will be no confusion over which comments are spam. To further explain, if a “visitor” now posts a general comment, that comment is almost guaranteed to be non-genuine because it has fallen outside the pre-defined course of action for expressing that kind of view. Spammers can’t add a link to the number of stars selected!</p>
<p>As of the time of writing, I’m using the kk star rating plugin to handle all the fancy stuff but, as it has a few output display issues, that is liable to change when I find a better option.</p>
<h3>Print Stylesheet</h3>
<p>This is something that I wish I didn’t have to talk about but I feel that I do. I say that because, in my opinion, we have reached the stage where this ought to be a given but still isn’t. For anyone scratching their head right now, a print stylesheet is a set of CSS rules that only apply when the browser print function is invoked. A lot of popular sites have dedicated “print this page” button instead of a stylesheet. The reason that the CSS method is better is that printing something uses the workflow that the user has become accustom. Although not currently completed, I’m working on it to be completed within the next few days.</p>
<p>Additionally, I’ve started to clean up grammar and spelling in some of the articles.</p>
<p>Over the coming days and weeks, I’ve got more improvements on the way but that’s all for now. If you’ve got anymore ideas about improvements that could be made or you see any issues, please feel free to leave them in the comments.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.tom-rogers.com/site-redesign-and-updates/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.tom-rogers.com/site-redesign-and-updates/</feedburner:origLink></item>
		<item>
		<title>Getting Work As A Web Designer</title>
		<link>http://feedproxy.google.com/~r/TomRogers/~3/mC5wemBVeU0/</link>
		<comments>http://www.tom-rogers.com/getting-work-as-a-web-designer/#comments</comments>
		<pubDate>Sat, 04 Dec 2010 17:04:06 +0000</pubDate>
		<dc:creator>Tom Rogers</dc:creator>
				<category><![CDATA[Miscellaneous]]></category>

		<guid isPermaLink="false">http://www.tom-rogers.com/?p=205</guid>
		<description><![CDATA[The fight for employment is becoming increasing hostile considering our volatile economy. The web industry has not escaped this hit so prospective designers (like me) need to stay on the inner-curve to stand any chance at all of keeping pace &#8230; <a href="http://www.tom-rogers.com/getting-work-as-a-web-designer/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>The fight for employment is becoming increasing hostile considering our volatile economy. The web industry has not escaped this hit so prospective designers (like me) need to stay on the inner-curve to stand any chance at all of keeping pace in the rat race. But, that is easy to say and hard to do. This is a topic that means an awful lot to me so I wanted to lay down some different perspectives and things that could be sticking points on the matter. The idea of this article is to further the conversation and, while doing this, try to gain different slants on the issues. So, please feel free to post your thoughts and ideas in the comment area below the article.</p>
<p>The first big issue, especially for freelancers, is job titles. Some refer to themselves as designers/developers, some as simply graphic designers and even some as inflated as &#8220;information architects.&#8221; The problem is that many customers will expect the developers to be able to take care of all their web needs. That instantly creates a problem because, to avoid turning work down, the person then quickly has to learn more skills. Without realizing it, by doing this, the client is slowing the development of the site which will make it more expensive. Even worse, making the designer learn more skills that they&#8217;re not expert in could make the final product suffer. So, we need to find a way to better define job titles which are more universally understood.</p>
<p>Next comes the problem of qualifications and experience. From what I know about the industry, getting work is less about formal certifications and more about a strong and long-standing portfolio of work completed in the past. This introduces the problem of where you get that experience from when starting out. One way that I&#8217;ve personally tried to overcome this was by offering to take design jobs at no charge. Doing that for a while really opened my eyes in regards to just how demanding people can be even when they&#8217;re getting something for free that would run them hundreds on the open market. This quickly made it crystal clear that, even though it helped me to build a portfolio. I could not possibly devote every evening to it and see no financial return. So, the problem still stands, how the hell do you gain trust if nobody is willing to trust you in the first place?</p>
<p>Add to all of this the issue of not knowing what kind of qualifications and references that commercial design firms will expect and you&#8217;ve got yourself a big fat pile of unknowns. On that note, I saw <a href="http://css-tricks.com/poll-results-degree-and-job/">an article </a>that gave poll results from readers of a large design blog relating to the relationship between having an academic degree and their current web design job. I&#8217;ll let you go over to the page if you&#8217;re interested but, in summary, the results are a very mixed bag. Although I personally believe that a range of skills are important in case you want a career shift in the future, one thing the article does reinforce is that this is not always entirely necessary.</p>
<p>Free free to give your thoughts down below.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.tom-rogers.com/getting-work-as-a-web-designer/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		<feedburner:origLink>http://www.tom-rogers.com/getting-work-as-a-web-designer/</feedburner:origLink></item>
		<item>
		<title>Web Design In Education Will Kill The Semantic Web</title>
		<link>http://feedproxy.google.com/~r/TomRogers/~3/sy6eSBdxUig/</link>
		<comments>http://www.tom-rogers.com/web-design-in-education-will-kill-the-semantic-web/#comments</comments>
		<pubDate>Thu, 18 Nov 2010 21:08:14 +0000</pubDate>
		<dc:creator>Tom Rogers</dc:creator>
				<category><![CDATA[Web]]></category>
		<category><![CDATA[education]]></category>
		<category><![CDATA[problems]]></category>
		<category><![CDATA[w3c]]></category>
		<category><![CDATA[web]]></category>
		<category><![CDATA[web design]]></category>
		<category><![CDATA[web markup]]></category>
		<category><![CDATA[web standerards]]></category>

		<guid isPermaLink="false">http://www.tom-rogers.com/?p=190</guid>
		<description><![CDATA[Most of you will probably know that I hope to work in the web industry as part of my future career. As such, getting a recognized qualification is very important to me. However, one thing that I&#8217;m equally as passionate &#8230; <a href="http://www.tom-rogers.com/web-design-in-education-will-kill-the-semantic-web/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Most of you will probably know that I hope to work in the web industry as part of my future career. As such, getting a recognized qualification is very important to me. However, one thing that I&#8217;m equally as passionate about is pushing the movement towards web standards and semantic markup along. Only recently have I seen just how far the idea of a unified web is away from what our society is teaching in the classroom.</p>
<p>What angers me most is that, in order to get the grades I will need for the job market, I am required to produce a product whilst knowing that it drops the ball on several major areas that I learned on day one of my design journey. For example, we were told that the root location of all websites is ALWAYS index.html. Well, a person only has to install WordPress or Moodle (which, by the way is used by the college in question) to see that such a claim is a bare-faced lie! We were also told that writing HTML from scratch is &#8220;the old way&#8221; of doing things and that people now use graphical web authoring tools. If the teacher who told us that bollocks knew the first thing about the industry, they would know that this is simply not the case. In actual fact, all respectable web developers would tell you the exact opposite as it helps them to achieve cleaner code.</p>
<p>I guess my point is, we don&#8217;t want the future industry being restricted by fundamentally incorrect information. If people can&#8217;t do something right, they shouldn&#8217;t do it at all.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.tom-rogers.com/web-design-in-education-will-kill-the-semantic-web/feed/</wfw:commentRss>
		<slash:comments>24</slash:comments>
		<feedburner:origLink>http://www.tom-rogers.com/web-design-in-education-will-kill-the-semantic-web/</feedburner:origLink></item>
	</channel>
</rss>

