– Fantasy Stat Tracker …Tracker

A blog about the development of – The Fantasy Baseball Stat Tracker

Archive for the ‘Features’ Category

Order of Players on Team Pages

Sunday, April 18th, 2010

There has been an unforeseen development since adding drag-and-drop to Team pages on The purpose of drag-and-drop was to easily move players on an off the bench. Drag-and-drop also lets you change the order in which players are listed on your team page. A number of people have noticed that, after they re-order their players, that order isn’t maintained when they reload the page. does not keep a record of the order you place your players in–it only tracks whether they are on or off the bench. When you load your team page, your players will always display in scorecard order–Catcher, 1st Base, 2nd Base, 3rd Base, Shortstop, Left Field, Center Field, Right Field. If you have multiple players at a position, they will be in alphabetical order based on last name, then first name. The position for a player is based on what MLB lists as the player’s primary position. This may or may not match up with the position qualifications for players in your league.

MLB doesn’t differentiate relief and starting pitchers, so they are all listed alphabetically–again by last name, then first name.

As time allows, I will look into letting monitor the order players are dragged into. For the immediate future, other features are priority.

Season-to-Date Stats

Saturday, April 3rd, 2010

This evening I completed work to allow Owners to track their teams’ season-to-date statistics. This has been a popular request throughout the past year.  Your team’s season-to-date stats are now available from each Team page by clicking on the “Season-to-Date” tab just below your team name. Clicking the “Today” tab will return you to your live, up-to-the-minute daily stats.

Season-to-Date statistics are for the players CURRENTLY on your roster. does not track the changes you make to your roster throughout the season. The Season-to-Date statistics center around a Strat-O-Matic scoring model. I’ve never played Strat-O-Matic, but–as described to me–roster moves aren’t allowed during the season. Rosters are locked in before the season and only change in the off-season.

For those playing in a standard fantasy baseball league, these Season-to-Date stats will be different than your fantasy team’s total stats (accumulating stats for players in your lineup on any given day). For Owners in this situation, season-to-date stats will make it a touch easier to view all your players’ season performance, but won’t be of direct use when tracking your team’s performance.

Adding Season-to-Date stats wasn’t a trivial matter. I had to make changes to more than a half-dozen of’ most important objects. In addition to changes to objects, the database was also expanded to include tables to store the season stats for players. At the moment, the objects are writing to the database via SQL statements. In the coming days I’ll update to use stored procedures like the rest of the database communications.

I have tried to test for unexpected repercussions from the object and database changes, but please let me know if you encounter any odd behavior by posting a comment or emailing me.

Managing Industries

Wednesday, March 17th, 2010 allows you to form industries with your friends so you can view eachother’s team and track one another’s stats. Here’s how it works.

Enter Your Info

After signing-up for a account, you’ll want to be sure to enter some of your personal information. By default, only your email address will be searchable on To add more details, click “Manage my Settings” in the utility box at the top-right of any page. This will take you to a page on which you can enter your:

  • name
  • home town
  • home state
  • cell phone number

We recommend you include at least your full name. The other information will just make it that much easier for your friends to find you when they search.

Find Friends

Now that you’ve enter your information, go search for your friends! You can begin your search from your dashboard or by clicking “Find Friends” in your utility box.

In both places you’ll find a single search form in the right column. You can type any criteria into this field that you think might match your friend–his name, email address, phone number, home town, or home state. uses an open-source search engine called Lucene to try to find matches.

If matches are found, they will appear to the left of the search box. Once you find the friend you’re looking for, clicking on his name will start the process of adding him to your industry.

While Lucene is a pretty smart search, it’s not perfect. If your search terms don’t return a match, try changing them up a bit. In general, try to use more than 3 characters in a search and avoid punctuation.

What if you can’t find your friends?

It could be that you can’t find your friend because he isn’t signed-up for If that might be the case, you can send an invitation! From your dashboard you just need to enter your friend’s name and email address to send an email invitation. In fact, you can invite as many of your friends as you’d like. If you want your whole league to try, invite them all at once!

Confirm Friends

Once you make an industry request, your friend will receive an email notifying them of the request. At that point, they will need to log-in to and accept your request before you can start viewing eachother’s teams.

