When I look at each of Eric Mangini's decisions this past game, I can understand each one of them individually. But when you put them all together, they paint a very inconsistent picture of the third-year coach. Let me go through the key decisions and point out in each case what Mangini must have been valuing.

Opening drive of game, 4th and 2 feet, 2.5 yard line of Seattle (0-0):Mangini decides to kick the field goal instead of going for it. He takes the (all but) guaranteed 3 points instead of taking a slight risk of no points. His decision here is conservative, valuing points on the board above a higher risk play. He also disregards the field position the Seahawks would start with. That early in the game, I completely understand just wanting to get some points.

Early in 4th quarter, after Feely nails a 45-yard field goal negated by a delay-of-game penalty (10-3 Seattle):This time Mangini decides to play for field position. He has Hodges punt and pin Seattle on their 6 yard line (way to save your job, Reggies) instead of risking giving them the ball at about midfield. Again Mangini took the conservative play, but this time he was playing for field position instead of points. (And let's not forget that Feely absolutely drilled the 45-yarder so well it would've been good from 55 yards).

Late in 4th quarter, 3rd and 2 on the Jets 21 yard line, about 2:40 left (10-3, Seattle):Most analysts will tell you Mangini's big mistake came on 4th down, but I think he screwed up on third down. We know in hindsight that Mangini was planning to go for it on 4th down (assuming the Jets didn't lose yardage). Why not run the ball? You have 3 time outs. You have the 2-minute warning. You have plenty of time. Thomas Jones averaged around 4 yards a carry. Or you could call a draw to Leon "Hot" Washington from the shotgun. Here Mangini lost sight of the game clock, really. He had tunnel vision and forgot about the run.

Late in 4th quarter, 4th and 2 on the Jets 21 yard line, 2:21 left (10-3, Seattle):Ok, so incomplete pass, now it's 4th down. Mangini decides to go for it. Isolated from the rest of his decisions, I like this call. If you punt it, all Seattle has to do is get one first down and the game is basically over. And how hard is it to get 2 yards anyway (see previous play)?

But this decision is on the complete opposite side of the spectrum from his other decisions. He eschews field position, despite knowing that if they don't get a 1st down, the game is really over, as Seattle will kick a field goal to make it a 2-score game. Again, tunnel vision. He was in "4-down situation" and could not consider other options (the CBS crew did a good job pointing out the reasons to punt the ball there).

Of course, they don't get the first down (Favre decides to throw deep into good double coverage when all they needed was 2 yards?). Mangini is clearly showing his inexperience and lack of skill. He's not as smart as I thought he was.

I don't mind shoveling snow. I even have this kind of macho thing going; I like to shovel now becausae I can shovel. There will be a point in my life when I won't be able to. And shoveling fits into my mindset very well.

That said, I shoveled snow for seven hours this weekend. That's not a typo. SEVEN HOURS!

Joe Sheehan and Jay Jaffe both HATED that the Yankees did not offer arbitratrion to Bobby Abreu and Andy Pettitte. The gist of their argument was that arbitration meant either 1 year of a good player or draft picks, and if the Yankees wouldn't mind either of them on their team, then they turned assets into dust.

But they forgot to look at the other side of the coin. Abreu and Pettitte could be assets or they could be liabilities. The two players each made $16 million each last year. In arbitration they could easily earn $18 million each. Let's look at the opportunity cost of each.

Abreu's offensive has been steadily declining since his then-record-setting performance at the 2005 Home Run Derby, but he's still pretty good at the plate. His defense, however, is terrible. I'll leave the sabrmetric analysis for others, but with Damon, Melky/Gardner (or now Cameron), and Nady as full-time outfielders and Swisher and Matsui as backups, the Yankees hardly need a declining expensive OF taking playing time away from better younger players.

The case with Andy is even simpler. The Yankees knew that Pettitte only wanted to play for the Yankees. That leaves him with no leverage. Cashman wanted to give Andy a paycut, so offering arbitration would just be throwing money at him.

And the final argument is that Cashman knew what we didn't; that the Yankees were going to put the full-court press on CC Sabathia and A.J. Burnett both. Knowing that, tying up $36 million in two players who are not the solution to the Yankees' problems would be dumb*. Fiscal responsibility, folks. It's a good thing.

* Now, none of us knew that, and of course Sheehan and Jaffe didn't know it when they wrote their posts. I disagreed with them well before Cashman signed CC and A.J., but I'm a slow blogger.

So the Jets finally won a game against a team they should've beat. Thank goodness, it's about time.

The Jets looked like two different teams this game. During the 1st and 4th quarters, they looked like the team that dominated the Titans and went toe-to-toe with the Patriots. In the 2nd and 3rd quarters, however, they looked like the 4-12 Jets of last year.

Quick thoughts:

They have GOT to find a way to get Leon "Hot" Washington the ball more (1 rush, 1 reception, 6 kickoff returns). His 47-yard TD run in the 2nd quarter just proved how explosive he can be.

Mad props to Steven Johnson of the Bills. After his TD catch in the 2nd quarter, he pulled his celebration right out of "The Replacements" from Clifford Franklin (ball-glued-to-hands spike).

Favre's first interception wasn't his fault (two crazy bounces), but the second one was. What was he thinking? I know Favre has thrown his fair share of deep bombs, but he does not have the arm for it anymore. He underthrew the receiver (Cotchery? Clowney?) by 10 yards.

David Clowney made an impression in his first NFL game. He made a great catch by tipping the ball to himself twice. I hope he gets more chances to prove himself.

The Jets had more luck in this game than they deserved. The Bills choice to throw when all they had to do was run out the clock, and then the lucky bounce into Shaun Ellis' hands... hopefully they had karma to spare.

Miami won and New England is already up 21-0 against Oakland, so the Jets still need to win out.

Saturday, December 13, 2008

"There was an absence of despair, which is good. There was no sense of desperation, which is not."

There was no despair. That's good. There was no despair. That's bad.

"When he speaks to the media, the coach talks in circles about commitment and consistency. If his players require a more direct translation of this dire situation, then here it is: Things could get very ugly around here in a hurry."

Now, I'm not an NFL head coach, but if I were, I wouldn't give the same speech to the media and to the players. Anything the coach tells the media will be read by every other team in the league! Let's just give up all our secrets, shall we?

"Laveranues Coles, whose recent quotes about Favre demonstrate a very fragile truce, becomes even edgier and outspoken as locker-room dissenters are empowered by failure."

