<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/css" href="/stylesheets/rss.css"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/">
  <channel>
    <title>Shady Project: Tag rickroll</title>
    <link>http://blog.shadyproject.net/articles/tag/rickroll?tag=rickroll</link>
    <language>en-us</language>
    <ttl>40</ttl>
    <description>Stuff.  And Things.</description>
    <item>
      <title>Best Rick Roll Ever</title>
      <description>Sometimes, &lt;a href="http://slashdot.org"&gt;slashdot&lt;/a&gt; isn't a complete waste of time:

&lt;pre&gt;
//Both people are represented by an abstract class
public abstract class Person
{
  public bool StrangersToLove { get; set; }
  public bool KnowTheRules { get; set; }
}

//Possible thoughts
public enum Thought
{
  FullCommitment
}

//Class
public sealed class Me : Person
{
  public Thought Thinking()
  {
    return Thought.FullCommitment;
  }
}

//The target of the song, notice that GetThought can only be called by passing in an instance of Rick
//which satisfies that she can't get this from any other guy
public class You : Person
{
  private Thought whatHeIsThinking;
  public void GetThought(Me guy)
  {
    whatHeIsThinking = guy.Thinking();
  }
}

class Program
{
  //The first verse
  static void Main(string[] args)
  {

    var Rick = new Me() { KnowTheRules = true, StrangersToLove = false };

    var Girl = new You() { KnowTheRules = true, StrangersToLove = false };

   Girl.GetThought(Rick);
  }
}&lt;/pre&gt;

Yes, it's a rick roll in code.</description>
      <pubDate>Tue, 15 Apr 2008 11:15:00 -0700</pubDate>
      <guid isPermaLink="false">urn:uuid:af42d573-0e4c-4394-9ded-538b3fef8abc</guid>
      <author>Shady</author>
      <link>http://blog.shadyproject.net/articles/2008/04/15/best-rick-roll-ever</link>
      <category>Development</category>
      <category>Random thoughts</category>
      <category>rickroll</category>
      <category>programming</category>
      <category>awesome</category>
    </item>
  </channel>
</rss>
