Sunday, July 12, 2009 10:43 PM by Michael Paladino
Those of you that follow me on Twitter have probably already heard, but my employer, Rockfish Interactive, has released a new product called TidyTweet that is designed to help website owners filter their embedded Twitter feeds and block Twitter spam.  Check out an example of the filtered Twitter feed on the right side of this page. I'm posting about the project here because I am fortunate enough to currently be the primary developer on the project.  

The Concept
The idea came about when we had a site using a Twitter feed that became popular enough to draw the attention of spammers.  The experience made us realize that if we wanted to continue to integrate these types of elements from Twitter, we would have to provide some sort of moderation mechanism.  We started looking around for products to handle this for us and found that there were none.  Thus TidyTweet was born.

I'll let you check out the TidyTweet.com website, an interview with me on Jay Thornton's blog, and the article on Mashable.com for more details about the product itself.  With this being a mostly technical blog, I thought I'd share a bit about the technology behind the product as well as some of the obstacles and planned enhancements.

We used ASP.NET web forms for the front-end, LINQ to SQL for data access, and jQuery for any client-side work.  So far all have worked out well, and I have no complaints.  We're making extensive use of HTTP Handlers to allow for custom URL extensions such as *.atom and *.widget.  HTTP Handlers are relatively easy to implement, provide performance benefits over standard ASPX pages, and provide cleaner URLs vs. something like *.aspx?format=atom.

Twitter API
We're obviously making extensive use of the Twitter API. I initially did those calls via HTTP requests but midway through the project found TweetSharp.  TweetSharp provides an clean wrapper around the API and is very convenient for getting up and running quickly with the Twitter API.  Working with the Twitter API is tricky due to the latency involved in the HTTP requests, potential for downtime on Twitter's side, and the rate limits.  We've worked through all of these things, but performance is definitely a concern and will be a continual source of refactoring.

That's just a small taste of the project from the technology side of things.  Feel free to ask questions in the comments if you would like me to go into any further details.  Obviously, a large amount of the code is confidential, but I can certainly discuss some of the technologies in general terms. 
Tags:   ,
Categories:   Software | TidyTweet
Actions:   Comments (0)

5 Reasons I Love TweetDeck

Monday, November 10, 2008 4:19 PM by Michael Paladino

I have used Twitter now for a few months and have really enjoyed the experience.  If you don't know what Twitter is, check out the wikipedia entry or this short YouTube video for more information before reading the rest of this post.  During the time I've used Twitter, I've tried quite a few clients including Twhirl, Digsby, and Witty, but my favorite by far has been TweetDeck.  I've mentioned to others how much I've enjoyed using it so often that I thought I'd go ahead and write a blog post about it.

Below, I've listed the top 5 reasons I love TweetDeck with an explanation of each.  Enjoy!

  1. Groups

    Of the Twitter clients I've seen, TweetDeck is the only one with the concept of "Groups".  I follow over 100 people, some of whom are friends I've actually met in person, and others whom I may not personally know but "tweet" about things that I'm interested in.  I don't mind missing tweets from those in the latter group, but I like to monitor those of my personal friends more closely.  With the concept of groups, TweetDeck allows me to setup a group (I call it "Personal Friends") and choose the people whom I choose to keep up with the most.  Then I can more closely monitor that group while paying less attention to the "All Tweets" group.

    Click image to enlarge
    TweetDeck - Groups

  2. Local Search
    Any tweets downloaded by TweetDeck within the last 48 hours get cached locally.  TweetDeck offers a "Local" search that allows you to search through those cached tweets.  This comes in handy if I remember someone tweeting about something but can't remember who or when.

    Click image to enlarge
    TweetDeck - Local Search

  3. Global Search - Topics of Interest - Long Term

    TweetDeck also has a "Global" search that will create a column of all tweets matching the typed-in search term.  It will update every time the rest of your tweets update.  This feature allows me to track tweets on topics that I am deeply interested in.  For example, I have global searches for SubSonic and INETA to keep up with anything that is being said about those topics.

    Click image to enlarge
    TweetDeck - Global Search

  4. Global Search - Topics of Interest - Short Term
    I also use the global search feature to track certain events like conferences.  For example during Microsoft's Professional Developers Conference (PDC), I had a global search setup for "PDC" that allowed me to keep up with what folks were talking about surrounding that event.  Once the event is over, I delete that search.

    Click image to enlarge
    TweetDeck - Remove Global Search

  5. Global Search - My Twitter Name

    Finally, one of the issues that bugged me prior to TweetDeck was that I had a hard time seeing my own tweets and replies in context.  I might see a reply that I sent to a tweet from a couple of hours before, but that tweet might be way down the list and difficult to find.  With TweetDeck, I've created a global search of my twitter name (mpaladino).  TweetDeck then creates a column showing all of my tweets as well as any replies directed at me.  This really makes it easier to see the context of an entire conversation.

    Click image to enlarge
    TweetDeck - Global Search on Twitter ID

