<?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>140dev &#187; Data Mining Tweets</title>
	<atom:link href="http://140dev.com/twitter-api-programming-blog/category/data-mining-tweets/feed/" rel="self" type="application/rss+xml" />
	<link>http://140dev.com</link>
	<description>Twitter API Programming Tips, Tutorials, Source Code Libraries and Consulting</description>
	<lastBuildDate>Wed, 31 Jul 2019 10:03:15 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.6</generator>
		<item>
		<title>How is Twitter programming better than Twitter search?</title>
		<link>http://140dev.com/twitter-api-programming-blog/how-is-twitter-programming-better-than-twitter-search/</link>
		<comments>http://140dev.com/twitter-api-programming-blog/how-is-twitter-programming-better-than-twitter-search/#comments</comments>
		<pubDate>Fri, 08 Jun 2012 12:51:28 +0000</pubDate>
		<dc:creator>Adam Green</dc:creator>
				<category><![CDATA[Data Mining Tweets]]></category>
		<category><![CDATA[Database Cache]]></category>
		<category><![CDATA[Quality Control]]></category>
		<category><![CDATA[Twitter Spam]]></category>

		<guid isPermaLink="false">http://140dev.com/?p=1540</guid>
		<description><![CDATA[This is a question I frequently get asked by new clients. They know there is a Twitter API available to collect tweets, but they have no idea how the results differ from just asking for tweets with Search.Twitter.com. I&#8217;ve recently explained the fact that a tweet database lets you create a long-term store that cannot [&#8230;]]]></description>
				<content:encoded><![CDATA[<p></p><p>This is a question I frequently get asked by new clients. They know there is a Twitter API available to collect tweets, but they have no idea how the results differ from just asking for tweets with Search.Twitter.com. I&#8217;ve recently <a href="http://140dev.com/twitter-api-programming-blog/twitter-consultant-tip-tweet-data-is-priceless/">explained</a> the fact that a tweet database lets you create a long-term store that cannot be reproduced or purchased any other way. That is just the starting point. The real advantage of Twitter API programming is the way it allows you to add value to a collection of tweets:</p>
<ul>
<li>You can apply <a href="http://140dev.com/twitter-api-programming-blog/screening-a-tweet-stream-for-quality-control/">quality control rules</a> that let you filter out false positives for the keywords you are using in your collection query.</li>
<li>I also like to apply simple &#8220;filth controls&#8221; to all tweet streams that get displayed on sites. This starts with a list of George Carlin&#8217;s 7 words you can&#8217;t say on television, and grows into a list of the more creative racist and misogynist words so popular on Twitter. Excluding tweets with these words makes Twitter seem much more civilized.</li>
<li>A simple <a href="http://140dev.com/twitter-api-programming-blog/language-detection-for-tweets-part-1/">language detection algorithm</a> will let you tweets for a specific language and exclude all other languages.</li>
<li>By checking the tweets you receive for spammy words, like free, coupon, buy now, or sale, you can clean out a high percentage of spam tweets, and if you check new tweets for duplicates, you can identify spammers and blacklist them.</li>
<li>If you screen the user account data for each tweet&#8217;s author, you can exclude accounts that have a spammy profile, such as a default avatar, no followers, or an account that has only been in existence a few days.</li>
<li>Or you can come up with an influence algorithm, such as follower count or frequency of mentions, to select tweets from the most influential users.</li>
</ul>
<p>These are just the generic ways to add value to a tweet aggregation site. Once you start working with a client with specific application needs, there are many ways to add value to Twitter. This is an iterative process that keeps improving the quality of your tweet collection.</p>
<p>So the simple answer to the question is that Twitter programming produces much higher quality results than Twitter search.</p>
]]></content:encoded>
			<wfw:commentRss>http://140dev.com/twitter-api-programming-blog/how-is-twitter-programming-better-than-twitter-search/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Twitter Consulting Tip: Twitter is people</title>
		<link>http://140dev.com/twitter-api-programming-blog/twitter-consulting-tip-twitter-is-people/</link>
		<comments>http://140dev.com/twitter-api-programming-blog/twitter-consulting-tip-twitter-is-people/#comments</comments>
		<pubDate>Sat, 02 Jun 2012 11:47:03 +0000</pubDate>
		<dc:creator>Adam Green</dc:creator>
				<category><![CDATA[Data Mining Tweets]]></category>
		<category><![CDATA[Twitter consultant]]></category>
		<category><![CDATA[Twitter Marketing]]></category>

		<guid isPermaLink="false">http://140dev.com/?p=1503</guid>
		<description><![CDATA[Lots of people ask us to build databases of tweets, but they seem to miss the fact that along with the tweets you can also collect an amazing database of people. Data about the people who tweet is the proverbial low hanging fruit. The Twitter API gives you the complete profile of the author of [&#8230;]]]></description>
				<content:encoded><![CDATA[<p></p><p>Lots of people ask us to build <a href="http://140dev.com/twitter-api-programming-tutorials/twitter-api-database-cache/">databases of tweets</a>, but they seem to miss the fact that along with the tweets you can also collect an amazing database of people. Data about the people who tweet is the proverbial low hanging fruit. The Twitter API gives you the complete profile of the author of each tweet it delivers. You don&#8217;t have to make an extra API call. Twitter is basically saying, &#8220;Here is a fresh set of data about this person, please take it and build something useful.&#8221; The Twitter Terms of Service has strict limits on the reselling of tweet text, but lets you do whatever you want with user profiles. These are strong signs that Twitter looks favorably on applications based on their users.</p>
<p>There are several ways a good Twitter consultant can help their clients understand the value of user data. My favorite technique is to make the marketing case that a tweet database is a great source of leads. Along with knowing what is being said, you know who is saying it. You also know everything else that user is saying. Excuse me for being crass, but the best way to describe this is that it is like email marketing, only you get to read the email of everyone you want to communicate with. That is a huge advantage.</p>
<p>Twitter lets you fly at 30,000 feet over the general landscape of discussion about your client&#8217;s product or market segment, and then zoom down and focus on a single individual. That is completely unprecedented. Even better, you can gather solid metrics about the influence of each user through values like follower count and frequency of mentions by others. Some of these values, like follower count, are readily available by looking at a user&#8217;s profile, but others require programming. That is where a Twitter consultant can add value.</p>
<p>My pitch is generally that while you can get influence measurements from tools like Klout, those are generic measurements of influence against all Twitter users and areas of interest. If you use the Twitter API and collect only tweets about a specific set of keywords, you can identify the most influential people for this area. I&#8217;ve written a detailed <a href="http://140dev.com/twitter-api-programming-tutorials/identifying-influential-twitter-users/">tutorial</a> on this subject.</p>
<p>The best Twitter consultants make sure that they go beyond just building what the client asks for based on a limited knowledge of what is possible with Twitter data. By opening up the marketing benefits of a database of Twitter users, a whole new set of features are possible, and both the client and consultant profit.</p>
]]></content:encoded>
			<wfw:commentRss>http://140dev.com/twitter-api-programming-blog/twitter-consulting-tip-twitter-is-people/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Twitter Consultant Tip: Tweet data is priceless</title>
		<link>http://140dev.com/twitter-api-programming-blog/twitter-consultant-tip-tweet-data-is-priceless/</link>
		<comments>http://140dev.com/twitter-api-programming-blog/twitter-consultant-tip-tweet-data-is-priceless/#comments</comments>
		<pubDate>Thu, 31 May 2012 20:12:52 +0000</pubDate>
		<dc:creator>Adam Green</dc:creator>
				<category><![CDATA[Data Mining Tweets]]></category>
		<category><![CDATA[Database Cache]]></category>
		<category><![CDATA[Twitter consultant]]></category>
		<category><![CDATA[Twitter Database Programming]]></category>

		<guid isPermaLink="false">http://140dev.com/?p=1489</guid>
		<description><![CDATA[Most of the Twitter consulting I do involves some form of tweet collection and storage in a database. Even when clients approach me with this in mind, they hardly ever realize just how valuable tweet data can be. In fact, it is priceless in the truest sense of the word, because there is no way [&#8230;]]]></description>
				<content:encoded><![CDATA[<p></p><p>Most of the Twitter consulting I do involves some form of tweet collection and storage in a database. Even when clients approach me with this in mind, they hardly ever realize just how valuable tweet data can be. In fact, it is priceless in the truest sense of the word, because there is no way to buy tweets after they are sent. You either capture them in real-time, or they are gone forever. Anyone who wants to work as a Twitter consultant needs to be able to explain that value added message to potential clients. Here are the key selling points to keep in mind. </p>
<p>The Twitter search API only goes back in time 5 to 6 days, and will only return up to 1,500 tweets for any query. If you want old tweets from the API, that is an absolute limit. The streaming API is much more responsive, and will return up to 1% of the total stream, meaning that you can get up to 3 million tweets a day on any query, but these tweets are returned in real-time, not after the fact. So if you want to get all the tweets for a query, you must set up the streaming API connection <em>before you need the results</em>.  Then you must store them in a database for later retrieval. </p>
<p>The <a href="https://twitter.com/tos">Twitter terms of service</a> (TOS) allow you to store tweets for use on your own server, either for display or analysis, but there are strict limitations on reselling this data. You can sell it in discrete data sets as a file, such as a PDF or Excel file, but you cannot resell it as an API or real-time service. This means that if someone has already collected tweets that you need, you are forbidden from buying them as a continuous stream for display on your site. If you haven&#8217;t collected them yourself, you can&#8217;t have a real-time display of tweets on your site, even if you are willing to pay for them. </p>
<p>But what about Twitter&#8217;s data partners, Gnip and Datasift? These sites don&#8217;t publicize the limitation on their site, but they are also forbidden by Twitter&#8217;s license from selling tweets for display on other sites. The tweets you buy from them may only be used for analysis, such as in a product like Radian 6. </p>
<p>All of this means that once a client has built up a long-term database of tweets, they have a priceless resource. There is no price at which these tweets can be bought and sold for continuous display. That makes a tweet database an incredibly valuable resource, and it means that you have to start collecting tweets and saving them in advance. There is no going back for them. </p>
<p>Once clients understand this, they suddenly become very acquisitive. They can collect all the tweets about politicians, celebrities, athletes, TV shows, etc., and have a iron-clad barrier to entry against any competitor coming along later. That is a valuable selling tool for any Twitter consultant who can do this type of database programming. My free, <a href="http://140dev.com/free-twitter-api-source-code-library/">open source library</a> is a good starting point for this type of coding. </p>
]]></content:encoded>
			<wfw:commentRss>http://140dev.com/twitter-api-programming-blog/twitter-consultant-tip-tweet-data-is-priceless/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Twitter consultant tip: Creating a sales lead spreadsheet</title>
		<link>http://140dev.com/twitter-api-programming-blog/twitter-consultant-tip-sales-lead-spreadsheet/</link>
		<comments>http://140dev.com/twitter-api-programming-blog/twitter-consultant-tip-sales-lead-spreadsheet/#comments</comments>
		<pubDate>Mon, 15 Nov 2010 13:52:34 +0000</pubDate>
		<dc:creator>Adam Green</dc:creator>
				<category><![CDATA[Consulting Tips]]></category>
		<category><![CDATA[Data Mining Tweets]]></category>
		<category><![CDATA[Lead Generation]]></category>
		<category><![CDATA[Tweet Aggregation]]></category>
		<category><![CDATA[Twitter Marketing]]></category>
		<category><![CDATA[User Ranking]]></category>

		<guid isPermaLink="false">http://140dev.com/?p=995</guid>
		<description><![CDATA[Part of the sales process for Twitter consulting is convincing a new client that Twitter is more than just another way to broadcast their message. You have to show them that what appears to be a random stream of tweets is really a collection of highly qualified sales prospects. By aggregating Twitter users as well [&#8230;]]]></description>
				<content:encoded><![CDATA[<p></p><p>Part of the sales process for <strong>Twitter consulting</strong> is convincing a new client that Twitter is more than just another way to broadcast their message. You have to show them that what appears to be a random stream of tweets is really a collection of highly qualified <strong>sales prospects</strong>. By aggregating Twitter users as well as their Tweets, you can extract a great set of <strong>sales leads</strong> along with their contact info. One way to quickly demonstrate the value of tweet aggregation  is to deliver an Excel spreadsheet of sales prospects that meet the client&#8217;s needs. </p>
<p>When you <strong>aggregate tweets</strong> from the <strong>Twitter streaming API</strong>, it also returns the complete account profile for each user. You can data mine this collection of users to extract highly targeted lists of users, along with their geographical location and home page URL. </p>
<p>The free <a href="http://140dev.com/free-twitter-api-source-code-library/">140dev Twitter framework</a> is an example of the code you will need to do the tweet aggregation. The schema for the <a href="http://140dev.com/free-twitter-api-source-code-library/twitter-database-server/mysql-database-schema/">MySQL database</a> it creates shows you it has a table for all the aggregated tweets, which links to the list of tweeting users. Since all of this data is collected for a specific set of keywords, you can then extract personal details on the users who tweet these keywords the most with a simple SQL statement:</p>
<p><code>SELECT count(*) AS cnt, users.screen_name, users.name, users.location, users.url<br />
FROM tweets, users<br />
WHERE tweets.user_id = users.user_id<br />
AND users.location != ''<br />
AND users.url != ''<br />
GROUP BY tweets.user_id<br />
ORDER BY cnt DESC<br />
LIMIT 1000</code></p>
<p>The 140dev framework&#8217;s example database collects tweets for the keyword &#8220;recipe&#8221;, so this query gives us the most active tweeters in the food world. Here are the results in phpMyAdmin:</p>
<p><img src="http://140dev.com/tutorial_images/sales_leads.png"></p>
<p>You can then export the results from phpMyAdmin to an <a href="http://140dev.com/download/sales_leads.xls">Excel spreadsheet</a>, and email it to your client. This gives them solid data in a familiar form. Twitter doesn&#8217;t deliver email addresses, and doesn&#8217;t even collect phone numbers, but you do get each user&#8217;s home page URL. This can be used to gather other contact info, a task that is easily farmed out to people on freelance sites like <a href="https://www.mturk.com/mturk/welcome">Mechanical Turk</a>. </p>
<p>So the next time you want to convince a client that Twitter is not just a bunch of kids talking to each other, you can just create a tweet aggregation database for the client&#8217;s industry keywords, let it collect data for a few days, and pull out a list of targeted users. </p>
]]></content:encoded>
			<wfw:commentRss>http://140dev.com/twitter-api-programming-blog/twitter-consultant-tip-sales-lead-spreadsheet/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Twitter consultant tip: Top 5 ways to monetize Twitter</title>
		<link>http://140dev.com/twitter-api-programming-blog/twitter-consultant-monetize-twitter/</link>
		<comments>http://140dev.com/twitter-api-programming-blog/twitter-consultant-monetize-twitter/#comments</comments>
		<pubDate>Fri, 12 Nov 2010 15:29:19 +0000</pubDate>
		<dc:creator>Adam Green</dc:creator>
				<category><![CDATA[Consulting Tips]]></category>
		<category><![CDATA[Data Mining Tweets]]></category>
		<category><![CDATA[Lead Generation]]></category>
		<category><![CDATA[Twitter Marketing]]></category>
		<category><![CDATA[Twitter SEO]]></category>
		<category><![CDATA[User Ranking]]></category>

		<guid isPermaLink="false">http://140dev.com/?p=934</guid>
		<description><![CDATA[I went to the OpenCoffee meetup in Cambridge the other day. They all recognized the importance of Twitter, but don&#8217;t understand how to make money from it. We are exactly where we were in 1996 with the World Wide Web when I helped start Andover.net. Great point in the cycle. So here is my quick [&#8230;]]]></description>
				<content:encoded><![CDATA[<p></p><p>I went to the <a href="http://www.meetup.com/OpenCoffee-Cambridge-Meetup/">OpenCoffee meetup</a> in Cambridge the other day. They all recognized the importance of Twitter, but don&#8217;t understand how to make money from it. We are exactly where we were in 1996 with the World Wide Web when I helped start Andover.net. Great point in the cycle.</p>
<p>So here is my quick 5 point pitch on how clients can benefit from <strong>integrating Twitter into business and marketing models</strong>. But first keep in mind that you don&#8217;t make money &#8220;from Twitter&#8221;, you make money &#8220;with Twitter&#8221;. Meaning that Twitter is a lever for improving your other efforts, but you don&#8217;t get cash handed to you directly by Twitter users on Twitter. Anyway, here&#8217;s my list:</p>
<p><strong>1.</strong> Putting keyword targeted tweets on pages in the right way is great for SEO. Google loves tweets. This will increase the page&#8217;s search rank, getting a lot more first time visitors.</p>
<p><strong>2.</strong> Datamining of tweets lets you find the right people to follow in Twitter for your market. This can be used very effectively to build a big follower list. This list becomes profitable when you tweet messages with URLs you want people to click on. Think of it as free Adwords.</p>
<p><strong>3.</strong> Follower lists are also essential if you want to make people do something in the real world, like contribute money, or go to an event. Twitter will be huge in 2012 election.</p>
<p><strong>4.</strong> If you have a database of tweets, you can datamine it for sales leads. You can give sales people the Twitter accounts and home page URLs of people who tweet a lot about the products the salesperson is selling. The best part is that the salesperson can see exactly what prospects say about their products and competitors before contacting them.</p>
<p><strong>5.</strong> You can also datamine a tweet database for sentiment trends. This is valuable for PR and customer service. It gives you a real-time read on how effective the rest of your communication program is.</p>
]]></content:encoded>
			<wfw:commentRss>http://140dev.com/twitter-api-programming-blog/twitter-consultant-monetize-twitter/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Your spammer is my information source</title>
		<link>http://140dev.com/twitter-api-programming-blog/your-spammer-is-my-information-source/</link>
		<comments>http://140dev.com/twitter-api-programming-blog/your-spammer-is-my-information-source/#comments</comments>
		<pubDate>Sun, 17 Oct 2010 13:36:53 +0000</pubDate>
		<dc:creator>Adam Green</dc:creator>
				<category><![CDATA[Automated Tweets]]></category>
		<category><![CDATA[Data Mining Tweets]]></category>
		<category><![CDATA[Tweet Aggregation]]></category>
		<category><![CDATA[User Ranking]]></category>

		<guid isPermaLink="false">http://140dev.com/?p=287</guid>
		<description><![CDATA[There is an interesting thread on the Twitter development list about the need for a &#8220;good citizen&#8221; rank. This problem is approached in a literal engineering way, which says there are good and bad users. There are plenty of Twitter behaviors that could be seen as &#8220;bad,&#8221; but the beauty of Twitter is that it [&#8230;]]]></description>
				<content:encoded><![CDATA[<p></p><p>There is an <a href="http://groups.google.com/group/twitter-development-talk/browse_thread/thread/ec1d39a3a38321ff">interesting thread</a> on the Twitter development list about the need for a &#8220;good citizen&#8221; rank. This problem is approached in a literal engineering way, which says there are good and bad users. There are plenty of Twitter behaviors that could be seen as &#8220;bad,&#8221; but the beauty of Twitter is that it is totally opt-in. I only see the people I choose to follow. So the only meaningful criteria is whether I or my client wants to read an account&#8217;s tweets. Automating that selection must be made within the context of a specific area of interest. I believe that my <a href="http://140dev.com/twitter-api-programming-tutorials/identifying-influential-twitter-users">mention algorithm</a> is a good way of solving this problem. </p>
]]></content:encoded>
			<wfw:commentRss>http://140dev.com/twitter-api-programming-blog/your-spammer-is-my-information-source/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
