rahuldave + twitter   16

When clicking counts: In defense of slacktivism and clicktivism
There’s nothing more frustrating than reading an article that disparages online advocacy as “slacktivism” or “clicktivism.” Both terms derogatorily define online petitions, tweets and web messages as nothing more than feel-good measures that purport to support some kind of issue or social cause but really have little practical effect.

The ”slacker-activists as armchair do-gooders who don’t make a difference” argument has been made by the Guardian and Malcolm Gladwell, among others. Social movements with strong online interactions rarely are granted any credence compared to offline actions.

However, a few thought leaders have been recently rethinking online advocacy. In a New York Times piece last month, “Hashtag Activism, and Its Limits,” David Carr made the case that online advocacy can indeed affect real-world decisions. Carr offered several recent examples (the defeat of the SOPA bill and the Susan G. Komen incident to name a few) of how online pressure and awareness-building can create change. A Public Radio International piece on slacktivism also evaluated recent online social movements favorably. And Sortable.com’s recent infographic, “The Rise of the Slacktivist,” embraces the term and cites several examples of how slacktivism can actually lead to more real-world engagement. Check out their fantastic infographic below.

Online activism is — and has always been — a means to an end, just like phone calls, handwritten letters, and in-district meetings. Online petitions can have extraordinary reach to alert and activate tens of thousands of people around the world (or in the case of our current Thrive campaign, hundreds of thousands). A petition alone — as with any action by itself — cannot sustain a campaign or is unlikely to create change. But coupled with offline actions, media and grassroots activism, a petition can bring new voices into a campaign and help push direct action. And they are incredibly easy to share with others, so they can get passed around quickly and efficiently.

In the next two weeks leading up to the G8 summit, ONE will roll out some fantastic online actions to push global leaders to fund solutions to hunger and malnutrition. These actions, along with the postcards, petitions, #DearG8 hashtags, photos, and events are just part of a multifaceted campaign that pushes decision-makers to act. So, don’t think a click won’t count. That Facebook share graphic or the iPhone app petition has an overall affect for a campaign. To quote a trusted ONE staffer when discussing how to move US legislators, “A tweet by itself is just a tweet, but a thousand tweets are a song.”

Photo credit: Geek.com and Sortable.com

Garth Moore is US deputy director of new media for ONE and is a social media junkie. Catch him on Twitter at @garthmoore.
Facebook  Technology  Thrive  Twitter  from google
28 days ago by rahuldave
Big Data, R and SAP HANA: Analyze 200 Million Data Points and Later Visualize in HTML5 Using D3 – Part III
(This article was first published on All Things R, and kindly contributed to R-bloggers)

