twitterscour 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,12 @@
1
+ === 0.2.0 / 2011-07-28
2
+ * Search term tweets broke a few days ago, fixed this by using the Twitter API. This results in faster searches, and the location is now included for search term searches
3
+
4
+ === 0.1.2 / 2011-02-06
5
+ * Fixed bug with the term search, at some point in the past month this broke
6
+
7
+ === 0.1.1 / 2010-11-08
8
+ * Added example files
9
+ * Documentation additions
10
+
11
+ === 0.1.0 / 2010-11-07
12
+ * Initial release
data/README ADDED
@@ -0,0 +1,44 @@
1
+ = twitterscour gem
2
+
3
+ This gem is on Gemcutter, simply type "gem install twitterscour" to install it.
4
+
5
+ Code is available on github at http://github.com/brentsowers1/twitterscour
6
+
7
+ Class for retrieving lists of tweets. For user tweet searches, this gem uses
8
+ the actual Twitter web pages rather than the API. The API that other twitter
9
+ gems use returns only what Twitter considers the "most popular" tweets in many
10
+ cases, this returns all tweets that you can see if you go to the web page
11
+ directly. TwitterScour is the main class to use. There is no need to
12
+ instantiate it, two class methods are provided to search for tweets. These will
13
+ return an array of Tweet objects. Location info can be retrieved on tweets
14
+ as well.
15
+
16
+ WARNING - the user tweet search capability should probably not be relied upon
17
+ for a production system. Because it uses the structure of the Twitter web pages
18
+ as they are now, it could break if Twitter changes the structure of their web
19
+ page. Unlike the API, which the search term search uses, Twitter makes no
20
+ guarantees of consistency for their web pages.
21
+
22
+ Note that this gem needs the gems HTTParty, Nokogiri, and json_pure. HTTParty should
23
+ install without any trouble when you install this. For Nokogiri, follow
24
+ the instructions here to install if you get an error:
25
+ http://nokogiri.org/tutorials/installing_nokogiri.html
26
+
27
+ == Examples:
28
+
29
+ Get the 40 most recent tweets from me (@sowersb), with location info on all
30
+ tweets:
31
+ require 'twitterscour'
32
+ brent_tweets = TwitterScour.from_user('sowersb', 2, true)
33
+
34
+ Get the 45 most recent tweets with the term Ruby in the tweet.
35
+ require 'twitterscour'
36
+ ruby_tweets = TwitterScour.search_term('Ruby', 3)
37
+
38
+ Author:: Brent Sowers (mailto:brent@coordinatecommons.com)
39
+ License:: You're free to do whatever you want with this
40
+
41
+ To post comments about this gem, visit my blog post at
42
+ http://rails.brentsowers.com/2010/11/new-twitterscour-gem.html
43
+
44
+ See more gems by me, my blog posts, etc. at http://coordinatecommons.com.
@@ -0,0 +1,21 @@
1
+ # Object representing a single Tweet. Use the methods in TwitterScour to
2
+ # get Tweets.
3
+ class Tweet
4
+ # Name of the author of this tweet, without the @ symbol.
5
+ # If the tweet was a straight retweet without any added text, this is the original author.
6
+ attr_accessor :author_name
7
+
8
+ # URL for the author's picture/avatar
9
+ attr_accessor :author_pic
10
+
11
+ # The full text of the tweet. This does not contain any HTML/links.
12
+ attr_accessor :text
13
+
14
+ # A TweetLocation instance containing the location of the tweet, if the tweet has a location
15
+ attr_accessor :location
16
+
17
+ # Ruby Time for when this tweet was published
18
+ attr_accessor :time
19
+
20
+ end
21
+
@@ -0,0 +1,14 @@
1
+ # Class representing the location of a tweet.
2
+ class TweetLocation
3
+ # Text name for the location
4
+ attr_accessor :place_name
5
+
6
+ # Center point for the location, an array where first item is longitude,
7
+ # second is latitude
8
+ attr_accessor :center
9
+
10
+ # If the location is an area, this is an array of coordinates (array where
11
+ # first item is longitude, second latitude) for each point of the bounding
12
+ # box for the area
13
+ attr_accessor :bounding_box
14
+ end
@@ -0,0 +1,159 @@
1
+ require 'rubygems'
2
+ require 'nokogiri'
3
+ require 'httparty'
4
+ require File.dirname(__FILE__) + "/tweet"
5
+ require File.dirname(__FILE__) + "/tweet_location"
6
+ require 'json'
7
+ require 'cgi'
8
+ require 'time'
9
+
10
+ # Fetches Tweet objects from twitter.com based on the parameters that you
11
+ # specify for your search
12
+ class TwitterScour
13
+ # Currently, this is the number of tweets per page of results
14
+ TWEETS_PER_PAGE = 20
15
+
16
+ # Retrieves all tweets from the passed in username. An array of Tweet objects
17
+ # is returned.
18
+ # - username - Twitter username to search from. No @ symbol is necessary.
19
+ # - number_of_pages - By default, only up to 20 tweets (first page) will be
20
+ # returned. Specify more than one page here if you want more than 20. Note
21
+ # that each page is a separate HTTP request, so the higher the number of
22
+ # pages, the longer the operation will take.
23
+ # - fetch_location_info - By default, the location info will not be included,
24
+ # because to retrieve location info takes another HTTP request which can
25
+ # slow things down. If you want location set this to true
26
+ def self.from_user(username, number_of_pages=1, fetch_location_info=false)
27
+ rsp = HTTParty.get("http://twitter.com/#{username.gsub(/@/, "")}")
28
+ raise Exception.new("Error code returned from Twitter - #{rsp.code}") if rsp.code != 200
29
+ locations = {}
30
+ cur_page = 1
31
+ tweets = []
32
+ tweets_html = rsp.body
33
+ pagination_html = rsp.body
34
+
35
+ main_page = Nokogiri::HTML(rsp.body)
36
+ authenticity_token = main_page.css("input#authenticity_token").first[:value]
37
+
38
+ while rsp.code == 200
39
+ page_body = Nokogiri::HTML(tweets_html)
40
+
41
+ new_tweets = page_body.css('li.status').collect do |tw|
42
+ t = Tweet.new
43
+ if tw[:class] =~ /.* u\-(.*?) .*/
44
+ t.author_name = $1
45
+ end
46
+ t.text = tw.css("span.entry-content").text
47
+ # For some reason, time isn't in quotes in the JSON string which causes problems
48
+ t.time = Time.parse(tw.css("span.timestamp").first[:data].match(/\{time:'(.*)'\}/)[1])
49
+ meta_data_str = tw.css("span.entry-meta").first[:data]
50
+ if meta_data_str.length > 2
51
+ meta_data = JSON.parse(meta_data_str)
52
+ t.author_pic = meta_data["avatar_url"]
53
+ place_id = meta_data["place_id"]
54
+ if place_id && fetch_location_info
55
+ if locations[place_id]
56
+ t.location = locations[place_id]
57
+ else
58
+ geo_result = HTTParty.get("http://twitter.com/1/geo/id/#{place_id}.json?authenticity_token=#{authenticity_token}&twttr=true")
59
+ if geo_result && geo_result.code == 200 && geo_result.body &&
60
+ geo_result.body =~ /^\{.*/
61
+ geo_data = JSON.parse(geo_result.body)
62
+ if geo_data["geometry"] && geo_data["geometry"]["coordinates"]
63
+ loc = TweetLocation.new
64
+ loc.place_name = geo_data["name"]
65
+ if geo_data["geometry"]["type"] == "Point"
66
+ loc.center = geo_data["geometry"]["coordinates"]
67
+ elsif geo_data["geometry"]["type"] == "Polygon"
68
+ loc.bounding_box = geo_data["geometry"]["coordinates"].first
69
+ ll_sums = loc.bounding_box.inject([0,0]) {|sum, p| [sum[0] + p[0], sum[1] + p[1]]}
70
+ loc.center = [ll_sums[0] / loc.bounding_box.length, ll_sums[1] / loc.bounding_box.length]
71
+ end
72
+ t.location = loc
73
+ locations[place_id] = loc
74
+ end
75
+ end
76
+ end
77
+ end
78
+ end
79
+ t
80
+ end
81
+ tweets = tweets.concat(new_tweets)
82
+ cur_page += 1
83
+ if new_tweets.length == TWEETS_PER_PAGE && cur_page <= number_of_pages
84
+ pagination = Nokogiri::HTML(pagination_html)
85
+ next_link = pagination.css("a#more").first[:href]
86
+ unless next_link.include?("authenticity_token=")
87
+ next_link << "&authenticity_token=#{authenticity_token}"
88
+ end
89
+ rsp = HTTParty.get("http://twitter.com/#{next_link}")
90
+ pagination_html = rsp.body
91
+ tweets_html = rsp.body
92
+ else
93
+ break
94
+ end
95
+ end
96
+ tweets
97
+ end
98
+
99
+ # Returns the most recent tweets that contain the search term passed in. An
100
+ # array of Tweet objects is returned.
101
+ # - search_term - The term to search for. For a hashtag search, just pass
102
+ # in the whole search including the hash symbol.
103
+ # - number_of_pages - By default, only up to 15 tweets (first page) will be
104
+ # returned. Specify more than one page here if you want more than 15. Note
105
+ # that each page is a separate HTTP request, so the higher the number of
106
+ # pages, the longer the operation will take.
107
+ # Note that tweets from a search will not have a full location. If a location
108
+ # was attached, the center coordinates will be returned but no name or
109
+ # polygon
110
+ def self.search_term(search_term, number_of_pages=1)
111
+ term = CGI.escape(search_term)
112
+ url_base = "http://search.twitter.com/search.json"
113
+ url = url_base + "?q=#{CGI.escape(search_term)}"
114
+ rsp = HTTParty.get(url, :format => :json)
115
+ raise Exception.new("Rate limit exceeded, slow down") if rsp.code == 420
116
+ raise Exception.new("Error code returned from Twitter - #{rsp.code}") if rsp.code != 200
117
+ cur_page = 1
118
+ tweets = []
119
+ tweets_html = ""
120
+ results_per_page = 15
121
+
122
+ while rsp.code == 200
123
+ obj = JSON.parse(rsp.body)
124
+ if (obj["error"])
125
+ raise Exception.new("Got error from Twitter - " + obj["error"])
126
+ end
127
+ if obj["results_per_page"]
128
+ results_per_page = obj["results_per_page"]
129
+ end
130
+ new_tweets = []
131
+ obj["results"].each do |o|
132
+ t = Tweet.new
133
+ t.author_name = o["from_user"]
134
+ t.author_pic = o["profile_image_url"]
135
+ t.time = Time.parse(o["created_at"])
136
+ t.text = o["text"]
137
+ if o["geo"]
138
+ if o["geo"]["type"] == "Point"
139
+ loc = TweetLocation.new
140
+ loc.center = [o["geo"]["coordinates"][1], o["geo"]["coordinates"][0]]
141
+ t.location = loc
142
+ end
143
+ end
144
+ new_tweets << t
145
+ end
146
+ tweets = tweets.concat(new_tweets)
147
+ cur_page += 1
148
+ if new_tweets.length == results_per_page && cur_page <= number_of_pages
149
+ url = url_base + obj["next_page"]
150
+ rsp = HTTParty.get(url, :format => :json)
151
+ else
152
+ break
153
+ end
154
+ end
155
+ tweets
156
+
157
+ end
158
+ end
159
+
@@ -0,0 +1,1197 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
2
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
3
+ <head>
4
+ <meta http-equiv="X-UA-Compatible" content="IE=8">
5
+
6
+ <script type="text/javascript">
7
+ //<![CDATA[
8
+ (function(g){var a=location.href.split("#!")[1];if(a){window.location.hash = "";g.location.pathname = g.HBR = a.replace(/^([^/])/,"/$1");}})(window);
9
+ //]]>
10
+ </script>
11
+ <script type="text/javascript" charset="utf-8">
12
+ if (!twttr) {
13
+ var twttr = {}
14
+ }
15
+
16
+ // Benchmarking load time.
17
+ // twttr.timeTillReadyUnique = '1289157602-97477-16888';
18
+ // twttr.timeTillReadyStart = new Date().getTime();
19
+ </script>
20
+
21
+ <script type="text/javascript">
22
+ //<![CDATA[
23
+ var page={};var onCondition=function(D,C,A,B){D=D;A=A?Math.min(A,5):5;B=B||100;if(D()){C()}else{if(A>1){setTimeout(function(){onCondition(D,C,A-1,B)},B)}}};
24
+ //]]>
25
+ </script>
26
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
27
+ <meta content="en-us" http-equiv="Content-Language" />
28
+ <meta content="Ruby on Rails software developer, Nationals fan, metalhead" name="description" />
29
+ <meta content="no" http-equiv="imagetoolbar" />
30
+ <meta content="width = 780" name="viewport" />
31
+ <meta content="4FTTxY4uvo0RZTMQqIyhh18HsepyJOctQ+XTOu1zsfE=" name="verify-v1" />
32
+ <meta content="1" name="page" />
33
+ <meta content="NOODP" name="robots" />
34
+ <meta content="n" name="session-loggedin" />
35
+ <meta content="sowersb" name="page-user-screen_name" />
36
+ <title id="page_title">Brent Sowers (sowersb) on Twitter</title>
37
+ <link href="http://a1.twimg.com/a/1288981003/images/twitter_57.png" rel="apple-touch-icon" />
38
+ <link href="/oexchange.xrd" rel="http://oexchange.org/spec/0.8/rel/related-target" type="application/xrd+xml" />
39
+ <link href="http://a1.twimg.com/a/1288981003/images/favicon.ico" rel="shortcut icon" type="image/x-icon" />
40
+ <link rel="alternate" href="http://twitter.com/statuses/user_timeline/170030823.rss" title="sowersb's Tweets" type="application/rss+xml" />
41
+ <link rel="alternate" href="http://twitter.com/favorites/170030823.rss" title="sowersb's Favorites" type="application/rss+xml" />
42
+
43
+
44
+ <link href="http://a3.twimg.com/a/1288981003/stylesheets/twitter.css?1288982890" media="screen" rel="stylesheet" type="text/css" />
45
+ <link href="http://a3.twimg.com/a/1288981003/stylesheets/geo.css?1288982890" media="screen" rel="stylesheet" type="text/css" />
46
+ <link href="http://a3.twimg.com/a/1288981003/stylesheets/buttons_new.css?1288982890" media="screen" rel="stylesheet" type="text/css" />
47
+ <style type="text/css">
48
+
49
+ body {
50
+ background: #C6E2EE url('http://s.twimg.com/a/1288470193/images/themes/theme2/bg.gif') fixed no-repeat;
51
+
52
+ }
53
+
54
+ body#show #content .meta a.screen-name,
55
+ #content .shared-content .screen-name,
56
+ #content .meta .byline a {
57
+ color: #1F98C7;
58
+ }
59
+
60
+ /* Link Color */
61
+ a,
62
+ #content tr.hentry:hover a,
63
+ body#profile #content div.hentry:hover a,
64
+ #side .stats a:hover span.stats_count,
65
+ #side div.user_icon a:hover,
66
+ li.verified-profile a:hover,
67
+ #side .promotion .definition strong,
68
+ p.list-numbers a:hover,
69
+ #side div.user_icon a:hover span,
70
+ #content .tabMenu li a,
71
+ .translator-profile a:hover,
72
+ #local_trend_locations li a,
73
+ .modal-content .list-slug,
74
+ .tweet-label a:hover,
75
+ ol.statuses li.garuda-tweet:hover .actions-hover li span a,
76
+ ol.statuses li.garuda-tweet .actions-hover li span a:hover {
77
+ color: #1F98C7;
78
+ }
79
+
80
+ body,
81
+ ul#tabMenu li a, #side .section h1,
82
+ #side .stat a,
83
+ #side .stats a span.stats_count,
84
+ #side div.section-header h1,
85
+ #side div.user_icon a,
86
+ #side div.user_icon a:hover,
87
+ #side div.section-header h3.faq-header,
88
+ ul.sidebar-menu li.active a,
89
+ li.verified-profile a,
90
+ #side .promotion a,
91
+ body #content .list-header h2,
92
+ p.list-numbers a,
93
+ .bar h3 label,
94
+ body.timeline #content h1,
95
+ .list-header h2 a span,
96
+ #content .tabMenu li.active a,
97
+ body#direct_messages #content .tabMenu #inbox_tab a,
98
+ body#inbox #content .tabMenu #inbox_tab a,
99
+ body#sent #content .tabMenu #sent_tab a,
100
+ body#direct_messages #content .tabMenu #inbox_tab a,
101
+ body#retweets_by_others #content .tabMenu #retweets_by_others_tab a,
102
+ body#retweets #content .tabMenu #retweets_tab a,
103
+ body#retweeted_by_others #content .tabMenu #retweeted_by_others_tab a,
104
+ body#retweeted_of_mine #content .tabMenu #retweeted_of_mine_tab a,
105
+ .translator-profile a,
106
+ #owners_lists h2 a {
107
+ color: #663B12;
108
+ }
109
+
110
+ .email-address-nag-banner {
111
+ border-bottom: solid 1px #C6E2EE;
112
+ }
113
+ #side_base {
114
+ border-left:1px solid #C6E2EE;
115
+ background-color: #DAECF4;
116
+ }
117
+
118
+ ul.sidebar-menu li.active a,
119
+ ul.sidebar-menu li a:hover,
120
+ #side div#custom_search.active,
121
+ #side .promotion,
122
+ .notify div {
123
+ background-color: #EAFCFF;
124
+ }
125
+
126
+ .list-header,
127
+ .list-controls,
128
+ ul.sidebar-list li.active a,
129
+ ul.sidebar-list li a:hover,
130
+ .list-header-inner {
131
+ background-color: #DAECF4 !important;
132
+ }
133
+
134
+ #side .actions,
135
+ #side .promo,
136
+ #design .side-section {
137
+ border: 1px solid #C6E2EE;
138
+ }
139
+
140
+ #side div.section-header h3 {
141
+ border-bottom: 1px solid #C6E2EE;
142
+ }
143
+
144
+ #side p.sidebar-location {
145
+ border-bottom: 1px dotted #C6E2EE;
146
+ }
147
+
148
+ #side hr {
149
+ background: #C6E2EE;
150
+ color: #C6E2EE;
151
+ }
152
+
153
+ ul.sidebar-menu li.loading a {
154
+ background: #EAFCFF url('http://a1.twimg.com/a/1288981003/images/spinner.gif') no-repeat 171px 0.5em !important;
155
+ }
156
+
157
+ #side .collapsible h2.sidebar-title {
158
+ background: transparent url('http://a2.twimg.com/a/1288981003/images/toggle_up_dark.png') no-repeat center right !important;
159
+ }
160
+
161
+ #side .collapsible.collapsed h2.sidebar-title {
162
+ background: transparent url('http://a1.twimg.com/a/1288981003/images/toggle_down_dark.png') no-repeat center right !important;
163
+ }
164
+
165
+ #side ul.lists-links li a em {
166
+ background: url('http://a3.twimg.com/a/1288981003/images/arrow_right_dark.png') no-repeat left top;
167
+ }
168
+
169
+ #side span.pipe {
170
+ border-left:1px solid #C6E2EE;
171
+ }
172
+
173
+ #list_subscriptions span.view-all,
174
+ #list_memberships span.view-all,
175
+ #profile span.view-all,
176
+ #profile_favorites span.view-all,
177
+ #following span.view-all,
178
+ #followers span.view-all {
179
+ border-left: 0;
180
+ }
181
+
182
+ a.edit-list {
183
+ border-right: 1px solid #C6E2EE !important;
184
+ }
185
+
186
+
187
+
188
+ </style>
189
+ <link href="http://a2.twimg.com/a/1288981003/stylesheets/following.css?1288982890" media="screen, projection" rel="stylesheet" type="text/css" />
190
+
191
+ </head>
192
+
193
+ <body class="account signin-island" id="profile"> <div class="fixed-banners">
194
+
195
+
196
+ </div>
197
+ <script type="text/javascript">
198
+ //<![CDATA[
199
+ if (window.top !== window.self) {document.write = "";window.top.location = window.self.location; setTimeout(function(){document.body.innerHTML='';},1);window.self.onload=function(evt){document.body.innerHTML='';};}
200
+ //]]>
201
+ </script>
202
+
203
+ <div id="dim-screen"></div>
204
+ <ul id="accessibility" class="offscreen">
205
+ <li><a href="#content" accesskey="0">Skip past navigation</a></li>
206
+ <li>On a mobile phone? Check out <a href="http://m.twitter.com/">m.twitter.com</a>!</li>
207
+ <li><a href="#footer" accesskey="2">Skip to navigation</a></li>
208
+ <li><a href="#signin">Skip to sign in form</a></li>
209
+ </ul>
210
+
211
+
212
+
213
+
214
+ <div id="container" class="subpage">
215
+ <span id="loader" style="display:none"><img alt="Loader" src="http://a0.twimg.com/a/1288981003/images/loader.gif" /></span>
216
+
217
+ <div class="clearfix" id="header">
218
+ <a href="http://twitter.com/" title="Twitter / Home" accesskey="1" id="logo">
219
+ <img alt="Twitter.com" src="http://a0.twimg.com/a/1288981003/images/twitter_logo_header.png" />
220
+ </a>
221
+ <form method="post" id="sign_out_form" action="/sessions/destroy" style="display:none;">
222
+ <input name="authenticity_token" value="1e78388a93644bf413352a320a1a766378ba4cea" type="hidden"/>
223
+ </form>
224
+
225
+
226
+ <div id="signin_controls">
227
+ <span id="have_an_account">
228
+ Have an account?<a href="/login" class="signin" tabindex="3"><span>Sign in</span></a></span>
229
+ <div id="signin_menu" class="common-form standard-form offscreen">
230
+
231
+ <form method="post" id="signin" action="https://twitter.com/sessions">
232
+
233
+ <input id="authenticity_token" name="authenticity_token" type="hidden" value="1e78388a93644bf413352a320a1a766378ba4cea" /> <input id="return_to_ssl" name="return_to_ssl" type="hidden" value="false" />
234
+ <p class="textbox">
235
+ <label for="username">Username or email</label>
236
+ <input type="text" id="username" name="session[username_or_email]" value="" title="username" tabindex="4"/>
237
+ </p>
238
+
239
+ <p class="textbox">
240
+ <label for="password">Password</label>
241
+ <input type="password" id="password" name="session[password]" value="" title="password" tabindex="5"/>
242
+ </p>
243
+
244
+ <p class="remember">
245
+ <input type="submit" id="signin_submit" value="Sign in" tabindex="7"/>
246
+ <input type="checkbox" id="remember" name="remember_me" value="1" tabindex="6"/>
247
+ <label for="remember">Remember me</label>
248
+ </p>
249
+
250
+ <p class="forgot">
251
+ <a href="/account/resend_password" id="resend_password_link">Forgot password?</a>
252
+ </p>
253
+
254
+ <p class="forgot-username">
255
+ <a href="/account/resend_password" id="forgot_username_link" title="If you remember your password, try logging in with your email">Forgot username?</a>
256
+ </p>
257
+ <p class="complete">
258
+ <a href="/account/complete" id="account_complete_link">Already using Twitter on your phone?</a>
259
+ </p>
260
+ <input type="hidden" name="q" id="signin_q" value=""/>
261
+ </form>
262
+ </div>
263
+
264
+ </div>
265
+
266
+
267
+
268
+
269
+ </div>
270
+
271
+
272
+ <div id="profilebox_outer" class="home_page_new_home_page">
273
+ <div id="profilebox" class="clearfix">
274
+ <div id="profiletext">
275
+ <h1>
276
+ <span>Get short, timely messages from Brent Sowers.</span>
277
+ </h1>
278
+
279
+ <h2>Twitter is a rich source of instantly updated information. It's easy to stay updated on an incredibly wide variety of topics. <strong><a href='/signup?follow=sowersb'>Join today</a></strong> and <strong>follow @sowersb</strong>.</h2>
280
+ </div>
281
+ <div id="profilebutton">
282
+ <form action="/signup" id="account_signup_form" method="get" name="account_signup_form"> <input id="follow" name="follow" type="hidden" value="sowersb" />
283
+ <input class="profilesubmit" id="profile_submit" name="commit" type="submit" value="Sign Up &rsaquo;" />
284
+ </form>
285
+ <p id="profilebox-mobile">
286
+ <span class="sms-follow-instructions">Get updates via SMS by texting <strong>follow sowersb</strong> to <strong>40404</strong> in the United States</span><br/>
287
+ <a id="sms_codes_link">
288
+ <span>Codes for other countries</span>
289
+ </a>
290
+ <div id="sms_codes">
291
+ <table celspacing="0" celpadding="0">
292
+ <thead>
293
+ <tr class="title">
294
+ <td colspan="3">Two-way (sending and receiving) short codes:</td>
295
+ </tr>
296
+ </thead>
297
+ <tbody>
298
+ <tr>
299
+ <th class="sms-country">Country</th>
300
+ <th class="sms-code">Code</th>
301
+ <th class="sms-network">For customers of</th>
302
+ </tr>
303
+ <tr>
304
+ <td class="sms-country">Australia</td>
305
+ <td colspan="2" class="sms-code-network">
306
+ <ul>
307
+
308
+ <li>
309
+ <span class="sms-code">0198089488</span>
310
+ <span class="sms-network">Telstra</span>
311
+ </li>
312
+
313
+ </ul>
314
+ </td>
315
+ </tr><tr>
316
+ <td class="sms-country">Canada</td>
317
+ <td colspan="2" class="sms-code-network">
318
+ <ul>
319
+
320
+ <li>
321
+ <span class="sms-code">21212</span>
322
+ <span class="sms-network">(any)</span>
323
+ </li>
324
+
325
+ </ul>
326
+ </td>
327
+ </tr><tr>
328
+ <td class="sms-country">United Kingdom</td>
329
+ <td colspan="2" class="sms-code-network">
330
+ <ul>
331
+
332
+ <li>
333
+ <span class="sms-code">86444</span>
334
+ <span class="sms-network">Vodafone, Orange, 3, O2</span>
335
+ </li>
336
+
337
+ </ul>
338
+ </td>
339
+ </tr><tr>
340
+ <td class="sms-country">Indonesia</td>
341
+ <td colspan="2" class="sms-code-network">
342
+ <ul>
343
+
344
+ <li>
345
+ <span class="sms-code">89887</span>
346
+ <span class="sms-network">AXIS, 3, Telkomsel</span>
347
+ </li>
348
+
349
+ </ul>
350
+ </td>
351
+ </tr><tr>
352
+ <td class="sms-country">Ireland</td>
353
+ <td colspan="2" class="sms-code-network">
354
+ <ul>
355
+
356
+ <li>
357
+ <span class="sms-code">51210</span>
358
+ <span class="sms-network">O2</span>
359
+ </li>
360
+
361
+ </ul>
362
+ </td>
363
+ </tr><tr>
364
+ <td class="sms-country">India</td>
365
+ <td colspan="2" class="sms-code-network">
366
+ <ul>
367
+
368
+ <li>
369
+ <span class="sms-code">53000</span>
370
+ <span class="sms-network">Bharti Airtel, Videocon</span>
371
+ </li>
372
+
373
+ </ul>
374
+ </td>
375
+ </tr><tr>
376
+ <td class="sms-country">Jordan</td>
377
+ <td colspan="2" class="sms-code-network">
378
+ <ul>
379
+
380
+ <li>
381
+ <span class="sms-code">90903</span>
382
+ <span class="sms-network">Zain</span>
383
+ </li>
384
+
385
+ </ul>
386
+ </td>
387
+ </tr><tr>
388
+ <td class="sms-country">New Zealand</td>
389
+ <td colspan="2" class="sms-code-network">
390
+ <ul>
391
+
392
+ <li>
393
+ <span class="sms-code">8987</span>
394
+ <span class="sms-network">Vodafone, Telecom NZ</span>
395
+ </li>
396
+
397
+ </ul>
398
+ </td>
399
+ </tr><tr>
400
+ <td class="sms-country">United States</td>
401
+ <td colspan="2" class="sms-code-network">
402
+ <ul>
403
+
404
+ <li>
405
+ <span class="sms-code">40404</span>
406
+ <span class="sms-network">(any)</span>
407
+ </li>
408
+
409
+ </ul>
410
+ </td>
411
+ </tr>
412
+ </tbody>
413
+ </table>
414
+ </div>
415
+
416
+ </p>
417
+ </div>
418
+ </div>
419
+ </div>
420
+
421
+
422
+
423
+
424
+
425
+ <div class="content-bubble-arrow"></div>
426
+
427
+
428
+
429
+ <table cellspacing="0" class="columns">
430
+ <tbody>
431
+ <tr>
432
+ <td id="content" class="round-left column">
433
+ <div class="wrapper">
434
+
435
+
436
+
437
+
438
+
439
+
440
+
441
+
442
+
443
+ <div class="profile-user">
444
+ <div id="user_170030823" class="user ">
445
+ <h2 class="thumb clearfix">
446
+ <a href="/account/profile_image/sowersb?hreflang=en"><img alt="" border="0" height="73" id="profile-image" src="http://a3.twimg.com/profile_images/1084691799/Brent-sm_bigger.jpg" valign="middle" width="73" /></a>
447
+ <div class="screen-name">sowersb</div>
448
+ </h2>
449
+ </div>
450
+ </div>
451
+
452
+
453
+
454
+ <div id="similar_to_followed"></div>
455
+
456
+ <div class="section">
457
+
458
+ <div id="timeline_heading" style="display: none;">
459
+ <h1 id="heading"></h1>
460
+ </div>
461
+ <ol id='timeline' class='statuses'>
462
+ <li class="hentry u-sowersb status latest-status" id="status_29524461332"
463
+ >
464
+ <span class="status-body">
465
+ <span class="status-content">
466
+ <span class="entry-content">It's looking bad for Democrats, but at least Linda McMahon loses in CT, fortunately it's not best 2 of 3 falls.</span>
467
+ </span>
468
+ <span class="meta entry-meta" data='{"place_id":"e1c2cd40f6ee7563","avatar_url":"http:\/\/a3.twimg.com\/profile_images\/1084691799\/Brent-sm_mini.jpg"}'>
469
+ <a class="entry-date" rel="bookmark" href="http://twitter.com/sowersb/status/29524461332">
470
+ <span class="published timestamp" data="{time:'Wed Nov 03 00:58:15 +0000 2010'}">4:58 PM Nov 2nd</span></a>
471
+ <span>via web</span>
472
+ from <a href="http://maps.google.com/maps?q=Ballston - Virginia Square, Arlington" class="geocoded_google_link" target="_blank">Ballston - Virginia Square, Arlington</a>
473
+ </span>
474
+
475
+ <ul class="meta-data clearfix">
476
+ </ul>
477
+ </span>
478
+ </li>
479
+ <li class="hentry u-sowersb status" id="status_29431628530"
480
+ >
481
+ <span class="status-body">
482
+ <span class="status-content">
483
+ <span class="entry-content">Yeah <a href="/search?q=%23Giants" title="#Giants" class="tweet-url hashtag" rel="nofollow">#Giants</a>! Good pitching always beats good hitting. Finally a team I like wins the world series, first time since the 05 White Sox</span>
484
+ </span>
485
+ <span class="meta entry-meta" data='{"place_id":"e1c2cd40f6ee7563","avatar_url":"http:\/\/a3.twimg.com\/profile_images\/1084691799\/Brent-sm_mini.jpg"}'>
486
+ <a class="entry-date" rel="bookmark" href="http://twitter.com/sowersb/status/29431628530">
487
+ <span class="published timestamp" data="{time:'Tue Nov 02 02:34:03 +0000 2010'}">6:34 PM Nov 1st</span></a>
488
+ <span>via web</span>
489
+ from <a href="http://maps.google.com/maps?q=Ballston - Virginia Square, Arlington" class="geocoded_google_link" target="_blank">Ballston - Virginia Square, Arlington</a>
490
+ </span>
491
+
492
+ <ul class="meta-data clearfix">
493
+ </ul>
494
+ </span>
495
+ </li>
496
+ <li class="hentry u-sowersb status" id="status_29223429095"
497
+ >
498
+ <span class="status-body">
499
+ <span class="status-content">
500
+ <span class="entry-content">Perfect day today for a nice hike of buzzards rock trail</span>
501
+ </span>
502
+ <span class="meta entry-meta" data='{"latlng":[38.864994,-77.061775],"place_id":"4580183ad6f11e28","avatar_url":"http:\/\/a3.twimg.com\/profile_images\/1084691799\/Brent-sm_mini.jpg"}'>
503
+ <a class="entry-date" rel="bookmark" href="http://twitter.com/sowersb/status/29223429095">
504
+ <span class="published timestamp" data="{time:'Sat Oct 30 22:43:03 +0000 2010'}">3:43 PM Oct 30th</span></a>
505
+ <span>via <a href="http://www.tweetdeck.com" rel="nofollow">TweetDeck</a></span>
506
+ from <a href="http://maps.google.com/maps?q=38.864994,-77.061775" class="geocoded_google_link" target="_blank">Aurora Highlands, Arlington&nbsp;<span class='geo-pin'>&nbsp;</span></a>
507
+ </span>
508
+
509
+ <ul class="meta-data clearfix">
510
+ </ul>
511
+ </span>
512
+ </li>
513
+ <li class="hentry u-sowersb status" id="status_28940872142"
514
+ >
515
+ <span class="status-body">
516
+ <span class="status-content">
517
+ <span class="entry-content">My prediction.. <a href="/search?q=%23Giants" title="#Giants" class="tweet-url hashtag" rel="nofollow">#Giants</a> in 7 games</span>
518
+ </span>
519
+ <span class="meta entry-meta" data='{"place_id":"e1c2cd40f6ee7563","avatar_url":"http:\/\/a3.twimg.com\/profile_images\/1084691799\/Brent-sm_mini.jpg"}'>
520
+ <a class="entry-date" rel="bookmark" href="http://twitter.com/sowersb/status/28940872142">
521
+ <span class="published timestamp" data="{time:'Thu Oct 28 00:33:52 +0000 2010'}">5:33 PM Oct 27th</span></a>
522
+ <span>via web</span>
523
+ from <a href="http://maps.google.com/maps?q=Ballston - Virginia Square, Arlington" class="geocoded_google_link" target="_blank">Ballston - Virginia Square, Arlington</a>
524
+ </span>
525
+
526
+ <ul class="meta-data clearfix">
527
+ </ul>
528
+ </span>
529
+ </li>
530
+ <li class="hentry u-sowersb status" id="status_28837336848"
531
+ >
532
+ <span class="status-body">
533
+ <span class="status-content">
534
+ <span class="entry-content">For weather geeks.. RT @<a class="tweet-url username" href="/TWCBreaking" rel="nofollow">TWCBreaking</a>: Record lowest U.S. land-based pressure! Orr, MN now at 955.5 mb, besting the record from ... '78!</span>
535
+ </span>
536
+ <span class="meta entry-meta" data='{"place_id":"e1c2cd40f6ee7563","avatar_url":"http:\/\/a3.twimg.com\/profile_images\/1084691799\/Brent-sm_mini.jpg"}'>
537
+ <a class="entry-date" rel="bookmark" href="http://twitter.com/sowersb/status/28837336848">
538
+ <span class="published timestamp" data="{time:'Tue Oct 26 23:40:18 +0000 2010'}">4:40 PM Oct 26th</span></a>
539
+ <span>via <a href="http://www.tweetdeck.com" rel="nofollow">TweetDeck</a></span>
540
+ from <a href="http://maps.google.com/maps?q=Ballston - Virginia Square, Arlington" class="geocoded_google_link" target="_blank">Ballston - Virginia Square, Arlington</a>
541
+ </span>
542
+
543
+ <ul class="meta-data clearfix">
544
+ </ul>
545
+ </span>
546
+ </li>
547
+ <li class="hentry u-sowersb status" id="status_28461486926"
548
+ >
549
+ <span class="status-body">
550
+ <span class="status-content">
551
+ <span class="entry-content">Go <a href="/search?q=%23Rangers" title="#Rangers" class="tweet-url hashtag" rel="nofollow">#Rangers</a>! My hope of not having a repeat Yankees-Phillies world series is looking more likely.</span>
552
+ </span>
553
+ <span class="meta entry-meta" data='{"place_id":"e1c2cd40f6ee7563","avatar_url":"http:\/\/a3.twimg.com\/profile_images\/1084691799\/Brent-sm_mini.jpg"}'>
554
+ <a class="entry-date" rel="bookmark" href="http://twitter.com/sowersb/status/28461486926">
555
+ <span class="published timestamp" data="{time:'Sat Oct 23 02:07:49 +0000 2010'}">7:07 PM Oct 22nd</span></a>
556
+ <span>via web</span>
557
+ from <a href="http://maps.google.com/maps?q=Ballston - Virginia Square, Arlington" class="geocoded_google_link" target="_blank">Ballston - Virginia Square, Arlington</a>
558
+ </span>
559
+
560
+ <ul class="meta-data clearfix">
561
+ </ul>
562
+ </span>
563
+ </li>
564
+ <li class="hentry u-sowersb status" id="status_28069006740"
565
+ >
566
+ <span class="status-body">
567
+ <span class="status-content">
568
+ <span class="entry-content"><a href="http://apidock.com" class="tweet-url web" rel="nofollow" target="_blank">apidock.com</a> is coming in handy now that the official online Rails APIs are at version 3</span>
569
+ </span>
570
+ <span class="meta entry-meta" data='{}'>
571
+ <a class="entry-date" rel="bookmark" href="http://twitter.com/sowersb/status/28069006740">
572
+ <span class="published timestamp" data="{time:'Thu Oct 21 23:03:49 +0000 2010'}">4:03 PM Oct 21st</span></a>
573
+ <span>via <a href="http://www.tweetdeck.com" rel="nofollow">TweetDeck</a></span>
574
+
575
+ </span>
576
+
577
+ <ul class="meta-data clearfix">
578
+ </ul>
579
+ </span>
580
+ </li>
581
+ <li class="hentry u-sowersb status" id="status_27558575415"
582
+ >
583
+ <span class="status-body">
584
+ <span class="status-content">
585
+ <span class="entry-content">Don't think I can drop my Verizon landline, TV and Internet will cost more than the TV, Internet, and landline FIOS package.</span>
586
+ </span>
587
+ <span class="meta entry-meta" data='{"place_id":"e1c2cd40f6ee7563","avatar_url":"http:\/\/a3.twimg.com\/profile_images\/1084691799\/Brent-sm_mini.jpg"}'>
588
+ <a class="entry-date" rel="bookmark" href="http://twitter.com/sowersb/status/27558575415">
589
+ <span class="published timestamp" data="{time:'Sat Oct 16 17:03:49 +0000 2010'}">10:03 AM Oct 16th</span></a>
590
+ <span>via <a href="http://www.tweetdeck.com" rel="nofollow">TweetDeck</a></span>
591
+ from <a href="http://maps.google.com/maps?q=Ballston - Virginia Square, Arlington" class="geocoded_google_link" target="_blank">Ballston - Virginia Square, Arlington</a>
592
+ </span>
593
+
594
+ <ul class="meta-data clearfix">
595
+ </ul>
596
+ </span>
597
+ </li>
598
+ <li class="hentry u-sowersb status" id="status_27091446272"
599
+ >
600
+ <span class="status-body">
601
+ <span class="status-content">
602
+ <span class="entry-content">I'm shocked, something awesome in Linux that Windows and Mac don't have that normal people would like: <a href="https://edge.one.ubuntu.com/mobile/" class="tweet-url web" rel="nofollow" target="_blank">https://edge.one.ubuntu.com/mobile/</a></span>
603
+ </span>
604
+ <span class="meta entry-meta" data='{"place_id":"e1c2cd40f6ee7563","avatar_url":"http:\/\/a3.twimg.com\/profile_images\/1084691799\/Brent-sm_mini.jpg"}'>
605
+ <a class="entry-date" rel="bookmark" href="http://twitter.com/sowersb/status/27091446272">
606
+ <span class="published timestamp" data="{time:'Tue Oct 12 01:23:23 +0000 2010'}">6:23 PM Oct 11th</span></a>
607
+ <span>via web</span>
608
+ from <a href="http://maps.google.com/maps?q=Ballston - Virginia Square, Arlington" class="geocoded_google_link" target="_blank">Ballston - Virginia Square, Arlington</a>
609
+ </span>
610
+
611
+ <ul class="meta-data clearfix">
612
+ </ul>
613
+ </span>
614
+ </li>
615
+ <li class="hentry u-sowersb status" id="status_26947381137"
616
+ >
617
+ <span class="status-body">
618
+ <span class="status-content">
619
+ <span class="entry-content">Poor Twins, 4 division series against Yankees in past 8 seasons, they've lost all 4, 2 of them sweeps.</span>
620
+ </span>
621
+ <span class="meta entry-meta" data='{"place_id":"e1c2cd40f6ee7563","avatar_url":"http:\/\/a3.twimg.com\/profile_images\/1084691799\/Brent-sm_mini.jpg"}'>
622
+ <a class="entry-date" rel="bookmark" href="http://twitter.com/sowersb/status/26947381137">
623
+ <span class="published timestamp" data="{time:'Sun Oct 10 15:44:06 +0000 2010'}">8:44 AM Oct 10th</span></a>
624
+ <span>via <a href="http://www.tweetdeck.com" rel="nofollow">TweetDeck</a></span>
625
+ from <a href="http://maps.google.com/maps?q=Ballston - Virginia Square, Arlington" class="geocoded_google_link" target="_blank">Ballston - Virginia Square, Arlington</a>
626
+ </span>
627
+
628
+ <ul class="meta-data clearfix">
629
+ </ul>
630
+ </span>
631
+ </li>
632
+
633
+ <li class="hentry u-mattcutts share status" id="status_26875976861"
634
+ >
635
+ <span class="status-body">
636
+ <span class="big-retweet-icon" title="Retweets from people you follow appear in your timeline."></span>
637
+ <strong><a href="http://twitter.com/mattcutts" class="tweet-url screen-name">mattcutts</a></strong>
638
+
639
+ <span class="entry-content">In case you've doubted that Google is innovative: <a href="http://goo.gl/0IVD" class="tweet-url web" rel="nofollow" target="_blank">http://goo.gl/0IVD</a> Meet our cars. Cars. That drive. Themselves. :)</span>
640
+ <span class="meta entry-meta" data='{}'>
641
+ <a class="entry-date" rel="bookmark" href="http://twitter.com/mattcutts/status/26872713957">
642
+ <span class="published timestamp" data="{time:'Sat Oct 09 20:08:09 +0000 2010'}">1:08 PM Oct 9th</span></a>
643
+ <span>via web</span>
644
+
645
+ </span>
646
+
647
+ <span class="meta entry-meta retweet-meta">
648
+ <span class="shared-content">Retweeted by <a href="/sowersb" class="screen-name timestamp-title" data="&#123;time:&quot;Sat Oct 09 21:00:12 +0000 2010&quot;&#125;" title="28 days ago">sowersb</a> and 100+ others</span>
649
+ </span>
650
+
651
+ <ul class="meta-data clearfix">
652
+ </ul>
653
+ </span>
654
+ </li >
655
+ <li class="hentry u-sowersb status" id="status_26672361352"
656
+ >
657
+ <span class="status-body">
658
+ <span class="status-content">
659
+ <span class="entry-content">Weird. Just saw hundreds of people with bags with orange straps walk by and Pentagon police blocking the intersection off. Should I run?</span>
660
+ </span>
661
+ <span class="meta entry-meta" data='{"place_id":"e1c2cd40f6ee7563","avatar_url":"http:\/\/a3.twimg.com\/profile_images\/1084691799\/Brent-sm_mini.jpg"}'>
662
+ <a class="entry-date" rel="bookmark" href="http://twitter.com/sowersb/status/26672361352">
663
+ <span class="published timestamp" data="{time:'Thu Oct 07 17:54:31 +0000 2010'}">10:54 AM Oct 7th</span></a>
664
+ <span>via <a href="http://www.tweetdeck.com" rel="nofollow">TweetDeck</a></span>
665
+ from <a href="http://maps.google.com/maps?q=Ballston - Virginia Square, Arlington" class="geocoded_google_link" target="_blank">Ballston - Virginia Square, Arlington</a>
666
+ </span>
667
+
668
+ <ul class="meta-data clearfix">
669
+ </ul>
670
+ </span>
671
+ </li>
672
+ <li class="hentry u-sowersb status" id="status_26605266853"
673
+ >
674
+ <span class="status-body">
675
+ <span class="status-content">
676
+ <span class="entry-content">This <a href="/search?q=%23Postseason" title="#Postseason" class="tweet-url hashtag" rel="nofollow">#Postseason</a> is pretty great so far, and we've got 4 more weeks of it to go!</span>
677
+ </span>
678
+ <span class="meta entry-meta" data='{"place_id":"e1c2cd40f6ee7563","avatar_url":"http:\/\/a3.twimg.com\/profile_images\/1084691799\/Brent-sm_mini.jpg"}'>
679
+ <a class="entry-date" rel="bookmark" href="http://twitter.com/sowersb/status/26605266853">
680
+ <span class="published timestamp" data="{time:'Thu Oct 07 01:15:48 +0000 2010'}">6:15 PM Oct 6th</span></a>
681
+ <span>via web</span>
682
+ from <a href="http://maps.google.com/maps?q=Ballston - Virginia Square, Arlington" class="geocoded_google_link" target="_blank">Ballston - Virginia Square, Arlington</a>
683
+ </span>
684
+
685
+ <ul class="meta-data clearfix">
686
+ </ul>
687
+ </span>
688
+ </li>
689
+ <li class="hentry u-sowersb status" id="status_26504017057"
690
+ >
691
+ <span class="status-body">
692
+ <span class="status-content">
693
+ <span class="entry-content">Documenting almost 4 years of work on a project is a daunting task, I'm gonna have a whole book written by the end.</span>
694
+ </span>
695
+ <span class="meta entry-meta" data='{"place_id":"e1c2cd40f6ee7563","avatar_url":"http:\/\/a3.twimg.com\/profile_images\/1084691799\/Brent-sm_mini.jpg"}'>
696
+ <a class="entry-date" rel="bookmark" href="http://twitter.com/sowersb/status/26504017057">
697
+ <span class="published timestamp" data="{time:'Wed Oct 06 00:13:39 +0000 2010'}">5:13 PM Oct 5th</span></a>
698
+ <span>via <a href="http://www.tweetdeck.com" rel="nofollow">TweetDeck</a></span>
699
+ from <a href="http://maps.google.com/maps?q=Ballston - Virginia Square, Arlington" class="geocoded_google_link" target="_blank">Ballston - Virginia Square, Arlington</a>
700
+ </span>
701
+
702
+ <ul class="meta-data clearfix">
703
+ </ul>
704
+ </span>
705
+ </li>
706
+ <li class="hentry u-sowersb status" id="status_26323803751"
707
+ >
708
+ <span class="status-body">
709
+ <span class="status-content">
710
+ <span class="entry-content">Godsmack is pretty awesome here, enough to make me forget that its cold</span>
711
+ </span>
712
+ <span class="meta entry-meta" data='{"place_id":"923f01273a937690","avatar_url":"http:\/\/a3.twimg.com\/profile_images\/1084691799\/Brent-sm_mini.jpg"}'>
713
+ <a class="entry-date" rel="bookmark" href="http://twitter.com/sowersb/status/26323803751">
714
+ <span class="published timestamp" data="{time:'Mon Oct 04 02:06:29 +0000 2010'}">7:06 PM Oct 3rd</span></a>
715
+ <span>via <a href="http://mobile.twitter.com" rel="nofollow">Mobile Web</a></span>
716
+ from <a href="http://maps.google.com/maps?q=Columbia, MD" class="geocoded_google_link" target="_blank">Columbia, MD</a>
717
+ </span>
718
+
719
+ <ul class="meta-data clearfix">
720
+ </ul>
721
+ </span>
722
+ </li>
723
+ <li class="hentry u-sowersb status" id="status_26294264501"
724
+ >
725
+ <span class="status-body">
726
+ <span class="status-content">
727
+ <span class="entry-content">Nationals <a href="/search?q=%23Game162" title="#Game162" class="tweet-url hashtag" rel="nofollow">#Game162</a> is yet another close one, so many close games this season!</span>
728
+ </span>
729
+ <span class="meta entry-meta" data='{"place_id":"e1c2cd40f6ee7563","avatar_url":"http:\/\/a3.twimg.com\/profile_images\/1084691799\/Brent-sm_mini.jpg"}'>
730
+ <a class="entry-date" rel="bookmark" href="http://twitter.com/sowersb/status/26294264501">
731
+ <span class="published timestamp" data="{time:'Sun Oct 03 19:32:56 +0000 2010'}">12:32 PM Oct 3rd</span></a>
732
+ <span>via web</span>
733
+ from <a href="http://maps.google.com/maps?q=Ballston - Virginia Square, Arlington" class="geocoded_google_link" target="_blank">Ballston - Virginia Square, Arlington</a>
734
+ </span>
735
+
736
+ <ul class="meta-data clearfix">
737
+ </ul>
738
+ </span>
739
+ </li>
740
+ <li class="hentry u-sowersb status" id="status_26191471141"
741
+ >
742
+ <span class="status-body">
743
+ <span class="status-content">
744
+ <span class="entry-content">@<a class="tweet-url username" href="/jaysonst" rel="nofollow">jaysonst</a> Love the article today, never realized hitting home runs was so dangerous!</span>
745
+ </span>
746
+ <span class="meta entry-meta" data='{}'>
747
+ <a class="entry-date" rel="bookmark" href="http://twitter.com/sowersb/status/26191471141">
748
+ <span class="published timestamp" data="{time:'Sat Oct 02 17:05:24 +0000 2010'}">10:05 AM Oct 2nd</span></a>
749
+ <span>via <a href="http://www.tweetdeck.com" rel="nofollow">TweetDeck</a></span>
750
+
751
+ <a href="http://twitter.com/jaysonst/status/26179202278">in reply to jaysonst</a></span>
752
+
753
+ <ul class="meta-data clearfix">
754
+ </ul>
755
+ </span>
756
+ </li>
757
+ <li class="hentry u-sowersb status" id="status_25963955309"
758
+ >
759
+ <span class="status-body">
760
+ <span class="status-content">
761
+ <span class="entry-content">There are a surprising number of people on the 5am metro train, I barely got a seat</span>
762
+ </span>
763
+ <span class="meta entry-meta" data='{"place_id":"319ee7b36c9149da","avatar_url":"http:\/\/a3.twimg.com\/profile_images\/1084691799\/Brent-sm_mini.jpg"}'>
764
+ <a class="entry-date" rel="bookmark" href="http://twitter.com/sowersb/status/25963955309">
765
+ <span class="published timestamp" data="{time:'Thu Sep 30 09:25:01 +0000 2010'}">2:25 AM Sep 30th</span></a>
766
+ <span>via <a href="http://mobile.twitter.com" rel="nofollow">Mobile Web</a></span>
767
+ from <a href="http://maps.google.com/maps?q=Arlington, VA" class="geocoded_google_link" target="_blank">Arlington, VA</a>
768
+ </span>
769
+
770
+ <ul class="meta-data clearfix">
771
+ </ul>
772
+ </span>
773
+ </li>
774
+ <li class="hentry u-sowersb status" id="status_25844941057"
775
+ >
776
+ <span class="status-body">
777
+ <span class="status-content">
778
+ <span class="entry-content">Had fun tonight at Nats park, great game, Dunn hits walk off home run. going to game tomorrow too, hopefully it's as good</span>
779
+ </span>
780
+ <span class="meta entry-meta" data='{}'>
781
+ <a class="entry-date" rel="bookmark" href="http://twitter.com/sowersb/status/25844941057">
782
+ <span class="published timestamp" data="{time:'Wed Sep 29 02:28:03 +0000 2010'}">7:28 PM Sep 28th</span></a>
783
+ <span>via <a href="http://seesmic.com/seesmic_mobile/android/" rel="nofollow">Seesmic for Android</a></span>
784
+
785
+ </span>
786
+
787
+ <ul class="meta-data clearfix">
788
+ </ul>
789
+ </span>
790
+ </li>
791
+ <li class="hentry u-sowersb status" id="status_25612780723"
792
+ >
793
+ <span class="status-body">
794
+ <span class="status-content">
795
+ <span class="entry-content">@<a class="tweet-url username" href="/DaveFreireich" rel="nofollow">DaveFreireich</a> Just noticed your msg today, shoot me an email at the address listed at <a href="http://www.coordinatecommons.com" class="tweet-url web" rel="nofollow" target="_blank">http://www.coordinatecommons.com</a></span>
796
+ </span>
797
+ <span class="meta entry-meta" data='{"place_id":"e1c2cd40f6ee7563","avatar_url":"http:\/\/a3.twimg.com\/profile_images\/1084691799\/Brent-sm_mini.jpg"}'>
798
+ <a class="entry-date" rel="bookmark" href="http://twitter.com/sowersb/status/25612780723">
799
+ <span class="published timestamp" data="{time:'Sun Sep 26 18:22:42 +0000 2010'}">11:22 AM Sep 26th</span></a>
800
+ <span>via web</span>
801
+ from <a href="http://maps.google.com/maps?q=Ballston - Virginia Square, Arlington" class="geocoded_google_link" target="_blank">Ballston - Virginia Square, Arlington</a>
802
+ <a href="http://twitter.com/DaveFreireich/status/25120392632">in reply to DaveFreireich</a></span>
803
+
804
+ <ul class="meta-data clearfix">
805
+ </ul>
806
+ </span>
807
+ </li>
808
+ </ol>
809
+ <div id="pagination">
810
+ <a href="/sowersb?max_id=29524461332&amp;page=2&amp;twttr=true" class="round more" id="more" rel="next">more</a> </div>
811
+
812
+ </div>
813
+
814
+
815
+
816
+
817
+
818
+ </div>
819
+ </td>
820
+
821
+ <td id="side_base" class="column round-right">
822
+
823
+ <div id="side">
824
+
825
+ <div id="profile" class="section profile-side">
826
+ <span class="section-links">
827
+ </span>
828
+ <address>
829
+ <ul class="about vcard entry-author">
830
+
831
+
832
+
833
+ <li><span class="label">Name</span> <span class="fn">Brent Sowers</span></li>
834
+ <li><span class="label">Location</span> <span class="adr">Arlington, VA</span></li>
835
+ <li><span class="label">Web</span> <a href="http://www.coordinatecommons.com" class="url" rel="me nofollow" target="_blank">http://www.coordi...</a></li>
836
+ <li id="bio"><span class="label">Bio</span> <span class="bio">Ruby on Rails software developer, Nationals fan, metalhead</span></li>
837
+
838
+ </ul>
839
+ </address>
840
+
841
+
842
+
843
+ <div class="stats">
844
+ <table>
845
+ <tr>
846
+ <td>
847
+
848
+
849
+
850
+ <a href="/sowersb/following" id="following_count_link" class="link-following_page" rel="me" title="See who sowersb is following">
851
+ <span id="following_count" class="stats_count numeric">65 </span>
852
+ <span class="label">Following</span>
853
+ </a>
854
+
855
+
856
+ </td>
857
+ <td>
858
+
859
+ <a href="/sowersb/followers" id="follower_count_link" class="link-followers_page" rel="me" title="See who's following sowersb">
860
+ <span id="follower_count" class="stats_count numeric">9 </span>
861
+ <span class="label">Followers</span>
862
+ </a>
863
+
864
+ </td>
865
+ <td>
866
+
867
+ <a href="/sowersb/lists/memberships" id="lists_count_link" class="link-lists_page" rel="me" title="See which lists sowersb is on">
868
+ <span id="lists_count" class="stats_count numeric">0 </span>
869
+ <span class="label">Listed</span>
870
+ </a>
871
+
872
+ </td>
873
+ </tr>
874
+ </table>
875
+
876
+ </div>
877
+
878
+ </div>
879
+
880
+ <ul id="primary_nav" class="sidebar-menu">
881
+ <li id="profile_tab"><a href="/sowersb" accesskey="u"><span id="update_count" class="stat_count">60</span><span>Tweets</span></a></li>
882
+ <li id="profile_favorites_tab"><a href="http://twitter.com/sowersb/favorites" accesskey="f"><span>Favorites</span></a></li>
883
+ </ul>
884
+
885
+
886
+
887
+
888
+
889
+
890
+ <hr/>
891
+
892
+
893
+ <div id="following">
894
+
895
+ <h2 class="sidebar-title" id="fm_menu"><span>Following</span></h2>
896
+ <div class="sidebar-menu">
897
+ <div id="following_list">
898
+
899
+ <span class="vcard">
900
+ <a href="/rocknrollhotel" class="url" hreflang="en" rel="contact" title="Rock and Roll Hotel "><img alt="Rock and Roll Hotel " class="photo fn" height="24" src="http://a0.twimg.com/profile_images/74244712/1024567165_m_mini.jpg" width="24" /></a> </span>
901
+
902
+
903
+ <span class="vcard">
904
+ <a href="/jimcaple" class="url" hreflang="en" rel="contact" title="Jim Caple"><img alt="Jim Caple" class="photo fn" height="24" src="http://a0.twimg.com/profile_images/442523292/mymug_mini.jpg" width="24" /></a> </span>
905
+
906
+
907
+ <span class="vcard">
908
+ <a href="/redpalacedc" class="url" hreflang="en" rel="contact" title="Red Palace"><img alt="Red Palace" class="photo fn" height="24" src="http://a1.twimg.com/profile_images/1123692781/176838335_mini.jpg" width="24" /></a> </span>
909
+
910
+
911
+ <span class="vcard">
912
+ <a href="/HikingUpward" class="url" hreflang="en" rel="contact" title="HikingUpward"><img alt="HikingUpward" class="photo fn" height="24" src="http://a2.twimg.com/profile_images/57474282/hiking_upward_05_mini.jpg" width="24" /></a> </span>
913
+
914
+
915
+ <span class="vcard">
916
+ <a href="/FranklyMLS" class="url" hreflang="en" rel="contact" title="FranklyMLS.com"><img alt="FranklyMLS.com" class="photo fn" height="24" src="http://a0.twimg.com/profile_images/588468020/iphone-icon_mini.png" width="24" /></a> </span>
917
+
918
+
919
+ <span class="vcard">
920
+ <a href="/Sevendust" class="url" hreflang="en" rel="contact" title="SEVENDUST"><img alt="SEVENDUST" class="photo fn" height="24" src="http://a1.twimg.com/profile_images/641940641/IMG_08_mini.jpg" width="24" /></a> </span>
921
+
922
+
923
+ <span class="vcard">
924
+ <a href="/RubyNation" class="url" hreflang="en" rel="contact" title="RubyNation"><img alt="RubyNation" class="photo fn" height="24" src="http://a2.twimg.com/profile_images/689896170/rnTwitter_mini.jpg" width="24" /></a> </span>
925
+
926
+
927
+ <span class="vcard">
928
+ <a href="/masnBen" class="url" hreflang="en" rel="contact" title="Ben Goessling onMASN"><img alt="Ben Goessling onMASN" class="photo fn" height="24" src="http://a0.twimg.com/profile_images/742480800/twitter_icon_ben_mini.jpg" width="24" /></a> </span>
929
+
930
+
931
+ <span class="vcard">
932
+ <a href="/StateTheatreDC" class="url" hreflang="en" rel="contact" title="The State Theatre "><img alt="The State Theatre " class="photo fn" height="24" src="http://a3.twimg.com/profile_images/313610647/Logo_EQ_mini.jpg" width="24" /></a> </span>
933
+
934
+
935
+ <span class="vcard">
936
+ <a href="/MetalChris" class="url" hreflang="en" rel="contact" title="DC Heavy Metal"><img alt="DC Heavy Metal" class="photo fn" height="24" src="http://a1.twimg.com/profile_images/117082053/756756487_006490ee3b_o_mini.jpg" width="24" /></a> </span>
937
+
938
+
939
+ <span class="vcard">
940
+ <a href="/NatsTownNews" class="url" hreflang="en" rel="contact" title="NatsTown"><img alt="NatsTown" class="photo fn" height="24" src="http://a2.twimg.com/profile_images/521804202/WSH_2323_mini.gif" width="24" /></a> </span>
941
+
942
+
943
+ <span class="vcard">
944
+ <a href="/dcrug" class="url" hreflang="en" rel="contact" title="dcrug"><img alt="dcrug" class="photo fn" height="24" src="http://a0.twimg.com/profile_images/62937240/DCRUG_mini.png" width="24" /></a> </span>
945
+
946
+
947
+ <span class="vcard">
948
+ <a href="/shitmydadsays" class="url" hreflang="en" rel="contact" title="Justin"><img alt="Justin" class="photo fn" height="24" src="http://a3.twimg.com/profile_images/362705903/dad_mini.jpg" width="24" /></a> </span>
949
+
950
+
951
+ <span class="vcard">
952
+ <a href="/rails" class="url" hreflang="en" rel="contact" title="Ruby on Rails"><img alt="Ruby on Rails" class="photo fn" height="24" src="http://a1.twimg.com/profile_images/57028781/rails_mini.png" width="24" /></a> </span>
953
+
954
+
955
+ <span class="vcard">
956
+ <a href="/rorjobs" class="url" hreflang="en" rel="contact" title="Ruby On Rails Jobs"><img alt="Ruby On Rails Jobs" class="photo fn" height="24" src="http://a2.twimg.com/profile_images/120823606/twitterlogo_mini.gif" width="24" /></a> </span>
957
+
958
+
959
+ <span class="vcard">
960
+ <a href="/frigejohnny" class="url" hreflang="en" rel="contact" title="john brown"><img alt="john brown" class="photo fn" height="24" src="http://s.twimg.com/a/1287420575/images/default_profile_4_mini.png" width="24" /></a> </span>
961
+
962
+
963
+ <span class="vcard">
964
+ <a href="/josemangin" class="url" hreflang="en" rel="contact" title="Jose Mangin"><img alt="Jose Mangin" class="photo fn" height="24" src="http://a1.twimg.com/profile_images/1133973737/image_mini.jpg" width="24" /></a> </span>
965
+
966
+
967
+ <span class="vcard">
968
+ <a href="/TheKaylaRiley" class="url" hreflang="en" rel="contact" title="Kayla Riley"><img alt="Kayla Riley" class="photo fn" height="24" src="http://a1.twimg.com/profile_images/1139289317/nyc_124_mini.jpg" width="24" /></a> </span>
969
+
970
+
971
+ <span class="vcard">
972
+ <a href="/cstammen35" class="url" hreflang="en" rel="contact" title="Craig Stammen"><img alt="Craig Stammen" class="photo fn" height="24" src="http://a1.twimg.com/profile_images/728469549/Craig_Stammen_tall_away_mini.jpg" width="24" /></a> </span>
973
+
974
+
975
+ <span class="vcard">
976
+ <a href="/MLB" class="url" hreflang="en" rel="contact" title="MLB"><img alt="MLB" class="photo fn" height="24" src="http://a3.twimg.com/profile_images/1017578351/2010MLBlogo_mini.jpg" width="24" /></a> </span>
977
+
978
+
979
+ <span class="vcard">
980
+ <a href="/expressnightout" class="url" hreflang="en" rel="contact" title="ExpressNightOut.com"><img alt="ExpressNightOut.com" class="photo fn" height="24" src="http://a0.twimg.com/profile_images/1018083828/express-e_new2_mini.jpg" width="24" /></a> </span>
981
+
982
+
983
+ <span class="vcard">
984
+ <a href="/rich_kilmer" class="url" hreflang="en" rel="contact" title="Rich Kilmer"><img alt="Rich Kilmer" class="photo fn" height="24" src="http://a2.twimg.com/profile_images/64930806/rich_mini.png" width="24" /></a> </span>
985
+
986
+
987
+ <span class="vcard">
988
+ <a href="/ezmobius" class="url" hreflang="en" rel="contact" title="Ezra Zygmuntowicz"><img alt="Ezra Zygmuntowicz" class="photo fn" height="24" src="http://a2.twimg.com/profile_images/50804322/Picture_17_mini.png" width="24" /></a> </span>
989
+
990
+
991
+ <span class="vcard">
992
+ <a href="/NatsTix" class="url" hreflang="en" rel="contact" title="NatsTixSales: Nicole"><img alt="NatsTixSales: Nicole" class="photo fn" height="24" src="http://a3.twimg.com/profile_images/618470775/NationalsScriptLogoSq_mini.jpg" width="24" /></a> </span>
993
+
994
+
995
+ <span class="vcard">
996
+ <a href="/hoptoadapp" class="url" hreflang="en" rel="contact" title="hoptoadapp"><img alt="hoptoadapp" class="photo fn" height="24" src="http://a2.twimg.com/profile_images/112228446/hoptoad-fluid_mini.png" width="24" /></a> </span>
997
+
998
+
999
+ <span class="vcard">
1000
+ <a href="/BlackCatDC" class="url" hreflang="en" rel="contact" title="Black Cat"><img alt="Black Cat" class="photo fn" height="24" src="http://a1.twimg.com/profile_images/400194629/l_91bbde43bb784d38ad9f6e20ca1633cf_mini.jpg" width="24" /></a> </span>
1001
+
1002
+
1003
+ <span class="vcard">
1004
+ <a href="/jaysonst" class="url" hreflang="en" rel="contact" title="Jayson Stark"><img alt="Jayson Stark" class="photo fn" height="24" src="http://a2.twimg.com/profile_images/102155350/jaypic180_mini.png" width="24" /></a> </span>
1005
+
1006
+
1007
+ <span class="vcard">
1008
+ <a href="/OldHossRadbourn" class="url" hreflang="en" rel="contact" title="Old Hoss Radbourn"><img alt="Old Hoss Radbourn" class="photo fn" height="24" src="http://a1.twimg.com/profile_images/272006869/Radbourne_charles_1_mini.jpg" width="24" /></a> </span>
1009
+
1010
+
1011
+ <span class="vcard">
1012
+ <a href="/Rdibs49" class="url" hreflang="en" rel="contact" title="Rob Dibble"><img alt="Rob Dibble" class="photo fn" height="24" src="http://a0.twimg.com/profile_images/1154868904/image_mini.jpg" width="24" /></a> </span>
1013
+
1014
+
1015
+ <span class="vcard">
1016
+ <a href="/FakeRobDibble" class="url" hreflang="en" rel="contact" title="Fake Rob Dibble"><img alt="Fake Rob Dibble" class="photo fn" height="24" src="http://a2.twimg.com/profile_images/1079161490/Dibz_mini.jpg" width="24" /></a> </span>
1017
+
1018
+
1019
+ <span class="vcard">
1020
+ <a href="/dhh" class="url" hreflang="en" rel="contact" title="DHH"><img alt="DHH" class="photo fn" height="24" src="http://a0.twimg.com/profile_images/67881828/headshot64_mini.jpg" width="24" /></a> </span>
1021
+
1022
+
1023
+ <span class="vcard">
1024
+ <a href="/rbates" class="url" hreflang="en" rel="contact" title="Ryan Bates"><img alt="Ryan Bates" class="photo fn" height="24" src="http://a0.twimg.com/profile_images/52189024/ryan_bates_cropped_mini.jpg" width="24" /></a> </span>
1025
+
1026
+
1027
+ <span class="vcard">
1028
+ <a href="/railscasts" class="url" hreflang="en" rel="contact" title="Railscasts"><img alt="Railscasts" class="photo fn" height="24" src="http://a1.twimg.com/profile_images/83693421/logo_mini.png" width="24" /></a> </span>
1029
+
1030
+
1031
+ <span class="vcard">
1032
+ <a href="/pjb3" class="url" hreflang="en" rel="contact" title="Paul Barry"><img alt="Paul Barry" class="photo fn" height="24" src="http://a1.twimg.com/profile_images/1029286697/pjb3_mini.png" width="24" /></a> </span>
1033
+
1034
+
1035
+ <span class="vcard">
1036
+ <a href="/mirRoRplacement" class="url" hreflang="en" rel="contact" title="mirRoR Placement"><img alt="mirRoR Placement" class="photo fn" height="24" src="http://a0.twimg.com/profile_images/659088772/mirRoR_twitter_icon_mini.jpg" width="24" /></a> </span>
1037
+
1038
+
1039
+ <span class="vcard">
1040
+ <a href="/baseball_ref" class="url" hreflang="en" rel="contact" title="Baseball Reference"><img alt="Baseball Reference" class="photo fn" height="24" src="http://a1.twimg.com/profile_images/380680877/baseball_ref_twitter_mini.png" width="24" /></a> </span>
1041
+
1042
+
1043
+ </div>
1044
+ <div id="friends_view_all">
1045
+ <a href="/sowersb/following" rel="me">View all&hellip;</a>
1046
+ </div>
1047
+
1048
+ </div>
1049
+
1050
+ <hr/>
1051
+ </div>
1052
+
1053
+
1054
+
1055
+
1056
+
1057
+ <div id="rssfeed">
1058
+ <a href="/statuses/user_timeline/170030823.rss" class="xref rss profile-rss" rel="alternate" type="application/rss+xml">RSS feed of sowersb's tweets</a>
1059
+ <a href="/favorites/170030823.rss" class="xref rss favorites-rss" rel="alternate" type="application/rss+xml">RSS feed of sowersb's favorites</a>
1060
+ </div>
1061
+
1062
+
1063
+
1064
+
1065
+ </div>
1066
+ </td>
1067
+
1068
+ </tr>
1069
+ </tbody>
1070
+ </table>
1071
+
1072
+
1073
+
1074
+ <div id="footer" class="round">
1075
+ <h3 class="offscreen">Footer</h3>
1076
+
1077
+
1078
+ <ul class="footer-nav">
1079
+ <li class="first">&copy; 2010 Twitter</li>
1080
+ <li><a href="/about">About Us</a></li>
1081
+ <li><a href="/about/contact">Contact</a></li>
1082
+ <li><a href="http://blog.twitter.com">Blog</a></li>
1083
+ <li><a href="http://status.twitter.com">Status</a></li>
1084
+ <li><a href="/about/resources">Resources</a></li>
1085
+ <li><a href="http://dev.twitter.com/">API</a></li>
1086
+ <li><a href="http://business.twitter.com/twitter101">Business</a></li>
1087
+ <li><a href="http://support.twitter.com">Help</a></li>
1088
+ <li><a href="/jobs">Jobs</a></li>
1089
+ <li><a href="/tos">Terms</a></li>
1090
+ <li><a href="/privacy">Privacy</a></li>
1091
+ </ul>
1092
+ </div>
1093
+
1094
+
1095
+
1096
+ <hr />
1097
+
1098
+ </div>
1099
+
1100
+
1101
+
1102
+ <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.0/jquery.min.js" type="text/javascript"></script>
1103
+ <script src="http://a2.twimg.com/a/1288981003/javascripts/twitter.js?1288982890" type="text/javascript"></script>
1104
+ <script src="http://a0.twimg.com/a/1288981003/javascripts/lib/jquery.tipsy.min.js?1288982890" type="text/javascript"></script>
1105
+ <script type='text/javascript' src='http://www.google.com/jsapi'></script>
1106
+ <script src="http://a0.twimg.com/a/1288981003/javascripts/lib/gears_init.js?1288982890" type="text/javascript"></script>
1107
+ <script src="http://a1.twimg.com/a/1288981003/javascripts/lib/mustache.js?1288982890" type="text/javascript"></script>
1108
+ <script src="http://a2.twimg.com/a/1288981003/javascripts/geov1.js?1288982890" type="text/javascript"></script>
1109
+ <script src="http://a0.twimg.com/a/1288981003/javascripts/api.js?1288982890" type="text/javascript"></script>
1110
+ <script type="text/javascript">
1111
+ //<![CDATA[
1112
+ $.cookie('tz_offset_sec', (-1 * (new Date()).getTimezoneOffset())*60);
1113
+ //]]>
1114
+ </script>
1115
+ <script src="http://a1.twimg.com/a/1288981003/javascripts/lib/mustache.js?1288982890" type="text/javascript"></script>
1116
+ <script src="http://a2.twimg.com/a/1288981003/javascripts/dismissable.js?1288982890" type="text/javascript"></script>
1117
+
1118
+
1119
+ <script type="text/javascript">
1120
+ //<![CDATA[
1121
+ page.user_screenname = 'sowersb';
1122
+ page.user_fullname = 'Brent Sowers';
1123
+ page.controller_name = 'AccountController';
1124
+ page.action_name = 'profile';
1125
+ twttr.form_authenticity_token = '1e78388a93644bf413352a320a1a766378ba4cea';
1126
+ $.ajaxSetup({ data: { authenticity_token: '1e78388a93644bf413352a320a1a766378ba4cea' } });
1127
+
1128
+ // FIXME: Reconcile with the kinds on the Status model.
1129
+ twttr.statusKinds = {
1130
+ UPDATE: 1,
1131
+ SHARE: 2
1132
+ };
1133
+ twttr.ListPerUserLimit = 20;
1134
+
1135
+
1136
+
1137
+
1138
+ //]]>
1139
+ </script>
1140
+ <script type="text/javascript">
1141
+ //<![CDATA[
1142
+
1143
+ $( function () {
1144
+
1145
+ $("#sms_codes_link").hoverTip("#sms_codes");
1146
+ initializePage();
1147
+
1148
+
1149
+
1150
+ if (twttr.geo !== undefined) {
1151
+ twttr.geo.options.show_place_details_in_map = true;
1152
+ }
1153
+
1154
+ (function(){function b(){var c=location.href.split("#!")[1];if(c){window.location.hash = "";window.location.pathname = c.replace(/^([^/])/,"/$1");}else return true}var a="onhashchange"in window;if(!a&&window.setAttribute){window.setAttribute("onhashchange","return;");a=typeof window.onhashchange==="function"}if(a)$(window).bind("hashchange",b);else{var d=function(){b()&&setTimeout(d,250)};setTimeout(d,250)}}());
1155
+ $('#signin_menu').isSigninMenu();
1156
+
1157
+ });
1158
+
1159
+ //]]>
1160
+ </script>
1161
+
1162
+ <!-- BEGIN google analytics -->
1163
+
1164
+ <script type="text/javascript">
1165
+ var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
1166
+ document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
1167
+ </script>
1168
+
1169
+ <script type="text/javascript">
1170
+
1171
+ try {
1172
+ var pageTracker = _gat._getTracker("UA-30775-6");
1173
+ pageTracker._setDomainName("twitter.com");
1174
+ pageTracker._setVar('Not Logged In');
1175
+ pageTracker._setVar('lang: en');
1176
+ pageTracker._initData();
1177
+
1178
+ pageTracker._trackPageview('/profile/not_logged_in/sowersb');
1179
+ } catch(err) { }
1180
+
1181
+ </script>
1182
+
1183
+ <!-- END google analytics -->
1184
+
1185
+
1186
+
1187
+
1188
+ <div id="notifications"></div>
1189
+
1190
+
1191
+
1192
+
1193
+
1194
+
1195
+ </body>
1196
+
1197
+ </html>