Tags:   , , ,
Categories:   Reviews | Software
Actions:   Comments (6)

Screencast - SQL Examiner Suite 2008

Saturday, October 4, 2008 4:10 PM by Michael Paladino

Monday, October 6, I'll be presenting a brief demo of SQL Examiner Suite 2008 at the monthly Fort Smith .NET User Group meeting prior to the main presentation by Scott Cate.  I went ahead and recorded a screencast of that presentation for anyone who might be interested.

SQL Examiner Suite consists of a couple of tools, SQL Examiner and SQL Data Examiner, that allow the user to compare and synchronize database schemas and data.  It's a tool that I use on a regular basis and have found to be invaluable in my software development. 

As a disclaimer, the makers of SQL Examiner Suite, TulaSoft, are one of the sponsors of the Fort Smith .NET User Group, and I am using a free copy that I won at one of the meetings.  However, it was my decision to make this presentation to the group and to create this screencast and neither were in any way solicited by TulaSoft.

WMV | Zune

Switch to BlogEngine.NET

Friday, September 5, 2008 9:31 AM by Michael Paladino

As you can probably tell by the RSS craziness or by the new look, I have followed in the footsteps of numerous others (Brian, ZachTim, and others I'm not remembering) who have switched to BlogEngine.NET.  My blog was previously running on the blog module of a DotNetNuke install.  While DotNetNuke is a reasonable solution for sites with a lot of different types of content or sites needing a lot of out of the box functionality, it was a bit overkill for just a blog.  Also, the blog module was a relatively late entry into the DotNetNuke world and just didn't yet have all the functionality that other blog engines have.

I've heard a lot of good things about BlogEngine.NET and so far have been impressed.  I used a template from DesignsByDarren.com and was able to create a "theme" relatively painlessly.  The migration process ended up being a combination of custom SQL to move over the content and comments and manually re-uploading the images into the new blog.  I'm planning on migrating my family's personal site as well which will pose a bigger challenge as it is extremely image-heavy and manually moving them all is not an option.  I'm looking forward to the challenge!

Tags:   , ,
Categories:   Personal | Software
Actions:   Comments (2)

PowerCommands for Visual Studio 2008

Tuesday, March 4, 2008 8:00 AM by Michael Paladino

If you're running Visual Studio 2008, I would highly recommend PowerCommands for Visual Studio 2008.

From their page on MSDN Code Gallery:

PowerCommands is a set of useful extensions for the Visual Studio 2008 adding additional functionality to various areas of the IDE.

Basically, it adds a number of menu items to the right-click menu in various areas of Visual Studio. My favorites are "Open Command Prompt", "Open Containing Folder", and the ability to modify recent files and properties. Head over to the MSDN Code Gallery page for full details.

Tags:   , ,
Categories:   Software
Actions:   Comments (1)

Visual Studio 2008 Web Development Hot-Fix

Saturday, February 9, 2008 10:00 AM by Michael Paladino

I typically shy away from posting links to new versions of products, patches, etc. because I know there's no way I can keep up and there are already so many good sources available for that type of thing. However after installing the Visual Studio 2008 Web Development Hot-Fix, I have been so pleased that I thought I should share.

The hot fix deals primarily with performance issues related to web development in VS 2008. I knew that the HTML view was often taking a long time to load, but I attributed that to me having something setup incorrectly or invalid HTML. However, this hot fix has drastically reduced the screen freezes I was getting on a regular basis.

Another issue that was driving me crazy was the occassional disappearance of the "View Code" link from the context menu when in HTML view. I never realized how much I used that feature until it was no longer there. Luckily, one of the fixes listed on ScottGu's blog entry is:

"View Code" right-click context menu command takes a long time to appear with web application projects.

So evidently the issue had to do with my use of the web application project model. Interesting.

Anyway, the download was small (~ 2.6 MB) and the install took less than a minute. I would highly recommend this update to anyone writing web applications with Visual Studio 2008. Thanks Microsoft!

Tags:   ,
Categories:   Software
Actions:   Comments (0)

Template courtesy of Designs By Darren.
Modified by Michael Paladino

Sign in