<?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>Programming Blog &#187; quote</title>
	<atom:link href="http://www.neurosoftware.ro/programming-blog/tag/quote/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.neurosoftware.ro/programming-blog</link>
	<description>Web development , php , ajax , symfony, framework, zend</description>
	<lastBuildDate>Thu, 18 Aug 2011 08:11:19 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>Five books you should read before you turn 42!</title>
		<link>http://www.neurosoftware.ro/programming-blog/facebook-web-design/web-resources/five-books-you-should-read-before-you-turn-42/</link>
		<comments>http://www.neurosoftware.ro/programming-blog/facebook-web-design/web-resources/five-books-you-should-read-before-you-turn-42/#comments</comments>
		<pubDate>Sun, 13 Dec 2009 12:46:00 +0000</pubDate>
		<dc:creator>Facebook-Web-Design</dc:creator>
				<category><![CDATA[web resources]]></category>
		<category><![CDATA[Alan Lightman]]></category>
		<category><![CDATA[albert einstein]]></category>
		<category><![CDATA[Arthur Dent]]></category>
		<category><![CDATA[book]]></category>
		<category><![CDATA[Clement]]></category>
		<category><![CDATA[Douglas Adams]]></category>
		<category><![CDATA[Douglas Coupland]]></category>
		<category><![CDATA[emotional roller coaster]]></category>
		<category><![CDATA[everyone]]></category>
		<category><![CDATA[F
Favourite]]></category>
		<category><![CDATA[Fernando Pessoa]]></category>
		<category><![CDATA[Franz Kafka]]></category>
		<category><![CDATA[hitchikers guide to the galaxy]]></category>
		<category><![CDATA[life]]></category>
		<category><![CDATA[M.I.T]]></category>
		<category><![CDATA[Marvin]]></category>
		<category><![CDATA[marvin the paranoid android]]></category>
		<category><![CDATA[Portugal]]></category>
		<category><![CDATA[quote]]></category>
		<category><![CDATA[science fiction genre]]></category>
		<category><![CDATA[time]]></category>
		<category><![CDATA[William Ewart]]></category>
		<category><![CDATA[william ewart gladstone]]></category>
		<category><![CDATA[William Gibson]]></category>

		<guid isPermaLink="false">http://www.neurosoftware.ro/programming-blog/facebook-web-design/web-resources/five-books-you-should-read-before-you-turn-42/</guid>
		<description><![CDATA[Remember books? Those old fashioned things that have letters printed on them? Those objects that are never old if you haven&#8217;t read them? Franz Kafka described them as &#8220;an ice-axe to break the seas frozen inside our soul&#8221; and William Ewart Gladstone said &#8220;Books are delightful society. If you go into a room and find [...]]]></description>
			<content:encoded><![CDATA[<p>Remember books? Those old fashioned things that have letters printed on them? Those objects that are never old if you haven&#8217;t read them?</p>
<p>Franz Kafka described them as &#8220;<strong><em>an ice-axe to break the seas frozen inside our soul</em></strong>&#8221; and William Ewart Gladstone said  &#8220;<strong><em>Books are delightful society.  If you go into a room and find it full of books &#8211; even without taking them from the shelves they seem to speak to you, to bid you welcome</em></strong>&#8220;.</p>
<p>Books are always better than the movies that are made based upon them because, when you read a book,  you build your own characters and you shape what you are reading to your own imagination.</p>
<p>Everyone has its classics when it comes to literature. Everyone has a book that turns to over and over again. Everyone has <strong>THAT</strong> book that always comes up when talking about books. Much like with music, those really into books can connect specific books to specific moments of their life.  The following is a list of five books everyone should read in my opinion.</p>
<p><strong>This post was inspired by a recent question that my fellow Rebel <a href="http://twitter.com/clementyeung" target="_blank">Clement</a> made on Twitter. More than one list, it is a open door to my creative universe as well as  an open invitation for you to share your own list,  by leaving a comment. </strong></p>
<p>1. &#8220;<strong>The Ultimate Hitchikers Guide to the Galaxy</strong>&#8221; by <strong>Douglas Adams</strong>: This is not a book, this is a master piece. Douglas Adams takes the science fiction genre to a whole new level by defying our own imagination. In this  <em>trilogy</em>, that is made of four books , Douglas Adams takes us on a emotional roller coaster that makes us feel sympathy, hate and pure pity towards the numerous characters that he so carefully develops <strong>while </strong>laughing the all way through it. Characters include Marvin, the  paranoid android and Arthur Dent a middle class British citizen that sees himself hitchhiking through the Universe . The beauty of this book is that when you think you can&#8217;t laugh any more, you turn the page and there you laugh even more. <strong>Warning: Can make you look like a mental case if read in public or with strangers around you. One more reason why you should read it.</strong></p>
<p>Favorite quote: &#8220;<em>In the beginning the Universe was created. This has made a lot of people very angry and has been widely regarded as a bad move</em>.&#8221;</p>
<p>2. &#8220;<strong>Einstein&#8217;s Dreams</strong>&#8221; by <strong>Alan Lightman</strong>: This is a fiction novel that opens the door  to Albert Einstein&#8217;s dreams while he was working on his &#8220;Theory of Relativity&#8221; back in 1905. It consists of 30 short stories (dreams) and explore, with infinite grace and insight, different relations every one of us has with time. You know when you are waiting for someone that is late and time seems to pass so slowly? Or when you are having a great time and time goes by so fast? Alan Lightman, a physicist that works at the M.I.T., challenges its readers to explore the relations we have with time. Insightful and thought provoking.</p>
<p>Favourite Quote: &#8220;<em>In this world, artists are joyous. Unpredictability is the life of their paintings, their music, their novels. They delight in events not forecasted, happenings without explanation, retrospective.</em>&#8221;</p>
<p>3. &#8220;<strong>Neuromancer</strong>&#8221; by <strong>William Gibson</strong>: How to describe a book from someone that back in 1984 was already talking about cyberspace when cyberspace didn&#8217;t exist? William Gibson as always been ahead of his time and his novels are full of details of the future because that is where his mind lives. No matter in what decade you read them you will always be surprised by the fact that something that is referred to, in one of his many books,  just happened 2 years ago. While some try to imagine the (near) future, William Gibson shapes it.</p>
<p>Favourite quote: &#8220;<em>Cyberspace. A consensual hallucination experienced daily by billions of legitimate operators, in every nation, by children being taught mathematical concepts&#8230; A graphic representation of data abstracted from banks of every computer in the human system. Unthinkable complexity. Lines of light ranged in the nonspace of the mind, clusters and constellations of data. Like city lights, receding&#8230;</em>&#8221;</p>
<p>4. <strong>The Book of Disquiet</strong> by <strong>Fernando Pessoa</strong>: I could write many things about this book and about <strong>Fernando Pessoa</strong>, to me one of the greatest writers of all times. I could but I could not really do him any justice. &#8220;<strong>The Book of Disquiet&#8221;</strong> was found after Pessoa&#8217;s death and is a mix of prose, small paragraphs and poems that contain all the creative brilliance of this man that was a copywriter  (he was responsible for the Coca~Cola&#8217;s most famous slogan in Portugal) and a writer by devotion.F</p>
<p>Favourite quote: &#8220;<em>So it is with all life. A tedium that includes the expectation of nothing but more tedium; a regret, right now, for the regret I&#8217;ll have tomorrow for having felt regret today.</em>&#8221;</p>
<p>5. &#8220;<strong>All families are psychotic</strong>&#8221; by <strong>Douglas Coupland</strong>: Few contemporary authors can describe U.S. society like Coupland. His style of writing, the attention to detail, the self criticism and a deep of knowledge of the big picture make Coupland a extremely effective narrator of the the story of the Drummond family on its travel from Vancouver to the Kennedy Space Center. What could be an uneventful trip to some, by the hand of Coupland its transformed into a novel that includes geriatric HIV, armed robbery, death in Walt Disney World, pharmaceutical drug lords, black market baby sales, suicide attempts and a letter stolen from Princess Diana&#8217;s casket from Prince William.</p>
<p>Favourite quote: &#8220;<em>I keep thinking that if I look at my life long enough, there&#8217;ll be a sort of grand logic to it &#8211; a scheme. But I don&#8217;t think there is.</em>&#8221;</p>
<p><strong>What five books would you recommend? Let me know in the comments. Thank you!</strong><br />
&#8212;-<br />
Picture Credits: <a href="http://www.flickr.com/photos/flyzipper/342012313/sizes/o/" target="_blank"><strong>Flyziiper</strong> via Flickrs</a></p>
<p><a href="http://feeds2.feedburner.com/bitrebels">Go to Source</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.neurosoftware.ro/programming-blog/facebook-web-design/web-resources/five-books-you-should-read-before-you-turn-42/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>HTML 5 syntax</title>
		<link>http://www.neurosoftware.ro/programming-blog/facebook-web-design/web-resources/html-5-syntax/</link>
		<comments>http://www.neurosoftware.ro/programming-blog/facebook-web-design/web-resources/html-5-syntax/#comments</comments>
		<pubDate>Wed, 02 Dec 2009 19:50:56 +0000</pubDate>
		<dc:creator>Facebook-Web-Design</dc:creator>
				<category><![CDATA[web resources]]></category>
		<category><![CDATA[attribute]]></category>
		<category><![CDATA[attributes]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[lowercase]]></category>
		<category><![CDATA[quote]]></category>
		<category><![CDATA[Read]]></category>
		<category><![CDATA[syntax]]></category>
		<category><![CDATA[syntax rules]]></category>
		<category><![CDATA[Tag]]></category>
		<category><![CDATA[xhtml]]></category>

		<guid isPermaLink="false">http://www.neurosoftware.ro/programming-blog/facebook-web-design/web-resources/html-5-syntax/</guid>
		<description><![CDATA[One advantage XHTML has over HTML is that it has simpler syntax rules. If you want your documents to validate you can’t pick and choose – you need to use lowercase for tag and attribute names, close all elements, quote all attribute values, and give all attributes a value. Some find those rules restrictive. I [...]]]></description>
			<content:encoded><![CDATA[<p>One advantage XHTML has over HTML is that it has simpler syntax rules. If you want your documents to validate you can’t pick and choose – you need to use lowercase for tag and attribute names, close all elements, quote all attribute values, and give all attributes a value.</p>
<p>Some find those rules restrictive. I find them extremely useful since they give developers less room for coding choices that are mostly aesthetic but make collaboration and maintenance harder and slower.</p>
<p>HTML 5 does not have the same syntax rules as XHTML. It allows you to pick and choose – you can mix tag and attribute case as you wish, quote some attribute values but not others, and leave out closing (and in some cases opening) tags for some (but not all) elements.</p>
<p><a href="http://www.456bereastreet.com/archive/200912/html_5_syntax/">Read full post</a></p>
<p>Posted in <a href="http://www.456bereastreet.com/archive/categories/html_5/" rel="tag">HTML 5</a>, <a href="http://www.456bereastreet.com/archive/categories/productivity/" rel="tag">Productivity</a>.</p>
<p><a href="http://feedads.g.doubleclick.net/~a/jBnxH5s9ki-QnIDa9dxtzmRjsd8/0/da"><img src="http://www.neurosoftware.ro/programming-blog/wp-content/plugins/wp-o-matic/cache/6cd08_di" border="0"></img></a><br />
<a href="http://feedads.g.doubleclick.net/~a/jBnxH5s9ki-QnIDa9dxtzmRjsd8/1/da"><img src="http://www.neurosoftware.ro/programming-blog/wp-content/plugins/wp-o-matic/cache/6cd08_di" border="0"></img></a></p>
<div>
<a href="http://feeds.feedburner.com/~ff/456bereastreet?a=5VAQjKM27RU:JSAUIZRa8rk:F7zBnMyn0Lo"><img src="http://www.neurosoftware.ro/programming-blog/wp-content/plugins/wp-o-matic/cache/6cd08_456bereastreet?i=5VAQjKM27RU:JSAUIZRa8rk:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/456bereastreet?a=5VAQjKM27RU:JSAUIZRa8rk:gIN9vFwOqvQ"><img src="http://www.neurosoftware.ro/programming-blog/wp-content/plugins/wp-o-matic/cache/6cd08_456bereastreet?i=5VAQjKM27RU:JSAUIZRa8rk:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/456bereastreet?a=5VAQjKM27RU:JSAUIZRa8rk:dnMXMwOfBR0"><img src="http://www.neurosoftware.ro/programming-blog/wp-content/plugins/wp-o-matic/cache/8bb65_456bereastreet?d=dnMXMwOfBR0" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/456bereastreet?a=5VAQjKM27RU:JSAUIZRa8rk:V_sGLiPBpWU"><img src="http://www.neurosoftware.ro/programming-blog/wp-content/plugins/wp-o-matic/cache/8bb65_456bereastreet?i=5VAQjKM27RU:JSAUIZRa8rk:V_sGLiPBpWU" border="0"></img></a>
</div>
<p><img src="http://www.neurosoftware.ro/programming-blog/wp-content/plugins/wp-o-matic/cache/8bb65_5VAQjKM27RU" height="1" width="1" /><br />
<a href="http://feeds2.feedburner.com/456bereastreet">Go to Source</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.neurosoftware.ro/programming-blog/facebook-web-design/web-resources/html-5-syntax/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>A Fancy Quote System With jQuery, AJAX &amp; CSS</title>
		<link>http://www.neurosoftware.ro/programming-blog/facebook-web-design/web-resources/a-fancy-quote-system-with-jquery-ajax-css/</link>
		<comments>http://www.neurosoftware.ro/programming-blog/facebook-web-design/web-resources/a-fancy-quote-system-with-jquery-ajax-css/#comments</comments>
		<pubDate>Tue, 01 Dec 2009 16:44:55 +0000</pubDate>
		<dc:creator>Facebook-Web-Design</dc:creator>
				<category><![CDATA[web resources]]></category>
		<category><![CDATA[famous quotes]]></category>
		<category><![CDATA[jquery]]></category>
		<category><![CDATA[jquery ajax]]></category>
		<category><![CDATA[quote]]></category>
		<category><![CDATA[rating]]></category>
		<category><![CDATA[system]]></category>
		<category><![CDATA[today]]></category>

		<guid isPermaLink="false">http://www.neurosoftware.ro/programming-blog/facebook-web-design/web-resources/a-fancy-quote-system-with-jquery-ajax-css/</guid>
		<description><![CDATA[Today we are making a fancy quote rating system with jQuery,AJAX &#38; PHP, that will display a number of famous quotes and will enable our site visitors to rate their favorites. Go to Source]]></description>
			<content:encoded><![CDATA[<p>Today we are making a fancy quote rating system with jQuery,AJAX &#38; PHP, that will display a number of famous quotes and will enable our site visitors to rate their favorites.</p>
<p><a href="http://feeds2.feedburner.com/Devsnippets">Go to Source</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.neurosoftware.ro/programming-blog/facebook-web-design/web-resources/a-fancy-quote-system-with-jquery-ajax-css/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Fancy Quotes With jQuery, AJAX &amp; CSS</title>
		<link>http://www.neurosoftware.ro/programming-blog/facebook-web-design/tutorial/fancy-quotes-with-jquery-ajax-css/</link>
		<comments>http://www.neurosoftware.ro/programming-blog/facebook-web-design/tutorial/fancy-quotes-with-jquery-ajax-css/#comments</comments>
		<pubDate>Tue, 01 Dec 2009 00:20:12 +0000</pubDate>
		<dc:creator>Facebook-Web-Design</dc:creator>
				<category><![CDATA[tutorial]]></category>
		<category><![CDATA[Cufon]]></category>
		<category><![CDATA[div id]]></category>
		<category><![CDATA[DOM]]></category>
		<category><![CDATA[famous quotes]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[jquery]]></category>
		<category><![CDATA[mouse move]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[quote]]></category>
		<category><![CDATA[Script]]></category>
		<category><![CDATA[span id]]></category>

		<guid isPermaLink="false">http://www.neurosoftware.ro/programming-blog/facebook-web-design/tutorial/fancy-quotes-with-jquery-ajax-css/</guid>
		<description><![CDATA[Today we are making a fancy quote rating system that will display a number of famous quotes and will enable our site visitors to rate their favorites. We are using PHP and MySQL on the back-end and jQuery and jQuery UI on the front. As an addition, we are using two jQuery plugins &#8211; qTip [...]]]></description>
			<content:encoded><![CDATA[<p>Today we are making a fancy quote rating system that will display a number of famous quotes and will enable our site visitors to rate their favorites.</p>
<p>We are using <strong>PHP</strong> and <strong>MySQL</strong> on the back-end and <strong>jQuery</strong> and <strong>jQuery UI</strong> on the front.</p>
<p>As an addition, we are using two jQuery plugins &#8211; <a href="http://craigsworks.com/projects/qtip/" target="_blank">qTip</a> for fancy tips and the <a href="http://orkans-tmp.22web.net/star_rating/index.html" target="_blank">Star Rating plugin</a> for great looking star-based ratings for each quote.</p>
<p>In the process we are also implementing a dynamic font replacement with <a href="http://cufon.shoqolate.com/generate/" target="_blank">Cufon</a>.</p>
<p>So go ahead, grab the download archive and continue with step one.</p>
<h3>Step 1 &#8211; XHTML</h3>
<p>As usual, we start with the XHTML part of the tut. The quote system is divided in two &#8211; the left part, which is a sort of a &#8220;<strong>full view</strong>&#8221; mode for the quote, featuring a beautiful font replacement with Cufon, and the right part, which shows the quotes in a browse or &#8220;<strong>thumbnail</strong>&#8221; mode.</p>
<p>You can see the code below.</p>
<h4>demo.php</h4>
<pre>&lt;div id="main"&gt;
&lt;div id="box"&gt;	&lt;!-- Holds the full view of the quote --&gt;

&lt;div id="topPart"&gt;	&lt;!-- The top part of the view --&gt;

&lt;div id="quote-content"&gt;	&lt;!-- The quote text and author --&gt;
&lt;h1 class="quote"&gt;&lt;/h1&gt;
&lt;span id="author"&gt;&lt;/span&gt;
&lt;/div&gt;

&lt;/div&gt;

&lt;div id="botPart"&gt;&lt;/div&gt;
&lt;div class="clear"&gt;&lt;/div&gt;
&lt;/div&gt;

&lt;div id="quotes-list"&gt;	&lt;!-- The quote list on the right, scrollable on mouse move --&gt;
&lt;div id="quotes-hide"&gt;
&lt;div id="quotes-slide"&gt;

&lt;?php
// Outputting the list
echo $str;
?&gt;

&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;

&lt;div class="clear"&gt;&lt;/div&gt;
&lt;/div&gt;</pre>
<p>The markup is pretty straightforward. We define the main structure of the rating system.</p>
<p>On lines 21-24 we echo the quotes, contained in the <strong>$str</strong> PHP variable. We will come back to this in a few moments.</p>
<p>Now lets take a closer look at the styling.</p>
<div><img class="size-full wp-image-536" src="http://www.neurosoftware.ro/programming-blog/wp-content/plugins/wp-o-matic/cache/a4fb8_i4.png" alt="A Fancy Quote System" width="600" height="260" />
<p>A Fancy Quote System</p>
</div>
<h3>Step 2 &#8211; CSS</h3>
<p>Because the code is too long for a single take, I&#8217;ve divided it into two parts. I&#8217;ve also removed some of the styles that are not directly used by the quote system. You can view those in the demo files.</p>
<h4>demo.css &#8211; Part 1</h4>
<pre>#box{
	/* This holds the full view of the quote */
	background:url(img/mid_part.png) repeat-y;
	width:574px;
	margin:10px auto;
	float:left;
}

#topPart{
	/* Positioned inside the #box div, holds the top part of the view */
	background:url(img/top_part.png) no-repeat;

	min-height:195px;

	/* Providing height for browsers that do not support min-height (e.g. IE6) */
	height:195px;

	float:left;
	margin-top:-10px;
	width:100%;
	padding-top:20px;
}

div &gt; #topPart{
	/* Setting the height to auto for non-IE6 browsers */
	height:auto;
}

#botPart{
	/* Bottom part of the full view */
	background:url(img/bot_part.png) no-repeat;
	height:24px;
	float:left;
	width:100%;
	margin-bottom:-10px;
}

h1.quote{
	/* This is the text of the quote in the full view. Replaced by Cufon */
	font-size:45px;
	color:#616161;
	text-align:right;
	padding:15px 40px 0 40px;
	line-height:60px;
}

#author{
	/* The span that holds the name of the author */
	color:#9C9C9C;
	float:right;
	font-size:14px;
	font-style:italic;
	font-weight:bold;
	letter-spacing:1px;
	margin-right:40px;
	text-transform:uppercase;
}</pre>
<p>Although I recently stopped supporting IE6 in my works, I decided to make an exception this time, mainly because the only thing needed for it to work in that version are two lines of code.</p>
<p>As you may have heard, IE6 does not support the <strong>min-height</strong> property. It also incorrectly interprets <strong>height</strong> as specifying minimum height.</p>
<p>This is why I provide both in the <strong>#topPart</strong> rules and later set height to auto for browsers that support the <strong>&gt;</strong> CSS selector. As IE6 does  not understand this operator, it is left with a height behaving like min-height and ignoring the original one.</p>
<h4>demo.css &#8211; Part 2</h4>
<pre>#quotes-list{
	/* The list on the right */
	background:#444444 none repeat scroll 0 0;
	border:1px solid #333333;
	float:left;
	margin-left:50px;
	padding-top:10px;
	width:230px;
	height:350px;
	overflow:hidden;
}

#quotes-hide{
	/* Positioned inside #quotes-list, but a 15px smaller */
	height:335px;
	overflow:hidden;
}

.star-rating{
	margin-top:2px;
}

.thumb{
	/* Each quote that is positioned in the list on the right of the page */
	background:url(img/top_part.png) no-repeat 50% 70%;
	color:#777777;
	font-size:16px;
	font-weight:bold;
	height:40px;
	margin:0 10px 15px;
	overflow:hidden;
	padding:15px;
	width:180px;
	cursor:pointer;
	text-align:left;
}

.thumb:hover{
	background:white;
}

#quotes-list,.thumb,p.tut{
	/* Using CSS3 rounded corners */
	-moz-border-radius:6px;
	-webkit-border-radius:6px;
	border-radius:6px;
}

.points{
	/* The points next to the quote title */
	color:#999999;
	font-size:12px;
	font-weight:normal;
}</pre>
<p>The second part of the code styles the sliding list on the right side. All the quotes are positioned one after another and they overflow their parent container. Then, setting overflow to hidden hides those that do not fit and we are ready to use jQuery to code that fancy mousemove interactivity. We will come back to this in the jQuery part.</p>
<p>Now we can continue with the next step.</p>
<div><img class="size-full wp-image-533 " src="http://www.neurosoftware.ro/programming-blog/wp-content/plugins/wp-o-matic/cache/62bcc_i12.png" alt="The quote manager explained" width="600" height="460" />
<p>The quote rater explained</p>
</div>
<h3>Step 3 &#8211; PHP</h3>
<p>PHP generates the quote list by running an SQL query against the database, and selecting all the quotes. This data is also passed to the JavaScript front end with the help of the <strong>fillData()</strong> JS function.</p>
<h4>demo.php</h4>
<pre>// Error reporting
error_reporting(E_ALL^E_NOTICE);

// Including file for the DB connection:
define("INCLUDE_CHECK",1);
require 'connect.php';
require 'functions.php';

// Converting the visitor's IP to a long int:
$ip = ip2long($_SERVER['REMOTE_ADDR']);

$today = date("Y-m-d");

// Selecting the quotes and LEFT JOIN-ing them to the votes:

$result = mysql_query("
SELECT q.*, IF(v.id,1,0) AS voted
FROM quotes AS q
LEFT JOIN quotes_votes AS v
	ON 	q.id = v.qid
	AND v.ip =".$ip."
	AND v.date_submit = '".$today."'
");

$i=1;
$str='';
$script='';

while($row=mysql_fetch_assoc($result))
{
	// Looping through all the quotes and generating the list on the right of the page:
	$str.= '&lt;div class="thumb" id="q-'.$i.'"&gt;'.substr($row['txt'],0,20).
	'&lt;span class="points"&gt;...&lt;/span&gt;&lt;div class="star-rating" id="rating-'.$i.'"&gt;';

	$row['rating'] = round($row['rating']);
	for($z=0;$z&lt;5;$z++)
	{
		$str.='&lt;input type="radio" name="rate-'.$i.'" value="'.($z+1).'" '.($z+1==$row['rating']?'checked="checked"':'').' disabled="disabled" /&gt;';
	}

	$str.='&lt;/div&gt;&lt;/div&gt;';

	// Each quote calls the fillData JS function
	$script.="fillData(".formatJSON($row).");".PHP_EOL;

	$i++;
}</pre>
<p>The <strong>$str</strong> variable is then outputted to the page, as you saw in the first step.</p>
<p>PHP also handles the voting for the quotes. You can view the code from <strong>vote.php</strong> below.</p>
<h4>vote.php</h4>
<pre>// Error reporting
error_reporting(E_ALL^E_NOTICE);

define("INCLUDE_CHECK",1);
require "connect.php";

if(!$_POST['qid'] || !$_POST['vote']) die('0');

/* Converting the visitor's IP into a long int: */
$ip = ip2long($_SERVER['REMOTE_ADDR']);

/* Converting the parameters to int will prevent any malpractices */
$qid = (int)$_POST['qid'];
$v = (int)$_POST['vote'];

/* Inserting the vote in the votes DB */
mysql_query('	INSERT INTO quotes_votes (qid,ip,vote,date_submit)
				VALUES ('.$qid.','.$ip.','.$v.',CURDATE())');

/* There is an unique index set up that prevents duplicate votes */
if(mysql_affected_rows($link)==1)
{
	mysql_query("UPDATE quotes SET votes=votes+1, vsum=vsum+".$v.", rating=vsum/votes WHERE id=".$qid);
	echo'1';
}
else echo '0';</pre>
<p>The script outputs <strong>1</strong> on success and <strong>0</strong> on failure. This is later used by jQuery to decide whether voting was successful. This brings us to the next step.</p>
<div><img class="size-full wp-image-534" src="http://www.neurosoftware.ro/programming-blog/wp-content/plugins/wp-o-matic/cache/cb0c1_i21.png" alt="Replacing fonts with Cufon" width="600" height="230" />
<p>Replacing fonts with Cufon</p>
</div>
<h3>Step 4 &#8211; jQuery</h3>
<p>jQuery handles all the user interactions with the quote rating system. It shows the quote in full view, issues the replacement of the fonts with Cufon and handles the voting process.</p>
<p>Before being able to use the jQuery library, we have to include a few files in the page.</p>
<pre>&lt;script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"&gt;&lt;/script&gt;
&lt;script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/jquery-ui.min.js"&gt;&lt;/script&gt;
&lt;script type="text/javascript" src="star-rating/ui.stars.min.js"&gt;&lt;/script&gt;
&lt;script type="text/javascript" src="q-tip/jquery.qtip-1.0.0-rc3.min.js"&gt;&lt;/script&gt;
&lt;script src="cufon/cufon-yui.js" type="text/javascript"&gt;&lt;/script&gt;
&lt;script src="cufon/ChunkFive_400.font.js" type="text/javascript"&gt;&lt;/script&gt;

&lt;script type="text/javascript"&gt;
Cufon.replace('h1.quote');
&lt;/script&gt;

&lt;script type="text/javascript" src="script.js"&gt;&lt;/script&gt;

&lt;script type="text/javascript"&gt;
&lt;!-- Outputting the JS generated on the PHP-side --&gt;
&lt;?php echo $script ?&gt;
&lt;/script&gt;</pre>
<p>The first two lines include the <strong>jQuery</strong> library and <strong>jQuery UI</strong> (an addition to jQuery for interface components) in the page. After this we include the <strong>Star Rating plugin</strong>, <strong>qTip</strong>, and the <strong>Cufon</strong> text replacement along with the <a href="http://www.theleagueofmoveabletype.com/fonts/4-chunk" target="_blank">ChunkFive</a> <a href="http://cufon.shoqolate.com/generate/" target="_blank">converted font</a>.</p>
<p>Now lets take a look at <strong>script.js</strong>, which holds all of our JavaScript.</p>
<p>Because of the length of the code, I&#8217;ve divided it into three parts.</p>
<h4>script.js &#8211; Part 1</h4>
<pre>$(document).ready(function(){
	/* Executed on DOM load */

	$(".star-rating").stars();
	/* Converts all the radio groups into star ratings */

	$("#quotes-hide").mousemove(function(e){

		/* The scrollable quote container */

		if(!this.hideDiv)
		{
			/* These variables are initialised only the firts time the function is run: */
			this.hideDiv = $(this);
			this.scrollDiv = $('#quotes-slide');
			this.pos = this.hideDiv.offset();

			this.pos.top+=20;
			/* Adding a 20px offset, so that the scrolling begins 20px from the top */

			this.slideHeight = this.scrollDiv.height();
			this.height = this.hideDiv.height();
			this.height-=20;
			/* Adding a bottom offset */

			this.totScroll = this.slideHeight-this.height;
		}

		this.scrollDiv.css({

			/* Remember that this.scrollDiv is a jQuery object, as initilised above */
			marginTop:'-'+this.totScroll*(Math.max(e.pageY-this.pos.top,0)/this.height)+'px'

			/* Assigning a negative top margin according to the position of the mouse cursor, passed
			with e.pageY; It is relative to the page, so we substract the position of the scroll container */
		});
	});

	$('.thumb').click(function(e){
		/* Executed once a quote from the list on the right is clicked */

		var obj = quotes[parseInt(e.target.id.replace('q-',''))-1];
		/* The e.target.id of the quote corresponds to its position in the quotes array */

		$('#quote-content').fadeOut('fast',function(){
			/* This is a callback function, run once the quote contaier on the left has faded out */

			if(!obj) return false;

			/* Replacing the contents of the quote text and author */
			$(this).find('h1').html(obj.txt);
			$(this).find('span').html(obj.author);

			/* Changing the background color: */
			if(obj.bgc) $('body').stop().animate({backgroundColor:obj.bgc},'slow');

			/* Generating the radio boxes for the tool-tip star rating */
			var tmpstr='';
			for(var z=0;z&lt;5;z++)
			{
				tmpstr+='&lt;input type="radio" name="voteQ" value="'+(z+1)+'" ';
				if(z+1==obj.rating) tmpstr+='checked=checked ';
				if(parseInt(obj.voted)) tmpstr+='disabled="disabled" ';
				tmpstr+='/&gt;';
			}

			tmpstr='&lt;div id="voteRating"&gt;'+tmpstr+'&lt;/div&gt;';

			/* Updating the content of the tool-tip and converting it to a star rating */
			$('#box').qtip("api").updateContent(tmpstr);

			$('#voteRating').stars({
				cancelShow: false,
				oneVoteOnly: true,
				callback:function(ui, type, value){vote(obj,value);}
			});

			/* Regenerating the cufon text replacement for the new quote text on the left */
			Cufon.refresh();

			/* Show the new quote with a fade-in effect */

			$(this).fadeIn('fast');
		});
	});</pre>
<p>First we bind a <strong>mousemove</strong> event with the DIV with a <strong>quotes-hide</strong> id. Inside the callback function, the container is scrolled with the help of a negative top margin. This way we save a lot of real estate on the page and provide a some nice interactivity.</p>
<p>Next we set up a <strong>click</strong> event handler on the thumbs, which shows the appropriate quote in the view.</p>
<h4>script.js &#8211; Part 2</h4>
<pre>	/* Creating and configuring the tool-tip with the help
 	of the qtip plugin: */
	$('#box').qtip({
		content: {
			text:'This is an active list element',
			title: { text: 'Vote for this quote'},
			prerender:true
		},
		show: 'mouseover',
		hide: {
			delay:1000,
			fixed:true,
			when:'mouseout'
		},
		position: {
			corner: {
				target: 'bottomMiddle',
				tooltip: 'topMiddle'
			},
			adjust:{
				y:20
			}
		},
		style: {
			border: {
				width: 2,
				radius: 6
			},
			name:'light',
			tip: 'topMiddle'
		}
	});

	/* After the page has loaded, click the first quote on the right */
	setTimeout(function(){$('#q-1').click();},250);
});</pre>
<p>In the second part of the code, we are configuring the <strong>qTip</strong> plugin. It provides countless options and customizations, so it would be a good idea to have the documentation ready if you plan to modify the code. You can consult with the plugin&#8217;s <a href="http://craigsworks.com/projects/qtip/" target="_blank">homepage</a> for more info.</p>
<p>Also we issue a click on the first quote, so that the view is not empty on page load.</p>
<h4>script.js &#8211; Part 3</h4>
<pre>/* The global array holding all the data about the quotes.
Filled in on page load. */
var quotes = new Array();
function fillData(obj)
{
	quotes.push(obj);
}

function vote(ob,value)
{
	/* Sending the votes to vote.php */
	$.post('vote.php',{qid:ob.id,vote:value},function(data){

		if(data=="1")
		{
			/* If the vote was saved successfully, update the quote data.. */
			ob.voted=1;
			ob.votes=ob.votes+1;
			ob.vsum=ob.vsum+parseInt(value);
			ob.rating = Math.round(ob.vsum/ob.votes);

			/* ..and update the star rating */
			$('#rating-'+ob.id).stars("select", ob.rating);
			quotes[ob.id-1]=ob;
		}
	});
}</pre>
<p>The first function &#8211; <strong>fillData()</strong> takes a JavaScript object as a parameter, and adds it to the quotes array for later use.</p>
<p>As you remember, in the PHP step we converted the <strong>$row</strong> arrays, returned by <strong>mysql_fetch_array</strong>, to JSON objects with our custom <strong>formatJSON()</strong> function and enclosed them in a fillData function call.</p>
<p>This is later outputted as JS code which is executed before <strong>document.ready()</strong>, and as a result we have all the data about the quotes available to jQuery in the <strong>quotes array</strong>.</p>
<p>The second function handles the AJAX requests to <strong>vote.php</strong> and updates the interface if necessary.</p>
<div><img class="size-full wp-image-535" src="http://www.neurosoftware.ro/programming-blog/wp-content/plugins/wp-o-matic/cache/2914d_i31.png" alt="The mouse slider" width="600" height="230" />
<p>The mouse slider</p>
</div>
<h3>Step 5 &#8211; MySQL</h3>
<p>If you plan to run this demo on your own, you&#8217;ll need to create the tables by executing the SQL code in <strong>tables.sql</strong> on your server (you can do this via the phpMyAdmin interface).</p>
<p>Also you&#8217;ll need to fill in your MySQL credentials in <strong>connect.php</strong>.</p>
<p>With this our fancy quote manager is complete!</p>
<h3>Conclusion</h3>
<p>Today we created a fancy quote managing system and learned a thing or two about tooltips, font replacements, AJAX, PHP and many more.</p>
<p>You are free to download and use the demo in your own sites, modifying it any way you see fit.</p>
<p>Also if you liked this tutorial be sure to subscribe to our <a href="http://feeds.feedburner.com/Tutorialzine" target="_blank">RSS feed</a> or <a href="http://twitter.com/Tutorialzine" target="_blank">follow us on twitter</a>.</p>
<div>
<table border="0" bgcolor="#ffffff">
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</table>
</div>
<div>
<a href="http://feeds.feedburner.com/~ff/Tutorialzine?a=rcaNP0oL7EQ:WBc_JqfItM0:yIl2AUoC8zA"><img src="http://www.neurosoftware.ro/programming-blog/wp-content/plugins/wp-o-matic/cache/2914d_Tutorialzine?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Tutorialzine?a=rcaNP0oL7EQ:WBc_JqfItM0:D7DqB2pKExk"><img src="http://www.neurosoftware.ro/programming-blog/wp-content/plugins/wp-o-matic/cache/2914d_Tutorialzine?i=rcaNP0oL7EQ:WBc_JqfItM0:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Tutorialzine?a=rcaNP0oL7EQ:WBc_JqfItM0:F7zBnMyn0Lo"><img src="http://www.neurosoftware.ro/programming-blog/wp-content/plugins/wp-o-matic/cache/d0eb3_Tutorialzine?i=rcaNP0oL7EQ:WBc_JqfItM0:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Tutorialzine?a=rcaNP0oL7EQ:WBc_JqfItM0:V_sGLiPBpWU"><img src="http://www.neurosoftware.ro/programming-blog/wp-content/plugins/wp-o-matic/cache/d0eb3_Tutorialzine?i=rcaNP0oL7EQ:WBc_JqfItM0:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Tutorialzine?a=rcaNP0oL7EQ:WBc_JqfItM0:gIN9vFwOqvQ"><img src="http://www.neurosoftware.ro/programming-blog/wp-content/plugins/wp-o-matic/cache/d0eb3_Tutorialzine?i=rcaNP0oL7EQ:WBc_JqfItM0:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Tutorialzine?a=rcaNP0oL7EQ:WBc_JqfItM0:qj6IDK7rITs"><img src="http://www.neurosoftware.ro/programming-blog/wp-content/plugins/wp-o-matic/cache/d0eb3_Tutorialzine?d=qj6IDK7rITs" border="0"></img></a>
</div>
<p><img src="http://www.neurosoftware.ro/programming-blog/wp-content/plugins/wp-o-matic/cache/d0eb3_rcaNP0oL7EQ" height="1" width="1" /></p>
<p><a href="http://feeds.feedburner.com/Tutorialzine">Go to Source</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.neurosoftware.ro/programming-blog/facebook-web-design/tutorial/fancy-quotes-with-jquery-ajax-css/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Better Pull Quotes with&#160;MooTools</title>
		<link>http://www.neurosoftware.ro/programming-blog/facebook-web-design/web-resources/better-pull-quotes-withmootools/</link>
		<comments>http://www.neurosoftware.ro/programming-blog/facebook-web-design/web-resources/better-pull-quotes-withmootools/#comments</comments>
		<pubDate>Mon, 23 Nov 2009 16:50:05 +0000</pubDate>
		<dc:creator>Facebook-Web-Design</dc:creator>
				<category><![CDATA[web resources]]></category>
		<category><![CDATA[background color]]></category>
		<category><![CDATA[Chris]]></category>
		<category><![CDATA[Chris Coyier]]></category>
		<category><![CDATA[David Walsh Blog]]></category>
		<category><![CDATA[Don]]></category>
		<category><![CDATA[element]]></category>
		<category><![CDATA[mootools]]></category>
		<category><![CDATA[new element]]></category>
		<category><![CDATA[padding]]></category>
		<category><![CDATA[quote]]></category>
		<category><![CDATA[span]]></category>
		<category><![CDATA[span class]]></category>
		<category><![CDATA[twitter]]></category>

		<guid isPermaLink="false">http://www.neurosoftware.ro/programming-blog/facebook-web-design/web-resources/better-pull-quotes-withmootools/</guid>
		<description><![CDATA[Chris Coyier authored a post titled Better Pull Quotes: Don&#8217;t Repeat Markup a while back. In his post he created great-looking pull quotes without repeating any content &#8212; instead he uses jQuery to dynamically create the pull quotes. The following is the MooTools method for doing so. View Demo The HTML &#60;p&#62;&#60;span class=&#34;pull-me&#34;&#62;As a MooTools [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://davidwalsh.name/dw-content/mootools-pull-quote.php"><img src="http://www.neurosoftware.ro/programming-blog/wp-content/plugins/wp-o-matic/cache/fce5d_pullquotes.png" alt="Pull Quotes" /></a></p>
<p>Chris Coyier authored a post titled <a href="http://css-tricks.com/better-pull-quotes/">Better Pull Quotes: Don&#8217;t Repeat Markup</a> a while back.  In his post he created great-looking pull quotes without repeating any content &#8212; instead he uses jQuery to dynamically create the pull quotes.  The following is the MooTools method for doing so.</p>
<div><a href="http://davidwalsh.name/dw-content/mootools-pull-quote.php">View Demo</a>
<div></div>
</div>
<h2>The HTML</h2>
<pre>
&lt;p&gt;&lt;span class=&quot;pull-me&quot;&gt;As a MooTools &quot;insider&quot;, however, I'm excited for what the MooTools team will bring to the table during 2010.&lt;/span&gt; We'll be launching the Forge (our public plugin repository), releasing MooTools 2, continuing to grow MooTools More, featuring more community work, and much more. MooTools FTW!&lt;/p&gt;
</pre>
<p>The HTML above features a paragraph of content with a SPAN tag wrapping what I&#8217;d like to be the pull quote.</p>
<h2>The CSS</h2>
<pre>
.quote { padding:20px; margin:0 0 20px 20px; font-size:20px; font-style:italic; background:#eee; color:#999; display:block; width:200px; float:right; }
</pre>
<p>You may style the quote any way you&#8217;d like.  These elements are traditionally large in text with italicized text and a different background color.</p>
<h2>The MooTools Javascript</h2>
<pre>
window.addEvent('domready',function() {
	//grab all quotes
	$$('span.pull-me').each(function(span) {
		//inject styled quote into page
		new Element('span',{
			'class': 'quote',
			text: span.get('text')
		}).inject(span.getParent(),'top');
	});
});
</pre>
<p>We find each element with a &#8220;pull-me&#8221; CSS class and generate a new element with our &#8220;quote&#8221; class.  We then inject the new element into the original element&#8217;s parent.  That&#8217;s all!</p>
<div><a href="http://davidwalsh.name/dw-content/mootools-pull-quote.php">View Demo</a>
<div></div>
</div>
<p>Chris did a great job with the execution of his idea.  This is a technique that will likely be used well into the future.</p>
<div>
                                <a href="http://davidwalsh.name/wp-content/plugins/as-pdf/generate.php?post=4292"><br />
                                    <span>Download PDF</span><br />
                                </a>
                            </div>
<p>Don&#8217;t forget to <a href="http://twitter.com/davidwalshblog">follow me on Twitter</a> and be sure to visit <a href="http://scriptandstyle.com">Script &amp; Style</a> for the best Javascript and CSS articles around!</p>
<p><a href="http://buysellads.com/buy/detail/1687">Sponsor the David Walsh Blog</a> and get your brand in front of several thousand users per day!</p>
<p><a href="http://davidwalsh.name/mootools-pull-quotes">Better Pull Quotes with&nbsp;MooTools</a></p>
<p>Related posts:
<ol>
<li><a href="http://davidwalsh.name/highlight-table-columns" rel="bookmark" title="Permanent Link: Highlight Table Rows, Columns, and Cells Using MooTools 1.2.3">Highlight Table Rows, Columns, and Cells Using MooTools&nbsp;1.2.3</a></li>
<li><a href="http://davidwalsh.name/predictions-2010" rel="bookmark" title="Permanent Link: Bold Web Predictions for 2010">Bold Web Predictions for&nbsp;2010</a></li>
<li><a href="http://davidwalsh.name/mootools-html-police-dwmarkupmarine" rel="bookmark" title="Permanent Link: MooTools HTML Police: dwMarkupMarine">MooTools HTML Police:&nbsp;dwMarkupMarine</a></li>
<li><a href="http://davidwalsh.name/method-chaining" rel="bookmark" title="Permanent Link: Method Chaining in MooTools and PHP">Method Chaining in MooTools and&nbsp;PHP</a></li>
<li><a href="http://davidwalsh.name/image-protector-plugin-for-jquery" rel="bookmark" title="Permanent Link: dwImageProtector Plugin for jQuery">dwImageProtector Plugin for&nbsp;jQuery</a></li>
</ol>
<p><img src="http://www.neurosoftware.ro/programming-blog/wp-content/plugins/wp-o-matic/cache/fce5d_NCxy8TQwalw" height="1" width="1" /><br />
<a href="http://davidwalsh.name/feed/atom">Go to Source</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.neurosoftware.ro/programming-blog/facebook-web-design/web-resources/better-pull-quotes-withmootools/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Colorful Illustrations by Christopher Lee</title>
		<link>http://www.neurosoftware.ro/programming-blog/blogposter/photoshop/colorful-illustrations-by-christopher-lee/</link>
		<comments>http://www.neurosoftware.ro/programming-blog/blogposter/photoshop/colorful-illustrations-by-christopher-lee/#comments</comments>
		<pubDate>Wed, 04 Nov 2009 14:36:37 +0000</pubDate>
		<dc:creator>BlogPoster</dc:creator>
				<category><![CDATA[Design]]></category>
		<category><![CDATA[Graphics]]></category>
		<category><![CDATA[Images]]></category>
		<category><![CDATA[photoshop]]></category>
		<category><![CDATA[Art]]></category>
		<category><![CDATA[art washes]]></category>
		<category><![CDATA[California]]></category>
		<category><![CDATA[Christopher Lee]]></category>
		<category><![CDATA[colorful illustrations]]></category>
		<category><![CDATA[designer]]></category>
		<category><![CDATA[favorite quote]]></category>
		<category><![CDATA[Great]]></category>
		<category><![CDATA[Hunters]]></category>
		<category><![CDATA[project]]></category>
		<category><![CDATA[quote]]></category>
		<category><![CDATA[Sacramento]]></category>
		<category><![CDATA[sacramento california]]></category>

		<guid isPermaLink="false">http://www.neurosoftware.ro/programming-blog/blogposter/photoshop/colorful-illustrations-by-christopher-lee/</guid>
		<description><![CDATA[These colorful illustrations are from Christopher Lee’s project “The Great Hunters.” He is a graphic designer from Sacramento, California. His favorite quote for inspiration is “Art washes away from the soul the dust of everyday life” by Picasso. I love his pick of colors in his illustrations. Christopher Lee’s Website.. Go to Source]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.pixelelement.com/colorful-illustrations-by-christopher-lee/"><img src="http://www.neurosoftware.ro/programming-blog/wp-content/plugins/wp-o-matic/cache/4dd40_01.jpg" border="0" alt="01" /></a></p>
<p>These colorful illustrations are from <a href="http://www.thebeastisback.com/" target="_blank">Christopher Lee</a>’s project “The Great Hunters.” He is a graphic designer from Sacramento, California. His favorite quote for inspiration is “Art washes away from the soul the dust of everyday life” by Picasso. I love his pick of colors in his illustrations.<span></span></p>
<p><img src="http://www.neurosoftware.ro/programming-blog/wp-content/plugins/wp-o-matic/cache/95987_02.jpg" border="0" alt="02" /></p>
<p><img src="http://www.neurosoftware.ro/programming-blog/wp-content/plugins/wp-o-matic/cache/3a773_03.jpg" border="0" alt="03" /></p>
<p><img src="http://www.neurosoftware.ro/programming-blog/wp-content/plugins/wp-o-matic/cache/d4581_04.jpg" border="0" alt="04" /></p>
<p><img src="http://www.neurosoftware.ro/programming-blog/wp-content/plugins/wp-o-matic/cache/4a31e_05.jpg" border="0" alt="05" /></p>
<p><img src="http://www.neurosoftware.ro/programming-blog/wp-content/plugins/wp-o-matic/cache/f1962_06.jpg" border="0" alt="06" /></p>
<p><img src="http://www.neurosoftware.ro/programming-blog/wp-content/plugins/wp-o-matic/cache/9af8c_07.jpg" border="0" alt="07" /></p>
<p><img src="http://www.neurosoftware.ro/programming-blog/wp-content/plugins/wp-o-matic/cache/88f95_08.jpg" border="0" alt="08" /></p>
<p><img src="http://www.neurosoftware.ro/programming-blog/wp-content/plugins/wp-o-matic/cache/250ac_09.jpg" border="0" alt="09" /></p>
<p><a href="http://www.thebeastisback.com/" target="_blank">Christopher Lee’s Website.</a>.</p>
<p><a href="http://feeds2.feedburner.com/pixelelement">Go to Source</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.neurosoftware.ro/programming-blog/blogposter/photoshop/colorful-illustrations-by-christopher-lee/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>On (the undying topic of) copying</title>
		<link>http://www.neurosoftware.ro/programming-blog/blogposter/web-resources/on-the-undying-topic-of-copying/</link>
		<comments>http://www.neurosoftware.ro/programming-blog/blogposter/web-resources/on-the-undying-topic-of-copying/#comments</comments>
		<pubDate>Mon, 26 Oct 2009 15:09:05 +0000</pubDate>
		<dc:creator>BlogPoster</dc:creator>
				<category><![CDATA[web resources]]></category>
		<category><![CDATA[Bob Gage]]></category>
		<category><![CDATA[chord]]></category>
		<category><![CDATA[designers]]></category>
		<category><![CDATA[Doyle Dane]]></category>
		<category><![CDATA[drummer tony]]></category>
		<category><![CDATA[Helmut Krone]]></category>
		<category><![CDATA[inexperienced designers]]></category>
		<category><![CDATA[Luke Sullivan]]></category>
		<category><![CDATA[Pablo Picasso]]></category>
		<category><![CDATA[quote]]></category>
		<category><![CDATA[time]]></category>
		<category><![CDATA[Tony Williams]]></category>
		<category><![CDATA[topic]]></category>

		<guid isPermaLink="false">http://www.neurosoftware.ro/programming-blog/blogposter/web-resources/on-the-undying-topic-of-copying/</guid>
		<description><![CDATA[Written more than 6 years ago, my SitePoint article, &#8220;Good Designers Copy, Great Designers Steal&#8220;, is still referenced from time to time as I chat with other designers by email, at conferences, and the like. It struck a chord with people &#8212; whether positive, negative, or both &#8212; and today that chord still hums. I [...]]]></description>
			<content:encoded><![CDATA[<p>Written more than 6 years ago, my SitePoint article, &#8220;<a href="http://articles.sitepoint.com/article/copy-great-designers-steal">Good Designers Copy, Great Designers Steal</a>&#8220;, is still referenced from time to time as I chat with other designers by email, at conferences, and the like. It struck a chord with people &#8212; whether positive, negative, or both &#8212; and today that chord still hums. </p>
<p>I suppose it&#8217;s because the topic isn&#8217;t new, nor did I invent it. After all, I was quoting Pablo Picasso as the supposed source of the quote, and he died more than 35 years ago. Others, such as drummer Tony Williams, <a href="http://cameronmoll.com/archives/2009/04/drummer_tony_williams_good_musicians_copy/">have said the same</a>.</p>
<p>Here again I present another quote on the topic. This one is from <a href="http://en.wikipedia.org/wiki/Helmut_Krone">Helmut Krone</a>, art director of the famed 1960s campaign for the VW Beetle, as quoted in Luke Sullivan&#8217;s excellent <a href="http://www.amazon.com/gp/product/0470190736?ie=UTF8&amp;tag=authenticbore-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=0470190736"><em>Hey Whipple, Squeeze This</em></a>: </p>
<blockquote><p>I asked one of our [young] writers recently, which was more important: Doing your own thing or making the ad as good as it can be? The answer was &#8216;Doing my own thing.&#8217; I disagree violently with that. I&#8217;d like to pose a new idea for our age: <strong>&#8216;Until you&#8217;ve got a better answer, you copy.&#8217;</strong> I copied [famous Doyle Dane art director] Bob Gage for five years.</p></blockquote>
<p>This wise counsel was given in an interview with <em>Advertising Age</em> back in 1968. That&#8217;s how timeless the advice is for young and inexperienced designers to  craft their work by <em>following</em> their mentors&#8217; lead, rather than diverting from it.</p>
<p><a href="http://cameronmoll.com/index.xml">Go to Source</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.neurosoftware.ro/programming-blog/blogposter/web-resources/on-the-undying-topic-of-copying/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

