TweetSharp for Twitter developers using .NET

Since January I’ve been using a library called TweetSharp in my various Twitter-related programming projects (including my monthly stats posts). Not only has it saved me from all of the effort that would have gone into writing my own Twitter library for .NET, but it has also taught me a few things about fluent interfaces, OAuth, and other topics. Here’s the description from the relatively new official website:

TweetSharp is a complete .NET library for microblogging platforms that allows you to write short and sweet expressions that convert automatically to web queries and fly to Twitter on your behalf.

Maybe this is a generalization but I often feel that .NET developers get the short end of the stick when the “cool kids” release sample code for their APIs. Or more accurately, C# developers get the short end of the stick (because you can run Python, Ruby, and other languages on .NET if you really want to). Thus I’m grateful that Dimebrain (Daniel Crenna) has developed such a useful library.

TweetSharp is open source and under active development (hosted on Google Code), with a growing base of users reporting and fixing issues (I helped with the Twitter Search functionality initially). If you’re writing any kind of software for Twitter using .NET, you should be using TweetSharp.

FITC Edmonton 2009: October 17-18

For the first time ever, FlasintheCan (FITC) is coming to Edmonton. Very successful FITC events have happened all over the world since 2002, bringing together Flash, Flex, and AIR designers, developers, artists, and students to to educate, challenge, and inspire. Here’s what to expect:

It starts with the presentations. Two solidly packed days of presentations, both technical and creative. Presenters from around the world have been hand-picked for their skill and talent, and all are eager to share and meet you. It’s also about the networking. Being able to meet and talk to people who share your passion for this industry. Meet them at the presentations, in the exhibitor hall, or at the evening party.

The Edmonton event takes place on October 17th and 18th at NAIT. Here are the full event details:

WHAT: FITC Edmonton 2009
WHEN: Saturday & Sunday, October 17-18, 2009
WHERE: Shaw Theatre, NAIT, 11726 – 106th Street (map)

Ticket prices range from $49 to $299, but if you sign up before September 1st using the discount code “backintime” you can get in for just $99 (or $49 for students).

Among the impressive list of presenters are well-known locals Grant Skinner, Randy Troppmann, Erik Johnson, and Victor Rubba. If you’re at all involved in Flash and/or related technologies, this is one event you don’t want to miss!

artsScene Edmonton Summer Party – August 20th

Back in May I attended the launch party for artsScene Edmonton – a fantastic event at Planet Ze Design Centre in Old Strathcona. I had a great time, and suggested that artsScene events could become “must attend” events for local creatives. The first test of that is coming up next week:

On August 20, we’re ready to bring you our second party – a “Jekyll & Hyde” themed summer party that promises to be bigger and better, with two venues, more featured artists, DJs, and live music acts!

They have since announced the performers, and they include: Kerri-Lenn Zwicker, Jay Sparrow, Field + Stream, The Outdoor Miners, and guest DJs The Cake Eaters and Roland Pemberton III.

The “Jekyll” part of the event starts at 6pm at Latitude 53 (10248 106th Street), while the “Hyde” part gets underway at 9pm at Prohibition (11026 Jasper Avenue). Tickets are just $15 online or $20 at the door and include access to both venues. You can pickup your tickets here.

Don’t forget artsScene Edmonton is on Twitter, Facebook, and they have a mailing list. They also recently joined LinkedIn, so get connected!

Hope to see you on the 20th!

State of the Edmonton Twittersphere – July 2009

Welcome to the seventh State of the Edmonton Twittersphere, my look at the intersection of Twitter and Edmonton. You can see last month’s stats here.

The source of the data this month has changed, slightly. In addition to Twitter Search, I added more data directly from Twitter itself. A total of 19,199 tweets were pulled from user timelines directly because they did not exist in Twitter Search.

User identification remains the same. If a user has his or her location set to Edmonton, St. Albert, Sherwood Park, Leduc, Nisku, Stony Plain, Fort Saskatchewan, Beaumont, Spruce Grove, or matching lat/long coordinates, they are considered an Edmontonian.

For July 2009:

# of local users: 5133 (an increase of 1491 from June)

To clarify, that means there were 5133 users who posted at least one tweet in July 2009 with their location set to something that makes them an Edmontonian as described above. This number should be treated as a minimum – there are probably many more Edmonton users without their location set.

