Trying Out Newsgator

posted on 2004-10-18 at 23:10:32 by Joel Ross

I've decided to try out a few other blogging tools. Not because there's anything wrong with RSS Bandit - yeah, sometimes I have to shut it down and restart it, because it stops downloading feeds (usually after I suspend the laptop a few times). But to me, that's a minor inconvenience.

So why switch? Mainly because I do everything in Outlook - contacts, email, calendar. And with Outlook, searching is much easier. Now I can save the posts I want, and be able to easily search them later. RSS Bandit didn't give me the same functionality (at least not in conjunction with searching email at the same time). And with Google Desktop, now the blogs I read will be indexed by Google for me!

So we'll see how it goes. The side benefit is that if this works, I can post from Outlook too!

Categories: Blogging


NHL Lockout: My view

posted on 2004-10-18 at 00:09:26 by Joel Ross

The NHL season was supposed to start this past week, but of course, it didn't. The players and owners are still grid locked, and there's no resolution in sight.

So what's the solution? I have no idea, but I have seen a few suggestions that I think would help get the owners and players closer to a solution than they are now. Which is no where.

First, and this is the easiest one for the players to agree to, and that's a reduction in the salary structure of rookie contracts. This is simple, because current rookies would probably be grandfathered in, as would any player currently in the first three years in the league. It would really only affect rookies next season, and none of those players are in the NHLPA right now. Today, rookies can make up to $1,300,000 per year, with 50% of that coming in bonuses. Reducing that would start players at a lower salary. The way things are set up right now, players gradually increase until they are 31. By starting at a lower salary, the gradual increase wouldn't have the same affect. If you lowered the number to $800,000, with a 25% bonus cap, the salary would go from $1.95 million per year to $1.2 million. Over three years, that's a pretty good savings.

Now, this was proposed by TSN here. They also recommend a slotted approach, similar to the way the NBA works. I'm not sure I buy that part of it, mainly because the NHL is more like baseball than the NBA or the NFL, when it comes to the draft. Players will get drafted in 2004, but may not play in the NHL until 2005. Maybe a slotted approach for the first 10 picks or so, but beyond that, it would be tough to justify.

I've seen many sources mention lowering the age of unrestricted free agency to anywhere from 28-30. Right now, it's 31. By lowering the age, one of two things could happen: First, since more players will be available, the market will be flooded, driving salaries down. The flip side of that is what happens today. When a big name player hits the free agent market, they usually get a large offer - probably larger than they deserve (see Marty Lapointe, for example. Or anyone on the Rangers roster!). Will the flood of players offset the outrageous offers? I don't think so. Not by itself.

In conjunction with lowering the age for UFAs, I've seen people wanting changes to the way players are qualified. Under the expired CBA, any player making less than the league average (current about $1.8 million) has to be offered a 10% raise, regardless of performance. And if the player doesn't like that, they can go to arbitration. Only players have the arbitration option right now, and they usually come out on top. Why? Because of the above reasons. Someone signs an outrageous contract, and other players use that as ammo in arbitration. Or use it in a threat of arbitration.

So how do you fix that situation? I'm not sure, but telling an owner that if they want to keep a player, they have to give them a raise, even if they aren't performing, doesn't really seem fair. And before someone says, "Just let them go then," remember that teams put a lot of time into their drafted players in scouting, development, etc. And some players are late bloomers, so they may be counting on that. I think a qualifying offer of 90% of their current salary is sufficient. If that's unreasonable, then another team will make an offer for them, or the player can go to arbitration.

So let's talk about that. I think both teams and players should be able to elect for arbitration. Each should go into it with an idea of what they want, and the arbitrator picks one side, based on evidence presented in the hearing. And it's binding. Why? Because I think players and owners will come into arbitration with fair contracts, and the arbitrator will pick fairly? No. Not at all. Because the fear for both sides of being bound to a contract they didn't agree to will force them to settle their differences outside of arbitration.

Now, the above issues really are just kind of icing on the cake. The real issue is the salary cap. Or the lack of a salary cap. So where do I stand? A soft cap. Somewhere around $45 million. You can go above it, but you pay a tax. From $45 million to $50 million, you pay 50 cents per dollar you are over, and if you are above $50 million, you pay a dollar for dollar penalty. The extra money would be pooled, along with league TV revenue (the little bit there is) and distributed among teams based on salaries. The higher the salary, the lower your cut. I haven't worked out percentages, but I would guess each team gets between 2.5% (high salary teams) to 3.5% (low salary teams). Maybe even a provision for teams over $50 million not getting their cut - it get's evenly distributed to teams under $50 million.

