<?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>Optimalworks Ltd</title>
	<atom:link href="http://www.optimalworks.net/feed" rel="self" type="application/rss+xml" />
	<link>http://www.optimalworks.net</link>
	<description>web design, SEO, training and consultancy</description>
	<lastBuildDate>Tue, 21 Jul 2009 09:18:30 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>BetterInnerHTML v1.2 update &#8211; the best innerHTML alternative</title>
		<link>http://www.optimalworks.net/blog/2009/web-development/javascript/betterinnerhtml-innerhtml-replacement</link>
		<comments>http://www.optimalworks.net/blog/2009/web-development/javascript/betterinnerhtml-innerhtml-replacement#comments</comments>
		<pubDate>Tue, 21 Jul 2009 09:17:17 +0000</pubDate>
		<dc:creator>Craig</dc:creator>
				<category><![CDATA[free download]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[ajax]]></category>
		<category><![CDATA[dom]]></category>
		<category><![CDATA[download]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[standards]]></category>
		<category><![CDATA[xml]]></category>

		<guid isPermaLink="false">http://www.optimalworks.net/?p=137</guid>
		<description><![CDATA[BetterInnerHTML v1.2, the innerHTML alternative, has been released. This version now allows multiple inline event handlers to be defined for any HTML tag.]]></description>
			<content:encoded><![CDATA[<p>BetterInnerHTML v1.2 has just been released. The update now allows multiple inline event handlers (onclick, onmouseover, onmouseout, etc.) to be attached to the same tag. Previous versions only allowed one handler per tag.</p>
<p><a href="http://www.optimalworks.net/resources/betterinnerhtml/"><strong>Visit the BetterInnerHTML download page&#8230;</strong></a></p>
<h2>What is BetterInnerHTML?</h2>
<p>BetterInnerHTML is a replacement for innerHTML. Like innerHTML, you can pass a string of HTML and have it rendered somewhere on the page. However, it uses standard DOM node insertion methods that prevents the problems.</p>
<p>Did we mention that <strong>it’s free</strong>? However, we do accept donations toward future updates and support.</p>
<p>For more information and technical details, please refer to <a href="http://www.optimalworks.net/blog/2007/web-development/javascript/innerhtml-alternative">innerHTML: the ultimate alternative solution</a>.</p>
<p>We hope you find it useful and appreciate your feedback.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.optimalworks.net/blog/2009/web-development/javascript/betterinnerhtml-innerhtml-replacement/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Now blogging at SitePoint.com&#8230;</title>
		<link>http://www.optimalworks.net/blog/2009/general/blogging-at-sitepoint</link>
		<comments>http://www.optimalworks.net/blog/2009/general/blogging-at-sitepoint#comments</comments>
		<pubDate>Mon, 02 Mar 2009 12:08:44 +0000</pubDate>
		<dc:creator>Craig</dc:creator>
				<category><![CDATA[general]]></category>

		<guid isPermaLink="false">http://www.optimalworks.net/?p=126</guid>
		<description><![CDATA[Craig is now blogging at SitePoint.com - the best technology resource on the web. The Optimalworks blog is still going, but you can find more of my articles there.]]></description>
			<content:encoded><![CDATA[<p>You may have noticed that things have been a little quiet on the Optimalworks blog recently. I am still around, but I have recently started writing articles for <a href="http://www.sitepoint.com/">SitePoint.com</a>.</p>
<p>SitePoint is one of the biggest and best resources on the Internet for web developers, graphic designers, technology evangelists and just about anyone who has an interest in the web. I&#8217;ve been visiting SitePoint for over 10 years and I&#8217;d suggest you take a look too.</p>
<p><a href="http://www.sitepoint.com/articlelist/560/">View my latest SitePoint blog posts&#8230;</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.optimalworks.net/blog/2009/general/blogging-at-sitepoint/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>WordPress 2.7 review</title>
		<link>http://www.optimalworks.net/blog/2008/software/wordpress-27-review</link>
		<comments>http://www.optimalworks.net/blog/2008/software/wordpress-27-review#comments</comments>
		<pubDate>Mon, 15 Dec 2008 14:07:29 +0000</pubDate>
		<dc:creator>Craig</dc:creator>
				<category><![CDATA[software]]></category>
		<category><![CDATA[review]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://www.optimalworks.net/?p=122</guid>
		<description><![CDATA[A hands-on review of WordPress 2.7. Does it match earlier versions for ease of installation and use? Are there any essential new features? Are there any problems?]]></description>
			<content:encoded><![CDATA[<p>The hotly anticipated WordPress 2.7 is now available from <a href="http://wordpress.org">wordpress.org</a>. As regular readers will know, this website has been implemented using Wordpress for the past couple of years and I&#8217;ve been impressed how the product has evolved.</p>
<h2>Installation and upgrade</h2>
<p>Considering the number of changes, installation and upgrade remains trouble-free. So far, I&#8217;ve not experienced any loss of data, plugin compatibility or any other weird issues.</p>
<p>Whilst I&#8217;d love to use svn to upgrade, it&#8217;s not supported by every host so FTP is the only way to go. However, WP2.7 now offers an automatic upgrade process so it could be the last time I experience that pain! I&#8217;ll report back on how successful WP2.7.1 is.</p>
<h2>New interface</h2>
<p>Most software manufacturers keep their interfaces the much the same and certainly do not make radical changes between minor revisions. However, the WordPress interface has changed dramatically since version 2.6, and this has been the third or fourth revision since v2.0.</p>
<p>Is it better though? It&#8217;s certainly different, a little cleaner, and a little quicker, but I&#8217;m yet to be convinced that it&#8217;s any more usable than previous versions. Time will tell.</p>
<p>The new configurable dashboard is great, though, and it provides quick access to most of the day-to-day facilities you need.</p>
<h2>New features</h2>
<p>Most of the new features are small enhancements such as &#8217;sticky&#8217; posts and threaded comments. They&#8217;ll certainly be useful for some sites, but are unlikely to be killer features.</p>
<h2>Should you use it?</h2>
<p>WordPress has matured into a fantastic Content Management System and certainly does more than <em>just</em> blogging. Many web developers, including myself, provide it to clients because it&#8217;s one of the easiest and nicest web publishing platforms available for end users.</p>
<p>WordPress 2.7 is a great upgrade and is highly recommended.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.optimalworks.net/blog/2008/software/wordpress-27-review/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>JavaScript ZX Spectrum emulator &#8211; bonkers, but genius</title>
		<link>http://www.optimalworks.net/blog/2008/web-development/javascript/javascript-spectrum-emulator</link>
		<comments>http://www.optimalworks.net/blog/2008/web-development/javascript/javascript-spectrum-emulator#comments</comments>
		<pubDate>Sat, 01 Nov 2008 15:58:47 +0000</pubDate>
		<dc:creator>Craig</dc:creator>
				<category><![CDATA[javascript]]></category>
		<category><![CDATA[emulation]]></category>

		<guid isPermaLink="false">http://www.optimalworks.net/?p=111</guid>
		<description><![CDATA[There are dozens of Sinclair ZX Spectrum emulators, but this one is written in JavaScript and works in a browser! Genius? Madness? Or a bit of both?]]></description>
			<content:encoded><![CDATA[<p>JavaScript is one of the first programming languages you use when starting out in web development. It&#8217;s easy to pick up, you don&#8217;t need a server or a compiler, it&#8217;s fun, and the results are instantaneous.</p>
<p>Then you discover the problems. JavaScript implementations are inconsistent, browser incompatibilities are a nightmare, debugging (in pre-Firebug days) is frustrating, and JavaScript book are universally bad. Most developers turn their back on the language and stick with server-side development.</p>
<p>JavaScript is probably the most widely used computer language in the world &#8211; it&#8217;s in every browser, and billions of web pages use it. But it&#8217;s also the most misunderstood and misused language &#8230; which I&#8217;ll blog about at some point.</p>
<p>I&#8217;m a big fan of JavaScript. I&#8217;m always on the hunt for great JS effects and ideas, but this is the most bizarre I&#8217;ve found recently:</p>
<p><a href="http://matt.west.co.tt/spectrum/jsspeccy/">JSSpeccy &#8211; a JavaScript Sinclair ZX Spectrum emulator</a></p>
<p>There&#8217;s also an <a href="http://jsspeccy.zxdemo.org/">online Spectrum emulator demonstration page with a selection of games</a>.</p>
<p>My first computer was a ZX Spectrum 48K. I still love the machines; they introduced thousands of people to computing and made programming available to the masses. Sinclair BASIC was great for beginners and the manuals were excellent.</p>
<p>Matt West has therefore managed to combine two of my favourite technologies! OK, it&#8217;s not the fastest or most usable emulator you&#8217;ll find, but the fact that it works is amazing. Matt &#8211; you&#8217;re a genius &#8211; and probably a little mad too!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.optimalworks.net/blog/2008/web-development/javascript/javascript-spectrum-emulator/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Google Chrome &#8211; the browser&#8217;s first month and it&#8217;s future</title>
		<link>http://www.optimalworks.net/blog/2008/software/web-browsers/google-chrome-review</link>
		<comments>http://www.optimalworks.net/blog/2008/software/web-browsers/google-chrome-review#comments</comments>
		<pubDate>Wed, 08 Oct 2008 19:08:09 +0000</pubDate>
		<dc:creator>Craig</dc:creator>
				<category><![CDATA[web browsers]]></category>
		<category><![CDATA[chrome]]></category>
		<category><![CDATA[firefox]]></category>
		<category><![CDATA[ie]]></category>
		<category><![CDATA[opera]]></category>
		<category><![CDATA[safari]]></category>

		<guid isPermaLink="false">http://www.optimalworks.net/?p=109</guid>
		<description><![CDATA[Google Chrome is the latest browser to enter an increasingly crowded market. What's it like? What's good? What's bad? And why Google should not add extensions or plugins to it just yet...]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.google.com/chrome">Google Chrome</a> is the latest browser to enter an increasingly crowded market place. Windows users can now choose between IE, Firefox, Opera, Safari, Chrome and dozens of other browsers or offshoot projects like Flock.</p>
<p>It was no secret that a Google-branded browser was likely. Google and Mozilla have been working closely with each other, so most people expected a Firefox-based product. That would have been the easiest option for Google but, they&#8217;re not short of cash and surprised everyone by releasing their own browser in August 2008.</p>
<h2>Chrome&#8217;s features</h2>
<p>Chrome is not revolutionary, but that&#8217;s not necessarily a bad thing. By coming to the market this late, Google were able to copy the best features from all the browsers and amalgamate them into one product.</p>
<p>The interface is clean and minimalistic. On startup, you&#8217;re presented with a single browsing tab and a handful of icons. The default start page is similar to Opera&#8217;s speed dial, but shows the sites you&#8217;ve visited recently with a handy screenshot. There are no menus, status bars, fancy widgets or anything else to distract you from browsing the web.</p>
<p>Google&#8217;s main goal was to make the browser fast and stable. It uses the Webkit HTML rendering engine, which is also implemented in Safari and Konqueror. Webkit is a good choice; the engine is mature and is unlikely to throw up too many surprises.</p>
<p>For stability, Chrome goes further than most other browsers and treats every tab as a separate process. The theory is that a single tab crashing won&#8217;t bring down all the other tabs you&#8217;ve opened. Whether this actually succeeds remains to be seen, but it sounds promising.</p>
<p>The main drawback with separate processes is the memory overhead. In practice, each tab uses at least 20-30MB in Windows XP. That won&#8217;t be a problem for most users but, if you&#8217;re like me, you may have problems opening dozens of tabs when trawling RSS feeds.</p>
<p>The final well-promoted feature is &#8220;incognito&#8221; (dubbed &#8216;porn&#8217;!) mode. This provides completely anonymous browsing that will not record page history, store cookies, etc. If you&#8217;re paranoid about surfing the web, it could be for you!</p>
<h2>Using Chrome</h2>
<p>The only strange thing I encountered with Chrome is the installer. Rather than installing to the Program Files folder, it uses an application data folder. I&#8217;m sure Google have good reasons for doing that &#8211; perhaps so the application and it&#8217;s data could go in one location? But it&#8217;s a little odd and I think Google should really adhere to normal Windows standards whether they like them or not.</p>
<p>Other than that, the browser is a pleasure to use. It starts quickly, is easy, and never gets in the way. I experienced a few minor quirks with complex sites (ironically, it was Google Docs), but nothing major.</p>
<h2>Chrome&#8217;s criticisms</h2>
<p>The main criticisms of Chrome come from the web development community:</p>
<ol>
<li>Chrome nothing special or particularly fast compared to other browsers
<p>I&#8217;d agree with that; it&#8217;s just another browser. However, more competition in the browser market is a good thing. I&#8217;d hate to return to the days where only one company and one browser rules supreme and dictates the direction of the web.</li>
<li>It&#8217;s yet another browser to test against.
<p>If you adhering to web standards and best-practice techniques, Chrome won&#8217;t cause too many problems. In fact, <a href="http://googlewebmastercentral.blogspot.com/2008/09/workin-it-on-all-browsers.html">Google is now recommending web standards</a> (although that page throws 200 validation errors!)</p>
<p>Since Chrome&#8217;s using Webkit, most of the issues you encounter are likely to affect Safari too &#8230; <em>and you already testing that, aren&#8217;t you?</em></li>
<li>Chrome doesn&#8217;t have extensions or widgets.</li>
</ol>
<p>In my opinion, Google should <strong>not</strong> implement extensions in Chrome.</p>
<p>Google may have good intentions regarding their browser but, underlying all the pretence, they have one objective: to take on Microsoft and Internet Explorer. Although Microsoft is improving IE, the browser continues to hold back web development and has a strong influence on what&#8217;s possible on the web.</p>
<p>Unfortunately, the vast majority of users stick with IE because it&#8217;s on their PC and they don&#8217;t have the knowledge, ability, or inclination to switch. Whatever your opinions of the browser, it works for many people and they&#8217;ll rarely experience problems. It is those users that Google needs to target.</p>
<p>Extensions and widgets are installed by power users. If you use them, you&#8217;re probably using Firefox or Opera already. Extensions in Chrome may encourage you to switch, but you&#8217;re not in Google&#8217;s target demographic. On the contrary, even if extensions have no effect on the browser&#8217;s stability and speed, they will make Chrome more complex to use. That&#8217;s hardly likely to attract die-hard IE users.</p>
<h2>Chrome&#8217;s future</h2>
<p>Google will not let Chrome fail and <a href="http://www.w3schools.com/browsers/browsers_stats.asp">W3Schools recorded 3.1% usage in Chrome&#8217;s first month</a>. That is huge, and it appears to have taken a small proportion of users from IE6, IE7 and Firefox. In reality, W3Schools is a developer site and I suspect much the Chrome traffic is curious developers testing the browser.</p>
<p>So would I use Chrome? I might be tempted for a little quick and dirty browsing, but I won&#8217;t be switching from Firefox. But I&#8217;m a web developer and Chrome isn&#8217;t aimed at me. However, I&#8217;d would certainly recommend Chrome &#8211; especially to novice PC users.</p>
<p>Google &#8211; if you&#8217;re listening &#8211; here&#8217;s my suggestions&#8230;</p>
<ol>
<li>Change the browser name
<p>Chrome is very clever and all that, but it means nothing to most users. Call it &#8220;Google Internet&#8221; or &#8220;GInternet&#8221; and get the icon on to user&#8217;s desktops.</li>
<li>Promote Chrome everywhere
<p>Assuming Chrome reaches v1.0, it should be publicised on Google.com, YouTube, and everywhere else. I&#8217;m willing to advertise it here for a small negotiable fee!</li>
<li>Do licencing deals with PC manufacturers
<p>The easiest way to achieve mass-market penetration is if user&#8217;s don&#8217;t need to install Chrome and it&#8217;s on their desktop from day 1.</p>
<p>I suspect Dell is a done deal (they already offer the Google sidebar in preference to Vista&#8217;s one), but a similar arrangement with Compaq and HP (who&#8217;ll put anything on their PC&#8217;s for a few pennies) could make a significant difference to the Chrome&#8217;s market share.</li>
</ol>
<p>What do you think? All comments welcome&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.optimalworks.net/blog/2008/software/web-browsers/google-chrome-review/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>SEO secrets and the great internet services swindle</title>
		<link>http://www.optimalworks.net/blog/2008/web-development/seo/seo-secrets-swindle</link>
		<comments>http://www.optimalworks.net/blog/2008/web-development/seo/seo-secrets-swindle#comments</comments>
		<pubDate>Sun, 05 Oct 2008 20:08:17 +0000</pubDate>
		<dc:creator>Craig</dc:creator>
				<category><![CDATA[seo]]></category>

		<guid isPermaLink="false">http://www.optimalworks.net/?p=105</guid>
		<description><![CDATA[A lack of knowledge has opened a gap in the market for SEO specialists. But are they any good? Will they improve your business? Or are they just selling 21st Century snake oil?]]></description>
			<content:encoded><![CDATA[<p>There must be some great Search Engine Optimisation (SEO) companies out there. I’m sure they employ people who know what they are doing, are open with their methods, and work hard for a reasonable rate.</p>
<p><em>I&#8217;m just yet to find one.</em></p>
<p>I work with many web developers, project managers, content authors, and clients, but it&#8217;s rare to find SEO knowledge in any camp:</p>
<ul>
<li>Web developers are busy creating the next big thing. They don&#8217;t usually have the time or inclination to research ‘soft’ technologies like SEO. Many are working on web applications which don&#8217;t always have a direct requirement for search engine optimisation.</li>
<li>Project managers have an obligation to deliver on time and on budget. They might add SEO to their gantt chart, but it’ll be squeezed to the minimum and dropped at the first sign of project overrun (not that IT projects ever overrun, of course!) SEO is a hidden part of the project and clients will rarely know how well it has been implemented.</li>
<li>Content authors may have knowledge of optimisation, but they do not control the HTML template or semantics. If the template is not optimised, their content is unlikely to be either. The majority of Content Management Systems (CMS) also produce shockingly bad code if you let them.</li>
<li>Finally, most clients want their website or application to be complete, look pretty, and respond quickly. Few will think about SEO until, 12 months after project completion, they type &#8220;software&#8221; into Google and fire out emails asking why their site isn&#8217;t at #1!</li>
</ul>
<p>This lack of knowledge has opened a gap in the market for SEO specialists. Can they make the difference between your product selling or sinking?</p>
<h2>SEO services: 21<sup>st</sup> century snake oil</h2>
<p>SEO is masked in mystery. How many other service industries can offer a product without disclosing what technologies and techniques they provide? </p>
<p>Several of my clients have contacted me to discuss services they&#8217;ve been offered by &#8220;specialist&#8221; SEO companies. In many cases, they&#8217;ve received cold-calls from pushy sales people who have blinded them with jargon and scared them into thinking that, unless they&#8217;re #1 in Google, their business will be dead within weeks. Some of the more outrageous claims include:</p>
<ol>
<li><strong>We&#8217;ll get you on the first page of the major search engines</strong>
<p>Great. Which search engines and which terms? Within days of this article being published I&#8217;ll be #1 in Google for <em>&#8220;bonkdonkdong&#8221;</em>, but will it bring me any business?</p>
<p>Remember that it&#8217;s very easy to buy AdSense adverts that get you on the first page of Google for any term &#8230; and charge a huge premium for doing so.</li>
<li><strong>Our techniques are secret</strong>
<p>So they won&#8217;t tell you what they&#8217;re doing, how they do it, how long it will take them, or what benefits it will bring. SEO techniques are not secret – indeed, much of it is common sense. If there were &#8216;hidden&#8217; methods to being indexed in Google, then it wouldn&#8217;t be such a great search engine in the first place.</p>
<p>Sales techniques like this prey on those without technical knowledge. It&#8217;s a short step away from telling people they&#8217;ll only see an increase in website traffic if they&#8217;ve got a high IQ. Don&#8217;t be taken in.</li>
<li><strong>We guarantee X visitors per month</strong>
<p>Right &#8230; so everyone in the SEO&#8217;s head office will spend a couple of minutes clicking through to your website. That&#8217;s the only sure-fire way of guaranteeing traffic. </p>
<p>Worse is that traffic for the sake of it is not good. I could receive thousands of visitors wanting to buy socks, but that won&#8217;t help if I don&#8217;t sell them. In an ideal world, you want every visitor to make a purchase. At the very least, you want a large percentage to be actively interested in the goods or services you&#8217;re selling.</li>
</ol>
<h2>What the bad SEO specialists don&#8217;t offer</h2>
<p>It&#8217;s easy to spot a bad SEO &#8220;expert&#8221; – they only concentrate on how much traffic they will bring to your site &#8230; at a huge monthly cost. What they don&#8217;t offer is often more revealing&#8230;</p>
<ol>
<li><strong>No business analysis</strong>
<p>Surely everyone needs more website traffic and customers? Not necessarily. A business acquaintance recently contacted me about an SEO company who had been recommended by their web developer. They run a small 12-bedroom hotel in Southern England and were on the verge of signing up to an SEO contract that would have initially cost £2,000 plus £300 per month.</p>
<p>My first question to them was: are you fully occupied at any time during the year? They were: from May to October, they were generally fully booked. My next question: do you intend to expand the hotel business, add premises, rooms, or services? That wasn&#8217;t an option in this case. My next question was obvious: why do you intend spending significant amounts of money on SEO when you cannot possibly take additional customers for half the year? Extra enquiries would have simply been a burden on the company during its busiest period.</p>
<p>Had the SEO company asked any of these basic questions? At the very least, not understanding the client&#8217;s business makes it impossible to determine the keywords and phrases that will bring additional traffic.</li>
<li><strong>They won&#8217;t examine or change your existing website</strong>
<p>In an ideal world, SEO techniques should be implemented in your website from the start. In reality, it doesn&#8217;t always happen and basic mistakes can be made that adversely affect rankings, e.g. poor keywords, missing page titles, incorrect use of headings, content that can&#8217;t be indexed, etc.</p>
<p>A good SEO company should check your site and either recommend or implement changes. The bad ones won&#8217;t even glance at it.</li>
<li><strong>They won&#8217;t explain the benefits or offer any evidence</strong>
<p>It&#8217;s amazing how many people sign up for SEO services without knowing what they&#8217;re buying. A good SEO company should educate their clients and provide statistical evidence to back up their claims. Statistics should be provided in layman&#8217;s terms with explanations where necessary; never trust a sales person who insists on talking about &#8216;hits&#8217;!</li>
<p>Ultimately, you need to know how much it is costing to attract a new customer and whether that cost is effective for your business.</p>
<h2>SEO is not black magic</h2>
<blockquote><p>Selling a website without SEO is like selling a car without wheels: it might look great, but it won&#8217;t take you anywhere</p></blockquote>
<p>I&#8217;m always amazed by web agencies who charge extra for SEO or refer their clients to SEO specialists. SEO techniques are not difficult; almost every business website needs SEO methods implemented from day 1. Selling a website without SEO is like selling a car without wheels: it might look great, but it won&#8217;t take you anywhere.</p>
<p>Do not make the mistake of considering SEO as an afterthought. By doing so, you&#8217;ll be tempted to employ an SEO agency who could do very little but take huge amounts of your hard-earned money.</p>
<p>Have you experienced bad SEO services? Do you work for a great SEO company? All comments welcome!&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.optimalworks.net/blog/2008/web-development/seo/seo-secrets-swindle/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>PNGs, graphic filters, and yet more IE problems</title>
		<link>http://www.optimalworks.net/blog/2008/web-development/ie-png-filter-problems</link>
		<comments>http://www.optimalworks.net/blog/2008/web-development/ie-png-filter-problems#comments</comments>
		<pubDate>Sun, 10 Aug 2008 15:14:56 +0000</pubDate>
		<dc:creator>Craig</dc:creator>
				<category><![CDATA[web browsers]]></category>
		<category><![CDATA[web development]]></category>
		<category><![CDATA[graphics]]></category>
		<category><![CDATA[ie]]></category>
		<category><![CDATA[png]]></category>

		<guid isPermaLink="false">http://www.optimalworks.net/?p=97</guid>
		<description><![CDATA[Just when you think you understand Internet Explorer's PNG problems, another couple of issues crop up in IE6 and IE7.]]></description>
			<content:encoded><![CDATA[<p>I really thought I understood IE&#8217;s PNG problems and knew how to get around them. But then, two more crop up within a week&#8230;</p>
<h2>Failing filters in IE6</h2>
<p>I recently developed a fairly complex template for a client which required 24-bit PNGs and transparency effects. It had to work in IE6, IE7, and all the decent browsers. IE6 PNG support is <a href="http://www.alistapart.com/stories/pngopacity/">well understood</a>, so it&#8217;s not normally a problem to implement workarounds. Personally, I use JavaScript to apply IE6 filters when a 24-bit PNG is required.</p>
<p>The template was completed, tested in every major browser, and submitted to the client &#8230; where it consistently failed in IE6. None of the 24-bit PNGs or transparency filters worked in any of their installations, whereas mine was fine.</p>
<p>The culprit turned out to be &#8230; <em>Internet Explorer 7</em>. Bizarrely, installing IE7 then running a <a href="http://browsers.evolt.org/?ie/32bit">standalone version of IE6</a>, or simply uninstalling IE7 will replace IE6&#8217;s filter library and cause it to fail. Thanks Microsoft.</p>
<p>I didn&#8217;t notice the problem because I use IE6 as my main IE test browser (it causes the most problems). I run IE7 in a virtual machine so there&#8217;s no possibility of a conflict. However, the developers at my client&#8217;s office either used standalone versions of IE6 or the excellent <a href="http://www.my-debugbar.com/wiki/IETester/HomePage">IETester</a>.</p>
<p>Fortunately, the problem can be fixed by copying &#8216;old&#8217; working versions of dxtrans.dll and dxtmsft.dll to your IE6 installation folder. The files can be found in <a href="http://browsers.evolt.org/?ie/32bit/6.0">Evolt.org&#8217;s browser archive</a> or you can <a href="http://www.filedropper.com/ie6-filter-fix"><strong>download the IE6 filter fix files separately</strong></a>. I hope that helps someone &#8211; it caused me several hours of frustration!</p>
<h2>IE7 and applying filters to 24-bit PNGs</h2>
<p>Just when I thought it was safe to use PNGs in IE again, another problem crops up in IE7. Web developers begged Microsoft for PNG support and they finally implemented it in IE7. Sort of.</p>
<p>IE7 has absolutely no problem if you put a 24-bit alpha-transparent PNG on a page using an &lt;img&gt; tag or a CSS background. However, issues arise as soon as you try doing anything fancy &#8211; like making that image fade-in using the IE opacity filter.</p>
<p>From what I can see, IE7 sees the transparent pixels in the PNG, it knows that you want to make them even <em>more</em> transparent, has a mental fit, and makes them all solid black. Weird.</p>
<p>If this occurred in IE6, it would be fairly easy to fix by substituting the PNG for an 8-bit version, e.g. the following CSS exploits an IE6 bug:
<code>#mypng {
  background-image: url("my24bit.png") !important; /* IE7 and most other browsers */
  background-image: url("my8bit.png"); /* IE6 and below */
}</code></p>
<p>Yes it&#8217;s a bit of a hack, but it&#8217;s minor, easy to debug, and is still valid CSS. However, IE7 is much harder to identify. I&#8217;m not sure the problem can be solved without resorting to conditional comments or browser sniffing &#8211; both of which should be avoided if possible.</p>
<p>So if you&#8217;re planning on using alpha-transparent PNGs, don&#8217;t bother applying IE filters! Unless someone knows of a solution?&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.optimalworks.net/blog/2008/web-development/ie-png-filter-problems/feed</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Offline web technology: where are the killer applications?</title>
		<link>http://www.optimalworks.net/blog/2008/web-development/offline-web-applications</link>
		<comments>http://www.optimalworks.net/blog/2008/web-development/offline-web-applications#comments</comments>
		<pubDate>Mon, 28 Jul 2008 18:55:59 +0000</pubDate>
		<dc:creator>Craig</dc:creator>
				<category><![CDATA[web development]]></category>
		<category><![CDATA[computing]]></category>
		<category><![CDATA[software]]></category>

		<guid isPermaLink="false">http://www.optimalworks.net/?p=90</guid>
		<description><![CDATA[Several major companies, including Google, Adobe, and Mozilla have been actively developing technologies that allow web applications to work when you're not connected to the internet. Great stuff. Or is it? I initially thought so and was excited by the prospect, but I'm not so sure now...]]></description>
			<content:encoded><![CDATA[<p>If you&#8217;re reading this, there&#8217;s a strong chance that you&#8217;re a regular user of online applications for email, mapping, blogs or even documents and spreadsheets. The distinction between web and desktop applications has blurred: it&#8217;s certainly possible to buy a web-connected PC and complete all your computing tasks without installing any software (except a <a href="http://www.getfirefox.com/">decent browser</a> perhaps!)</p>
<p>Several major companies, including Google, Adobe, and Mozilla have been actively developing technologies that allow web applications to work when you&#8217;re not connected to the internet. Although they differ in functionality and implementation, in general they allow the developer to:</p>
<ol>
<li>leverage their web skills to create an OS-independent application that runs on the desktop,</li>
<li>run processes locally to improve latency and application response, and</li>
<li>store data on the PC either permanently or temporarily during periods when there is no internet access.</li>
</ol>
<p>Great stuff. Or is it? I initially thought so and was excited by the prospect, but I&#8217;m not so sure now&#8230;</p>
<h2>Creating web-based desktop applications</h2>
<p>Installing an icon on the user&#8217;s desktop is a web marketing manager&#8217;s wet dream. The user won&#8217;t forget about your service or visit a competitor because they&#8217;ll see your icon every time they boot up. The application can also run in it&#8217;s own window: navigation icons and the address bar won&#8217;t be there, which can significantly help development too. Finally, the apps are easy to install and can log the user on to the manufacturer&#8217;s site without them having to remember an ID or password.</p>
<p>One of the first Adobe Air applications was an eBay widget that provided details about your sales and purchases. It didn&#8217;t do anything that you couldn&#8217;t do on the eBay site, but I can understand why it&#8217;s attractive to big businesses.</p>
<p>But how do users benefit? The real beauty of the web is that I don&#8217;t need to install anything. I can create a desktop shortcut to a site if I like, but I&#8217;m in control of my browser and can do what I choose.</p>
<p>So there&#8217;s the possibility of using my web skills to build a desktop application. That&#8217;s feasible for simple widgets, but HTML controls are not as rich or usable as those provided by most desktop programming environments (not without a lot of effort, anyway). If I really want to develop a desktop application, then it&#8217;s much easier to use VisualStudio or another IDE. I can still use web services and, although cross-platform development is harder, solutions such as Qt make that possible.</p>
<h2>Improving latency and response</h2>
<p>If the server can offload work to the client, then the processing overhead is distributed. It&#8217;s also possible to send data in more efficient batches rather than requesting a full page reload.</p>
<p>However, most good web applications are doing that already. Ajax techniques allow data sent, received, and processed locally without a full page reload. Offline applications don&#8217;t make that any easier, unless you consider local data storage&#8230;</p>
<h2>Local data storage</h2>
<p>The killer feature. Offline storage on your local PC can provide several advantages:</p>
<ol>
<li>You can store sensitive information which won&#8217;t be transmitted over the web.</li>
<li>You can use a web application even when you&#8217;re offline. For example, you could complete an article using Google Docs which is then sync&#8217;d the next time you&#8217;re connected.</li>
</ol>
<p>In reality, though, just how useful is this? If I&#8217;m storing sensitive data, then why would I use a web-based app? There are plenty of desktop-based alternatives that never pose a risk of connecting to the internet (I can recommend <a href="http://keepass.sourceforge.net/">KeePass</a>).</p>
<p>So that leaves us with offline storage. I can see the appeal, but if I&#8217;m going to be editing a document in a location with poor net coverage, then I&#8217;ll use a word processor. There&#8217;s the possibility my connection could go down but that&#8217;s rare and, if it happens, I&#8217;ll just copy the text from my browser to WordPad.</p>
<p>The big advantage of web applications is that data is stored in the cloud. Offline storage offers a safety net, but how often will that net be necessary? There&#8217;s one thing we can be certain of: internet connectivity will improve.</p>
<h2>So what will the killer app be?</h2>
<p>Here&#8217;s where I&#8217;m stuggling. Offline web apps sound useful, but the majority are either password managers, online apps with the option of offline storage, or dubious tools that only &#8220;advertise&#8221; big sites.</p>
<p>Offline web technology appears to be a solution looking for an application. I&#8217;m not saying there won&#8217;t be a killer app, but it doesn&#8217;t exist now and I&#8217;m not convinced it ever will.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.optimalworks.net/blog/2008/web-development/offline-web-applications/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>The first month with Firefox 3.0 &#8211; a hands on review</title>
		<link>http://www.optimalworks.net/blog/2008/software/web-browsers/firefox-3-review</link>
		<comments>http://www.optimalworks.net/blog/2008/software/web-browsers/firefox-3-review#comments</comments>
		<pubDate>Sun, 20 Jul 2008 18:27:06 +0000</pubDate>
		<dc:creator>Craig</dc:creator>
				<category><![CDATA[web browsers]]></category>
		<category><![CDATA[firefox]]></category>

		<guid isPermaLink="false">http://www.optimalworks.net/?p=87</guid>
		<description><![CDATA[But does Firefox 3 live up to expectations? Is it a worthy successor to the excellent Firefox 2? What are the improvements and will they make a difference to your internet-enabled life?]]></description>
			<content:encoded><![CDATA[<p>Firefox 3.0 has been out for around a month, and 3.0.1 has already been released. Many existing users have already made the upgrade, and I&#8217;m sure some die-hard IE users have switched following all the hype. But does Firefox 3 live up to expectations? Is it a worthy successor to the excellent Firefox 2?</p>
<h2>Stability</h2>
<p>Firefox downloads and installs just as quickly as before. I choose the uninstall Firefox 2 first, but I&#8217;m sure that I&#8217;d have had no problems had I not done so.</p>
<p>My first installation was not a resounding success. I suffered several crashes and slow operation (20-30 seconds to close a tab). I&#8217;m not totally sure what the problem was, but I suspect it was a weird conflict caused by installing several extensions at once. Anyway, a full reinstall did resolve the issue.</p>
<p>I can&#8217;t claim to have run accurate benchmarks, but Firefox 3 certainly <em>feels</em> more responsive. Pages are rendered quickly and I rarely experience slow operation. It definitely starts quicker too: perhaps not as fast as IE or Opera, but a cold start is not as slow as Firefox 2. Warm starts are almost instantaneous, so no complaints there.</p>
<p>Despite Mozilla&#8217;s claims, Firefox 3 still uses a fair amount of memory. But, it&#8217;s less than Firefox 2, and you can see memory reducing after closing tabs.</p>
<h2>Features</h2>
<p>Firefox 3 has been improved in most areas. Many of them are unlikely to be noticed by the majority of users, but it all adds up to a better overall experience.</p>
<p>Probably the biggest new feature is the &#8216;awesome bar&#8217;. It&#8217;s a little difficult to explain unless you&#8217;ve seen it but, in a nutshell, typing in the main address bar shows appropriate bookmarks and history items. It hasn&#8217;t changed my browsing life, but it is useful.</p>
<p>I especially like the bookmark star icon in the address bar. It allows you to bookmark a site in a single-click and shows whether it&#8217;s already bookmarked. That saves me having to wade through the thousands of sites I&#8217;ve collated during the past 12 years.</p>
<p>Bookmarks organisation has been tidied up. Searching is fast, but I wish it showed which folder a bookmark was saved in or offered a shortcut to it. I used to use the &#8216;Locate in bookmarks&#8217; extension, but it&#8217;s not available in Firefox 3. A couple of alternatives exist, but they&#8217;re not stable and I couldn&#8217;t install them. Even so, it&#8217;s something that should be in the main application.</p>
<h2>Page rendering</h2>
<p>It&#8217;s faster, no question. However, there are a few quirks I&#8217;ve noticed&#8230;</p>
<ol>
<li>Under certain conditions (which I&#8217;ve yet to work out) floating an item without setting a width will make that element use the minimum space possible &#8211; even if the parent has plenty of space available. It can cause text to wrap after the first word, which is not helpful. It could be that Mozilla are following strict W3C rules, but it didn&#8217;t occur in Firefox 1.0, 1.5 or 2.0 and nor does it happen in IE or Opera.</li>
<li>Making a text item transparent appears to remove the anti-aliasing. It only seems to be noticeable on Windows with standard font smoothing (not ClearType), but you can see it occurring on the quote text next to my logo at the top of this page. Refresh the page, and the text looks smooth until the first fade out. Again, this didn&#8217;t seem to occur in previous versions of Firefox?</li>
</ol>
<h2>JavaScript speed</h2>
<p>There have been several claims that Firefox 3 has a significantly faster JavaScript engine and now beats IE and Opera. In my experience, it&#8217;s simply not the case and I&#8217;ve noticed few speed improvements over Firefox 2.0.</p>
<p>Now this could be down to the speed of my PC or some JavaScript coding inefficiencies, but take <a href="http://www.thetalentpool.co.uk/programme/included">this Talent Pool page</a> as an example. Click the tabs and watch the animations; Firefox 3.0 is OK, but it&#8217;s no where near as slick or as fast as IE or Opera 9.5.</p>
<h2>Is it worth the upgrade?</h2>
<p>Unless there&#8217;s an essential Firefox 2-only extension you need, there&#8217;s no doubt you should upgrade to Firefox 3. It may not be as compelling an upgrade as previous versions and few users will notice many improvements; however, that&#8217;s primarily because Firefox is already the best browser available.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.optimalworks.net/blog/2008/software/web-browsers/firefox-3-review/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Stop blog spam with these top techniques</title>
		<link>http://www.optimalworks.net/blog/2008/software/blogs/stop-spam</link>
		<comments>http://www.optimalworks.net/blog/2008/software/blogs/stop-spam#comments</comments>
		<pubDate>Wed, 16 Jul 2008 08:25:29 +0000</pubDate>
		<dc:creator>Craig</dc:creator>
				<category><![CDATA[blogs]]></category>
		<category><![CDATA[security]]></category>
		<category><![CDATA[spam]]></category>

		<guid isPermaLink="false">http://www.optimalworks.net/?p=82</guid>
		<description><![CDATA[If you've got a blog that's even slightly successful, you will receive spam in huge quantities. Here are some tips that will help you reduce spam comments, pings, and trackbacks sent to your blog.]]></description>
			<content:encoded><![CDATA[<p>Like most people, I receive a fair amount of spam email. But it&#8217;s nothing compared to having a blog!</p>
<p>If you&#8217;ve got a blog that&#8217;s even slightly successful, you will receive spam in huge quantities. I&#8217;ve only been monitoring it for around a year, but it&#8217;s now exceed 15,000 messages, with around a third of those coming in the last couple of months.</p>
<p>The latest spammer trick appears to target trackbacks. They post a message to an insecure system which features their links and links to legitimate blogger sites. The trackback is picked up by the blog software and automatically added to the comments list for that message. The result is that the spammer ends up with multiple links to their original message. It must be working &#8211; I&#8217;m getting dozens a day, so I&#8217;m sure many others are too.</p>
<h2>Blog spam filtering</h2>
<p>If running a blog is core to your business, then you need spam filtering. Fortunately, most blog software have spam plug-ins but, if yours doesn&#8217;t, then it may not be the right solution for you.</p>
<p>First, consider whether comments, trackbacks and pings are really required on your blog. They&#8217;re great to have, but if you&#8217;re only publishing industry news or don&#8217;t have the facilities to manage the blog on a daily basis, then it may be best to disable it altogether.</p>
<p>Next, I&#8217;d recommend that you disable automatic comment, ping, and trackback posts. Spam will have a tough time getting through if you&#8217;re manually checking all the messages that appear on your blog.</p>
<p>Now install spam filtering software so you&#8217;re not alerted every time a spam message comes through. The most well known is <a href="http://akismet.com/">Akismet</a>. It&#8217;s primarily aimed at WordPress, but is available for around 20 other platforms. Akismet is great and catches 99% of all my spam.</p>
<p>Finally, you can modify your comment form to ensure only humans are permitted. Many forms use CAPTCHAS; I&#8217;m not particularly keen on them because it makes the form longer and tougher for real people. Personally, I prefer sneakier ways to catch the spambots without affecting real users. A combination of techniques can be implemented, e.g.</p>
<ul>
<li>validate everything</li>
<li>ensure the post comes from the correct referring form</li>
<li>ensure the IP address and user agent is valid and used the correct form</li>
<li>check that JavaScript is available (spambots won&#8217;t have this and the 5% of users who disable it can be offered a CAPTCHA or something similar)</li>
<li>timing the post back &#8211; humans will take several seconds, spambots will not</li>
<li>checking for links &#8211; spambots will always post one or more links, but that&#8217;s more unlikely for real users</li>
<li>using hidden form fields that should not be completed &#8211; but spambots won&#8217;t know that</li>
<li>always rejecting the first post with an intermediate page, e.g. &#8220;are you sure you want to submit your message XXXXX?&#8221;</li>
</ul>
<p>None of these techniques will stop the spammers trying, but they certainly give them a far tougher time and reduce your comment administration.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.optimalworks.net/blog/2008/software/blogs/stop-spam/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

<!-- Dynamic page generated in 0.314 seconds. -->
<!-- Cached page generated by WP-Super-Cache on 2010-03-02 11:16:48 -->
<!-- Compression = gzip -->