My favorite part about this line is that in the very same issue of the Daily News, Ohm Youngmisuk debunks the theory that Favre and Coles do not get along.

"Millions of dollars in salaries are jettisoned in the offseason, while Woody Johnson re-thinks the club's decision to build a contender quickly by splurging in the free agent market."

I think it's hard to dispute that Alan Faneca, Kris Jenkins, Damien Woody, and Calvin Pace have had an immensely positive effect on the team. Faneca and Woody have cemented the O-line (and made D'Brickashaw Fergason and Nick Mangold far better), while Pace and Jenkins have given the Jets one of the best run defences in the league.

Sunday, November 30, 2008

The best part of being at my parents' place in NJ is that they get every movie channel known to man. I've watched Spiderman, Spiderman 2, Jerry McGuire, Back to the Future Part 2, 6th Day, and a whole bunch of others that I can't remember. Of course, I also stayed up until like 3 every morning to watch them. Sweet.

Thursday, November 27, 2008

Wednesday, November 19, 2008

Multiplayer: I've only played about 4-6 hours of multiplayer, and it's been all Horde mode (you plus 4 of your closest friends vs. waves of bad guys). This game mode is more fun than I expected. Plus it's the only way I get to play as Baird. Booya.

Single player: Goddamnit this game is so huge! And I mean that. I've read the word "scope" used to describe GoW2, and they couldn't be more right. The most famous example is the developer making up for the Brumak scene from GoW1 (cut because of time pressure) by having you fight like five brumaks within the first 15 minutes of GoW2. That's big. Then you fight like three corpsers at once, two seeders, a ginormous worm, and a mega-fish (not all in that order). Not to mention new regular enemies and everything.

The basic gameplay hasn't changed too much; you still hide behind cover and shoot at bad guys. Two main things have changed: the enemy AI, and the scope (again). I've been flanked by grubs so many times it's getting me to think the XBox is sensient. And the battlefields are just much bigger (and much smaller sometimes) so you really get caught up in them.

I've said before that the #1 thing I look for in single-player games is immersion: how immersed can I get in the game. Whether it's emotional investment in the characters or just locked-in gameplay, if I forget about the outside world and are thinking solely as the protagonist, that's the win I'm looking for. GoW2 gives it all. They totally sideswiped me with an emotional scene; it came out of nowhere and I totally cried. But the thing is The dialog for that scene isn't even that great. I was just so invested that it hit me harder.

I have yet to finish the game so the ending may disappoint, but I'm already in love. I'll probably play though it like 4-5 times before it's all said and done.

Update 11/26/08: I've played a bit more multiplayer, all horde mode, with some new friends and random people (the matching system for horde is pretty solid). It's still fun, but I can imagine it getting kind of boring soon.

The single player storyline just totally surprised me, and not in a good way. Things happened that totally jarred me out of suspension-of-disbelief. I really hope they tie it all back together.

I was on call this weekend for my project's release. This meant I had to stay within 30 minutes of a computer at all times and have my Blackberry on me all the time (yes, they nailed me with a BB again. Sonuvabitch!). However, this bore unexpected fruit; Annie had plans both Friday and Saturday night. I could not make plans that required me to leave the house. Solution?

Video games.

I played more games this weekend (probably close to 12 hours) than I have the past 2 months combined. It was awesome.

Mostly I played Gears of War 2, but I snuck some Fable 2 in there as well (game logs on both forthcoming). The main takeaway I had was how much I miss playing games. Even a 30-45 minute gamebreak is refreshing. I guess I'm just hard wired for gaming.

Friday, November 14, 2008

I teach Pep Band at Tufts. I don't have an office, but I do have some storage space in an old office attached to the auditorium's "green room". One day this year, I went to go get my supplies, as usual. I walked up the steps from the basement to the green room when suddenly two angry Tufts police officers and two weird looking dudes in odd-fitting suits got in my way. One cop looked angry, confused, and worried all in one, said, "You can't go this way!" Odd, I thought. "I just need to get to the green room." The cop was insistent: "You can't go this way, you'll have to wait." The two weird looking men shared a smirk.

It was at this point that I realized that this was not a normal situation. The cops were worried, but not about me.

"OK, well, I'm a music professor, I need to get my music supplies from the office in the green room," I said.

The two cops looked nervously at each other, then the speaker looked at the two weird men. They made no motion whatsover. Apparently, that was the go ahead.

"OK, you have a key?" I did. I walked in the green room to see a table of bottled water, ice, and snacks. The green room never had anything but a dirty sofa in it, but now it was totally decked out. Thoroughly creeped out, I grabbed my stuff (forgetting half of it) and left quickly.

When I got to the classroom, I mentioned this encounter to one of the students who had arrived early. He said, "Oh, the Queen of Jordan must be speaking in the auditorium." Wait, what?

Thursday, November 6, 2008

A lot of Yankee fans don't really get the way free agency and compensation picks work. Fair enough, it's somewhat complicated. That said, they also ignore the ramifications of these picks. Whoa dog, hold on a sec. MLBTradeRumors.com reports that Phil Hughes and Joba Chamberlain were both picked by the Yankees with compensation picks. How about them apples?

1) Yankees do not sign Teixeria.2) Yankees sign Giambi to a $5M/1Y or $8M/2Y deal.3) Giambi holds down 1B until Posada moves there or someone else takes over (because we all know Posada's going to need some time there before his deal is up).

My reasons are this:

1) Giambi is a great teammate; this may be not appreciated but is important.2) .247/.373/.502, 128 OPS+, in 145 games.3) Yeah, he's a terrible defender. But his WARP-1 (Wins Above Replacement Player, defense adjusted) was 4.5 for 2008. For comparison's sake, Jeter had a 4.4 WARP-1 in 2008.

Tuesday, November 4, 2008

Monday, November 3, 2008

April 14th, 2008:Ed: My chest has been sore for like a week nowJoe: ouch manEd: and of course I keep thinking it's my heartJoe: have you seen a doctor?Ed: yeah, and I have an awesome heart. still doesn't stop me from thinkingJoe: You know, you might be lactose-intolerantEd: what?Joe: That happened to me.Ed: No way man, I ain't lactose intolerant.

October 30th, 2008:Joe: It's possible you're lactose intolerant then.Joe: that's what I've been dealing with.Ed: Awww fuckEd: you knowEd: you're fucking rightEd: guess what I have every morning of every dayEd: COFFEE WITH CREAM/MILKEd: I have some on my desk RIGHT FUCKING NOW