Now, there's a couple of other items that most aren’t talking about: contraction and shortening of the season. Personally, I think contraction would be a good thing. The product is watered down right now. Teams are forced to play a clutch and grab game because they can't hang with other teams on skill. And look at the regular season attendance of the southern teams: stadiums are empty every night. Compare that to the Wings, Rangers, and the Canadian teams: sell outs, just about every night.

As for shortening the season, I agree. I've seen 70 games mentioned. That's a good number. 50 would be awesome - each game means a lot, but revenue wouldn't flow from that. Of course, player salaries would be lower because of it too.

Well, it's getting late, and I'm out of comments about the CBA. I'm not behind closed doors, but I am pretty sure there's not much progress. Why? Too much talk to the media. Bettman is talking. Goodenow is talking. When they shut up, real progress will be made - when the other side doesn't feel undermined in the media, negotiations can proceed. So if there's a period of a couple of weeks where there's no real news, it may be time.

And if it's around January (when the lack of a paycheck starts to sink in for both owners and players), know it's imminent. At least I think that's when it will be fixed.

And if it's fixed, rejoice. The next four months of the shortened season will be the best season in 10 years!

Categories: Hockey


NFL Picks: Data Layer Design

posted on 2004-10-16 at 13:41:29 by Joel Ross

I'm starting at the bottom, and working my way up, and the database is done (at least for now). So, the next obvious choice is the data layer.

I'm going with OJB.NET as my O/R mapping tool. Why? Mainly because it was the only one I was somewhat familiar with. It was recommended to me by Mike Swanson. That's what he's using right now. Or at least was. I'm not sure if he still is. Either way, that's what I'm using right now.

I want to do this right, and am running into my first set of questions.

I guess I should back up. My thought is to have levels of inheritance. The farthest layer down would a purely data layer. Not data access, but data. The fields and properties on the object.

The next layer up would add data access to the data members. This would have the necessary information for CRUD, i.e. It would know how to access the database.

Ideally, the bottom two layers would be internal, while the top layer would be external, and expose only the public facing methods and properties.

The top level business layer would contain a method to save and delete the object, and have static factory methods for retrieving objects, getting a collection of objects, or anything that isn't reliant on an instance of the class.

So there's the ideal world. Now, let's get back to the real world. With OJB.NET, you need to have attributes on the properties for data retrieval and saving. So that starts to blur the line between the data entity and the data access layer. I think I'm ok with that, since I don't have to worry about the data layer, per se.

So, first question: How do you make a generic data layer that is "swappable"? My first thought is use an interface rather than an actual data entity layer. The interface would define how the object would look, but the implementation would still be wrapped up in the data access layer. Of course, that leads to another question: Do I need a swappable data layer at all? For this, probably not, but the idea is to learn how to do things right, not right now. I probably won't implement the ability have different types of databases, but I may want to experiment with other O/R mapping tools once I get done.

Now, the second question: If I split out the data layer implementation from the business layer implementation into separate assemblies, which I would want to do, how do you make it inaccessible from consumers of the business layer? I'm not sure that's a huge concern, but it doesn't allow me to hide the data access layer.

So that's where I'm at. I'm leaning right now towards an interface approach. The interface would define the Data entity. It would define what the properties on the object are, and possibly what the data access methods should like. That would be implemented by the data access class.

The business layer would inherit from the data layer, and add the static methods needed for retrieving instances.

And then on top of the above, I have been reading Code Complete, Second Edition, and, while I haven't gotten through too much of it, I have gotten to the section about inheritance. One thing it states is that you shouldn't have a base class unless more than one object is going to inherit from it. In my model, I would have an interface to define the data entities. That's fine, since the idea is that I can use the same data model with other O/R mappers. But the business layer by inheritance breaks that rule. Would containment be a better way? Or maybe better yet, an interface that is the data entity properties and the data layer methods, which is what the business layer would contain, rather than an actual object. That way, any data layer that implements that interface could be the actual object contained by the business layer. That object could be returned by a factory that can determine what data implementation to use.

Or maybe I'm way off base here. This is where I'm weak as a developer. I can code, but it's the design decisions that I struggle with. Usually, by talking through the issues, I can find the best way to do it - but is it the best? I'm not really sure, because just because I think it's the best way, doesn't mean it is. Most programming books are more about how to do something than why to do something. Code Complete seems to be completely about the why, but I just haven’t had the time to get through it.

