Kilg.us – Fantasy Stat Tracker …Tracker

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

Archive for the ‘Upgrades’ Category

Indexing Users

Saturday, April 3rd, 2010

Earlier this Spring I changed the search function for finding friends and creating Industries. The biggest change was moving to a system that uses the Lucene search engine. Part of that engine requires that an index be built for the data to be searched. This was my first implementation of Lucene, so I didn’t have experience with maintaining that index of data. As it turns out, each time the data within the database changes, the index needs to be rebuilt to include all the correct information.

Initially, I wrote a short script to build the index. As more and more people signed-up for Kilg.us, though, the data became out of date because it wasn’t automatically re-indexing.

I have updated the processes for creating an account and changing user settings to display information publicly. Both processes now include a step that re-indexes user data. This should ensure that the user index is always up-to-date and all users with their information shared will be findable in the Find Friends search.

Goings-on

Friday, March 26th, 2010

I haven’t posted about any Kilg.us changes for a couple days, but there has been a little going on. In my defense, I started a “Road to the Show” career in MLB 2010 The Show, so I MIGHT have been spending a little more time honing by batting skills than publishing about Kilg.us changes.

On the fixes side, there were some issues around gathering players and adding them to Kilg.us. Those have been revised now, so any player on a 40-man roster should be showing up (and then some). If you don’t see someone that you want on your team, post a comment or let me know.

There is an outstanding issue with rookies, though. I think I’ve narrowed it to the stored procedure that saves player stats, but all rookie pitchers show a blank (no zeros, no stats, completely blank) stat line regardless of their performance. This is next on the list of things to fix.

Next up, when players were being collected from MLB.com, they were added to the official “Major League Baseball” owner’s teams if they didn’t currently exist on the appropriate roster. They weren’t, however, being removed from their previous team if they had been traded or were a free agent (rather than a rookie). This never seemed to come up last year, but there code I changed to fix the problem hasn’t been touched in nearly a year, so I’m not quite sure the root of the problem. Hopefully it is resolved going forward.

On that note, keep in mind that you can follow any MLB team’s stats by adding the owner “Major League Baseball” to your friends. That particular owner has all 30 teams with rosters that are automatically updated to have all the latest players.

Among new features for 2010, there are three more items I hope to get out by opening day (or very shortly thereafter):

  1. Apply the new theme to the …Tracker blog
  2. Implement Lucene for Add Player searches
  3. Create a Season-to-date view of a team’s stats (cumulative for the season, not respective of adds/removals during the year; this was a request from a Strat-o-matic owner–hopefully others will find use in it)

Opening Day is barely a week away!

Welcome to Kilg.us 2010!

Wednesday, March 17th, 2010

Welcome to the new release of Kilg.us  for the 2010 season! Most noticeable is a completely re-vamped visual theme. This theme will be ported over to the Kilg.us Tracker …Tracker in the coming days, but for now it just lives on Kilg.us.

Kilg.us home page

Kilg.us home page

Other 2010 additions include:

  • the industry friends search now utilizes Lucene for search intelligence
  • drag-and-drop players to and from your bench
  • the Zend framework is installed on the server and being used at various places on the site
  • the sign-up and log-in forms have been combined to offer a quicker, easier experience
  • you can select from a series of major league ballpark  images for your background
  • new user accounts default to a “public” state so everyone can find their friends when they sign-up
  • invite as many of your friends at once as you’d like
  • Kilg.us …Tracker updates pulled directly into your Dashboard

Each of these additions will be described in more detail in future posts. For now, please log-in, poke around, and enjoy the new Kilg.us!

As always, if you encounter problems, email me or comment on an appropriate post.

2010 Re-launch In Progress

Wednesday, March 17th, 2010

The leg work took a bit longer than expected, but we’re now moving on to the re-launch of Kilg.us for 2010. Kilg.us will be offline until further notice.

We’ll post an update when we’re done.

Thanks for your patience!

2010 Launch

Tuesday, March 16th, 2010

Tomorrow (3/17) evening I plan to launch the 2010 updates for Kilg.us. Launch will probably commence around 10pm Mountain time. The launch will replace the entire Kilg.us code base with a new iteration. This will likely result in at least a few minutes–and as much as a few hours–of downtime.

I will blog and tweet (@kilgusTracker) updates to announce when the launch is completed.

In addition to the Kilg.us updates, I will be publishing a series of blog posts to describe the changes and how to use the new features of Kilg.us. For current users, you will find the interaction mechanisms to be very familiar. A new visual style is the most disruptive change. As the season progresses I’ll be getting back to refining the functionality of the tool

2010 Updates

Saturday, March 6th, 2010