November 3rd, 2008:Ed: you smart person youEd: suggesting I might be lactose intolerantEd: then being rightEd: you doucheJoe: :)

Tuesday, October 28, 2008

Some of you know I'm a brother in the Zeta Beta Tau fraternity. Joining was one of the best decisions I ever made. I met people I never would've met otherwise, done things I never would've done, and joined a worldwide brotherhood of pretty cool dudes.

Recently, the National ZBT organization* has contracted a marketing company, Harris Connect, to create a national ZBT alumni directory. They started sending out postcards, asking brothers to call them to update their information. Naturally, I looked for a website option, but they did not have one. I thought, "Well, no big loss" and threw out the postcard.

A little later I received another postcard, same as the first, but with the text "Second Chance!" Again, no website option, but I saw that the company name was "Harris Connect". Go go gadget Internet! Turns out they are a marketing firm. Well gee, that's great, let me give those guys all my contact info so I can get spammed to death. Next!

*A little perspective here: before these postcards started coming, I already was quite distrustful of ZBT National. The executive director, Jon Yulish, came to meet the executive board of our chapter of the fraternity. I was the treasurer then, so I met with him. He had me fill out a big form ahead of time, with fields for outstanding dues to undergrads and to alumni. We had pretty big numbers for both, as many brothers struggled to pay their dues. We survived with payment plans and whatnot, but Director Yulish was not impressed.

"Do you try to collect these dues from your alumni?" he asked."Well, we send out reminders now and then, but we don't make a concerted effort to collect them," I said."Have you thought about sending the debts to a collection agency?""No! I don't want to alienate our alumni! We have a pretty active group and they donate money, time, and goods to us often."

Then he said something that was just plain wrong:

"You have to remember, Ed: this is a business first, and a brotherhood second."

I couldn't believe how cold he was, and it took all of my effort not to walk out on him right there.**

** This is my inaugural posterisk. Woo!

Now I'm getting last chance emails from Harris Connect AND getting emails from a ZBT National employee who wants to personally meet with me! This feels like I'm being stalked. I guess I'm just going to be pumped for money, but I don't see why National would get any of my money ahead of my chapter.

Well the Schwehmdawgs lost Sunday night, 20-9... it was closer than that though. We gave up 10 runs in the first inning, probably our worst-played inning of the year. I pitched poorly and several people made errors. Remove that inning and we played them tight.

And the Rays lost too, making it 3-1 Phillies. Not good.

And after the halloween party this weekend, I'm just fried. Even though I got 8 hours of sleep last night, I'm just physically exhausted. It's a good thing mentally I'm still alert, because I'm working on some research at work and it'd be bad if I was mentally tired too.

Friday, October 24, 2008

This post comes at a time when I just learned that I will be getting the T-Mobile/HTC/Google G1 Android phone (enough keywords?) after all. A nice call to T-Mobile and they upgraded my upgrade to the full upgrade. And even better yet, it will be delivered on my birthday!

So before this information becomes obsolete, I wanted to pay tribute to my lone (cellular) companion these past months, the Nokia 1208.

This is close to actual size... on my monitor anyway.

Just look at that phone for a minute. It's such a mid-90's style. And you don't even see the UI there, but believe me, this phone rivals the Jitterbug for size of on-screen font. I bought this phone when my Samsung t629 died and I refused to pay more than $30 for a phone (I got this for $29.99 plus tax, so it's a wash). I'm going to put this next line in its own paragraph to highlight its importance.

This is the best phone I have ever owned:

It's better than my first phone (Samsung SPH-A400) because it reliably sends and receives calls.

It's better than my second phone (Sanyo SCP-700) because it's about half the size.

It's better than my third phone (Sidekick II) because it's not the size of a brick. Also, it was roughly 10 times cheaper.

It's better than my fourth phone (Samsung t629) because it doesn't break when I look at it wrong.

Let's talk about that last point. The t629 was a very fragile phone. The slider got sticky pretty quickly, and I had to stop the spring from sliding it because it was too fast and would make lots of rattling noises. Too little too late, as you can see what happened.

On the flip side, I have literally used the Nokia 1208 as a drumstick; At the latest Tufts football game, the Pep Band (which I direct) needed an additional percussionist for a particular song. We needed a cowbell player for Low Rider. So I grabbed the cowbell and asked Keith for a drumstick. He didn't have one; none of the drummers had extras. So I reached into my pockets, found my phone, tested it, and then wailed away. I probably played 15 different full-length songs with cowbell and phone. (Just to be clear, this was a musical-quality cowbell, not the crap you see people dingle at sporting events... no offense Rays fans, I love you guys!) And the phone works great!

So it's indestructible. That's awesome. The other awesome feature: a flashlight.

Yes, a flashlight.

Why every phone doesn't have one, I will never know. The Nokia 1208 has a $0.05 LED on the top of it that is bright enough to see keyholes, navigate over sleeping cats, and probably flag down help on the side of a night road. I mean, come on! How obvious is that?!

I highly recommend this phone to anyone who A) doesn't need Internet and B) wants a reliable, indestructible, and cheap phone. I'll sure be keeping mine as a backup.

Tuesday, October 21, 2008

I'm probably going to register edschwehm.com in November at some point... Can't justify it now, but I want to get my home server set up first and I need time to do that. Said server is probably not going to be slackware anymore, thanks to Falcon being all .NET. Good thing Movable Type works on Windows too.

"The Jets' special teams appeared clueless on a pivotal fake punt, for one thing, which is indisputably a coaching failure." The Jets had run the punt-block call instead of punt-cover the previous two Oakland punts, so Tom Cable took advantage of that (Jets ran punt-block on the fake too)*. Sure, you could say that Mangini or Westhoff should not have dialed up that play, but it was a good call by Cable too.

"Why, exactly, did the Jets get Favre if they weren't going to let him be Favre?" Maybe so that defenses have to respect the long ball and not play 8 men in the box? So the cornerbacks and safeties don't play 5 yards off the line of scrimmage? Good passing quarterbacks open up the running game as well.

"It is impossible to overstate the importance of this defeat to Oakland..." I think I can overstate it: "This loss will cause the Jets franchise to collapse." Not overstated? How about this: "The Jets loss is going to cause humanity to end."

If you're going to use hyperbole, please make it interesting at least.