I’m happy with my previous stats posts existing as point-in-time snapshots. That said, I am continually improving my data set, making it more accurate over time. I am still happy with the numbers I posted for January through May – they are reasonably accurate (within about 100 users). The number I posted for June however, 3642 users, is not accurate. It was actually 4581, which means this month actually increased by 552 users (however I left the 1491 above for consistency).

Here’s a graph to illustrate local user growth in 2009:

Here are the rest of the stats for July 2009:

# of tweets by local users: 210162
# of tweets by local users containing #yeg: 12879 (6.1%)
# of tweets by local users that were replies: 73119 (34.8%)
# of tweets by local users containing links: 43702 (20.8%)
# of tweets by local users that were retweets: 8393 (4.0%)
# of tweets by local users that were twooshes: 7185 (3.4%)

Once again, the number of tweets containing #yeg actually includes all local hashtags, such as #yegtransit or #yegfood (though most often they are used together anyway).

Here are the numbers above in graphic form (not corrected for June):

Here are the top clients used by local users for posting updates. You’ll notice that API is now identified separately from web:

Some other interesting stats for the month:

Finally, here are the top ten users in Edmonton by followers (most followers first): Pat_Lorna, revtrev, DrBarryLycka, LesM, subunit1, garrymullen, redneckmommy, mastermaq, NHL_Oilers, dan_cote.

Analysis

Looks like we’re getting some growth again, which is a little surprising considering it’s the summer. A couple of things helped to boost July’s stats, including the City Centre Airport issue and the big summer storms. I counted 1464 tweets posted by local users with the #ecca hashtag in July, and I already posted some stats on the storm here. Additionally, July 8th (which is when the Council meeting on the airport was held) was the second busiest day of the month.

Since January, I have identified just over 9200 local users. The number above, 5133, is how many of them were active in July.

I’ll post the Calgary stats as soon as I can – still some manual processing to do, so it might be next week before I get it all finished.

Facebook has acquired FriendFeed

Today Facebook announced it had acquired FriendFeed. This is exciting, interesting news for a number of reasons. First, I think FriendFeed is a fantastic platform. Facebook is about to get a whole lot better thanks to the engineers behind FriendFeed (this is very much a talent acquisition). Second, I think this will cause Twitter, Google, and everyone else in the real-time space to pick up the pace. We’re going to see a whole ton of innovation in the months ahead. That’s good news for all of us.

Here’s the TechCrunch story on the deal, which is where I first read it. Here’s the official Facebook press release, and here’s the official FriendFeed post.

Here are some other relevant posts I’ve found interesting:

Also today: Facebook launched improved search for everyone.

I haven’t used FriendFeed much lately, and I’m not incredibly active on Facebook either. Still, I’m stoked about this deal. In addition to making Facebook a whole heck of a lot better, I think it’s going to have that “a rising tide lifts all boats” kind of effect. At least I hope so (I’m looking at you Twitter).

Twestival Local 2009 in Edmonton

Back in February, the Edmonton Twitter community participated in the first ever Twestival – a tweetup for charity. We raised over $1000 for charity:water, and we had a great time doing so! As a great a cause as that was, I would have preferred to support something local. That’s why I am excited about Twestival Local:

Twestival was born out of the idea that if cities are able to collaborate on an international scale, but work from a local level, it would result in a spectacular impact. While Twestival Global put the spotlight around one cause, Twestival Local is encouraging cities around the world to host events in support of a local cause.

The goal is to give people a chance to feel they are contributing to a larger social initiative, but bring the cause a little closer to home.

So basically Twestival is back, and we’re supporting a local cause this time! Which one? We don’t know – we need your help to decide! You can vote online here.

We’re going to hold our Twestival on September 10, 2009. We haven’t yet decided on a venue, so please add your suggestions for that and anything else to the wiki. Watch @edmontontweetup and the Twestival Edmonton blog for updates.

U-Pass Facts & Figures for 2008

Last month, the City of Edmonton’s Office of the City Auditor completed a review of the Universal Transit Pass (U-Pass) pilot program (PDF). They found that although costs for the program rose, ridership has increased. I took a look at the report, and thought I’d share some of the more interesting facts and figures from it.