When you get industry requests from friends, you will receive an email notification and will see an alert on your dashboard. You can accept or decline the request by clicking on the alert message on your dashboard.

Share Your Teams

Once the request is confirmed, you will see your friend in the right column of your dashboard. By clicking on your friend’s name you can select which of your team’s they can view. By default, they won’t get access to any. Keep in mind that sharing your team just allows your friend to view your stats. It doesn’t let them edit your roster in any way.

You can also change which of your friends’ teams show on your dashboard. This is managed through the “Select teams to Display” link in the middle of your dashboard. This page will list all the teams your friends have shared with you. You can pick whether to show or hide each one.

Add Players to your Team

Wednesday, March 17th, 2010

Players are added and removed individually from each of your teams. doesn’t try to enforce any specific league rules for when players can be added or removed from teams. You can do so at any time.

Find a Player

To find a player to add to your roster, you must first navigate to your team page. Across just below your team’s name there is a series of links including “Add Player”. Clicking this link will take you to the page to search for and add a player.

On the Add Player screen you will see a group of search fields in the right column. As their labels describe, you can search for players based on first name, last name, and position. doesn’t use Lucene search for player searching yet (it does for friend searching), but this functionality will be added later in 2010.

Add Player page with result for a search on "Young"

Add Player page with result for a search on "Young"

All of the search fields you direct string matches. This means they will find sub-strings within longer names, but won’t find variations on the terms you entered. So, a last-name search for “you” will return “Young” and “Youkilis” but not “Lyon”. If your search doesn’t return the player you were expecting, trying using a shorter string of characters.

Review a Player’s Stats

After you have some search results returned, you can check out the stats of the players in the list. Clicking on a player’s name will open a layer that shows the player’s picture, total season stats, and a link to the player’s profile page.

Add Player page displaying Michael Young player layer

Add Player page displaying Michael Young player layer

Add a Player

To add a player to your team, click on the green “plus” sign (+) next to his name. This will bring up a prompt to confirm that you wish to add the player to your team. If you accept, the player will be added to your team. This is handled by an AJAX request which means the page won’t need to reload. A new prompt will appear once the player has been added.

You can add as many players to your team as you would like in this session.

Activating your Player

After being added to your team, your new player will be placed on your bench. This means his stats won’t be counted when your team’s stats are calculated. To activate the player, click the gray-bars handle to the left of the player’s name on your team page and drag him above the “Bench” bar. To return him to the bench, just drag and drop him below the “Bench” bar.

Players riding the pine on a Team page

Players riding the pine on a Team page

Remove a Player

If you have added a player to your team accidentally or just want to remove someone, you can do so at any time. On your team page, there is a red “X” icon on the right end of each player’s stat line. Clicking this icon will prompt you to confirm that you wish to remove the player from the team. If you confirm, the page will reload and the player will be removed.

You can always add a player back to your team by using the same process described above for adding a player.

How it Works

Wednesday, March 17th, 2010 makes it simple to track major league baseball stats for your fantasy baseball team–or any other group of players you want to follow!

Step 1. Sign Up

The sign-up process is simple. From the homepage, start entering your desired username in the “user” field. If doesn’t recognize the username you enter, it will expose some additional fields for you to enter and confirm your password and your email address.

Form used to sign up for

Form used to sign up for

If recognizes the username you enter, you’ll need to try a new one–someone else is already the one you tried.

Step 2. Create a Team

After signing up you can create your first team. This couldn’t be easier! Click the “Create Team” link in the utility box at the top-right of your dashboard. This will take you to a page where you enter the name of your new team. That’s it!

We do recommend keeping team names between 3 and 24 characters, but you can enter as many as you need. We also would suggest that you don’t create multiple teams with the same name–it’ll make life harder for you when you are trying to track your stats.

Step 3. Add Players

Once your team is created, you’ll be taken to your team detail page. From there you click the “Add Player” link. This takes you to a page where you can search for players, view their season stats, and add them to your team!

Add Player page with result for a search on "Young"

Add Player page with result for a search on "Young"

You can add as many–or as few–players as you want.

Step 4. Track Stats!

Now you can track stats!