I guess I should go check it out, huh?

Anyway, I still have some refactoring to do, but here's my User object. This (so far) is the only object I have working through OJB.NET.

     1: using System;
     2: using System.Collections;
     3: using Ojb.Net.Facade.Query;
     4: using Ojb.Net.Facade.Persist;
     6: namespace Ross.NFLPicks.Data
     7: {
     8:     /// <summary>
     9:     /// A User who makes picks.
    10:     /// </summary>
    11:     public class User : Ojb.Net.Facade.Po.EditableObject
    12:     {
    13:         private string _name = string.Empty;
    15:         /// <summary>
    16:         /// Default constructor
    17:         /// </summary>
    18:         public User() { }
    20:         /// <summary>
    21:         /// A full constructor for a user
    22:         /// </summary>
    23:         /// <param name="id">The primary key for a user</param>
    24:         /// <param name="name">The name of the user</param>
    25:         public User(string id, string name) : base(id) {
    26:             this.Name = name;
    27:         }
    29:         /// <summary>
    30:         /// The primary key of a user
    31:         /// </summary>
    32:         public string Id {
    33:             get { return (string) base.PrimaryKey[0]; }
    34:         }
    36:         /// <summary>
    37:         /// The name of the user
    38:         /// </summary>
    39:         [Mutator]
    40:         public string Name {
    41:             get { return _name; }
    42:             set { _name = value; }
    43:         }
    45:         /// <summary>
    46:         /// 
    47:         /// </summary>
    48:         /// <param name="userId"></param>
    49:         /// <returns></returns>
    50:         public static User GetUserById(string userId){
    51:             ArrayList primaryKeys = new ArrayList();
    53:             primaryKeys.Add(userId);
    55:             return (User) QueryFacade.FindObject(typeof(User), primaryKeys);
    56:         }
    58:         public static User GetUserByName(string name){
    59:             Criteria criteria = new Criteria();
    61:             criteria.AddEqualTo("_name", name);
    63:             return (User) QueryFacade.FindObject(typeof(User), criteria);
    64:         }
    65:     }
    66: }

And here's the xml mapping file so far:

    1: <DescriptorRepository TransactionIsolationLevel="ReadCommitted" ConnectionString="server=;uid=sa;pwd=sa;database=NFLPicks"
DefaultAssembly="Ross.NFLPicks.Data" xmlns:xsi="" >
    2:     <ClassDescriptor TypeName="Ross.NFLPicks.Data.User" TableName="Users">
    3:         <PrimaryKeyDescriptor>
    4:             <FieldDescriptor Id="User_UserId" FieldName="_primaryKey" ColumnName="UserId" DbType="String" /> 
    5:         </PrimaryKeyDescriptor>
    6:         <FieldDescriptor Id="User_UserName" FieldName="_name" ColumnName="UserName" DbType="String" /> 
    7:     </ClassDescriptor>
    8: </DescriptorRepository>

To me, that was a big step - I can now load users by name or id. I'll post more as I get the other classes loading - especially as I get to the classes with collections or references to other classes.

Categories: Football


C# Edit And Continue

posted on 2004-10-15 at 16:20:41 by Joel Ross

The feedback apparently was pretty strong, and Microsoft listened. So the next Community drop will have Edit and Continue in C#.

Personally, I think this will be good. I liked the feature in VB 6.0, and missed it when I first made the jump to .NET. In that time, I made the jump to C#, and even with VB.NET 2005 having E & C, it still wasn't going to be enough for me to switch back. So this is basically icing on the cake for me.

There is one thing I haven't heard mentioned. Does this include web apps? From what I remember, E & C, even in VB.NET won't be included for web applications. That would be the best, but I'm guessing that won't be in there.

I haven't had the time to play around with VS 2005, so I can't speak from experience, and I'm not going to install it just to find out, but assuming that web apps aren't included, how does that work? If I have a class library that I'm developing and a web app that I'm developing, can I use E & C on the class library? Or because it's being used through a web app, that throws it out the window?

Some day maybe I'll have the time to test it out myself - maybe the next community drop (due next week) will get me off my butt.

Categories: Development


Google Desktop

posted on 2004-10-14 at 23:52:39 by Joel Ross

For those who live under a rock, Google released Google Desktop, a tool that will search your local hard drive through the google interface.

