Gift Cards

November 22nd, 2007

Firstly, happy thanksgiving everyone.

Tomorrow is the biggest shopping day of the year, and all I ask is that you consider not giving gift cards. Over $8 billion per year in gift cards are given, and not used. If cards offered some kind of built-in discount ($45 for a $50 card) then they might be excusable, but they are essentially a crippled form of cash. Think about it, would you give someone stamps?

To me, gift cards say the following to your recipient:

“I’d like to give you money but I’m afraid you’ll spend it on drugs”

“I don’t know you well enough to even attempt to pick something out, but I’m absolutely sure what store you’d like to go to”

“I’m too lazy to go through the store and actually find something for you”

“I forgot about getting you a gift, so just be glad I had to stop for gas”

“You have bad taste and shop a crappy stores, so I’m forcing you to shop at a good one”

If you’re happy saying those things (sometimes I am), then gift cards are perfect. Otherwise, take a moment to try and think of something original, or just go with good old-fashioned cash.

Baseball Awards Roundup

November 21st, 2007

All of the awards have been announced now, so let’s recap:

Rookie of the Year

American League

My Pick: Pedroia
Winner: Pedroia, by a large margin.

I’d change my vote for runner-up here to Joakim Soria, who had a fantastic year on a team nobody watches, and as a closer for a team that rarely wins.

National League

My Pick: Tulowitzki
Winner: Braun, by two points.

I still stick by my Tulowitzki pick, but Braun’s numbers were apparently too good. I think this comes down to whether the award goes to the player that performed the best (Braun) or the one that showed the most potential/promise (Tulowitzki).

Cy Young

American League

My Pick: Sabathia
Winner: Sabathia, by a fair margin

I was actually surprised that the voting wasn’t closer. Perhaps there’s a little Boston backlash or maybe the voters are starting to realize that wins are a garbage statistic.

National League

My Pick: Peavy
Winner: Peavy (unanimous)

Most Valuable Player

American League

My Pick: Rodriguez
Winner: Rodriguez, all but two votes

National League

My Pick: Holliday
Winner: Rollins, by a small margin

This was the biggest surprise. Rollins had a great year, but Holliday had a monster year. Playing on an east coast team, at a more important position, and being more “exciting” (i.e. faster), as well as the Coors Field effect, must have been the deciding factors here. In hindsight, I probably should have picked Rollins as the runner-up.

Travelogue: Hershey’s Chocolate World & School

November 21st, 2007

Addled Hershey SyrupA couple weekends ago we took a trip to Lancaster, Pennsylvannia (i.e. Amish Country). One of the days we decided to go to Hershey, PA (technically Derry Township). The touristy stuff there obviously revolves around the Hershey company or its namesake and founder.

Singing CowsHershey’s Chocolate World is a very clean, excessively corporate, attraction. Most of it is obviously targeted at kids. It features a “simulated factory tour,” which is a ride where animatronic cows sing to you how they make chocolate, a gigantic gift shop, and is the home base for a town-wide trolley ride.

Statue in Founders Hall - Milton S. Hershey SchoolThe trolley ride was led by what I’d have to guess is one of the biggest Milton Snavely Hershey fanboys out there, but in between his fawning we got to see the town and the school which the Hershey’s founded in lieu of having children (Mrs. Hershey had MS). The school is simply amazing for a high school, especially one that charges no tuition.

The gift shop, tour, and trolley ride probably took about 2.5 hours, so while it wasn’t the highlight of the trip, it was entertaining and concise. I’d highly recommend it if you are bringing kids. More photos can be found here.

First Snow

November 20th, 2007

First Snow! One of my favorite days of the year, even when it’s only a dusting. Happy winter everyone!

 

Year One

November 20th, 2007

One Year Old!So I’ve been a bit absent from writing lately, and missed the 1 year anniversary of this blog. Posting will resume tomorrow, but for now, here’s a little zeitgeist for year one:

There were 48 posts and 39 comments (5 by me), contained within 51 categories. 9,496 spam comments were blocked.