Mash-up Airlines Performance Data with Historical Weather Data to Pinpoint Weather Related DelaysFor this exercise, I combined following four separate blogs that I did on BigData, R and SAP HANA.  Historical airlines and weather data were used for the underlying analysis. The aggregated output of this analysis was outputted in JSON which was visualized in HTML5, D3 and Google Maps.  The previous blogs on this series are:Big Data, R and SAP HANA: Analyze 200 Million Data Points and Later Visualize in HTML5 Using D3 - Part IIBig Data, R and HANA: Analyze 200 Million Data Points and Later Visualize Using Google MapsGetting Historical Weather Data in R and SAP HANA Tracking SFO Airport's Performance Using R, HANA and D3In this blog, I wanted to mash-up disparate data sources in R and HANA by combining airlines data with weather data to understand the reasons behind the airport/airlines delay.  Why weather - because weather is one of the commonly cited reasons in the airlines industry for flight delays.  Fortunately, the airlines data breaks up the delay by weather, security, late aircraft etc., so weather related delays can be isolated and then the actual weather data can be mashed-up to validate the airlines' claims.  However, I will not be doing this here, I will just be displaying the mashed-up data.I have intentionally focused on the three bay-area airports and have used last 4 years of historical data to visualize the airport's performance using a HTML5 calendar built from scratch using D3.js.  One can use all 20 years of data and for all the airports to extend this example.  I had downloaded historical weather data for the same 2005-2008 period for SFO and SJC airports as shown in my previous blog (For some strange reasons, there is no weather data for OAK, huh?).  Here is how the final result will look like in HTML5:Click here to interact with the live example.  Hover over any cell in the live example and a tool tip with comprehensive analytics will show the break down of the performance delay for the selected cell including weather data and correct icons* - result of a mash-up.  Choose a different airport from the drop-down to change the performance calendar. * Weather icons are properties of Weather Underground.As anticipated, SFO airport had more red on the calendar than SJC and OAK.  SJC definitely is the best performing airport in the bay-area.  Contrary to my expectation, weather didn't cause as much havoc on SFO as one would expect, strange?Creating a mash-up in R for these two data-sets was super easy and a CSV output was produced to work with HTML5/D3.  Here is the R code and if it not clear from all my previous blogs: I just love data.table package.###########################################################################################  # Percent delayed flights from three bay area airports, a break up of the flights delay by various reasons, mash-up with weather data###########################################################################################  baa.hp.daily.flights <- baa.hp[,list( TotalFlights=length(DepDelay), CancelledFlights=sum(Cancelled, na.rm=TRUE)),                              by=list(Year, Month, DayofMonth, Origin)]setkey(baa.hp.daily.flights,Year, Month, DayofMonth, Origin)baa.hp.daily.flights.delayed <- baa.hp[DepDelay>15,                                     list(DelayedFlights=length(DepDelay),                                       WeatherDelayed=length(WeatherDelay[WeatherDelay>0]),                                      AvgDelayMins=round(sum(DepDelay, na.rm=TRUE)/length(DepDelay), digits=2),                                      CarrierCaused=round(sum(CarrierDelay, na.rm=TRUE)/sum(DepDelay, na.rm=TRUE), digits=2),                                      WeatherCaused=round(sum(WeatherDelay, na.rm=TRUE)/sum(DepDelay, na.rm=TRUE), digits=2),                                      NASCaused=round(sum(NASDelay, na.rm=TRUE)/sum(DepDelay, na.rm=TRUE), digits=2),                                      SecurityCaused=round(sum(SecurityDelay, na.rm=TRUE)/sum(DepDelay, na.rm=TRUE), digits=2),                                      LateAircraftCaused=round(sum(LateAircraftDelay, na.rm=TRUE)/sum(DepDelay, na.rm=TRUE), digits=2)), by=list(Year, Month, DayofMonth, Origin)]setkey(baa.hp.daily.flights.delayed, Year, Month, DayofMonth, Origin)# Merge two data-tablesbaa.hp.daily.flights.summary <- baa.hp.daily.flights.delayed[baa.hp.daily.flights,list(Airport=Origin,                           TotalFlights, CancelledFlights, DelayedFlights, WeatherDelayed,                            PercentDelayedFlights=round(DelayedFlights/(TotalFlights-CancelledFlights), digits=2),                           AvgDelayMins, CarrierCaused, WeatherCaused, NASCaused, SecurityCaused, LateAircraftCaused)]setkey(baa.hp.daily.flights.summary, Year, Month, DayofMonth, Airport)# Merge with weather databaa.hp.daily.flights.summary.weather <-baa.weather[baa.hp.daily.flights.summary]baa.hp.daily.flights.summary.weather$Date <- as.Date(paste(baa.hp.daily.flights.summary.weather$Year,                                                            baa.hp.daily.flights.summary.weather$Month,                                                            baa.hp.daily.flights.summary.weather$DayofMonth,                                                            sep="-"),"%Y-%m-%d")# remove few columnsbaa.hp.daily.flights.summary.weather <- baa.hp.daily.flights.summary.weather[,             which(!(colnames(baa.hp.daily.flights.summary.weather) %in% c("Year", "Month", "DayofMonth", "Origin"))), with=FALSE]#Write the output in both JSON and CSV file formatsobjs <- baa.hp.daily.flights.summary.weather[, getRowWiseJson(.SD), by=list(Airport)]# You have now (Airportcode, JSONString), Once again, you need to attach them together.row.json <- apply(objs, 1, function(x) paste('{\"AirportCode\":"', x[1], '","Data\":', x[2], '}', sep=""))json.st <- paste('[', paste(row.json, collapse=', '), ']')writeLines(json.st, "baa-2005-2008.summary.json")                 write.csv(baa.hp.daily.flights.summary.weather, "baa-2005-2008.summary.csv", row.names=FALSE)Happy Coding!

To leave a comment for the author, please follow the link and comment on his blog: All Things R.

R-bloggers.com offers daily e-mail updates about R news and tutorials on topics such as: visualization (ggplot2, Boxplots, maps, animation), programming (RStudio, Sweave, LaTeX, SQL, Eclipse, git, hadoop, Web Scraping) statistics (regression, PCA, time series,ecdf, trading) and more...
R_bloggers  business_analytics  business_intelligence  cloud  D3  D3.js  Google  google_maps  HANA  HTML5  predictive  R  r-project  RApache  SAP  SFO  SJC  TechEd  twitter  from google
29 days ago by rahuldave
Twitter Blog: Introducing the Innovator's Patent Agreement
RT : The Innovator’s Patent Agreement (). A serious, if small, step forward in the wars, .
IPA  Twitter  patent  from twitter
6 weeks ago by rahuldave
Twitter helps free kidnapped South African from trunk of his car
A South African man, whose name has not been published, was carjacked, robbed, and stuffed into the trunk of his car near Johannesburg on Sunday. The robbers, however, had overlooked his mobile phone, which he used to text his girlfriend, Lynn Peters. From there, Twitter took over.

Two armed men grabbed the driver and his Volkswagen Golf in the Honeydew area northwest of Johannesburg at about 9:00pm local time. Carjacking is a crime that is common in the country—over 10,000 such incidents occurred last year.






Read the comments on this post
News  News  News  Gadgets  Tech-policy  africa  crime  twitter  from google
7 weeks ago by rahuldave
Strata Week: Datasift lets you mine two years of Twitter data
Here are a few of the data stories that caught my attention this week.

Twitter's historical archives, via Datasift