For those of you new to U-Pass: it’s a partnership between Edmonton Transit (ETS), St. Albert Transit (StAT), and Strathcona County Transit to provide a universal transit pass to eligible students at the University of Alberta and MacEwan. The current pilot started in the fall of 2007 and will finish up in the fall of 2010.

A total of 84,954 students were eligible in 2008 (counting both the Fall & Winter terms). Here’s the breakdown:

Here’s the revenue that each municipality received in 2008 (the City of Edmonton receives 84%, and the other two each receive 8%):

As the report was created by and for the City of Edmonton, it’s not known what, if any, service changes were made by St. Albert Transit or Strathcona County Transit (unless they too have a report somewhere). ETS made the following changes:

  • 437 service hours were added
  • 3 new routes were added
  • 19 more buses were put into service

Again, we only know the costs for the City of Edmonton. Here are the key figures for 2008:

  • U-Pass Sticker Production costs were $14,500
  • U-Pass Advertising and Promotion costs were $2,928
  • The opportunity cost of the U-Pass program, which is the loss of other ETS fare revenue, was estimated at $10,480,846
  • The cost of providing extra bus service hours was $2,571,221

Add it all up, and you get a total cost of $13,069,495. For the U-Pass program to break even, a fee of $155 per student per term would be required (up from the current $94.50).

In the Edmonton Journal, Councillor Krushell said that ridership nearly doubled from 2006 to 2008, from 7.3 million trips to 13.9 million trips. I’m not exactly sure where she got those numbers, because they aren’t in the report. What is in the report are Campus Passenger Boardings:

As you can see, boardings increased by 21,353 or 12.7% from 2006 to 2008. The report notes that some of this increase may have been caused by factors other than the U-Pass. Other non-financial positives include:

  • An 8% decrease in student parking permits at the University of Alberta since 2006
  • A greater than 8% drop in monthly parking passes at MacEwan for 2007 over 2006

And of course, there has likely been a positive impact on the environment with fewer students driving.

What’s next for the U-Pass?

Although NAIT students initially rejected the program in 2007, a recent survey indicated that a majority would now be interested in joining. The NAIT Students Association hopes to hold a referendum on the issue early next year. The expansion of the LRT to NAIT will no doubt have an impact on interest. If approved, NAIT could join the program for the 2010-2011 school year.

I suspect the program will continue after the current agreement ends, though it is likely that U-Pass fees will rise. Watch for news on a new agreement early next year – the U of A will be holding a student referendum in March to approve new fees, according to The Journal.

Social Media Marketing Bootcamp comes to Edmonton

Vancouver-based Capulet Communications has been running a number of popular social media marketing ‘bootcamps’ in Victoria and Vancouver, and now they’re taking their show on the road. In addition to stops in Kamloops, Kelowna, and Calgary, Capulet will be in Edmonton on September 9th. Here’s what you can expect:

Adding social media into the marketing mix is increasingly important for marketers who want to establish an online presence for their businesses. Building on the sold-out course we taught for UBC Continuing Education this winter, we discuss the dos and don’ts of social media marketing; look at successful marketing campaigns; introduce the social media tools every marketer should know about; and cover online communications etiquette.

And a little on the instructors, who I know and definitely recommend:

We’re Julie Szabo and Darren Barefoot, the founders of Capulet Communications. With a background in technology and public relations, we’ve been running social media marketing campaigns since before it was called "social media". We’ve worked with the nation’s smallest startup and its biggest brands like Mountain Equipment Co-op and Best Buy.

Here are the details for the Edmonton event:

WHO: You!
WHAT: Social Media Marketing Bootcamp
WHERE: Metterra Hotel, 10454 82 Avenue (map)
WHEN: Wednesday, September 9th, 9:30am to 4:30pm
WHY: To learn all about social media marketing.
COST: $299 (or save $50 if you blog about it), register here

Darren also says they are looking for local marketing and communication groups to spread the word in exchange for a discount for members. If you’re one of those people, get in touch with him.

I’ve noticed a definite increase recently in the number of local individuals and organizations looking for help with social marketing. I think the City Centre Airport issue and the recent big storms have had a huge impact on increasing awareness of social media. People are naturally wondering how they can take advantage of it. I think Capulet’s bootcamp is a great way to get started, so don’t miss it.

Friday musings on hyperlocal news