I’m in the process of implementing a series of updates to Kilg.us 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 Kilg.us 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 admin@kilg.us

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!

Code Architecture

Sunday, June 28th, 2009

A lot of my weekend was spent making substantially un-noticable upgrades to Kilg.us. Most of the time was spent stepping through my objects and making minor improvements as I noticed opportunities. Among the changes, on-base percentages should be calculated more accurately now. Previously Kilg.us was checking for the existence of at least one at-bat before calculating to ensure no division by zero. Obviously, if a player starts off his day with a walk or two, this would result in no OBP calculation. The code now correctly checks for either at-bats OR walks before calculating.

The second collection of behind-the-scenes changes was creation of a new series of stored procedures. Kilg.us uses 8 different methods to save and update batter and pitchers statistics. The new stored procedures help streamline the process and reduce the amount of SQL (structured query language–the programming language used to manipulate databases) included in-line with the PHP code. Now those 8 methods can use the same set of stored procedures to interact with the database instead of each doing the interaction their own unique way. These changes probably won’t improve performance substantially, but they do abstract the code a little further which will help with maintenance and future improvements.

Player Layer and Language

Tuesday, June 23rd, 2009

While clicking through my team stats today on Kilg.us, I noticed that the stats display layer seemed to be out of date. After a little investigation, I found that the XML feed for the stats had not been updated since June 16. A little more digging turned up what looks like a change in the way MLB is storing their data. The format of the data itself seems to be the same, but they moved its home on the server. After updating the path to the data, all seems to be well and cumulative stats are up-to-date again.

In other news, I resolved an issue that yesterday’s IE7 “fixes” introduced. In the mega-drop-down, the new JavaScript set a negative top-margin for IE browsers. Turns out IE8 is enough better than IE7 for this to be a problem. So that method has been updated to only apply the margin to Internet Explorer version 7.

And lastly, some new language throughout the site. The Account Info page now displays an alert message if the User’s profile is set to Public but they don’t have a first or last name defined. Obviously it is difficult to find people in a search if you can’t search on their name(s). The new language encourages the inclusion of a name to help other Users in their searches. The Account Info and Sign-up pages now also have note text added to the password sections indicating that passwords must be at least 6 characters long. Previously the only way to know this would be to enter a password that was too short and try to submit it. At that point an alert would pop-up identifying the shortcoming. Now the User is informed up front.

iPhone Optimized Kilg.us Mobile

Tuesday, June 16th, 2009

Finally, after months of development (also known as “inactivity”), Kilg.us now has a mobile-optimized verion: m.kilg.us! Currently Kilg.us Mobile only allows for tracking of stats–no account or team management. With a very simple interface you can log-in, view your dashboard–complete with summary stats for all teams, and track the stats of all your fantasy teams and players.

I currently only have an iPhone, so that is what the site is optimized for. If you have a Pre, Blackberry, or Android phone I would appreciate any feedback and screenshots you can send me of how the site is rendering and performing.

The interface is still undergoing some tweaking, but it is very minor and should not impact the current functionality. After I get a feel for how the mobile version of Kilg.us is performing, I’ll start to plan out the addition of more functionality. I’m not sure if the mobile site will ever be feature-complete, but I expect it will be moving in that direction.

Luckily the object-oriented architecture of Kilg.us made the mobile site painless to implement. I would guess it’s been less than 8 hours in development and most of that time has gone into fine-tuning the interface. Hopefully future additional functionality will be as simple to add!

Mega-Drop-Down

Thursday, June 4th, 2009

The switch teams drop-down menu in Kilg.us has been replaced with a new “mega drop down.” Mega-drop-downs are a recent user interface phenomenon. The concept is pretty simple: instead of a small, awkward, standard drop-down menu try a bigger menu with more clear information and iconography. Testing has found this interface element to be very effective, especially in comparison to standard drop-downs.

Kilg.us’ new mega-drop-down is a mechanism for accessing all the different teams you can track in the application. The menu will show up to 4 of your teams and 4 of your industry teams in nice text/icon display. If you have more than 4 teams in either group, it will provide a standard drop-down to access the remaining teams. I’m considering increasing the industry limit to 8 teams (2 columns) instead of 4 (1 column). Let me know how many teams you are currently managing so I can provide a reasonably useful interface for you.

To activate the menu, mouse over the “Switch Teams” button at the top of any screen and click on it. This will expand the mega-drop-down menu. The menu will remain on the screen as long as your cursor hovers over it. If you cursor moves off the menu for more than a second, the menu will contract.

Yesterday I updated the footer to include a collection of links. All the links are available elsewhere in the site, but hopefully having them re-created at the bottom of the page will be useful to some.