I installed it, and it seems to work pretty good. I did find it odd that the main focus is to index Microsoft stuff - a marketing ploy? But does that bother me? No, not really. Most of what I do is in a Microsoft program, other than the RSS feeds, and a switch to NewsGator could solve that problem too!

With the indexing of email, this has a chance to rival Lookout, which I also have installed. That's a great tool too.

Back to the blogs through Outlook thing. Could this be a way to have a personalized blog search tool? Save the posts from the blogs you are subscribe to, and let Google Desktop search those, and you'll have search results from sites you want and are familiar with. It'll be interesting to see where this goes, and what Microsoft's response will be.

Best line about Google Desktop: Tell Microsoft it's OK that WinFS was cut from Longhorn. I couldn't help but chuckle.

Categories: General


Copy Code As HTML

posted on 2004-10-14 at 23:37:18 by Joel Ross

I've been looking for a nice, easy, and clean way to copy code and paste it into my blog. That's why I don't post much code! Yeah, that's it. It's not because I'm lazy. No. Never.

Anyway, it's available here, and below is my first attempt to try it out. This is my Team class for the NFLPicks project.

     1: using System;
     3: namespace Ross.NFLPicks.Data
     4: {
     5:     /// <summary>
     6:     /// Summary description for Teams.
     7:     /// </summary>
     8:     public class Team
     9:     {
    10:         private int _id = -1;
    11:         private string _name = string.Empty;
    13:         public Team()
    14:         {
    15:         }
    17:         public Team(int id){
    18:             this.Id = id;
    19:         }
    21:         public Team(int id, string name){
    22:             this.Id = id;
    23:             this.Name = name;
    24:         }
    26:         public int Id {
    27:             get { return _id; }
    28:             set { _id = value; }
    29:         }
    31:         public string Name {
    32:             get { return _name; }
    33:             set { _name = value; }
    34:         }
    35:     }
    36: }

UPDATE: If you use b2evolution, paste the style into your custom stylesheet ahead of time, and then don't include the style in the copy. b2evo forbids style tags.

Categories: Blogging


Week 6 Picks

posted on 2004-10-14 at 00:11:34 by Joel Ross

It's late, and I'm getting tired, so I'll make it quick.

  • Miami vs. Buffalo (-6.5): Week 6, and we already have a meaningless match up. The good news is that one team will not be winless after this one is over. Who will that be? Buffalo, but Miami covers.
  • San Francisco vs. New York Jets (-10): That 10 point spread thing again. The Jets win, but not by more than 10.
  • Seattle vs. New England (-4): I'm torn on this one. I think Seattle has what it takes to win this one, and had they kept it together last week, this would be a match of the unbeatens. Now that Seattle has blown up, I think New England will find a way to exploit that.
  • Carolina vs. Philadelphia (-9): I know Carolina only has one win, but I don't think their defense is that bad. I think they'll lose, but not by more than 9.
  • Cincinnati vs. Cleveland (-3): Another ho hum game for me. No opinion on this one. Just a pure guess!
  • Green Bay vs. Detroit (-2): My homerism is coming out. I don't even know if Roy Williams can go, but the Lions defense looks pretty solid, and with Dre Bly coming back, they'll only get better.
  • Washington (-1.5) vs. Chicago: The Redskins are desperate. The Bears are a good team to get your confidence back against.
  • Houston vs. Tennessee (-7): Tennessee showed me Monday that they are still a force to be reckoned with. Houston is up and down, but they aren't at the level that Tennessee is at. This is a match up of the past versus present, as Tennessee used to be Houston. It's always struck me as odd when a team moves away from a city, and the next chance at expansion puts a team back in the same place a team was before. To me, it's a recipe for disaster. It was pretty obvious (since most moves are financially based) that the area couldn't support the team. Why will they support a new team, that isn't going to be very good for a while. The newness of the will wear off. Of course, it is the NFL, and if any professional sport can make it happen, it's the NFL.
  • San Diego vs. Atlanta (-6): Maybe I'm just dumb, but I think San Diego will win this one outright. Drew Brees is playing very well, and until the Falcons players realize that just having Vick isn't enough, and they actually have to play, Atlanta will struggle.
  • Kansas City (-2) vs. Jacksonville: One win and Kansas City is back? The KC defense can make Leftwich look like Montana. And Jacksonville has a stifling defense.
  • Pittsburgh vs. Dallas (-3): Like I said last week, I'm on board with the Steelers. I'll take them to win against Dallas this week. Raise your hand if you think Testeverde can make it all year long. If you have your hand up, I'm laughing at you!
  • Denver (-2) vs. Oakland: No comment here, but Denver should win this, and cover.
  • Minnesota (-3.5) vs. New Orleans: Minnesota's offense is unstoppable. Their defense is full of holse, but their offense is great. New Orleans doesn't have the offense to scare Minnesota, nor the defense to stop them.
  • Tampa Bay vs. St. Louis (-6.5): St. Louis is reinvigorated from their comeback victory over Seattle, and should continue that trend - no letdown this week. Tampa Bay shouldn't even be allowed on MNF. Of course, by saying that, Tampa Bay will probably win.

In other news, it looks like the NFL has relented on fining Plummer, and in exchange for him removing the decal, he'll tape public-service announcements that will be played in stadiums after Veterans day. Also, the Broncos will be adding the number 40 (Tillman's number) in the stadium near the scoreboard. Also, the NFL donated a quarter of a million dollars to build the first USO facility in Afganistan, and have it named after Tillman.

I think that's a good compromise. I understand the NFL's need to control what is put on the field to protect their image, but at least they were flexible in this case, given the unusual nature of the issue.

Categories: Football


Advertising In Syndication

posted on 2004-10-13 at 23:35:29 by Joel Ross

It's amazing how things work. On Sunday night, I was just wondering if there would be a huge outcry if someone (like say, Engadget, for example) started adding advertising to their RSS feed.

Then Monday, it happened. Engadget has a small advertisement at the bottom of every feed item.

I'm not sure how I feel about it. Their ad is unobtrusive, but that doesn't mean it'll stay that way. I don't necessarily mean engadget. Once advertisers get a hold of this, I'm sure we'll see services, such as adsense, that allow these types of ads to be served, where everyone can easily add them to their own feeds.

The question will be what permutations will we see? Remember the first ads on web pages? They were the same way - unobtrusive, out of the way, ads. Now, we have tools built-in to the browsers to combat the aggressive nature ads have taken on. Will that make it's way into RSS? Will I download a feed, read an item, and have what? A pop up? A feed automatically added to your aggregator? There are quite a few aggregators that use IE as the rendering engine - is it far behind that someone takes advantage of that fact?

Now, the next question. Will they be effective? I guess the "pioneers" of RSS ads will have to be the judge of that. Personally, even the "newness" of the engadget ads couldn't entice me to click on the ad. On the other hand, I know it was for Bose, so I guess it had some effectiveness.

Heh. Maybe I should start a syndication ad service, where advertisers can buy ads, and are matched up with users who are willing to add the ad to their syndication feed. Something along the lines of BlogAds, but for syndication.

Categories: Blogging


Finally, A Good Thing Comes From The Lockout

posted on 2004-10-13 at 23:10:34 by Joel Ross

It's only the middle of October, but I'm already missing hockey. I'll save my CBA comments for a later time, but for now, I'm finally seeing something good coming out of the lockout. Fox Sports Detroit will be airing classic Red Wings games, including the March 26th, 1997 game against Colorado. This is the one where Darren McCarty gave Claude "The Turtle" Lemieux his (much deserved) beat down.

They'll also be airing games 2-4 of the '98 Cup, game four from the '97 Cup, and game 7 from the '96 Conference Finals, where Yzerman scored the double OT winner. All of these games stick out in my memory. I'm going to have to get the TiVo ready!

Anyway, for those interested, the announcement and schedule is available here. is an awesome fan site for the Wings, by the way.

Categories: Hockey


Week Five NFL Review - Another Average Week

posted on 2004-10-12 at 00:35:48 by Joel Ross