Most popular posts (by page views)

  • Enabling Buttons on Apple Keyboard in Windows
  • Jet Cars 2007
  • Cy Young 2007
  • Java Package Conventions
  • Session Moratorium
  • Nice to see that these were spread across the main topics.

    Most popular categories (by number of posts)

  • Software (11)
  • Sports (9, 7 in Baseball)
  • Internet (7)
  • Movies (7)
  • Java, Mac, Windows (4 each)
  • Most popular search keywords (by visits)

  • cy young 2007
  • eric savage
  • list of cool usernames
  • eric savage blog
  • terastation live review
  • Most popular traffic sources (by visits)

  • Google
  • (direct)
  • StumbleUpon
  • Yahoo!
  • Blendlab
  • Longest Post: An Open Letter to Recruiters

    Shortest Post: Shrinkage

    This year’s goal: 100 posts. (1 down!)

    Rookie of the Year 2007

    October 5th, 2007

    Picking a Rookie of the Year is probably the most subjective of the big baseball awards. Evaluating a player on such a small sample size is anathema to sabermetricians, and hype can help or hurt the impression a player makes on his new fans. To me, the best rookies not only perform well, they show potential. The guy who comes up and has more HR than BB doesn’t really impress me (though sometimes that’s all you have), the guy that fields well and has clutch hits or pitches and still manages to put together decent numbers are the real future stars.

    National League RoY: Troy Tulowitzki. Between Ryan Braun and Tulowitzki, I have to Tulowitzki the edge, but I didn’t really get a chance to see either of these guys play. Based on what I’ve read and what little I’ve seen, Tulowitzki is a talented shortstop who can hit and Braun is a clumsy third baseman who can really hit. Braun pretty much beats Tulowitzki hands down in terms of production, but I don’t trust power numbers from rookies (will he be a McGwire or a Maas?) as much as I do fielding and discipline, so Tulowitzki gets it.

    American League RoY: Dustin Pedroia. Sox fans have been hearing about Pedroia since he was drafted, but always with caveats like “maybe he’s too small” or veiled warnings like “he plays with heart”. He came up early in the season and basically stunk up the joint, but his manager had faith, and eventually something clicked. Pedroia turned into a hitting machine, fielded like veteran, and always seemed to be fired up. I think the sox have a solid .300+ hitter for a few years, probably settling into the #2 spot if Ellsbury’s power is low enough that he becomes the leadoff. Runner Up: Daisuke Matsuzaka*

    *I love the fact that the baseball market is going global, but something just doesn’t feel right about experienced players winning Rookie of the Year. Can you imagine Manny Ramirez going to play in Jpan and being considered a rookie? Even if I didn’t feel this way I still wouldn’t have given Dice-K the nod over Pedroia.

    Generics: All or nothing?

    October 4th, 2007

    I am a big fan of strong typing, so when Java 5 added support for generics, I started using them heavily. I don’t agree that that they “clean up” your code, because I see as many or more instances of type parameters, <Class>, as I used to see type casts, (Class). However, they do make code easier to read and follow.

    I’ve also been using interfaces more and more over the years, and these days I’d say I use them on almost all of my beans. The lightweight multiple inheritance helps with organization, and when you’re dealing with libraries that monkey with the internal working of your code like proxied beans in Spring and Hibernate objects, interfaces are helpful if not required.

    A while back, I inadvertently discovered a pitfall that had been plaguing a project of mine in a very confusing manner. Parameterizing a class should avoid class cast exceptions because of strong typing, but you have to be careful to keep it parameterized, or you can end up causing some very nasty runtime bugs. To illustrate, here is a simple example:

    (forgive the formatting, Wordpress’ editor is poor at handling code…

    First we have a Person interface. People have IDs and vehicles.

    package com.efsavage.generic;
    import java.util.Set;
    public interface Person<PK extends Comparable> {
         public PK getId();
         public void setId(PK id);
         public Set<Vehicle> getVehicles();
    public void setVehicles(Set<Vehicle> vehicles);
    }

    We also have a Vehicle interface, the fields of which are unimportant here:

    package com.efsavage.generic;
    public interface Vehicle { }

    And we have an implementation of the Person interface:

    package com.efsavage.generic;
    import java.util.Set;
    public class PersonImpl implements Person {
         private Integer id;
         private Set vehicles;
    public Integer getId() {
         return id;
    }
    public void setId(Integer id) {
         this.id = id;
    }
    public Set getVehicles() {
         return vehicles;
    }
    public void setVehicles(Set vehicles) {
         this.vehicles = vehicles;
    }
    }

    So now let’s write a little test:

    package com.efsavage.generic;
    import java.util.Set;
    public class PersonTest {
    public static void main(String[] args) {
         Person me = new PersonImpl();
         Person<Integer> you = new PersonImpl();
         me.setId("5");
         you.setId(5);
         Set<String> myVehicles = me.getVehicles();
         Set<Vehicle> yourVehicles = you.getVehicles();
    }
    }

    This code compiles fine (though Eclipse will flag a few warnings). There’s two problems here.

    Despite the fact that PersonImpl implements Person<Integer>, I’m able to set a string via me.setId(”5″), because I did not keep that parameter when I cast me to Person, without a parameter. I would have expected the parameter to be inferred here.

    The other problem is that I’m able to cast myVehicles to Set<String>! This wasn’t even a parameter I defined, it’s right in Person. However, by using Person without the PK parameter, Java ignores all other parameters too!

    I’m sure someone thought this was a good idea, and there’s a reasonable explanation deep in the JCP forums, but it just seems wrong to me, so be careful to check your parameters if you find weird class cast exceptions showing up in your logs.

    MVP 2007

    October 3rd, 2007

    National League MVP: Matt Holliday. Led the league in BA, H, XBH, 2B, RBI, TB, and RC, and finished near the top in other categories. Carried his team to the post-season, not to mention scoring the winning run of the final game. Runner Up: Prince Fielder.

    American League MVP: Alex Rodriguez. Led the league in R, SLG, OBP, TB, HR, RBI, and RC. Basically carried his team until their 50% payroll surplus was able to get them out of a long funk. Runner Up: David Ortiz

    TBS seems to have gone to the FOX school of baseball broadcasting. Missing the beginning of innings so they can squeeze a promo in is unacceptable. Not only that, but it’s a promo for a damned re-run, and the same one they show every half-inning! Much like I was forced to boycott House because of FOX’s incessant promotion of it during the 2004 playoffs, I’m not watching The Office on TBS. Luckily since it’s on NBC first, I won’t be missing anything.

    Cy Young 2007

    October 2nd, 2007

    Being a sports fan doesn’t end when the season does, you need to analyze, reflect, and debate things like awards, so let’s get started:

    National League Cy Young: Jake Peavy. No real debate here. Led the league in strikeouts, strikouts per inning, wins, WHIP, and ERA, and came just short of the playoffs. Runner Up: Brandon Webb.

    American League Cy Young: C. C. Sabathia. On the surface, it looks like a real close race here with Beckett and maybe even Lackey, and the press seems to think Beckett is a lock because he got 20 wins. However, Sabathia beats Beckett in WHIP, IP, K, GS, CG, SHO, K/BB ratio, which are all key ace/stopper stats. Runner Up: Josh Beckett.

    Note: Expect a surge in baseball-related posts over the next couple of weeks :)

    Baseball Manglers

    October 1st, 2007

    One of the key differences (beyond the rules of the game) between the 4 major professional American sports is the role of the managers. In football a team wins or loses largely based on the cleverness of the coach. Basketball and hockey teams use styles and plans that the coach comes up with, even if the action itself is largely tactical.

    Baseball calls the position a manager, not a coach, and is also the only sport where the manager wears a completely unnecessary uniform. The term manager is probably more accurate, since most of what the manager does is done off-field, keeping two dozen or more alpha jocks in line every day for 6 months. During the actual game, the manager rarely moves, typically waddling out of the dugout only a few times per game. Sometimes a bad call is made and a show must be put on, but the decisions largely make themselves, and the limited number of options often makes them rather easy.

    I devote a blog post (the first of several, most likely) to poking a stick at the 30 guys that often make more than a million dollars a year because one of my pet peeves came to light in tonight’s exciting one-game-playoff between the Padres and Rockies.

    Why do managers never pull pitchers in the middle of a count?

    It was obvious to anyone watching the game that Jorge Julio had nothing. He walked Giles, throwing pitches anywhere but over the plate. His first pitch to Hairston was just as bad, and I said to my roommate, “they need to get this guy out of there”. The cameras showed the manager pacing, not looking happy. The poor pitcher had no control at all, the manager is sitting on a 40 man roster, and this is the most important game of the year. Julio has pitched well this season, but when every pitch counts this much, you have to mitigate the risk. Needless to say, the next pitch left the park.

    I have never seen a pitcher pulled in the middle of facing a batter. It’s apparently one of the unwritten rules that makes no sense like not switching sides when you bat (or pitch). There are probably hitters out there who would do well to switch sides when they get ahead or behind in the count, but they don’t do it. Short of an injury or ejection, a manager would sooner watch his team lose while he’s posed on the top step of the dugout than just run out and tell a guy he’s done and he’s not going to get a chance to throw two more balls or lob the meatball the batter is obviously sitting on.