Datasift, one of the two companies that has official access to the Twitter firehose (the other being Gnip) announced its new Historics service this week, giving customers access to up to two years' worth of historical Tweets. (By comparison, Gnip offers 30 days of Twitter data, and other developers and users have access to roughly a week's worth of Tweets.)

GigaOm's Barb Darrow responded to those who might be skeptical about the relevance of this sort of historic Twitter data in a service that emphasizes real-time. Darrow noted that DataSift CEO Rob Bailey said companies planning new products, promotions or price changes would do well to study the impact of their past actions before proceeding and that Twitter is the perfect venue for that.

Another indication of the desirability of this new Twitter data: the waiting list for Historics already includes a number of Fortune 500 companies. The service will get its official launch in April.

Strata Santa Clara 2012 Complete Video CompilationThe Strata video compilation includes workshops, sessions and keynotes from the 2012 Strata Conference in Santa Clara, Calif. Learn more and order here.

Building a school of data

Although there are plenty of ways to receive formal training in math, statistics and engineering, there aren't a lot of options when it comes to an education specifically in data science.

To that end, the Open Knowledge Foundation and Peer to Peer University (P2PU) have proposed a School of Data, arguing that:

"It will be years before data specialist degree paths become broadly available and accepted, and even then, time-intensive degree courses may not be the right option for journalists, activists, or computer programmers who just need to add data skills to their existing expertise. What is needed are flexible, on-demand, shorter learning options for people who are actively working in areas that benefit from data skills, particularly those who may have already left formal education programmes."

The organizations are seeking volunteers to help develop the project, whether that's in the form of educational materials, learning challenges, mentorship, or a potential student body.

Strata in California

The Strata Conference wraps up today in Santa Clara, Calif. If you missed Strata this year and weren't able to catch the livestream of the conference, look for excerpts and videos posted here on Radar and through the O'Reilly YouTube channel in the coming weeks.

And be sure to make plans for Strata New York, being held October 23-25. That event will mark the merger with Hadoop World. The call for speaker proposals for Strata NY is now open.

Got data news?

Feel free to email me.

Related:

Building data science teams
Big bucks for DataSift and for data from Twitter's firehose
The challenges of streaming real-time data
More Strata Week coverage
Data  datascience  datascientists  datasift  schoolofdata  strataweek  twitter  twitterarchive  from google
march 2012 by rahuldave
People voice about Lynas Malaysia through Twitter Analysis with R CloudStat
(This article was first published on CloudStat, and kindly contributed to R-bloggers)

People voice about Lynas Malaysia through Twitter Analysis with R CloudStat: CloudStat Analysis: This is a twitter analysis report for “Lynas” from 21 till 28 February 2012, generated by CloudStat Twitter Application.

Lynas was a hot topic, especially Malaysian. This was due to Lynas Malaysia Sdn Bhd (Lynas) will start importing rare earth ore from its Mount Weld mine in Western Australia and process it at the Gebeng Industrial Estate in Pahang, Malaysia.

Rare earth minerals are often found in ores which contain small amounts of radioactive elements such as uranium and thorium. So extracting them from these ores raises a number of health and safety issues. Many members of the public – including residents, non-governmental committees and professional bodies – expressed concern that the Lynas project was not safe, and was a threat to public health and safety.

The determination of government’s to continue implementing this Lynas project caused the anger of Malaysians. And the largest anti-Lynas rally, “Himpunan Hijau 2.0” at Padang MPK 4, Kuantan aimed to pressure government into aborting Lynas project in 26 February 2012.

In this analysis, we will track the tweets from 21 till 28 February 2012. Below, you will get the insights of:

Lynas’s Total tweets, original tweets, retweets and contributors.
“Lynas” Tweet counts and trending.
Tweet behavior over time by users.
Who is tweeting about Lynas.
How a person retweets (RT) a message about Lynas.
Who is retweeting whom’s. 
Top 50 of tweeters, retweet, tweets and created time.
Sentiment Analysis and Opinion Mining.
The overview of Lynas twitter analysis for past 7 days (21 - 28 Feb).

Total tweets: 8397
Original tweets: 6605
Retweets: 1792
Contributors: 4305
Average 2 tweets per contributor
More details tracked daily are the bottom of this analysis.

This chart shows how many tweets had been occurred over past 7 days, reaching the maximum in 25 February, a day before the Anti-Lynas rally.

This plot show how a person tweets and retweets about Lynas.

This is the Word Square of the tweets containing “lynas” as a keyword. The size is varied according to the frequency of the keyword.

This is the sentiment analysis of the tweets. Each tweets will be scanned and matched to our positive and negative word database. The score is calculated using the formula :

Score = # Positive words - # Negative words

The plot Scores over days is as below:

Next is the Top 50 for several categories.

View More…

To leave a comment for the author, please follow the link and comment on his blog: CloudStat.

R-bloggers.com offers daily e-mail updates about R news and tutorials on topics such as: visualization (ggplot2, Boxplots, maps, animation), programming (RStudio, Sweave, LaTeX, SQL, Eclipse, git, hadoop, Web Scraping) statistics (regression, PCA, time series,ecdf, trading) and more...
R_bloggers  cloudstat  data_mining  Lynas  R  R_Language  sentiment_analysis  Social_Media  twitter  from google
february 2012 by rahuldave
HIMSS asks: Who is Biz Stone and what is Twitter?
Today, one of the founders of Twitter, Biz Stone, gave the opening keynote at HIMSS.