A couple weeks ago, Matthew Hurst created the Hyperlocal page on Wikipedia. Previously, the Hyperlocal redirect went to Local News. Here is Matthew’s rationale for the change:

One of the reasons behind separating these two is that hyperlocal content, and especially blogging, is not simply content about a location and of a particular geographic granularity. It is intended for people resident in that location and, importantly, it is written by residents of the location. Local news does not require the later.

According to the article, hyperlocal content is characterized by three major elements:

  1. It refers to entities and events that are located within a well-defined, community-scale area.
  2. It is intended primarily for consumption by residents of that area.
  3. It is written by an individual resident in that area.

I think this definition is missing a few things.

Much of what I write on this blog could be considered hyperlocal under the above definition (assuming Edmonton falls under the well-defined, community-scale part). The same could be said of The Edmonton Journal, however, which is why I think the current definition on Wikipedia is missing something. The most obvious addition would be a fourth point about being locally owned/operated.

I like that the definition does not mention any particular medium, such as blogging, but rather leaves it open. However, I’m not sure the third point is general enough. The phrase “written by” suggests that we’re talking about the traditional article format, with sentences and paragraphs. I think hyperlocal is much more than that. Consider sites like EveryBlock, which contain hyperlocal news created by software (though I suppose EveryBlock conflicts with the locally owned/operated concept, but you get the idea). Sure humans wrote the software, but the content produced for consumption comes from an algorithm. Shouldn’t that count?

Another thought – what about the people who create hyperlocal content, whether writers or programmers or other creatives? Should we call them Hyperlocal Journalists? Before you journalist types get all defensive, consider that there are twenty types of journalism listed on Wikipedia. What’s the harm in adding one more? 🙂

Finally, I think there’s a place for aggregators and curators in the hyperlocal ecosystem. Perhaps another defining characteristic of hyperlocal content is that it is spread all over the place. Aggregators and curators can sift through all of that content to help make it more discoverable.

Downtown Edmonton requires infill development

One of the things I’ve heard time and time again during and since the City Centre Airport debate earlier this month is the argument that closing the airport and making the lands available for redevelopment threatens the infill that is required throughout downtown. If you highlight all the surface parking lots, downtown Edmonton (97th Street to 109th Street, 99th Avenue to 104th Avenue) looks something like this:

That doesn’t take into account parkades or any lots that I missed (I put it together pretty quickly just looking at the satellite view). It’s also a relatively small area (there are far more on the other side of 109th and 104th) I don’t think anyone would look at that and say, “it’s fine the way it is.” The fact is, we definitely need infill development if we want to have a sustainable, vibrant city. I would suggest that the individuals who supported closing the City Centre Airport likely also strongly support infill development. Both are steps toward the same end.

The first and probably most important thing to consider with this issue is that the whole of the ECCA lands did not go on the market the day Council voted to close the airport. It’s a long-term proposition, and redevelopment will take time.

The second thing to consider is that we may in fact need that space eventually, even if all of the current infill development happens. A few questions were asked about this very topic in Council’s Q & A. Here is the key response, prepared by Gordon Easton from Colliers:

Development pressure in the City of Edmonton is coming from the dual processes of population growth and population change. The population of Edmonton is expected to increase by approximately 400,000 people by 2041. The population is also aging, which creates demand for additional dwelling units, including high density. Our housing demand report showed that between 2016 and 2041 there will be a minimum of 45,107 apartments and 16,212 other multi family homes required to house the expected population. Certainly there are other developments and other sites that can and will accommodate some of this growth. Armin Preiksitis & Associates estimates that the current major development sites underway or expected in the City will contribute almost 35,000 multi-family units. If no other developments come on-line, those units will be completely absorbed in 2019, and there will be 2,453 multi family units needed each year thereafter. That is the equivalent of over 8 30-story condo towers and 650 townhouses per year. As part of the City’s multi family dwelling supply, the ECCA lands would reduce the rate of absorption at competing properties and lengthening the development timing. If ECCA were not developed with multi family residential, the rate of absorption at other sites would be higher, and development pressures (prices) on other sites throughout the city would increase as the market responds to the demand.

We need infill development in downtown Edmonton whether the airport disappears or stays. Closing the airport doesn’t mean that such infill development can’t or won’t happen, and to suggest otherwise is misleading and dishonest.