<?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>Struggle &#8211; Rotates.org V12</title>
	<atom:link href="https://www.rotates.org/tag/struggle/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.rotates.org</link>
	<description>The personal blog of developer, photographer and designer Lewis &#039;SEPTiMUS&#039; Lane</description>
	<lastBuildDate>Fri, 04 Dec 2009 21:38:25 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.4</generator>

<image>
	<url>https://www.rotates.org/wp-content/uploads/2025/06/cropped-rotates-logo-32x32.png</url>
	<title>Struggle &#8211; Rotates.org V12</title>
	<link>https://www.rotates.org</link>
	<width>32</width>
	<height>32</height>
</image> 
<site xmlns="com-wordpress:feed-additions:1">6964888</site>	<item>
		<title>ColorShift 0.6</title>
		<link>https://www.rotates.org/2009/11/28/colorshift-0-6/</link>
		
		<dc:creator><![CDATA[SEPTiMUS]]></dc:creator>
		<pubDate>Sat, 28 Nov 2009 20:12:38 +0000</pubDate>
				<category><![CDATA[jQuery]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[Releases]]></category>
		<category><![CDATA[Attributes]]></category>
		<category><![CDATA[Background Color]]></category>
		<category><![CDATA[Change]]></category>
		<category><![CDATA[Colors]]></category>
		<category><![CDATA[Colours]]></category>
		<category><![CDATA[Global Change]]></category>
		<category><![CDATA[Hue Saturation]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Offsets]]></category>
		<category><![CDATA[Page Elements]]></category>
		<category><![CDATA[Selectors]]></category>
		<category><![CDATA[Slider]]></category>
		<category><![CDATA[Struggle]]></category>
		<category><![CDATA[Style Element]]></category>
		<guid isPermaLink="false">http://www.rotates.org/?p=134</guid>

					<description><![CDATA[Sooner rather than later it seems, you can now download Rotates ColorShift 0.6 and bask in its amazingness. The main change is how you set your selectors; instead of writing your own jQuery to target the elements you want to change, you feed rotColShiftOpts.cssTransforms with an array of objects. This is what Rotates.org uses: [ [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>Sooner rather than later it seems, you can now <a title="Rotates ColorShift 0.6" href="https://rotates.org/wp-content/plugins/download-monitor/download.php?id=1">download Rotates ColorShift 0.6</a> and bask in its amazingness.</p>
<p>The main change is how you set your selectors; instead of writing your own jQuery to target the elements you want to change, you feed rotColShiftOpts.cssTransforms with an array of objects. This is what Rotates.org uses:</p>
<pre name="code" class="javascript">[
	{
		selector: "a, h2, h3, h4, h5",
		styles: [
			"color"
		]
	},
	{
		selector: "#header, #searchsubmit",
		styles: [
			"background-color"
		]
	}
]</pre>
<p>Actually it was a bit of a struggle, as I wanted to abandon the DOM-based approach to changing the CSS of every individual element, and go for a global stylesheet change. Easy you say? Just .append/.text a style element. Well, yes, in all decent browsers. Sadly, the IE family seems unwilling to let you tamper with the style element so easily, and jQuery (at the moment) has no elegant way around it. So out came the &#8216;Lew hacking pants&#8217; with the following solution:</p>
<pre name="code" class="javascript">ieStyle = document.createStyleSheet();

$.each(rotColShiftOpts.cssTransforms, function(i, ttrans) {
	newColor = getColorWithOffsets(hue, saturation, brightness, ttrans.offsets);
	var tstyles = "";
	$.each(ttrans.attributes, function(i, ts) {
		tstyles += ts + ": " + newColor + ";";
	});
	tmpTransforms += ttrans.selector + "{ " + tstyles + " } ";
});

if ($.browser.msie) { // *sigh*
	ieStyle.cssText = tmpTransforms;
}
else {
	$("style[title='colshift']").text(tmpTransforms);
}</pre>
<p>Anyway the result is that you a) get a better, easier to use syntax for applying the changes to page elements, and b) can be safe in the knowledge the styles will be applied to <em>all</em> elements on the page (even generated ones)  just like CSS should be. Enjoy!</p>
]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">134</post-id>	</item>
		<item>
		<title>Leaky pipes</title>
		<link>https://www.rotates.org/2009/11/03/leaky-pipes/</link>
		
		<dc:creator><![CDATA[SEPTiMUS]]></dc:creator>
		<pubDate>Tue, 03 Nov 2009 14:08:50 +0000</pubDate>
				<category><![CDATA[Personal]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[Rants]]></category>
		<category><![CDATA[Annoyances]]></category>
		<category><![CDATA[Buggy]]></category>
		<category><![CDATA[Bugs]]></category>
		<category><![CDATA[Copy And Paste]]></category>
		<category><![CDATA[Developers]]></category>
		<category><![CDATA[Inefficiencies]]></category>
		<category><![CDATA[Struggle]]></category>
		<category><![CDATA[Third Party Services]]></category>
		<category><![CDATA[Tumultuous Relationship]]></category>
		<category><![CDATA[Yahoo]]></category>
		<category><![CDATA[Yahoo Pipes]]></category>
		<guid isPermaLink="false">http://www.rotates.org/?p=124</guid>

					<description><![CDATA[Well, a tumultuous relationship with Yahoo Pipes has ended after a long struggle with various bugs, inefficiencies, annoyances and finally service refusal. There&#8217;s no doubt Pipes is a very useful and clever system, but it has some very serious downsides: Caching &#8211; every pipe is rigorously cached, and updates are so infrequent as to allow [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>Well, a tumultuous relationship with <a title="Yahoo Pipes" href="http://pipes.yahoo.com/pipes" target="_blank">Yahoo Pipes</a> has ended after a long struggle with various bugs, inefficiencies, annoyances and finally service refusal. There&#8217;s no doubt Pipes is a very useful and clever system, but it has some very serious downsides:</p>
<ul>
<li>Caching &#8211; every pipe is rigorously cached, and updates are so infrequent as to allow bugs to go unspotted during testing, and suddenly rise after the fact.</li>
<li>Crap editor &#8211; I know <a href="http://developer.yahoo.com/yql/">YQL</a> allows you to actually type out your stuff, but Pipes forces you to use its extremely buggy visual editor, which (among other things) fails to resize properly, does not allow copy and paste, frequently puts operators inside the wrong loop (and thus overwrites a painstakingly written item creator or whatever), seems to suddenly stop working at random &#8211; especially if one of your feeds is broken or returning malformed data, which results in ALL of your pipe, even unconnected nodes, breaking ingloriously.</li>
<li>Usage limits &#8211; despite the fierce caching, they still apply a fairly unsatisfactory usage limit, and without warning will shut down your pipes if they go over the limit.</li>
<li>Inefficient operators &#8211; sometimes you really have to go several times around the block to do very simple things, and you&#8217;ll quickly run into these issues.</li>
</ul>
<p>All in all, I know Pipes is free and efficient, but upon my pipes being blocked because of a bug at my end which made too many requests, I had to quickly write my own PHP version to do the same job &#8211; and I found I had more control, it was on the whole an easier experience, and I have control over my own caching and debugging.</p>
<p>The people who use pipes are invariably developers &#8211; so as a word of warning: if you can do it yourself, take the time to do so, don&#8217;t rely wholely on third party services.</p>
]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">124</post-id>	</item>
	</channel>
</rss>