This is probably going to be the best keynote at HIMSS, followed by a speech from Dr. Farzad Mostashari, which will also be excellent. It goes downhill after that: there will be a talk about politics and another talk from an "explorer." I am sure those will be great talks, but when I go to HIMSS, I want to hear about health information technology. Want to know what @biz actually said? As usual, Twitter itself provides an instant summary.

HIMSS stands for Healthcare Information and Management Systems Society. The annual HIMSS conference is the largest Health IT gathering on the planet. Almost 40,000 people will show up to discuss healthcare information systems. Many of them will be individuals sent by their hospitals to try and find out what solutions they will need to purchase in order to meet meaningful use requirements. But many of the attendees are old school health IT experts, many of whom have spent entire careers trying to bring technology into a healthcare system that has resisted computerization tooth and nail. This year will likely break all kind of attendance records for HIMSS. Rightly so: The value of connecting thousands of health IT experts with tens of thousands who are seeking health IT experts has never been higher.

It is ironic that Biz Stone is keynoting this year's talk, because Twitter has changed the health IT game so substantially. I say Twitter specifically, and not "social media" generally. I do not think Facebook or Google+ or your social media of choice has had nearly the impact that Twitter has had on healthcare communications.

HIMSS, and in many cases traditional health IT along with it, is experiencing something of a whirlwind. One force adding wind has been the fact that President Obama has funded EHR systems with meaningful use, and made it clear that the future of healthcare funding will take place at Accountable Care Organizations (ACO) that are paid to keep people healthy rather than to cover procedures when they are sick. It is hard to understate the importance of this. Meaningful Use and ACOs will do more to computerize medicine in five years than the previous 50 years without these incentive changes.

But in the same breath, we must admit that the healthcare system as a whole is strained and unable to meet the needs of millions of its patients. The new force in healthcare is peer to peer medicine. There are really only a few things that doctors provide to patients. They either provide treatment, or they provide facts, or perhaps, they provide context for those facts. More and more, patients are seeking facts and context for that information, from the Internet generally and other patients specifically. This can be dangerous, but when done correctly it can be revolutionary .

It's not rocket science really; our culture has changed. Baby boomers still wonder if it is OK to discuss sexual issues in polite company. Their kids blog about their vasectomies. It's not just that we blog about vasectomies. We read blogs about vasectomies and consider it normal.

Someday, I will decide whether or not I should get a vasectomy. (I would like to have kids first). When I make that decision, I might just give @johnbiggs a shout and ask him how its going. He might not have time to answer me. But some vasectomy patient somewhere will have the time to tell me what it is like. Some epatient will be willing to spend an hour talking to me about what it meant to them to have this procedure. I can talk with patients who had a good experience, I can talk to patients who had a bad experience. I will have access to insights that my urologist does not have, and most importantly does not have time to discuss with me in any case.

For whatever reason, the epatient community centers around Twitter. More than likely this is because of the fundamentally open nature of this network. Although it is possible to "protect" tweets, most account holders tend to tweet to the whole world. If you are interested in a particular health-related issue, you can use Twitter to find the group of people who are discussing that issue. Twitter is a natural way for people who are connected by a common thought or issue to organize. Facebook, on the other hand, is about connecting with people you already know. The famous quote applies: "Facebook is about people you used to know; Twitter is about people you'd like to know better." You could change that quote to read "Twitter is about people you'd like to know who have had vasectomies."

There are people on Twitter right now discussing very personal health issues. All you need to experience this is to do a little research to understand what hashtag a community is using to connect with each other. For instance:

Post Partum Depression
Bipolar Disorder
Irritable Bowel Syndrome

I intentionally chose diseases that are not easy to discuss in person. Discussion on these delicate issues between people dealing with these problems happens all the time on Twitter. Very often Twitter is the place to find and meet people who are dealing with the same healthcare issues that you are, and then discover another place on the web where patients with similar conditions are gathering and helping each other. For better or worse, Twitter has become a kind of peer-to-peer healthcare marketplace. I think this is about a billion times more interesting than surgeons who update families via Twitter, although that is cool, too.

At Health 2.0 or the OSCON healthcare track, these kinds of insights are regarded as somewhat obvious. It is obvious that patients are seeking each other out using social media technologies and that this must somehow eventually be reconciled with the process that doctors are just undertaking to computerize medicine. But at HIMSS this is a revolutionary idea. HIMSS is full of old-school EHR vendors who are applying technology that was cutting edge in 1995 to 2012 problems. HIMSS is full of hospital administrators who recognize that their biggest barrier to meaningful use dollars is not an EHR, but the fact that 50% of their nurses do not know how to type.

I can promise you that the following conversation will be happening thousands of times in the main hall at HIMSS before Biz Stone speaks:

Attendee 1: Who is this speaking?

Attendee 2: Biz Stone.