"Not a word was spoken in anger or with a sense of urgency, even as the calendar and the standings scream for something different." OK, so you want Mangini to get desperate and crazy and angry? Deviate from his game plan? Can you say "cool under pressure"? I happen to love when the coach is calm, cool, and collected in the face of adversity.

My favorite part of this column is the non-mention of the miscommunication on Favre's 2nd interception. Cotchery stopped for a 8-yard-or-so hook, Favre threw it deep under pressure. I guess Favre can do no wrong these days.

* Watch the return team linemen sometime on a punt. 80% of the time, you'll see only 1, maybe 2 guys trying hard to block the punt. The other guys are covering the punting team's linemen. That's a punt-cover.

So I realized that Walrus could possibly use F# for the rules engine for recommendations. How cool would that be? I could have a second project in F# that takes the draft object (containing the team rosters, draft order, league settings, and free agents) and spits out the recommendation list. I think that's what I'll do.

Wednesday, October 15, 2008

My softball team, the "Schwehmdawgs" (I campaigned against that name), starts the playoffs tonight. every team makes the playoffs, but we're 7-1, good for the second seed. We've really gelled together this year. Sure, the top 2 teams from last season didn't play this season. Still, we're a better team and I'm really looking forward to a deep October run.

Recently, a friend of my interviewed there and was rebuffed as well. Though he managed to not offend the CEO, he was tripped up by several weak interview traps (e.g. asking him to write code to determine if a number is a triangular number, but not telling him what a triangular number is). He didn't get the job either.

Upon hearing about adventures in interviewing at this company, I decided to take a look at their website and see how it has changed.

I can't say I'd ever use the site. Even with AdBlock enabled, the site is still cluttered with advertisements. I tried searching for Tahiti; the site was just so ADD I couldn't parse any of it. It's so Web 1.0* it hurts my eyes.

It's beating the sites where you can actually book travel (ok I get it, travel research and travel booking are not the same category of webpage)! And in case you're wondering, that's good for a 414 ranking! I mean, this is just ridiculous for a terrible website! I'm just blown away by how people can actually use that site.

* One of the questions they asked me in the interview was How would I go about adding a table to a page. I described the table syntax, and the dev manager was all "No no I meant what would you do?" I tentatively asked "Well, if it was just HTML changes, I'd do the changes on a dev page, then copy that page to production." He turned to the computer in the office and asked me to demonstrate on the Tripsadvisor.com homepage.Thinking it was a trap of some sort, I was careful to explain every step as I saved a copy of the live page, made the change, saved, then opened in IE. He nodded then explained that's how they made many changes. This was their dev process? Yuck!

Tuesday, October 14, 2008

I hear all too often voters talk about being disenchanted: "Why should I vote? I don't like either of the candidates?" "It doesn't matter who you vote for. They are all crooks and will all lie to you in the end." These viewpoints really scare me.

We live in a democracy. That means we elect the government. The government works for us. Yes, there is corruption, but it's so much better than it used to be (just think Boss Tweed). You know why it's better? Because people don't stand for it. Citizens get up and vote. They express their opinion, debate conflicting ideas, and support the candidate who most closely represents their viewpoint.

You have other more pressing issues? That's fine. If everyone were significantly involved in politics, it might get a little crazy. But take a few moments to look over the candidates' platforms and voting records, then take a little time out of your day on November 4th and vote. Seriously, it comes around once a year. You find plenty of time to play video games, right?

If you don't vote, you officially lose the right to bitch about anything the government does. You also lose the right to be patriotic, glad, or proud of anything related to the nation. You're supporting the corruption of our government. You're handing the government over to corporate lobbyists and evil men (think Dick Cheney). You are a part of the problem you claim to hate so much.

Monday, October 13, 2008

With the Yankees not making the playoffs, I decided I'd turn over a new leaf. While I can't root for the Red Sox, I decided to be happy for them if they won. Hell, I know enough Red Sox fans to make it worth it to me socially.

Yeah, that lasted all of two games in the ALDS. Come on Rays, kick the crap out of the Red Sox!

I'm a nerd. I like video games. I maintain a wishlist on Amazon that is mostly video games, movies, and books. Yet when my birthday rolled around last year, I received zero video games from my parents, Annie, or Annie's parents (I only received one other gift, from Brian and Jay, that was a Gamestop gift card. Hello, Worms 2!). I didn't expect Annie to get me a video game, but I expected at least one game from the collective parents (note: I really liked their gifts, but this post is about censoring. If you read this, parents or in-laws, please take no offense! I love you!).

Annie normally acts as a sort of gift czar for me, so for Christmas, she tried to get more video games bought for me (I love this girl). I also changed the priority of all the games on my Amazon wishlist to "highest" and everything else to "medium" or less. I made out pretty good, but my parents still didn't get me any video games. When I asked them about it (in the most diplomatic way possible, as the gifts they did get me were awesome), they said that they didn't think I should really be spending my time playing games so they didn't get me any.

It is obvious that you can't dictate what gifts people buy you (though some people try). Even if you provide a large detailed wish list, some people will go off the list to add their unique spin to their gift, and that's encouraged. But outright avoiding a type of item from someone's wants? It can be annoying!

Thursday, October 9, 2008

Sometimes you need to upgrade a position on your fantasy team. Earlier this season (July) in my roto league, I needed help in HR, RBI, and AVG in the outfield, but I had extra starting pitchers. I saw a combination of need and excess that matched my excess a needs; a team with plenty of batting but that needed a top-line starter. We entered negotiations based around Josh Beckett for Ryan Braun but couldn't get anything done (he wanted more).

I noticed another team had a hole at 2B and a surplus of SPs. We worked out BJ Upton (whom I had been trying to get rid of), John Bowker (fresh out of free agency), and Mike Cameron for Cole Hamels, Edwin Encarnacion, and Alexi Casilla. I then turned and flipped Hamels, Kevin Slowey, and Mark Reynolds for Braun and Joel Zumaya.

Wednesday, October 8, 2008

Eric and I recently had a conversation about how a candidate's personal life morals and ethics reflect their ability and skill at governing. I happen to believe that a person's morals are consistent throughout all of their dealings; a person who is immoral in one aspect of life has the capability to be just that immoral in all aspects.

John McCain had an affair while still married to his wife. He has admitted this as his greatest moral failure. I believe that moral failure is still a part of his DNA, and he is still capable of that failure. What could happen if he were president and were faced with a moral dilemma. Would he do the hard but right thing or the convenient but immoral thing? Just look at his life.