Another week gone, another average week. At least I'm starting to see a trend. Maybe I'll get better. Or maybe not. Who knows. NFL parity makes this pick business tough. Anyway, here's my weekly review of the past weekend.

  • Miami 10, New England 24 (-13): Congrats to the Patriots, who extended thier winning streak to 19 games. I have a feeling the '72 Dolfins will be watching a New England game this year to determine if it's time to pop the champagne. I still think they'll get to pop it, but they'll probably be the last undefeated team this year.
  • Cleveland 23, Pittsburgh 34 (-6): Ok. I'm on board with Pittsburgh now. They are 4-1, and in first place. I guess they are legit.
  • Oakland 14, Indianapolis 35 (-9): Indy continues to roll, on a four game winning streak now. Their only loss came against New England. This offense is awesome, and almost unstoppable. The problem is their defense. It's just not going to get the job done in the long run.
  • Detroit 17, Atlanta 10 (-7): I picked Detroit, but I thought Atlanta would win. Guess I was wrong. It looks like the odd week Falcons showed up, and Detroit took advantage. I read TMQ's column weekly, and he always chides teams who blitz. One play sticks out. Detroit, down by 7, faced 4th and 1. They go for it. Atlanta sends 7 men across the line, Az-Hakim runs a slant, and with only 4 defenders left, Az-Hakim is able to follow a pack of receivers to the end zone. As TMQ would say, I wrote the words Game Over in my notebook.
  • Tampa Bay 20, New Orleans 17 (-3): Ho hum. Quite a division, the NFC South. Atlanta is in first, at 4-1, although they are sporadic. The rest of the division? Well New Orleans is 2-3, Carolina 1-3, and Tampa Bay uses this game to get their first win. I'm not seeing a Super Bowl coming to the NFC South this year.
  • New York Giants 26, Dallas 10 (-4): The Giants have quietly put together a four game winning streak for themselves. Dallas, whose formidable defense was supposed to be rock solid, couldn't handle their offense, and the Giants defense looked pretty good.
  • Minnesota 34 (-4), Houston 28: If I'm Minnesota, I'm very happy and very sad at the same time. Happy because their offense is clicking, but sad because they have the same problems they have every year. Last year, they looked unstoppable, until teams started running over their defense. Houston almost did that, but an overtime score (Culpepper's 5th TD of the game) saved the day for the Vikings.
  • Buffalo 14, New York Jets 16 (-7): The AFC East is an interesting conference. The Jets and Patriots are undefeated, and the Bills and Dolfins are winless. Other than the Eagles, they are the only teams with a 0 in either the win or loss column. I have no idea what that means, other than I think Buffalo and Miami are both about to become mathematically eliminated!
  • Jacksonville 21 (-3), San Diego 34: San Diego may no longer be the laughing stock of the NFL. Well, they were always behind Arizona in "laughingstockness" but not far behind. Now, they seem to be in a groove. Drew Brees is playing well, and they put up good numbers against the Jags.
  • Carolina 17, Denver (-5.5) 20: I thought Carolina would be better than they have been this year. On the other hand, I didn't think Denver would be as good as they seem to be. I'm still amazed how Denver can plug in a new running back and he'll get 100+ yards. They have a good system there.
  • St. Louis 33, Seattle 27 (-7): Just when I thought I had this thing figured out, Seattle gives up a 17 point lead to a team I thought was on the down slope of their reign atop the NFC. No wonder everyone loves the NFL!
  • Arizona 28, San Francisco 31 (-1): I'm sure this overtime thriller was just that: thrilling. But outside of Arizona and San Francisco, did anyone really care?
  • Baltimore 17 (-1), Washington 10: Down by 10, the Ravens do two things: Score 17 points, and hold Washington to no points in the second half. Ouch. I guess that defense is still pretty good. And Washington isn't.
  • Tennessee vs. Green Bay (-3): Ouch. Apparently Lambeau Field has lost its Mojo. And Favre looked bad from what I saw. No running game for Green Bay, and a poor passing game. Add in a horrible defensive performance, and what do you get. A slaughter. I did like the exchange between Michaels and Madden about the coaches - Al taked about how Fisher had a chance to be a head coach at 33, and the GM was worried about it because of his age. Madden immediately jumped in, saying Al Davis took a shot on a 33 year old - Madden! Funny stuff.

Here's how I'm doing, after a .500 week.

 This WeekSeason
Against The Spread7 - 7 (50%)36 - 35 (50.7%)
Head to Head7 - 7 (50%)42 - 32 (56.8%)

Ok. So will Jake Plummer get fined for his tribute to Pat Tillmann? I hope not, as I think each player should be allowed to show tribute to him if they want to. On the other hand, I also know the league has uniform rules for a reason, and that breaking them for any reason undermines the rules themselves. I guess we'll see where the league falls on this one.

Jamal Lewis is going to prison - in the off season. And the NFL will suspend him for 2 games. That will definitely hurt the Baltimore offense, as Boller is not a very good quarterback. Although, there's something in the back of my mind that says Lewis is getting off easy. How many other people are able to get their prison sentence delayed because of their job? Maybe I'll try that - but your honor, I have to work. I'll serve my sentence when I'm 65!

Categories: Football


<< 1 ... 108 109 110 111 112 113 114 115 116 117 118 ... 124 >>