Attendee 1: Who is that?

Attendee 2: One of the founders of Twitter.

Attendee 1: What is Twitter?

For this audience, Biz Stone talking about how Twitter revolutionizes healthcare will be electric. I wish I could be there.

Meaningful Use and Beyond: A Guide for IT Staff in Health Care — Meaningful Use underlies a major federal incentives program for medical offices and hospitals that pays doctors and clinicians to move to electronic health records (EHR). This book is a rosetta stone for the IT implementer who wants to help organizations harness EHR systems.

Related:

Preview of HIMSS 2012
Epatients: The hackers of the healthcare world
Building the health information infrastructure for the modern epatient
Why geeks should care about meaningful use and ACOs
See more of Radar's health IT coverage
Web_2.0  epatient  healthit  healthcare  meaningfuluse  twitter  from google
february 2012 by rahuldave
Old services meet new media: a tweeting cabbie's growing business
"Can you pick me up at my place in 15 minutes? Text me when you get here." No, this isn't a text message to a friend or a call to a car service—it's a direct message sent through Twitter to a driver of a Chicago cab. Rashid Temuri, who goes by "Chicago Cabbie" online (@ChicagoCabbie on Twitter) has taken what would otherwise be considered a traditional taxi business and integrated it with social media in a way that is still exceedingly rare in the service industry. How much better can it be interacting your clients through Twitter, FourSquare, Facebook, or Google Latitude? Apparently a lot—Temuri is not only seeing success from his social media strategy, he's building a loyal repeat customer base because of it.







Read the comments on this post
News  News  Gadgets  facebook  findmyfriends  foursquare  googlelatitude  socialmedia  taxi  twitter  from google
january 2012 by rahuldave
Flipboard Adds Google Reader and Flickr Feeds to Its iPad Magazine [Video]
iPad only: Flipboard, the stylish, magazine-style iPad application that just won "App of the Year" from Apple, has updated with support for Google Reader and Flickr feeds, as well as settings to pull in specific sections of your Twitter or Facebook life. More »
Updates  Clips  Content  Facebook  Featured_iPad_Download  Feeds  Flickr  Google_Reader  ipad  Reading  RSS  Social_Networking  Social_Networks  twitter  from google
december 2010 by rahuldave
Anatomy of the Goodreads.com Friend Spam Dark Pattern
“Goodreads.com is social cataloging service for books. In this post you will see how they’ve used the friend spam dark pattern, but how they’ve also failed to make it go viral. This makes it interesting to carry out a post mortem and work out what they should have done.”

—Anatomy of the Goodreads.com Friend Spam Dark Pattern

(Hat tip: Andrew Travers.)
Community  Design  UX  Urbanism  Usability  User_Experience  tweets  twitter  from google
december 2010 by rahuldave
Twitter OAuthcalypse Coming Soon
Back in the good old days things were a lot simpler. You didn’t have to worry about packet capturing or password extracting, and as a result a lot of the original protocols like HTTP, FTP and POP3 didn’t worry about sending your passwords over the wire in plain text. But in today’s increasingly sophisticated API-driven world this isn’t enough.

For developers storing a username and password and sending them to a web server was easy – most APIs and libraries included simple username and password fields. This most common form of this kind of authentication, typically known as HTTP basic authentication, has been available to users of the Twitter API for some time now, and its convenience has made it more attractive than secure protocols like OAuth for a number of developers. However, on June 30th Twitter will be shutting off basic authentication:

You’re going to be hearing a lot from me over the next 9 weeks.  Our plan is to turn off basic authorization on the API by June 30, 2010 — developers will have to switch over to OAuth by that time.  Between now and then, there will be a *lot* of information coming along with tips on how to use OAuth Echo, xAuth, etc.  We really want to make this transition as easy as we can for everybody.

As always, please feel free to reach out to this group, or to @twitterapi directly.  if you need help remembering the date - http://bit.ly/twcountdown

And as noted above the Twitter team has even created a handy countdown clock to help you count the days:

The change will only affect the REST API, while the streaming API will continue to support basic authentication.

The effect of the change is not limited to small hobby projects – popular Twitter clients like TweetDeck have traditionally used basic authentication (although they have made the switch to OAuth). While Twitter will provide a lot of documentation and support for the change over to OAuth, the onus is still on developers to make the required changes, and there are lots of mashups that make use of the Twitter API.

Related ProgrammableWeb Resources Twitter API Profile, 384 mashups
Security  Twitter  oauth  from google
april 2010 by rahuldave
feature: Tutorial: consuming Twitter's real-time stream API in Python
Twitter is preparing to launch several impressive new features, including a new streaming API that will give desktop client applications real-time access to the user's message timeline. The new streaming API was announced last week at Twitter's Chirp conference, where it was made available to conference attendees on-site for some preliminary experimentation. Twitter opened it up to the broader third-party developer community on Monday so that programmers can begin testing it to offer informed feedback.

This tutorial will show you how to consume and process data from Twitter's new streaming API. The code examples, which are written in the Python programming language, demonstrate how to establish a long-lived HTTP connection with PyCurl, buffer the incoming data, and process it to perform the basic message display functions of a Twitter client application. We will also take a close look at how the new streaming API differs from the existing polling-based REST API.