McCain is not the only person who has had an affair. No one is perfect. And having a divorce doesn't make one an immoral person. But it does say something about the man.

So McCain wants to give individuals a $2500 credit and families a $5000 credit to buy their own health insurance. I once had to buy my own health insurance at a cost of $450/month. That works out to $5400/year. The difference works out to $241.67/month. I paid $70/month for a single plan at my last job (for a single participant).

So McCain essentially wants to increase health insurance rates on unmarried people by $170/month. Now that's leadership.

That's all well and good, but if he wants to buy Joe Sixpack's ARM, he has to find out who owns it. The whole point of this mortgage crisis is that the banks no longer own the mortgages; they package up thousands of them and sell shares in the package. That's where you get the mortgage-backed securities. I bet my mortgage (30-year fixed) is in part of a security, but it would be in one of the good ones (full of fixed-rate mortgages owned by people with high credit). The bad ones are backed by ARMs owned by people with bad credit and too low an income to pay the mortgage.

So if McCain wants to fix these bad mortgages, he has to first buy them. To buy them, he has to buy the bad-mortgage backed securities. So McCain's new plan is basically the exact same thing Congress has already voted on, with the added idea that the government would renegotiate the mortgages once it bought them. That added idea is a good one, I'll give him that. But if this is his attempt to make it a race, then hello President Obama.

Tuesday, October 7, 2008

It kinda bugs me when I see campaign contributions from company employees lined up next to candidate's names. Just because Smallpants McFry (Joe Sixpack's neighbor) happens to work at Goldman Sachs doesn't mean he represents big Wall Street. And just because a candidate accepts the money doesn't mean he is going to represent the views of the voter's company. Sure there can be a correlation, but it's not proof.

Monday, October 6, 2008

Have you seen this commercial for the Lincoln MKS? It's part of their "Our car is like a spaceship" series of commercials, most of which are pretty cool (though I'm waiting to see Patrick Stewart in the driver's seat saying "Engage!"). This one, however, has "Major Tom" as the soundtrack.

They might want to rethink the association there, as the character Tom in the song ends up lost in space, presumably dead, lost in space, committing suicide, or an alien. Oops.

Friday, October 3, 2008

Filip Bondy: I swear, you really don't have a clue about how baseball franchises are run and how the baseball talent pipeline works.

Let's talk about player talent progression, shall we? The average baseball player spends several seasons in the minor leagues before being promoted to the bigs. The average age of these players tends to be mid 20's. I can't get numbers on this, but most players progressively get better until their high 20's or low 30's.

That in mind, let's look at the current state of Yankees youth who played in the Bronx this year:

Joba Chamberlain: age 23, less than 1 year in the minors

Phil Hughes: 22, 2+ years

Ian Kennedy: 23, 1 year

Robinson Cano: 25, 3 years

Melky Cabrera: 24, 2 years

Brett Gardner: 24, 3 short years

Justin Christian: 28, 3 years

David Robertson: 23, 1 year

Phil Coke: 25, 3 years

I look at that list and figure that at least half of those guys should get better over the next 3 years. Bondy, however, has decided that they're all crap:

"We aren't sure about Phil Hughes or Phil Coke."

I think you might be the only person on the planet who isn't sure about Hughes. I haven't heard a scouting report ever that thinks he won't make it. And yeah, we've only seen 14.2IP of Coke, but it was a damned good 14.2IP.

"We already see that Brett Gardner doesn't have the power to play center field on a regular basis."

I guess Bondy doesn't care that most center fielders are not power hitters, but let's forget about that. Yes, Gardner had a rough year this year. Yet he went from AAA to hitting lead off for The Most Storied Franchise in Sports. I'm willing to bet he had a little bit of a shocking transition. He also had a .296/.414/.422 line in AAA this season, and that .414 OBP sticks out. Plate discipline is a skill that translates directly from the minors to the bigs.

"Robinson Cano took a serious step backward in 2008."

I'll bet you in 2009 he beats his 2007 numbers. This kid is full of talent.

"Melky Cabrera is ordinary at best."

It's boring to say at this point, but he's 24! It's very rare for a player to peak at 22 (when he took over for Bernie Williams in CF and had a great year).

This line is what gets me. Here is the current best guess 2009 rotation: Wang, Chamberlain, Pettitte, Hughes, Kennedy/Rasner/Aceves/Giese. Aside from the #5 spot, that looks pretty awesome. The Yankees do not need CC Sabathia (but they may as well grab him if they can). Add in a AJ Burnett or a Derek Lowe and that rotation starts to look awesome.

But the best part about that line is that Bondy doesn't understand what he's saying. You don't have to trade for free agents. Cashman will be careful about signing type A free agents (meaning the Yankees would have to cough up their 1st round draft pick), and if he managed to net any picks with teams signing his type A free agents (Marte comes to mind), then that changes the game too.

The Yankees get to drop $80 million off their books this year. Cashman has been saddled with these big contracts for the entire time he's been top dog. Now is when he really gets to shine. I can't wait to watch the Hot Stove League this year.

Thursday, September 25, 2008

I just recently installed Mozilla's Prism, and I gotta say, I love it. I have one set up for GMail, Campfire, and Google Docs (GDocs?), and those windows are super snappy. I do miss my Better Gmail extension for Firefox, but its no big deal.

I only have two big issues with Prism:

I cannot customize the download location.

All Prism instances run under the same process.

The first is mostly trivial; I download all my files to c:\downloads instead of the desktop, so that's just a copy/paste away. The second issue is more important. Google Chrome created the idea of browser process isolation; if one tab locks up or crashes, it does not bring down the other tabs.

That feature is awesome.

Eric disagrees with me that Prism "needs" process isolation; he thinks that the beauty of Prism is the UI, aesthetics, and speed. Hey look, I have my GMail "application" open, it's just one application, and look how fast and clean it is!

Well, process isolation is a vital part of that abstraction. When Excel crashes, it does not bring down Firefox with it. Likewise, when Prism-GMail crashes, it should not bring down Prism-Campfire with it. If Prism's goal is to abstract websites to be desktop apps, then each one needs to be isolated into its own process.

Wednesday, September 24, 2008