Team page

Team page

A snapshot of your team’s overall statistics will be pulled into your dashboard so you can review all your teams at once. Clicking through to a team page will show you the day’s stats for each player, as well as the team totals.

2010 Updates

Saturday, March 6th, 2010

I’m in the process of implementing a series of updates to for the 2010 season. The biggest noticeable difference will be an entire new look and feel. The new layout will allow for 1, 2, and 3-column pages that should let more efficiently use space.

Other changes in progress include:

  • Integrated log-in/sign-up function
  • User-defined backgrounds
  • More flexibility in the “invite friends” functionality
  • Updated log-in flow
  • Drag-and-drop bench
  • Integration with Zend framework

Among the other items I’m planning to get to before opening day:

  • Add OPS to statistics available for tracking
  • Implement Lucene search for “Find Friends”
  • SSL for log-in flow

If you have other suggestions, please add a comment or drop me a long at

I’ll go into more detail about the updated features over the coming weeks. In the mean time, I’m just trying to get things done before the season kicks-off!


Sunday, June 28th, 2009

One of the longest running requests of has been to include game progress information. I can definitely see the value in knowing whether the game your pitcher was pitching in is done yet or not (will there be a win coming or is it all over already?). This is a different kind of statistic than what otherwise collects, so it has been low on the priority list. As I got tired of stored procedures earlier today, though, it finally sounded like an appealing project.

The scoreboard is displayed across the top of the page in the banner area. It displays abbreviated linescores: team, runs, hits, errors, and inning (or “F” if Final). The banner area only has room for 8 scores at a time, so there are left and right arrows to slide the scoreboard side-to-side to view all games.

The first draft of the implementation pulls XML data from MLB each time a page is loaded that displays the scoreboard. Currently the homepage, your Dashboard, and all Team pages include the scoreboard. The data is collected from the XML, looped through, and populated into a list/table combination of mark-up. Some JQuery sets up click events on the arrow buttons when the page loads (if they are needed; if 8 or less games are occuring that day, no arrows will appear) and calculates how far the scoreboard needs to slide to display all games.

I only had time to perform a very quick testing on IE8, Safari, and Chrome (in addition to Firefox, on which all my development occurs) so if you experience any problems with your browser, please let me know.

More development will be ongoing with the scoreboard. I expect I will update the process to store the game scores so doesn’t need to continue pulling in game scores even after all game are done. It will function similar to how player stats are collected. It will first check if the XML feed has been updated. If not, it will pull data from the database. If so, it will update the database and use those stats. Joins Twitter

Monday, June 8th, 2009

You can now follow updates on Twitter. You can find at

Custom Avatars

Friday, June 5th, 2009

You can now upload your own custom avatars to Unfortunately I don’t have any ImageMagick working on the file uploads yet, so you’ll need to do any graphic manipulation before uploading the file. Custom avatars have the following requirements:

  • Files must be less than 20 Kb
  • .jpg, .gif, and .png formats only
  • Team avatars must be 32×32 pixels; User avatars 48×48 pixels

There is no way to maintain a gallery of images in your account. If you upload a custom avatar when you already have a custom avatar defined, you will overwrite that file. The default avatar sets still exist for both Users and Teams.

If you’re interested in drawing an avatar that matches the default set in, use a 3 pixel corner radius. Team avatars also have a 1 pixel stroke of #987535. I have photoshop templates with masks to handle the corners. If anyone wants them, add a comment saying so and I’ll try to figure out the best way to distribute.

Have fun adding your avatars! (And, please, keep it clean. I’m not the morality police, but if you post something that offends someone, I’ll probably pull it.)

Industry Emails

Monday, June 1st, 2009

Ever since Industries were added to, you may have noticed a little checkbox on your Account Information page labeled “Notify me by email of industry requests.” At the time, the addition of that checkbox was a preemptive step. As of tonight, it actually does something. When one Owner (requestor) requests an Industry with another Owner (requested), the requested will receive an email notifying them of the request if they have the box checked. The email includes direction and links for the requested to approve or deny the Industry request.

Up next will be an email notice to let a requestor know if their Industry request has been accepted. I expect that will probably find its way in sometime this week.