Read the comments on this post
Features  Guides  Guides  Guides  Open-source  Web  programming  python  tutorial  twitter  from google
april 2010 by rahuldave
This is What a Tweet Looks Like
Think a tweet is just 140 characters of text? Think again. To developers building tools on top of the Twitter platform, they know tweets contain far more information than just whatever brief, passing thought you felt the urge to share your friends via the microblogging network. A tweet is filled with metadata - information about when it was sent, by who, using what Twitter application and so on.

Now, thanks to Raffi Krikorian, a developer on Twitter's API/Platform team, you can see what a tweet looks like, in all its data-rich detail.

Sponsor

Via a weekend post on Krikorian's blog, there comes an embedded document that shows what a mapped out tweet looks like. He says he decided to do this map using "JSON as opposed to XML" since the company is "considering not supporting XML on v2 of the API." That may mean nothing to everyday Twitter users, but it's important information for developers to take note of.

Coming Soon: Lots More Data

This image is all the more interesting when you consider how much richer a tweet's data map will soon become. At last week's first-ever official Twitter developers' conference, Chirp, Twitter announced that it will implement a new feature called "annotations" next quarter. This was possibly one of the most significant announcements made, second-only (if even) to the launch of Twitter's advertising initiatives, the long-anticipated answer as to how Twitter plans to make money.

With annotations, third-party Twitter developers can add any additional metadata to a Twitter post. That's right, any data. And a tweet can have more than one annotation attached to it. This extra data will initially start off small - Twitter developer Marcel Molina said it will "probably" be around 512 bytes. But over time, it will gradually grow larger as Twitter rolls out the feature and scales up in order to support it. The company hopes to have it end up "around 2K," says Molina. How developers use that extra space is entirely up to them - there can be one giant piece of extra data attached to a tweet or a thousand tiny ones.

With annotations, Twitter could become a platform for sharing anything, not just 140 characters of text. What will developers do with that data? We can only imagine. Perhaps new apps will allow users to share media like photos, videos and music? Or they'll add more details about a tweeted link? Will you tag your tweets? Share vCards? Create polls? These sorts of innovations will launch shortly and we expect to be surprised and delighted by what the developers come up with.

At some point, the map of a tweet posted by Krikorian will resemble a primitive artifact from a bygone era. We'll probably look back at it with wonder as we contemplate how far we've come. As for now, let's take a moment to enjoy Twitter's simplicity before it becomes a mishmash of other media and data.

Discuss
Twitter  from google
april 2010 by rahuldave
Twitter: All the Numbers That Matter
Twiiter, at its first-ever developers conference — known as Chirp — which is being held in San Francisco had its co-founders Biz Stone and Evan Williams provided some hard numbers behind the growth and size of the social network. Here are some of the most important ones we’ve collected so far:

105,779,710 registered users

3 billion API calls a day

175 employees

600 million searches per day

300,000 new users per day

180 million unique visitors per month

37 percent of active users use Twitter on their phones

75 percent of traffic comes from outside Twitter.com

100,000 registered applications

Related content from GigaOM Pro (sub req’d): As Twitter Develops, Developers Quiver in Fear

Thumbnail photo courtesy of Flickr user lrargerich
CNN_Big_Tech  Mathew's_Posts  Media  NYT_Company_News  SYN_Straight_News  Social_Web  api  Numbers  Twitter  from google
april 2010 by rahuldave
Top 10 Things Every Twitter Developer Should Know
The upcoming Chirp conference organized by Twitter is bound to interest a new group of developers. Getting up to speed with a new API can take some research, but Twitter makes it easy with a handy list.

The Things Every Developer Should Know page lists ten items, mostly technical in nature. And like any list for developers, it properly begins with number zero.

The contents of the FAQ
There are actually three APIs
You cannot make unlimited calls, follow requests, updates or direct message
The API is entirely HTTP-based
The API is a RESTful resource
Parameters have certain expectations
There are pagination limits
Encoding affects status character count
A command line is all you need to use the Twitter API
There are Twitter API libraries for almost any language.

Be sure to read the full list to get the details of each. Some, such as the FAQ item, point to other resources. While others have some meaty content, such as the parameters section.

Among the important reminders are rate and pagination limits. Both exist to combat abuse and keep overzealous developers from bringing on a Fail Whale.

Rounding out the list are a fun little fact–if you’re extra geeky, you can use Twitter from a command line (via curl). And, the sign of a welcoming developer community, Twitter has libraries in 18 programming languages.

Related ProgrammableWeb Resources Twitter API Profile, 375 mashups
HowTo  Twitter  microblogging  from google
april 2010 by rahuldave
The Next Ten One-Liners from CommandLineFu Explained
Here are the next ten top one-liners from the commandlinefu website. The first post about the topic became massively popular and received over 100,000 views in the first two days.

Before I dive into the next ten one-liners, I want to take the chance and promote the other three article series on one-liners that I have written:

Awk One-Liners Explained (4 part article).
Sed One-Liners Explained (3 part article).
Perl One-Liners Explained (9 part article, work in progress).

