Week XIV Review
posted on 2004-12-18 at 23:57:58 by Joel Ross
You can see how observant I am about this weekend's games - I was completely taken by surprise to see Pittsburgh and New York come on CBS today. I forgot that towards the end of the season they start playing on Saturday. Yeah, I remembered that during the playoffs they play on Saturday. But I didn't see that it started this weekend?
Are there games on Christmas? Anyway, let's see if I can even remember the games from last week. I at least know the scores of the games!
- Cincinnati 28, New England 35 (-11): New England continues to roll, keeping pace with Pittsburgh. I bet they wish it was someone other than Pittsburgh who was going neck and neck with them. Pittsburgh won't be intimidated by January weather in Boston if it comes to that.
- Cleveland 7, Buffalo 37 (-11): I thought Buffalo would win, but not be 30. Not by 11 actually. Since McGahee has been starting, Buffalo has been solid.
- New York Giants 14, Baltimore 37 (-10): Once again, I picked the winner, but I didn't think Baltimore would win by more than 10. I didn't even know they could score 37.
- Detroit 13, Green Bay 16 (-9.5): Once again, Detroit finds a way to lose. They are now 5-8 and are still in a wild card hunt. Green Bay has successfully returned to first place, after starting out 1-4.
- Seattle 27, Minnesota 23 (-7): Minnesota is collapsing late in the season once again. Will they hold on to the wild card? Right now, they have it, but if history is any indication, thier collapse will continue.
- Oakland 10, Atlanta 35 (-7.5): Even week Falcons. And it's Oakland.
- Chicago 3, Jacksonville 22 (-7.5): Jacksonville is a good team. Their offense seems to be getting better. The defense has always been solid.
- New Orleans 27, Dallas 13 (-7): Dallas seems to be very up and down this year. This time, they were down.
- Indianapolis 23 (-11), Houston 14: Give them credit. Houston stayed close. But did anyone expect Houston to beat Indy? Manning is way too good for that.
- New York Jets 6, Pittsburgh 17 (-5): My pick for the AFC wins again.
- Miami 17, Denver 20 (-11.5): Miami in Denver, a dog by 11, and they keep it close. Good for them. Maybe there's hope for the Dolfins.
- St. Louis 7, Carolina 20 (-7): Carolina was 1-7 at one point. I'm watching them play right now, and if the win, they'll be 7-7. That's impressive.
- San Francisco 31, Arizona 28 (-7): Arizona sucks. So do the 49ers. But, apparently, a little less.
- Tampa Bay 24, San Diego 31 (-5): The dream season continues.
- Philadelphia 17 (-9.5), Washington 14: My NFC pick wins too.
- Kansas City 49, Tennessee 38 (-2): In a meaningless game, Kansas City proves they can win despite losing Holmes.
Not a great week for me. Take a look for yourself.
This week:
Against the spread: 6 - 10 (37.5%)
Head to head: 12 - 4 (75%)
This season:
Against the spread: 101 - 100 (50.25%)
Head to head: 128 - 80 (61.54%)
New format for results because of some issues with my blogging tool, but I don't think it's that hard to read. I'll try to get next week's review in a little earlier.
Categories: Football
Week XV Picks
posted on 2004-12-18 at 00:01:38 by Joel Ross
Yeah, I know. It's becoming a habit. I'm posting my picks before I post results. Talk to Brian. I'm too busy until the weekend gets rolling to write up my results.
Anyway, let's get week 15 out of the way.
- Pittsburgh (-10.5) vs. New York Giants: The Giants will lose, but they'll cover. Pittsburgh doesn't have a super high powered offense, but they "get 'er done."
- Washington (-6) vs. San Francisco: The 49ers suck. They can barely out score the San Fran Giants!
- Carolina vs. Atlanta (-3): Atlanta on an add week. Not sure about this one, but Carolina hasn't done much for me this year.
- Seattle vs. New York Jets (-6.5): The Jets at home against a struggling Seattle team. Yeah, I like the Jets.
- Dallas vs. Philadelphia (-12): Philly wins, but Dallas keeps it close.
- Minnesota (-3) vs. Detroit: Nothing like a Lions game to get a team back on track. Look for Minnesota to slaughter Detroit.
- San Diego (-10) vs. Cleveland: The Chargers will continue their Cinderella season.
- Buffalo (-1.5) vs. Cincinnati: Buffalo, since putting in McGahee, has been unbelievable. And people wondered if drafting him was a wise choice. A year and a half later, the answer seems pretty obvious.
- Jacksonville vs. Green Bay (-3.5): Green Bay is back on track. They now lead the division. That, after going 1-4 to start the season. Not bad.
- Houston vs. Chicago (-1): Houston has to play in the Windy City. That'll be tough, but Chicago only gets up for games against the NFC North.
- New Orleans vs. Tampa Bay (-8): Let's try this again. I picked New Orleans when they played in week 5, and I'll do it again. But the Bucs will win!
- St. Louis (-3) vs. Arizona: Three points is not enough. The Rams should kill Arizona.
- Denver (-1.5) vs. Kansas City: Denver will win this one. KC, with no running game, doesn't stand a chance.
- Tennessee vs. Oakland (-2.5): Oakland a favorite? Nope. Not in my book.
- Baltimore vs. Indianapolis (-7.5): High powered offense versus a stifling defense. Will Manning break the record? I hope so, but that's because in my fantasy league, if I win this weekend, I have to play a team with Manning on it next weekend. Maybe he'll break the record and sit out a couple of weeks!
- New England (-10) vs. Miami: At one time, I'm sure this looked like a good Monday night game. Not now.
So there you have it. All done. I'll get results up tomorrow night probably.
Categories: Football
Congrats. Mike!
posted on 2004-12-17 at 23:21:21 by Joel Ross
Mike Swanson has taken a job in Redmond. I've had the pleasure to work with him on one occasion. He was brought in on a Commerce Server project that had to be built in three weeks. I didn't know who he was, but they said he was an expert, and while he was expensive, if we needed him, we'd get him. We got him, and it was well worth it.
I've also had the opportunity to run ideas past him about different architectures, and he has always been more than helpful - always willing to discuss his thoughts about the different methodologies we were thinking about, and contributing his own thoughts on the matter. I'll miss that. I learned quite a bit from him.
He's going to be a technical evangelist for the Avalon team. They're lucky to have him. He's very smart and very persuasive, and has a passion for what he does. Heck, in one conversation, he completely sold me on TiVo!
So if you're reading this, and work in the Redmond area, and get a chance to meet Mike, do it. He's a great guy, and we'll miss him back east!
Categories: General
The Fallacy of the Data Layer
posted on 2004-12-17 at 23:02:13 by Joel Ross
There's an interesting, if not controversial, article over on TheServerSide.NET about how the data access layer should be treated. Rocky Lhotka says it should be treated like an external interface because in most applications, you never have complete control over the database.
I guess that depends on the application. If you are building a stand alone application (such as the Tourney Pool Manager), then you can almost count on it being a part of the application. On the other hand, if you are working against an existing database to add a new way to access the data, then I can see his argument.
I'm not sure I would go as far as calling it an external interface, but I do agree that if you are working with a shared data store (remember, not everyone uses a database to store data), you need to keep that in mind when you build your data layer. Not all data can be assumed to be in the format you expect it, and you have to be prepared to handle that situation.
We recently ran into that situation when we started talking about caching. Because the data store was shared and we cached data tables, we needed a way to ensure that if the table was updated outside of our application, the application could be notified so the cache could be dumped.
We had to treat the data store as an "external interface" because we couldn't guarantee that our data would be in the same state we left it in. I put external interface in quotes because it's not truly an external interface. We just need to be careful when we read data from it. We need to verify it is what we expected, and handle the case when it isn't.
And that's what the article really is saying. Treat the database the same as you treat user input - with caution! Don't trust what it is telling you. Verify and validate it.
And before you say, "My data store is for me only!" remember this: Just because your application created the data store and expects to be the sole accessor of that data, doesn't mean that's the case. For example, the Tourney Pool Manager can use a SQL Server database and it expects it will be the only one accessing the database, but that doesn't mean that's the case. Anyone can get access to a SQL database. We had a client request a full data export, so we wrote another application that worked with the database. Now, all of a sudden, there are two applications using the same data store, and at least one expects to be the sole user.
Categories: Development
Joel On Software's Newest Article
posted on 2004-12-16 at 23:24:01 by Joel Ross
I've read a few of Joel Spolsky's (who has great name, by the way!) articles and enjoy them. Not only are they informative, but they are entertaining.
His latest is no different. It's about setting prices. You get to read about 20 pages of talk about setting prices. He starts out by laying out a good strategy. Then he picks that apart. Then he comes up with a new way. Then he picks that apart.
And then he finished by ensuring other bug tracking software companies can't compete with him!
Categories: General
posted on 2004-12-15 at 23:39:02 by Joel Ross
Eric Sink, of Sourcegear fame, has a pretty nice article on MSDN about finding product ideas for a very small company (referred to as a Micro-ISV). A lot of the issues he covers are the same issues that we looked at before we started Tourney Logic.
The one difference was finding the original idea. Tourney Logic was founded out of a need. A client wanted to run an NCAA basketball pool, and Brian and I were involved in the deal. We brought Brian's existing software into the mix for a short term solution, and started building the real solution shortly afterwards.
So we had an idea before we had the thoughts of a company. Once the idea was there though, we went through the questioning process Eric lists out.
He also mentions add-on products. While ours is not an add-on product per se, it kind of is. Without the Final Four, we wouldn't have a market. Luckily for us, it doesn't look like that will be going away any time soon!
Categories: Develomatic
Blockbuster To Stop Charging Late Fees
posted on 2004-12-15 at 23:30:23 by Joel Ross
Probably from pressure over Netflix and their own online service, Blockbuster has decided to stop charging late fees. Instead, you will be given a one week grace period, after which you will automatically buy the movie or video game.
To me, this indicates a shift in the rental market. Blockbuster knows that stores will become obsolete in the future, as content moves to a digital format. In reality, Netflix knows they aren't far behind - which is why they are trying to team with TiVo to deliver movies to your PVR. The days of physical media are limited.
The Blockbuster by us changed their late fees recently around here to be on a daily basis, so a new release was 1.79 per day it was late, and a seven day rental was 80 or 90 cents per day it was late, so we already saw a change in the late fees. Now, I don't have to worry about rushing over there if we forget. That will be nice, but I can see this getting a lot of abuse - now I could rent an XBox game for five days, and keep it for 12. I think we'll see less popular movies and games in the store as a result of this.
But that could be good too. That may be require them to buy more copies of movies and games, which means when they get older, I'll be able to get better deals buying the pre-viewed movies and pre-played games!
Categories: General
Microsoft Member Management Component Prototype
posted on 2004-12-15 at 00:18:19 by Joel Ross
Microsoft seems to actively be pushing features built into .NET 2.0 back into .NET 1.1. Rob Howard did it with his database cache invalidation solution. And now they are doing it with the Member Management Component Prototype (MMCP).
Scott Mitchell has a better review than I can give. I haven't used it yet, but can think of a good use for it!
Categories: ASP.NET
MSN Desktop Search, One More Time
posted on 2004-12-14 at 23:07:45 by Joel Ross
I promise. This'll be my last post about it. I got it to install and index everything. First of all, I'll say this. I'll be uninstalling Google Desktop Search shortly.
Why? Because MSN's search offers better functionality. The shortcuts are very cool. I do have to admit that my first shortcut is to run a search on Google. Not only can you shortcut web addresses, but you can also run executables with shortcuts too (and without them). Right now, I use WinKey for most of my shortcuts, but that could be replaced by the MSN deskbar. What else is better? When you search locally, you can open files in the program you would normally use for that file type. Google doesn't do that. MSN indexes my code out of the box. Google took a hack to do that. MSN indexes OneNote. Finding OneNote info quickly has been a reason I haven't been using it as much as I would - you can't. Now, it's indexed. Easy to find. I'll start using it more now. The search as you type is cool. So is the filtering.
Overall, this is much better than I expected. Indexing seems a little slow, but the searches are fast.
Anyway, no one really cares what I think, right? Here's some of the best posts I've seen from the web today.
- James Avery says it's just a google copy. He also mentioned that it doesn't work with his browser. Me neither. I use Maxthon, but the Deskbar more than makes up for that.
- Sean Alexander says he's impressed, and provides a nice feature request - auto rating a la Windows Media Player!
- Cameron Reilly says it's his best friend, and over delivers. Anytime you can release a product that over delivers, you've done a great job!
- Scott Hanselman points out some more technical information, such as the use of IFilters to index file types, and the new performance monitors.
- Dare Obasanjo, who's on the MSN Spaces team, points out it's a replacement for Lookout. He also complained about the Windows 2003 support.
- Jeremy Wright says it crashed several times, and he uninstalled it.
- Brandon Paddock provided quite a bit of stuff today. First, some tips (including the Windows 2003 fix). Next, he has two posts about feature requests, including a nicelylaid out request for context-sensitive filters.
- Jeff Sandquist agrees with me, and says the deskbar is the hidden gem.
- Neowin raises the issue everyone knew would come up eventually: Viruses.
- Seattlepi.com does a comparison of MSN Search to Apple's new search.
- Marc Orchant says he uninstalled it, and gives a couple of reasons.
- Things that make you go hmm does a review, and points out the Highlight Viewer.
- Rob Mensching (of WiX fame) points out that the installer was made using WiX. Then he points out that the installer isn't up to par.
- Jonathan Hardwick gives tips for getting it indexed faster.
- Brendan Tompkins says it's just another case of Microsoft copying someone else.
- Sriram Krishnan has a very solid all around review of it, pointout out his surprise that it's more hackable than google's search.
I know there are more posts out there, but these were the best and most diverse ones I found.
One note on the Windows 2003 fix - there's word that if you don't have Outlook open, the indexing doesn't index. I wouldn't know. My computer never runs without Outlook open.
Categories: Software
MSN Desktop Search Update
posted on 2004-12-14 at 08:34:08 by Joel Ross
Overnight, my two posts about MSN Desktop Search were picked up by Scoble (here and here), and that's always a good thing. Not only did I get a lot of extra traffic (already - it's only been seven hours, all overnight!), but I got a solution out of it. The indexing is running right now.
To get it installed you have to do two things from the command line. First, extract the files using this command:
MSNToolbarSuiteSetup_en-us.exe /c /t:<path>
where path is a path to extract the setup files to. Then go into that folder, and run this command:
msiexec /i <path>MsnToolbarSuite.msi TBSDEVCODE=1
where path is the path used above. Once I did that, it worked fine, and now the indexing is running.
Normally, such a complicated install method would be unacceptable. Could my grandma do this? No. On the other hand, my grandma wouldn't be using Windows Server 2003, so it's no big deal that you have to do this to install it.
Categories: Software