I recently bought an MP3 player almost exclusively for the Stackoverflow podcast. I don't know why I wanted it so badly, but that's another story. I started listening to just SO and NPR's "Wait Wait Don't Tell Me", but I added like 8 more to my sync list (thanks Mark!). I listened to DotNet Rocks this morning. They were talking about Parallel Extensions to the .NET framework and WPF, and all I wanted to do was run home and start rewriting Walrus to use all these fun new tools. I'm such a nerd.

I've been thinking about databases a lot lately. It's been sort of related to work and sort of general, but whatever the cause, databases have been in my mind lately. Then, as my mind often does, I started a thought tangent, where my thoughts quickly bounce from topic to topic, and I ended up on Star Fox.

And then from Star Fox, I went to Falco. And from Falco, I remembered this quote:

"You worry about your own hide!"

And it was that moment that I decided my next database would be named "Falco".

I've mentioned before about how I think that databases should be responsible for their own data integrity and not rely on application code (or developers) to maintain it. Somehow, Falco's philosophy just fits that perfectly.

Monday, September 15, 2008

So for week 1 I lost in three of my fantasy football leagues and tied in the fourth (Boos can be directed to Maurice Jones-Drew, Torry Holt, Braylon Edwards, Steven Jackson, and Chad Johnson). But what goes around comes around; I've won in three leagues and am posed to win in the fourth (Cheers go to Clinton Portis, Ryan Longwell, Plaxico Burress, Donald Driver, and Calvin Johnson).

Four victories is a pyrrhic victory though, because the Jets lost :( I even own Favre, Cotchery, and Jones on a few teams! What more can I do?!

Spore is loaded with DRM. I refuse to buy it on that principle, despite that Joe tells me it's awesome and that I should learn to love the DRM. On the other hand, Sins of a Solar Empire has no DRM. That will be my next game.

I'm sitting here waiting to go to bed with the TV still on channel 7 following the Steelers-Browns game. The news team is reporting on the Red Sox right now. They stated how the Yankees beat the Rays today. And that's when it hit me.

I was bummed that the Yankees won because then the Sox have a better chance of winning the division.

Sunday, September 14, 2008

I've talked about my XBox 360 wireless adapter not being compatible with FiOS's Actiontec router here and here. A helpful user named Brandon suggested that I upgrade the firmware on my router, as shown on this site. I finally got around to taking a look, since I was so pissed off at the Jets' loss I stormed off to the basement.

Of course, the site he was refering to was older than my experience; I already have the latest firmware (in fact, I now recall the install tech installing the new firmware right away). So I'm still stuck with two wireless routers in my house. Bummer.

Jets are down, 19-10, with 3:53 left on the clock and two timeouts. It's 4th and 23 on their own 7 yard line. What should they do?

It's obvious to me they should go for it. Needing two scores, the Jets would need two possessions. If the Jets punt, they will have to give the ball to the Patriots twice in order to get their two possessions and scores (the first being the punt, the second the kickoff after the first score). In that situation, you've got to limit the Patriots to zero, maybe one first down after the punt, then score and recover an onside kick. If the Jets go for it on 4th and 23, sure they have to get 23 yards, but then they just have to recover an onside kick (or kick it away and limit the Patriots to 0-1 first downs).

Friday, September 12, 2008

Tuesday, September 9, 2008

One of the things I love about fantasy sports is trading players. I just love the back and forth negotiation that goes into it. And of course I love it when my trades work out. But I can't guarantee that when I trade Johnny Gomes after he hits 10 HR in April that he'll fall off the face of the earth. You have to make the right trade at the right time, and in order to do that, you really need to understand player value.

As I see it, there are three different aspects of player value:

Current value: How well the player is doing right now. You might look at last week's or month's stats to see this. Michael Turner's current value is sky high. Troy Tulowitzki, not so much. Before the season this would be last season's stats.

Projected value: How good a player is perceived to be. Albert Pujols's projected value is always near the top. Despite Hank Baskett's awesome performance this weekend, his projected value is still low.

Perceived value: A subjective measure of how good a player is. For example, I think Jericho Cotchery is awesome. And I hate Melky Cabrera.

There are also two implied aspects:

Potential value: The difference between current and projected value. Tulowitzki has a high projected value, but a low current value, so he has a high potential value.

Estimated value: A combination of current and projected value. You would use this to compare a journeyman-type player (similar current and projected values) to a rookie (low current, high projected value) in player evaluations.

When people talk about "buy low, sell high", they're usually refering to the potential value; Baskett is a sell high candidate, Peyton Manning a buy-low. Most people are aware of this phenomenon, so buy-low and sell-high opportunities can be hard to move on (no one is likely to dump Peyton based on his week 1 performance). But you can exploit an owner's perceived value of a player if that value differs from your estimation of that player's value.

How do you determine an owner's perceived value of a player? You can look at several things:

Did the owner draft the player higher than average?

Does the owner start the player over other players?

Did the owner list the player on his trading block?

Is the player's name part of the owner's team name?

When you proposed a trade for this player, did he counter-offered with another?

When you proposed a trade for a different player, did he counter-offered with the player?

If you can figure out an owner's perceived value of players, you can possibly make a trade that leans towards you.

Now, I just finished writing this post and I can't remember what I really wanted to say. This seems obvious, but I know I had a better idea when I started. Oh well, maybe it will come to me later.

Friday, September 5, 2008

No matter how much I hate Google, I can't wait to get my hands on the first Android phone, the HTC Dream. Presales start September 17th (though I will like unable to participate, as Boston is not getting 3G service from T-Mobile right away) for a release date of October 13th. I just can't wait! I haven't been this excited about technology since, well, probably my DS.

Wednesday, September 3, 2008

I watched a little bit of the Red Sox game last night with the sound off (Jay was busy installing his speakers). At one point, they pointed the camera at the scoreboard and showed the Yankees beating the (Devil) Rays. I was excited until I realized that the Sox fans were probably happy at this news, since it brings the Rays closer to the Sox.

Tuesday, September 2, 2008

“I’ll make this easy for you. We basically threw a lot of balls when we should have thrown strikes and we threw some strikes when we should have thrown balls. And that’s the end of the conversation. I’ll see you later.” --Jim Leyland

Monday, September 1, 2008

Pat* gave me a going-away gift. He tried to deploy the latest version of our project via his deployment tool, but none of my changes were included. The conversation went something like this:

me: did you do a getlatest on the utils project before making 0.8.9? Because the code is throwing errors saying it's missing a method I added yesterday.Pat: I got the latest for the entire solutionme: well the build doesn't work... it's missing at least 2 methods I checked in last nightPat: what file is broken?me: clsFile.vb and PSA.vbPat: the Files are identical, how can i replicate the errorme: maybe source control didn't actually get the latest for youme: just load the application and you get the first one.

At this point I decided to get backup. I used the Reflector to confirm that my code was not present in the build he released. Yup, it's not there, and yup, it's in source control. Pat is having none of it.

Pat: That method is not therePat: and it's not in source controlPat: the GetlastyearsAssessmentPat: the method doesn't existPat: why does VS even let that compile? that's weird toome: it compiles because it's in the build! you just don't have the latest

Fighting just because. He finally realized the problem:

Pat: ok found it.Pat: come over here

Sure enough, it was his problem; the deployment software he wrote had about 6 manual steps, and he messed up one of them.

But the moral of the story is Don't blame other people for things you don't understand.

Friday, August 29, 2008

Bank of America just increased my credit limit... AGAIN! They bumped it up another $3000 to $17900. That's ridiculous. I've only ever had more than $4000 on it once, and I paid it off well ahead of the due date. It's not like I asked for it either. I'd rather it be lower, around $10000 or less.

Friday, August 22, 2008

And it works fine. I know the idea is that you can represent a non-answer or unknown entity this way, especially when dealing with databases and DBNull. Still, it seems like a bad idea in a lot of ways. I've spoken out against nulls before when dealing with booleans. But what about integers?

I don't like it. I'm all about conceptual integrity; one thing is one thing. So what is an integer? A whole number. Is null a whole number? No it's not.

So what's the flipside? Sometimes nulls exist. You're going to do a left-join one day, and then your integer column "reset_count" is going to be null. Now you have to code to use the "hasValue" boolean attached to the nullable int (you get "hasValue" for free with every nullable-type declaration). Every time you want to use that value, you have to add code:

if (i.hasValue)

If you have to add that code, then you really have to refactor your code. Whatever you're representing should be able to handle this one-to-zero-or-more relationship without special code. Maybe use a collection and "foreach" through it. Maybe you do something cool that I've never heard of. But if you have to code for nulls, please seriously consider refactoring.

Appendix: I can think of one condition where you might need to add your own "valueSpecified" boolean: classes that represent XSDs with optional attributes. I don't have to like it though.

Monday, August 18, 2008

Pat: don't use byref. please for the love of godPat: hahaPat: :)me: what do you mean about byref?me: it's appropriate in some cases.Pat: i think it's confusing and rarely appropraitePat: it's too subtlePat: i don't want to debate software right now.

Thursday, August 14, 2008

OK, I promised myself I would wait at least a month after leaving my current job before posting any bad stories about it, but I just can't hold this one in. My project has a custom filetype associated with it. I wrote code to parse the command-line arguments and open the file, like so:

myexe.exe -f "c:\filename"

So I was surprised when I came in to work this morning and my file association/command line code didn't work. I check the history in version control and find that my esteemed coworker, Pat*, had changed it. I decided to be diplomatic (since I didn't want to piss off people to whom I would not have a chance to reverse any more impressions) and sent out an email to the team:

Did someone change the code for using command line arguments for file associations? All of a sudden this morning I can't double-click and run a file. It looks like someone modified the command line stuff...

I get this response from Pat:

I fixed it, as it was broken. Come over and I'll explain.

(Note: this is one of Pat's annoying tendencies. When he has to explain something he did that invariably is a bad idea or mistake, he always wants to explain in person.) So I trot my butt over there to listen to his story. Turns out when he was setting up our project to work with our deployment software, he entered in the file association code the same as his last project. That is to say, without the space between the "-f" and the filename. So obviously the association wouldn't work.

Instead of adding the space to his code, or even bothering to look and discover what was wrong, he edited the source code of the project to work his way, which of course broke the rest of our builds once he checked in the code. Then he had the gall to suggest that this problem was my fault!

Wednesday, August 13, 2008

This is a really brief post. Doing things creates entropy. Making energy creates entropy. That means that wind, hydroponic, coal, nuclear, gas, oil, and fusion energy sources all create entropy. In terms of energy production, entropy means pollution. Therefore, the best source of energy we can get is solar, since it's the only one that comes from outside our otherwise-closed system (earth).

So I sucked it up and did some more troubleshooting with the 360... it's definitely red ringed, so I got the UPS label from Microsoft to ship it for repair/replacement. I hope I get one of the ones with a quieter optical drive.

In other news, I got a new job. Yeah, awesome. No more of the crap I've been dealing with, only new crap. The thing I'm most nervous about is going from being the big fish in a small pond to just another fish in a big pond (replace "big" with "professionally good" and you get the idea). I start next Wednesday, so stay tuned for more on that (or don't, or whatever).

And I've been updating my Todo list regularly as I fix things. I have a hard-copy of the current list in my moleskin notebook I've been carrying around... again.

Monday, August 11, 2008

My XBox just red-ringed, but it wasn't that simple. In a dark, quiet house at 11:23PM on Monday night, I popped in my GTAIV for a little stress relief. The console made sort of a braking sound, but then started to load as normal. Niko appears, I walk out my apartment, jack a red sports car, and check the map.

And the screen locks up with some static vertical lines flickering.

Ok, fine, a little weird whatever. I shut the XBox off and back on. It boots up, starts loading, makes the same braking sound, but then Niko appears. I move him to the elevator...

And again the static comes back with a crackly sound.

At this point I was actually scared shitless. I can't rationalize it, but somehow I thought that GTAIV is becoming self aware, or some other seriously scary shit. I don't know, but I was freaking out.

Freak. Ing. Out.

I jumped up and nearly ran to change the channel to TV or something non-threatening. With the Colbert Report on, I dared to turn on the console one last time.

I pulled off my latest trade in fantasy baseball yesterday*. I got Robinson Cano and Adam Wainwright for BJ Upton and Bobby Abreu.

New guys:Cano is a notorious 2nd half player, and a very strong offensive and defensive 2B. He'll provide upgrades over Upton in every category except Avg. and steals. Wainwright will sit on the bench (until I decide to cut bait on Pronk, who currently holds my DL spot) until September or so, when he'll add some meat to my pitching rotation.

Long gone guys:I love Abreu, and he's been crushing the ball lately. But he's 34 going on old, and he's shown some signs of slowing down. Plus I have a total logjam in the OF with Hamilton, Markakis, and Hart holding the 3 starting gigs and Abreu, JD Drew, and Ludwick (manning the Util for now). Upton was the focus of this deal. Since he was my 3rd round pick, I felt somewhat obligated to keep him for next year even though he'll lose his 2B eligibility next year. I managed to deal him and get a potential keeper back too.

Conclusion:I think I overpaid for Cano, but given that I got rid of Upton, I completed my goal. Of course, now I have 6 potential keepers: Pujols, Hamilton, Markakis, Hart, Cano, and Tulowitzki.

Sunday, August 3, 2008

It's about time I spoke about baseball. Now, I thought about making a fan-esque blog (like my good ol' buddy Matt, whose blog was mentioned by Jon Miller on ESPN baseball), but I decided that others do it better, plus I wouldn't really be able to keep up with it. But I realized I had two things I could do. The first you can see here; it's just fledgling, but I think it has a lot of potential.

The second is a little more interesting. I've played fantasy baseball for a modest 5 seasons so far with moderate success. Typically, I draft poorly but manage well. I also seem to do very well on trades. I get these gut feelings on guys, and while I try to focus on the stats, sometimes these gut feelings are very strong. Melky Cabrera is one of these. I wanted the Yanks to play Melky in CF every day over Bernie. Bernie was old, Melky was new. Stats favored the Melk Man. But I had this feeling that Melky wasn't the answer. I ignored it, argued for hours with my dad that Bernie was a 4th OF at best. One look at Melky's stats tells a different story.

The latest feeling was about Erik Bedard. He was so highly hyped this offseason for fantasy and real life. It looked like the Mariners could use him to catapult to the top. Despite having him high on my draft sheet, I had a bad feeling about him. That feeling was right.

I know hunches are total BS. But I also know that the subconscious is a powerful source of intuition, and that maybe the back of my brain knows more than I do. So just maybe I'll talk about them here.

Wednesday, July 9, 2008

This is random, but important. When moving into an apartment, TAKE PICTURES OF EVERYTHING and upload them to Flickr/Snapfish/MySpace or whatever. Document the state of the room/apartment before you move in, and then upload those to some 3rd party site so you can prove the photos came from before you moved in. Trust me, even if you move into your best friend's attic, take the damn pictures.

Monday, July 7, 2008

In Yahoo fantasy baseball, managers (people playing the game) get to choose MLB players from the player pool for their teams. The player pool normally consists of everyone who is on an active MLB roster or was on a roster last year and has not formally declared retirement. The Yahoo team also has several minor league players added, usually the interesting ones (e.g. Evan Longoria). However, they do leave some notable minor leaguers out (e.g. Jay Bruce). This leads to interesting situations when those left-out players are called up to the bigs.

Having the #1 waiver priority is a huge advantage. It means that you get first dibs on the hot new rookies recently promoted to the bigs who were excluded from the player pool. You can snag that essentially free player, be it Clayton Kershaw or Jay Bruce, hitting or pitching, whatever you need. These excluded players really make the #1 waiver pick much more valuable than it should be.

In one of my leagues, Evan Longoria was drafted with the 180th pick (out of 400 players taken). But Jay Bruce, Johnny Cueto, Edison Volquez, Matt LaPorta, and other excluded players were undraftable, leading managers to draft such waiver trash as Jacque Jones, Luis Gonzalez, Lee Gardner, and Ronnie Belliard.

Players who want to take a risk and hold on to MiLB stars can only hope those stars are in the select few added by Yahoo's sports staff to the player pool. Waiver priority is designed to decide who to allow to pick up dropped players. Instead, it can be used as a tool to drastically improve a manager's team midseason.

Yahoo really needs to add all MiLB players in any team's 40-man roster to the player pool. There, that'smy piece. I'm done.

Tuesday, July 1, 2008

I plan to post a thorough review of everything that happened on my wedding day, because A) it was mostly awesome and B) I don't like having to tell the story 8000 times. But there was one part that totally sucked: the limo.

During our booking process, we discussed various Excursion/SUV limos with the limo company and the owner, Brendan. When we visited Brendan to sign the deal, he showed us two Excursion limos, and pointed out one of them that likely would be the one we'd get if we booked that day. We booked the Excursion limo that night with Brendan and handed him a hard copy of our itinerary.

First of all, the limo driver showed up in a 14-passenger Town Car limo instead of the 18-passenger Excursion limo we had ordered. We spoke with the owner on the phone and he insisted we ordered the smaller limo. He asked me to check my receipt, which I could not find, and that the receipt clearly said 14 passengers. While I haven't been able to find my copy of the receipt, we spoke exclusively with Brendan about the Excursion limo. Brendan only ever showed us Excursion limos. The only place 14 passengers was mentioned was when we asked him if 14 people would fit in the Excursion limo. Brendan even admitted on the phone on June 14th that the limo he sent us would not fit 14 people. We had to make immediate plans for groomsmen to drive their own cars instead of being in the limo.

Then, the driver was unable to turn on the electricity in the cabin for the first 15 minutes of the trip. This meant no radio and no air conditioning, a big deal on a hot June day. She did not have a copy of the itinerary that we sent in via email and by hard copy when we signed. We gave her the addresses and told her the time and schedule. After she dropped off the men at the church, she left the church to get lunch for herself without telling anyone. By the time she returned and we sent her to the hotel to pick up the bride, the wedding was delayed by 30 minutes. Our guests had to wait 30 minutes for us in the church, and we lost 30 minutes of the 5 hours we had booked for the reception.

On top of it all, Brendan and the driver were rude through the whole process. The driver acted like she was doing us a favor driving us around, and Brendan didn't make any attempt to apologize or even be nice to myself and my best man.

I am in the process of discussing this with the limo company, so I don't want to mention their name yet. We'll see how they respond to my query.

About Me

Currently employed to do .NET development, but I am comfortable in pretty much any language (not that I know them all, but most are pretty cool).

Husband for 6 years now, father of two daughters (see pics and videos to see how cute they are!).

Gamer for life; started on the Commodore 64 with Q-Bert, now playing mostly FPS titles. Really, just anything that is cool and fun.

Started a slow-pitch softball team a few years ago, nominated myself as the pitcher. I'm a decent hitter, but pretty solid pitcher (slow-pitch softball pitching is all about preventing walks, as there's not much you can do to prevent them from hitting the ball hard). Haven't played much since Mia was born, but I still have the itch!

Been a homeowner for 7 years now. It is both better and worse than I imagined it. More work than I imagined, but also feels better.