Alright, so here are today’s one-liners:

#11. Edit the command you typed in your favorite editor
$ command <CTRL-x CTRL-e>
This one-liner opens the so-far typed command in your favorite text editor for further editing. This is handy if you are typing a lengthier shell command. After you have done editing the command, quit from your editor successfully to execute it. To cancel execution, just erase it. If you quit unsuccessfully, the command you had typed before diving into the editor will be executed.

Actually, I have to educate you, it’s not a feature of the shell per se but a feature of the readline library that most shells use for command line processing. This particular binding CTRL-x CTRL-e only works in readline emacs editing mode. The other mode is readline vi editing mode, in which the same can be accomplished by pressing ESC and then v.

The emacs editing mode is the default in all the shells that use the readline library. The usual command to change between the modes is set -o vi to change to vi editing mode and set -o emacs to change back to emacs editing mode.

To change the editor, export the $EDITOR shell variable to your preference. For example, to set the default editor to pico, type export EDITOR=pico.

Another way to edit commands in a text editor is to use fc shell builtin (at least bash has this builtin). The fc command opens the previous edited command in your favorite text editor. It’s easy to remember the fc command because it stands for “fix command.”

Remember the ^foo^bar^ command from the first top ten one-liners? You can emulate this behavior by typing fc -s foo=bar. It will replace foo with bar in the previous command and execute it.

#12. Empty a file or create a new file
$ > file.txt
This one-liner either wipes the file called file.txt empty or creates a new file called file.txt.

The shell first checks if the file file.txt exists. If it does, the shell opens it and wipes it clean. If it doesn’t exist, the shell creates the file and opens it. Next the shell proceeds to redirecting standard output to the opened file descriptor. Since there is nothing on the standard output, the command succeeds, closes the file descriptor, leaving the file empty.

Creating a new empty file is also called touching and can be done by $ touch file.txt command. The touch command can also be used for changing timestamps of the commands. Touch, however, won’t wipe the file clean, it will only change the access and modification timestamps to the current time.

#13. Create a tunnel from localhost:2001 to somemachine:80
$ ssh -N -L2001:localhost:80 somemachine
This one-liner creates a tunnel from your computer’s port 2001 to somemachine’s port 80. Each time you connect to port 2001 on your machine, your connection gets tunneled to somemachine:80.

The -L option can be summarized as -L port:host:hostport. Whenever a connection is made to localhost:port, the connection is forwarded over the secure channel, and a connection is made to host:hostport from the remote machine.

The -N option makes sure you don’t run shell as you connect to somemachine.

To make things more concrete, here is another example:

$ ssh -f -N -L2001:www.google.com:80 somemachine
This one-liner creates a tunnel from your computer’s port 2001 to www.google.com:80 via somemachine. Each time you connect to localhost:2001, ssh tunnels your request via somemachine, where it tries to open a connection to www.google.com.

Notice the additional -f flag - it makes ssh daemonize (go into background) so it didn’t consume a terminal.

#14. Reset terminal
$ reset
This command resets the terminal. You know, when you have accidentally output binary data to the console, it becomes messed up. The reset command usually cleans it up. It does that by sending a bunch of special byte sequences to the terminal. The terminal interprets them as special commands and executes them.

Here is what BusyBox’s reset command does:

printf("\033c\033(K\033[J\033[0m\033[?25h");
It sends a bunch of escape codes and a bunch of CSI commands. Here is what they mean:

\033c: “ESC c” - sends reset to the terminal.
\033(K: “ESC ( K” - reloads the screen output mapping table.
\033[J: “ESC [ J” - erases display.
\033[0m: “ESC [ 0 m” - resets all display attributes to their defaults.
\033[?25h: “ESC [ ? 25 h” - makes cursor visible.

#15. Tweet from the shell
$ curl -u user:pass -d status='Tweeting from the shell' http://twitter.com/statuses/update.xml
This one-liner tweets your message from the terminal. It uses the curl program to HTTP POST your tweet via Twitter’s API.

The -u user:pass argument sets the login and password to use for authentication. If you don’t wish your password to be saved in the shell history, omit the :pass part and curl will prompt you for the password as it tries to authenticate. Oh, and while we are at shell history, another way to omit password from being saved in the history is to start the command with a space! For example, <space>curl ... won’t save the curl command to the shell history.

The -d status='...' instructs curl to use the HTTP POST method for the request and send status=... as POST data.

Finally, http://twitter.com/statuses/update.xml is the API URL to POST the data to.

Talking about Twitter, I’d love if you followed me on Twitter! :)

#16. Execute a command at midnight
$ echo cmd | at midnight
This one-liner sends the shell command cmd to the at-daemon (atd) for execution at midnight.

The at command is light on the execution-time argument, you may write things like 4pm tomorrow to execute it at 4pm tomorrow, 9pm next year to run it on the same date at 9pm the next year, 6pm + 10 days to run it at 6pm after 10 days, or now +1minute to run it after a minute.

Use atq command to list all the jobs that are scheduled for execution and atrm to remove a job from the queue.

Compared to the universally known cron, at is suitable for one-time jobs. For example, you’d use cron to execute a job every day at midnight but you would use at to execute a job only today at midnight.

Also be aware that if the load is greater than some number (for one processor systems the default is 0.8), then atd will not execute the command! That can be fixed by specifying a greater max load to atd via -l argument.

#17. Output your microphone to other computer’s speaker
$ dd if=/dev/dsp | ssh username@host dd of=/dev/dsp
The default sound device on Linux is /dev/dsp. It can be both written to and read from. If it’s read from then the audio subsystem will read the data from the microphone. If it’s written to, it will send audio to your speaker.

This one-liner reads audio from your microphone via the dd if=/dev/dsp command (if stands for input file) and pipes it as standard input to ssh. Ssh, in turn, opens a connection to a computer at host and runs the dd of=/dev/dsp (of stands for output file) on it. Dd of=/dev/dsp receives the standard input that ssh received from dd if=/dev/dsp. The result is that your microphone gets output on host computer’s speaker.

Want to scare your colleague? Dump /dev/urandom to his speaker by dd if=/dev/urandom.

#18. Create and mount a temporary RAM partition
# mount -t tmpfs -o size=1024m tmpfs /mnt
This command creates a temporary RAM filesystem of 1GB (1024m) and mounts it at /mnt. The -t flag to mount specifies the filesystem type and the -o size=1024m passes the size sets the filesystem size.

If it doesn’t work, make sure your kernel was compiled to support the tmpfs. If tmpfs was compiled as a module, make sure to load it via modprobe tmpfs. If it still doesn’t work, you’ll have to recompile your kernel.

To unmount the ram disk, use the umount /mnt command (as root). But remember that mounting at /mnt is not the best practice. Better mount your drive to /mnt/tmpfs or a similar path.

If you wish your filesystem to grow dynamically, use ramfs filesystem type instead of tmpfs. Another note: tmpfs may use swap, while ramfs won’t.

#19. Compare a remote file with a local file
$ ssh user@host cat /path/to/remotefile | diff /path/to/localfile -
This one-liner diffs the file /path/to/localfile on local machine with a file /path/to/remotefile on host machine.

It first opens a connection via ssh to host and executes the cat /path/to/remotefile command there. The shell then takes the output and pipes it to diff /path/to/localfile - command. The second argument - to diff tells it to diff the file /path/to/localfile against standard input. That’s it.

#20. Find out which programs listen on which TCP ports
# netstat -tlnp
This is an easy one. Netstat is the standard utility for listing information about Linux networking subsystem. In this particular one-liner it’s called with -tlnp arguments:

-t causes netstat to only list information about TCP sockets.
-l causes netstat to only list information about listening sockets.
-n causes netstat not to do reverse lookups on the IPs.
-p causes netstat to print the PID and name of the program to which the socket belongs (requires root).

To find more detailed info about open sockets on your computer, use the lsof utility. See my article “A Unix Utility You Should Know About: lsof” for more information.

That’s it for today.
Tune in the next time for “Another Ten One-Liners from CommandLineFu Explained”. There are many more nifty commands to write about. But for now, have fun and see ya!

PS. Follow me on twitter for updates!
Programming  at  atd  atq  atrm  audio  commandlinefu  cron  csi_command  curl  daemon  dd  diff  dsp  echo  editor  emacs  escape_code  fc  http  if  localhost  microphone  mount  netstat  of  pico  post  ram  ramfs  readline  redirect  reset  shell  ssh  standard_output  tcp  terminal  tmpfs  tunnel  tweet  twitter  vi  from google
march 2010 by rahuldave

related tags

africa  api  at  atd  atq  atrm  audio  business_analytics  business_intelligence  Clips  cloud  cloudstat  CNN_Big_Tech  commandlinefu  Community  Content  crime  cron  csi_command  curl  D3  D3.js  daemon  Data  datascience  datascientists  datasift  data_mining  dd  Design  diff  dsp  echo  editor  emacs  epatient  escape_code  facebook  fc  Featured_iPad_Download  Features  Feeds  findmyfriends  Flickr  foursquare  Gadgets  Google  googlelatitude  google_maps  Google_Reader  Guides  HANA  healthcare  healthit  HowTo  HTML5  http  if  IPA  ipad  localhost  Lynas  Mathew's_Posts  meaningfuluse  Media  microblogging  microphone  mount  netstat  News  Numbers  NYT_Company_News  oauth  of  Open-source  patent  pico  post  predictive  programming  python  R  r-project  ram  ramfs  RApache  Reading  readline  redirect  reset  RSS  R_bloggers  R_Language  SAP  schoolofdata  Security  sentiment_analysis  SFO  shell  SJC  socialmedia  Social_Media  Social_Networking  Social_Networks  Social_Web  ssh  standard_output  strataweek  SYN_Straight_News  taxi  tcp  Tech-policy  TechEd  Technology  terminal  Thrive  tmpfs  tunnel  tutorial  tweet  tweets  twitter  twitterarchive  Updates  Urbanism  Usability  User_Experience  UX  vi  Web  Web_2.0 

Copy this bookmark:



description:


tags: