<?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>Advanced Programming Stories &#187; twitter</title>
	<atom:link href="http://developstories.gr/tag/twitter/feed/" rel="self" type="application/rss+xml" />
	<link>http://developstories.gr</link>
	<description>advanced web development techniques &#38; reverse engineering stories</description>
	<lastBuildDate>Tue, 27 Jul 2010 12:57:05 +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>Social Whale Groups jQuery plugin</title>
		<link>http://developstories.gr/jquery/socialwhale-widget-plugin/</link>
		<comments>http://developstories.gr/jquery/socialwhale-widget-plugin/#comments</comments>
		<pubDate>Thu, 04 Feb 2010 13:32:14 +0000</pubDate>
		<dc:creator>thek</dc:creator>
				<category><![CDATA[jQuery]]></category>
		<category><![CDATA[social whale]]></category>
		<category><![CDATA[twitter]]></category>

		<guid isPermaLink="false">http://developstories.gr/?p=93</guid>
		<description><![CDATA[Όπως θα έχετε διαπιστώσει το SocialWhale είναι το project που αφιερώνω τον περισσότερο χρόνο μου στο development. Αυτό μου δίνει το πλεονέκτημα να ασχολούμαι με πολύ ενδιαφέροντα αντικείμενα (ff extensions, betavine, jquery plugins, api&#8217;s κτλ). Έτσι έχω εμπλουτίσει τις γνώσεις μου πάνω στην javascript και ποιο συγκεκριμένα στο jquery framework.
Η συνεισφορά της ομάδας του SocialWhale [...]]]></description>
			<content:encoded><![CDATA[<p>Όπως θα έχετε διαπιστώσει το <a title="Social Whale" href="http://socialwhale.com">SocialWhale</a> είναι το project που αφιερώνω τον περισσότερο χρόνο μου στο development. Αυτό μου δίνει το πλεονέκτημα να ασχολούμαι με πολύ ενδιαφέροντα αντικείμενα (<a href="https://addons.mozilla.org/en-US/firefox/addon/11718/">ff extensions</a>, <a href="http://widget.vodafone.com/dev/widgets/social_whale_mini_1457">betavine</a>, <a href="http://plugins.jquery.com">jquery plugins</a>, <a href="http://en.wikipedia.org/wiki/Application_programming_interface">api&#8217;s</a> κτλ). Έτσι έχω εμπλουτίσει τις γνώσεις μου πάνω στην <a href="http://en.wikipedia.org/wiki/JavaScript">javascript</a> και ποιο συγκεκριμένα στο <a href="http://jquery.com">jquery framework</a>.</p>
<p>Η συνεισφορά της <a href="http://twitter.com/socialwhale/team">ομάδας του SocialWhale</a> για το <a href="http://wordcamp.gr">wordcampGR</a> event ήταν και η αφορμή για την δημιουργία ενός <a href="http://plugins.jquery.com/project/jwhale">jquery plugin</a> (<a href="http://twitter.com/thek27">thek27</a>) σε συνδυασμό με ένα wordpress plugin (<a href="http://twitter.com/humanworks">humanworks</a>) το οποίο παρουσιάζει ένα <a href="http://groups.socialwhale.com/1">SocialWhale Group</a> σε ένα <a href="http://wordcamp.gr/socialwhale">widget</a>. Για τους registered χρήστες υπάρχει και η δυνατότητα για vote και post στο group.</p>
<p>Αν και έχω ασχοληθεί παρά πολύ με τα plugins του jquery (ui, autocomplete, bt, fancybox, jGrowl, κ.α.) δεν είχα κάνει ποτέ κάποιο δικό μου όποτε ξεκίνησα από την αρχή, με reverse σε υπάρχοντα plugins και search στο google για tutorials και παραδείγματα.</p>
<p>Αφού βρήκα το <a href="http://denis.tumblr.com/post/51601242/a-simple-jquery-plugin-skeleton">skeleton</a> για το plugin η συνέχεια ήταν εύκολη υπόθεση, copy/paste από κώδικα socialwhale, εκτός από 2 σημεία που έπρεπε να βρούμε μια έξυπνη λύση. Το πρώτο ήταν το <a href="http://oauth.net">oauth</a> login που έπρεπε να γίνει από το site του socialwhale και στην συνέχεια να γίνεται redirect πίσω, ώστε να εμφανιστεί η φόρμα για το post και το action για το vote. Το δεύτερο ήταν και το ποιο ενδιαφέρον, γιατί ήθελα να βρω μια λύση με iframe για να αποφύγω το <a href="http://en.wikipedia.org/wiki/Cross-site_scripting">cross site scripting</a> που δεν παίζει με <a href="http://groups.google.com/group/jquery-en/browse_thread/thread/8bd0e249e2041b3b">ajax post</a>.</p>
<p>Ας τα πάρουμε από την αρχή, το socialwhale είναι έτσι φτιαγμένο που έχει δικό του api (extended πάνω στο twitter), έτσι για να καταλάβουμε αν ένας χρήστης είναι logged on ελέγχουμε το attribute voted από το json result (πχ <a href="http://groups.socialwhale.com/groups_api/timeline/both/1.json">groups_api/timeline/both/1.json</a>), και αν αυτό είναι null, τότε δεν είναι, διαφορετικά σημαίνει αν έχει κάνει vote το συγκεκριμένο update. Τώρα για το login απλά φτιάξαμε ένα button στο http://socialwhale.com/oauth όπου το φορτώνουμε με iframe, έτσι όλος ο υπόλοιπος κώδικας βρίσκεται στον server, ώστε να μπορούμε να ελέγχουμε όλα τα <a href="http://widgetmotion.com/">widget</a> από ένα oauth login, αυτό του socialwhale. Έτσι αν ένας χρήστης είναι login στο socialwhale, τότε είναι ταυτόχρονα login σε όλα τα widgets  ανεξαρτήτου group.</p>
<p>Τώρα όσο αφορά το submit της φόρμας, σκέφτηκα την λογική του iframe, αλλά με δυναμικό τρόπο, ώστε να έχω και τον έλεγχο του <a href="http://old.nabble.com/Trigger-ajax-event-on-iframe-load-td20294154s27240.html">onload event</a>. Ποιο συγκεκριμένα να δημιουργείτε στο runtime ένα <a href="http://stackoverflow.com/questions/205087/jquery-ready-in-a-dynamically-inserted-iframe">iframe με src=&#8221;about:blank&#8221;</a> και να γεμίζει με την φόρμα που στην συνέχεια γίνεται submit στο socialwhale. Μόλις επιστρέψει το post εμφανίζει στο body ένα div που έχει μέσα το json object και γίνεται trigger το load event του iframe. Έτσι στην συνέχεια γίνεται refresh το timeline και εμφανίζονται τα νέα posts.</p>
<p>Όπως και μάθε plugin έτσι και αυτό έχει options για πόσα rows, αν θα έχει auto refresh κτλ.<br />
Παράδείγματα μπορείτε να δείτε στο <a href="http://wordcamp.gr/socialwhale/">wordcamp.gr</a> και στο <a href="http://blog.socialwhale.com/wpwhale-demo">blog.socialwhale.com</a>.</p>
<p>Το plugin είναι κάτω από <a href="http://www.gnu.org/licenses/gpl.html">GPL licence</a> το <a href="http://blog.socialwhale.com/2010/01/30/social-whale-group-plugins/">Copyright</a> ανήκει στο SocialWhale και βρίσκεται στο  <a href="http://code.google.com/p/jwhale">google code</a> με την ονομασία jwhale.</p>
]]></content:encoded>
			<wfw:commentRss>http://developstories.gr/jquery/socialwhale-widget-plugin/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ένα firefox extension για twitterholics</title>
		<link>http://developstories.gr/twitter/%ce%ad%ce%bd%ce%b1-firefox-extension-%ce%b3%ce%b9%ce%b1-twitterholics/</link>
		<comments>http://developstories.gr/twitter/%ce%ad%ce%bd%ce%b1-firefox-extension-%ce%b3%ce%b9%ce%b1-twitterholics/#comments</comments>
		<pubDate>Wed, 06 May 2009 05:41:42 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[twitter]]></category>
		<category><![CDATA[firefox]]></category>
		<category><![CDATA[social whale]]></category>

		<guid isPermaLink="false">http://developstories.gr/?p=86</guid>
		<description><![CDATA[Τελευταία και αφού μπήκα στο development team του social whale, ασχολούμαι αρκετά με development γύρω απο το twitter. Μετά το winamp plugin για το audiotwit, σκεφτήκαμε να κάνουμε κάτι πιό χρήσιμο για την κοινότητα του twitter.
The social whale firefox extension
To social whale firefox extension είναι ένα απλό addon το οποίο μπορείτε να χρησιμοποιήτε για να [...]]]></description>
			<content:encoded><![CDATA[<p>Τελευταία και αφού μπήκα στο development team του <a href="http://socialwhale.com/">social whale</a>, ασχολούμαι αρκετά με development γύρω απο το twitter. Μετά το <a href="http://developstories.gr/twitter/winamp-plugin-%CE%B3%CE%B9%CE%B1-%CF%84%CE%BF-audiotwit/">winamp plugin</a> για το <a href="http://audiotwit.com/">audiotwit</a>, σκεφτήκαμε να κάνουμε κάτι πιό χρήσιμο για την κοινότητα του twitter.</p>
<h3>The social whale firefox extension</h3>
<p>To <a href="https://addons.mozilla.org/en-US/firefox/addon/11718/">social whale firefox extension</a> είναι ένα απλό addon το οποίο μπορείτε να χρησιμοποιήτε για να δημιουργήσετε short urls μέσω του <a href="http://twt.gs/">twt.gs</a> και για να κάνετε upload φωτογραφίες μέσω του <a href="http://twitpic.com/">twitpic.com</a>.</p>
<p>Για οδηγίες ανατρέξτε <a href="http://blog.socialwhale.com/2009/04/30/social-whale-firefox-extension/">εδώ</a>, ενώ άν έχετε οποιοδήποτε σχόλιο ή παρατήρηση αφήστε ένα σχόλιο.</p>
]]></content:encoded>
			<wfw:commentRss>http://developstories.gr/twitter/%ce%ad%ce%bd%ce%b1-firefox-extension-%ce%b3%ce%b9%ce%b1-twitterholics/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Winamp plugin για το audiotwit</title>
		<link>http://developstories.gr/twitter/winamp-plugin-%ce%b3%ce%b9%ce%b1-%cf%84%ce%bf-audiotwit/</link>
		<comments>http://developstories.gr/twitter/winamp-plugin-%ce%b3%ce%b9%ce%b1-%cf%84%ce%bf-audiotwit/#comments</comments>
		<pubDate>Tue, 20 Jan 2009 09:32:37 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[twitter]]></category>
		<category><![CDATA[hack]]></category>

		<guid isPermaLink="false">http://developstories.gr/?p=58</guid>
		<description><![CDATA[Το twitter, η micro blogging πλατφόρμα που πλέον όλοι γνωρίζουμε και χρησιμοποιούμε, είναι το αγαπημένο μας social network για ανταλλαγή μηνυμάτων. Όπως όλα τα social networks έχει friends, αλλά αυτό που το κάνει ιδιαίτερο είναι  ο τρόπος που παρακολουθείς μια συζήτηση (follow,@). Έχουν γραφτεί πάρα πολλές εφαρμογές βασισμένες στο api του twitter, πολλές από [...]]]></description>
			<content:encoded><![CDATA[<p>Το <a href="http://twitter.com/">twitter</a>, η micro blogging πλατφόρμα που πλέον όλοι γνωρίζουμε και χρησιμοποιούμε, είναι το αγαπημένο μας social network για ανταλλαγή μηνυμάτων. Όπως όλα τα social networks έχει friends, αλλά αυτό που το κάνει ιδιαίτερο είναι  ο τρόπος που παρακολουθείς μια συζήτηση (follow,@). Έχουν γραφτεί πάρα πολλές εφαρμογές βασισμένες στο <a href="http://apiwiki.twitter.com/">api</a> του twitter, πολλές από αυτές, έχουν κάνει το twitting καθημερινή συνήθεια.</p>
<p>To <a href="http://audiotwit.com/">audiotwit</a> είναι και αυτό μία εφαρμογή που χρησιμοποιεί το api του twitter για να δημιουργεί ένα audio playlist με την βοήθεια του χρήστη <a href="http://twitter.com/listensto">@listensto</a>. Η ιδέα έρχεται από τον <a href="http://twitter.com/humaworksSEO">Νίκο Παπανώτα</a>, ο οποίος έψαχνε να βρεί ένα project για να πειραματιστεί με το api. Για να το χρησιμοποιήσει κάποιος δεν έχει παρά να κάνει follow τον user @listensto και να στέλνει τα ακούσματά του με την μορφή «@listensto Artists – Song». Το audiotwit κάθε 5 λεπτά, βλέπει τα μυνήματα και τα καταχωρεί στην σελίδα του κάθε χρήστη. (π.χ. Το δικό μου twitter είναι το <a href="http://twitter.com/thek27">thek27</a>, οπότε το <a href="http://thek27.audiotwit.com/">thek27.audiotwit.com</a> παρουσιάζει την λίστα με τα τραγούδια που έχω ακούσει, ενώ η υπηρεσία έχει και <a href="http://thek27.audiotwit.com/feed">RSS feed</a> για κάθε χρήστη.)</p>
<h3>To Winamp plugin</h3>
<p>Πολύ ωραίο σαν ιδέα, άλλα το πρόβλημα είναι ότι για να ενημερώνω το playlist μου θα πρέπει κάθε φορά που ακούω ένα τραγούδι να το στέλνω και στο twitter. Έτσι μου ήρθε η ιδέα να φτιάξω ένα winamp plugin το οποίο θα στέλνει αυτόματα το τραγούδι που ακούω κάθε στιγμή χωρίς εγώ να ασχολούμαι με το twitter.</p>
<p>Σε επόμενο post θα γράψω όλη την διαδικασία κατασκευής αυτού του plugin, αφού θα δώσω και τον κώδικα ανοιχτό. Αλλά προς το παρόν συγχωρέστε με άλλα βιάζομαι να δω πως θα προχωρήσει το audiotwit μετά την εφαρμογή του winamp plugin.</p>
<p>Σείρα έχει το plugin για media player και itunes. Πιστέυω πως δεν θα αργήσουν. Αν έχει ασχοληθεί κάποιος και θέλει να βοηθήσει μπορεί να επικοινωνήσει μαζί μου.</p>
<h3>Εγκατάσταση του plugin</h3>
<p>Αν θέλετε να συμμετάσχετε στο ελληνικό social experiment του twitter, δέν έχετε παρά να κατεβάσετε το <a href="http://developstories.gr/wp-content/uploads/gen_audiotwit.exe">plugin απο εδώ</a>. Αφού το εκτελέσετε, την πρώτη φορά που θα τρέξει θα σας ζητήσει το username και το password σας στο twitter ωστε να μπορεί να κάνει updates όποτε ακούτε κάποιο κομμάτι.</p>
]]></content:encoded>
			<wfw:commentRss>http://developstories.gr/twitter/winamp-plugin-%ce%b3%ce%b9%ce%b1-%cf%84%ce%bf-audiotwit/feed/</wfw:commentRss>
		<slash:comments>10</slash:comments>
		</item>
	</channel>
</rss>
