<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://forums.csfbl.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>CSFBL Community</title><link>http://forums.csfbl.com/blogs/default.aspx</link><description>Community Forums for &lt;a href="http://www.csfbl.com"&gt;CSFBL&lt;/a&gt; and ComputerSims Baseball&lt;br&gt;&lt;small&gt;Provided by &lt;a href="http://www.computersims.com"&gt;ComputerSims, LLC&lt;/a&gt;&lt;/small&gt;</description><dc:language>en-US</dc:language><generator>CommunityServer 2.1 SP2 (Build: 61129.1)</generator><item><title>Do players with high plate discipline strike out more? Apparently so.</title><link>http://forums.csfbl.com/blogs/developers_notes/archive/2008/04/19/do-players-with-high-plate-discipline-strike-out-more-apparently-so.aspx</link><pubDate>Sun, 20 Apr 2008 01:13:00 GMT</pubDate><guid isPermaLink="false">c2c8bed2-76c5-4505-a3ac-80a7b243eed6:1219586</guid><dc:creator>brian</dc:creator><slash:comments>8</slash:comments><description>&lt;p&gt;While doing some research related to the sim engine algorithm, I decided it was time to update how some ratings work. The first rating I decided to tackle was DI (Discipline), which corresponds to a batter's plate discipline, and typically influences his tendency to draw walks.&lt;/p&gt;&lt;p&gt;To come up with the proper settings for the sim engine, I first have to figure out how the &lt;i&gt;average&lt;/i&gt; player performs (with regard to things like hitting singles, doubles, triples, and homers, and drawing walks, striking out, and getting hit by a pitch). Then, I figure out how the top 5 percent and bottom 5 percent perform. Those three numbers give me a rough range of values that the sim engine should be able to model. I use MLB from 1990-1994 as a baseline model.&lt;br&gt;&lt;/p&gt;&lt;p&gt;Anyway, back to discipline. Looking at unintentional walks, the average player draws one 8.3 times per 100 plate appearances. The best (top 5 percent) average 15.5 per 100 PAs; the worst (bottom 5 percent) average 3.3 per 100 PAs. Knowing this, I can model it so high, average, and low DI ratings deliver roughly the correct number of walks.&lt;/p&gt;&lt;p&gt;For other outcomes, the strategy is a bit different. I need to identify the relationship between discipline (i.e. walks per 100 plate appearances) and each other outcome. The first one I did was walks to strikeouts. Intuitively, I figured high discipline batters will strike out more. My intuition turned out to be right.&lt;br&gt;&lt;/p&gt;&lt;p&gt;The easiest way to see this is to graph it -- plotting each player's walk rate and strikeout rate along the X axis, with the high-rate players first. The following graph shows the results. (Note that I don't plot each player; rather, I plot players in groups of 20, taking the average for each group, and allow the groups to overlap, so I get less peaks and valleys, but can still see the overall trend.)&lt;br&gt;&lt;/p&gt;&lt;p&gt;&lt;img src="http://forums.csfbl.com/blogs/developers_notes/attachment/1219586.ashx" height="440" width="720"&gt;&lt;/p&gt;&lt;p&gt;The blue line is the unintentional walk rate; the jagged red line is the strikeout rate for the walk rate on the same X axis. The straight red line is a &lt;span style="font-style:italic;"&gt;regression curve&lt;/span&gt; -- basically, a straight line based on many points.&lt;/p&gt;&lt;p&gt;It's pretty easy to see that the strikeout rate decreases as the walk rate decreases. Further, the strikeout rate for the players who walk the most (the left side of the graph) is above average (about .158, compared to an average of .148).&lt;/p&gt;&lt;p&gt;In other words -- yes, high discipline players &lt;span style="font-style:italic;"&gt;should&lt;/span&gt; strike out more, and that is a change you will see coming to the CSFBL sim engine soon! &lt;br&gt;&lt;/p&gt;&lt;img src="http://forums.csfbl.com/aggbug.aspx?PostID=1219586" width="1" height="1"&gt;</description><enclosure url="http://forums.csfbl.com/blogs/developers_notes/attachment/1219586.ashx" length="15401" type="image/png" /><category domain="http://forums.csfbl.com/blogs/developers_notes/archive/tags/csfbl/default.aspx">csfbl</category><category domain="http://forums.csfbl.com/blogs/developers_notes/archive/tags/sim+engine/default.aspx">sim engine</category><category domain="http://forums.csfbl.com/blogs/developers_notes/archive/tags/stats/default.aspx">stats</category><category domain="http://forums.csfbl.com/blogs/developers_notes/archive/tags/analysis/default.aspx">analysis</category></item><item><title>CSBB design (tables and greens)</title><link>http://forums.csfbl.com/blogs/developers_notes/archive/2008/03/28/csbb-design-tables-and-greens.aspx</link><pubDate>Fri, 28 Mar 2008 16:25:00 GMT</pubDate><guid isPermaLink="false">c2c8bed2-76c5-4505-a3ac-80a7b243eed6:1199845</guid><dc:creator>brian</dc:creator><slash:comments>23</slash:comments><description>&lt;p&gt;Green, back by popular demand.&lt;/p&gt;&lt;p&gt;Opinions?&lt;/p&gt;&lt;p&gt;&lt;a href="http://forums.csfbl.com/photos/csbbscreenshots/picture1199840.aspx" target="_blank"&gt;&lt;img src="http://forums.csfbl.com/photos/csbbscreenshots/images/1199840/640x318.aspx" border="0"&gt;&lt;/a&gt;&lt;br&gt;&amp;nbsp;&lt;/p&gt;&lt;img src="http://forums.csfbl.com/aggbug.aspx?PostID=1199845" width="1" height="1"&gt;</description><category domain="http://forums.csfbl.com/blogs/developers_notes/archive/tags/computersims+baseball/default.aspx">computersims baseball</category><category domain="http://forums.csfbl.com/blogs/developers_notes/archive/tags/design+mockups/default.aspx">design mockups</category></item><item><title>CSBB Final Design Mockups</title><link>http://forums.csfbl.com/blogs/developers_notes/archive/2008/03/26/csbb-final-design-mockups.aspx</link><pubDate>Wed, 26 Mar 2008 16:12:00 GMT</pubDate><guid isPermaLink="false">c2c8bed2-76c5-4505-a3ac-80a7b243eed6:1197740</guid><dc:creator>brian</dc:creator><slash:comments>28</slash:comments><description>&lt;p&gt;The time is here -- final mockups for CSBB! Let me know which you like best (#1, 2, 3, or 4) -- if you can even tell the difference between them, that is. :)&lt;/p&gt;&lt;p&gt;(Click the image for a larger version.)&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;a href="http://forums.csfbl.com/photos/csbbscreenshots/images/1197735/original.aspx" target="_blank"&gt;&lt;img src="http://forums.csfbl.com/photos/csbbscreenshots/images/1197735/500x355.aspx" border="0" height="355" width="500"&gt;&lt;/a&gt;&lt;br&gt;&amp;nbsp;&lt;/p&gt;&lt;img src="http://forums.csfbl.com/aggbug.aspx?PostID=1197740" width="1" height="1"&gt;</description><category domain="http://forums.csfbl.com/blogs/developers_notes/archive/tags/computersims+baseball/default.aspx">computersims baseball</category><category domain="http://forums.csfbl.com/blogs/developers_notes/archive/tags/design+mockups/default.aspx">design mockups</category></item><item><title>CSBB Design Mockups -- which one do you like best?</title><link>http://forums.csfbl.com/blogs/developers_notes/archive/2008/03/19/csbb-design-mockups-which-one-do-you-like-best.aspx</link><pubDate>Wed, 19 Mar 2008 21:49:00 GMT</pubDate><guid isPermaLink="false">c2c8bed2-76c5-4505-a3ac-80a7b243eed6:1191830</guid><dc:creator>brian</dc:creator><slash:comments>21</slash:comments><description>&lt;p&gt;There's seven design mockups I have available for consideration for CSBB. Check them out below, and let me know which ones you like best -- and why! (NOTE: Click on the image for a larger view.)&lt;br&gt;&lt;/p&gt;&lt;p&gt;&lt;a href="http://forums.csfbl.com/photos/csbbscreenshots/images/1191827/original.aspx"&gt;&lt;img src="http://forums.csfbl.com/photos/csbbscreenshots/images/1191827/332x480.aspx" title="CSBB Design Mockups" alt="CSBB Design Mockups" height="480" width="332"&gt;&lt;/a&gt;&amp;nbsp;&lt;/p&gt;&lt;img src="http://forums.csfbl.com/aggbug.aspx?PostID=1191830" width="1" height="1"&gt;</description><category domain="http://forums.csfbl.com/blogs/developers_notes/archive/tags/computersims+baseball/default.aspx">computersims baseball</category><category domain="http://forums.csfbl.com/blogs/developers_notes/archive/tags/design+mockups/default.aspx">design mockups</category></item><item><title>CSBB Design Mockup #1</title><link>http://forums.csfbl.com/blogs/developers_notes/archive/2008/02/27/csbb-design-mockup-1.aspx</link><pubDate>Wed, 27 Feb 2008 17:51:00 GMT</pubDate><guid isPermaLink="false">c2c8bed2-76c5-4505-a3ac-80a7b243eed6:1166816</guid><dc:creator>brian</dc:creator><slash:comments>17</slash:comments><description>&lt;p&gt;After a few back-and-forth sessions with the designer, we have a very early CSBB web page design mockup. The mockup is just the header and top navigation bar.&lt;/p&gt;&lt;p&gt;&lt;img src="http://forums.csfbl.com/photos/csbbscreenshots/images/1166803/640x100.aspx" title="CSBB Design Mockup" alt="CSBB Design Mockup" height="100" width="640"&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;You'll notice the navigation bar is simplified, and has two levels. The "Leagues" option will also offer a drop-down menu where you can quickly jump to any league (leagues which you have teams in will be listed first). In the example above, we're looking at the "A New Beginning" league. I'm debating whether to have a third level menu bar when you are viewing a team, or to simply expand the top level menu bar to include a "Teams" option. I'll have to see what works best.&lt;/p&gt;&lt;p&gt;The color scheme will also be different. I'm going to try to get away from the "Red Planet" approach of CSFBL. We're still kicking around logo ideas, but the one above has some decent hints as to what will be a part of it -- the ComputerSims brand, the word baseball, and some sort of baseball symbol (home plate being the preference, for historical and personal reasons).&lt;/p&gt;&lt;p&gt;(For those who recognize a bit of similarity, I took some subtle cues from &lt;a href="http://sports.yahoo.com/mlb"&gt;Yahoo's MLB web site&lt;/a&gt;.)&lt;/p&gt;&lt;p&gt;What's your thoughts on the above? Consider, of course, that it's an early preview, and we want your feedback to make sure we get it right before we say it's final!&lt;br&gt;&amp;nbsp;&lt;/p&gt;&lt;img src="http://forums.csfbl.com/aggbug.aspx?PostID=1166816" width="1" height="1"&gt;</description></item><item><title>CSFBL to CSBB: Finding catcher caught stealing numbers</title><link>http://forums.csfbl.com/blogs/developers_notes/archive/2008/02/18/csfbl-to-csbb-finding-catcher-caught-stealing-numbers.aspx</link><pubDate>Mon, 18 Feb 2008 22:08:00 GMT</pubDate><guid isPermaLink="false">c2c8bed2-76c5-4505-a3ac-80a7b243eed6:1156524</guid><dc:creator>brian</dc:creator><slash:comments>1</slash:comments><description>&lt;p&gt;A common gripe in CSFBL is the lack of fielding stats for catchers -- particularly, stolen bases against and runners thrown out trying to steal. Fortunately, both will be present in CSBB -- and all historical data will be included!&amp;nbsp;&lt;/p&gt;&lt;p&gt;This actually was quite easy to do, thanks to one "feature" of CSFBL. Since there are no in-game substitutes, a catcher who started the game finished the game. Finding a catcher's SB/CS against numbers requires adding up the opposing team's SB/CS numbers for a game.&lt;/p&gt;&lt;p&gt;The obvious question you want to ask is this: "If it's so easy, why not add it to CSFBL?" Well, first, it would require modifying the fielding stats database to accept two new rows of data (SB and CS). This doesn't sound like a big deal on the surface, but it is. There are over 150 million rows of data in the game fielding stats table (one row per player per game). Adding these two fields would add over 300MB of disk space. Add to that the need to add similar columns to season totals and league totals, and we're looking at many hundreds of MB of disk space -- and that's without any unintended consequences. Further, I am intentionally trying to avoid making architectural changes to CSFBL to avoid situations where a "quick change" becomes much more than that, due to problems or snowball effects.&lt;/p&gt;&lt;p&gt;In short: You won't see it in CSFBL, but the data's there, and it'll "suddenly appear" in CSBB.&lt;/p&gt;&lt;img src="http://forums.csfbl.com/aggbug.aspx?PostID=1156524" width="1" height="1"&gt;</description></item><item><title>Migrating from CSFBL to CSBB: Part II</title><link>http://forums.csfbl.com/blogs/developers_notes/archive/2008/01/26/migrating-from-csfbl-to-csbb-part-ii.aspx</link><pubDate>Sun, 27 Jan 2008 03:51:00 GMT</pubDate><guid isPermaLink="false">c2c8bed2-76c5-4505-a3ac-80a7b243eed6:1135778</guid><dc:creator>brian</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;Just over ten days ago I wrote about &lt;a href="http://forums.csfbl.com/blogs/developers_notes/archive/2008/01/15/migrating-from-csfbl-to-csbb.aspx#comments"&gt;how the CSFBL to CSBB migration script was coming along&lt;/a&gt;. Since then, I haven't had as much time as I'd like to work on CSBB (too busy with my real job!), but there has been some progress -- and some weird issues resolved.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Apparently, there were a handful of players who "jumped leagues" -- played some games in one league, and some in another. This will cause issues in migration, but to resolve it, the stats for the player in the league which is not his "final" league (i.e. the league he ended his career with) will be recorded but attributed to an "unknown" player. Only about eight players are affected by this, and most of the data was from games simmed about four years ago, so it shouldn't have a huge impact -- but it did take an hour or two to properly address.&lt;/li&gt;&lt;li&gt;I've come up with a somewhat more efficient way to track "who" played in a game, which will be useful down the road when we add defensive substitutions and such.&lt;br&gt;&lt;/li&gt;&lt;li&gt;Batting stats for each game are migrating. In fact, I'm watching A New Beginning migrate its games right now, boxscores included.&lt;br&gt;&lt;/li&gt;&lt;/ul&gt;The migration script is proving to do a pretty good job.&lt;br&gt;&lt;img src="http://forums.csfbl.com/aggbug.aspx?PostID=1135778" width="1" height="1"&gt;</description></item><item><title>Migrating from CSFBL to CSBB</title><link>http://forums.csfbl.com/blogs/developers_notes/archive/2008/01/15/migrating-from-csfbl-to-csbb.aspx</link><pubDate>Wed, 16 Jan 2008 03:17:00 GMT</pubDate><guid isPermaLink="false">c2c8bed2-76c5-4505-a3ac-80a7b243eed6:1123984</guid><dc:creator>brian</dc:creator><slash:comments>12</slash:comments><description>&lt;p&gt;So far, I've never "officially" said that we will migrate leagues from CSFBL to CSBB. I hinted that it probably will happen, but I never really committed to it publicly.&lt;/p&gt;&lt;p&gt;By the end of this post, I will no longer be able say that!&lt;/p&gt;&lt;p&gt;For most of the past two weeks, I've been working on the migration script from CSFBL to CSBB. By "migration script" I mean writing a program that will read data from the current CSFBL database and add it to the CSBB database.&lt;/p&gt;&lt;p&gt;It's not as trivial as it sounds, for a few reasons.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;The CSBB database will have differences from the CSFBL database, both to support additional features and to be more efficient.&lt;/li&gt;&lt;li&gt;It requires lots of baby steps. I take one piece of CSFBL data at a time, build the structures for it in CSBB, then write the migration script. (In other words -- I have to build the destination first!)&lt;/li&gt;&lt;li&gt;Some things to be tracked in CSBB aren't conveniently available in CSFBL, so I have to write new queries to get them.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Currently, the migration script will migrate all of the following items for the entire history of a league. (It runs against one league at a time.)&lt;/p&gt;&lt;blockquote&gt;&lt;p&gt;Users / Leagues / Conferences / Divisions / Teams / Players / Seasons / Games / Game Results / Linescores / Standings&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;Whew! Here's a sampling of some of the improvements and new stuff you'll see in CSBB.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;The "Standings" in CSBB will have precalculated W-L records, divisional W-L records, runs scored/runs against, and division "place" (1st, 2nd, etc.). This will make it practical for us to provide this data on standings pages as it will be more readily available.&lt;/li&gt;&lt;li&gt;Linescores don't just track runs per inning, they will also track hits, errors, and runners left on base per inning (and, as a result, per game). It may be that only runs per inning are carried in hsitorical (CSFBL-simulated) games, as the other data isn't tracked at this time, but it will be tracked in CSBB.&lt;/li&gt;&lt;li&gt;I'm paying attention to how various elements are structured to ensure that we can support division realignment and alternate league/conference/division structures down the road.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;One thing of note is that all data in CSBB will have different unique ID numbers. For example, the player you've known and loved as having "playerid" of 94382 may have a totally different playerid in CSBB. However, to ensure that old links will still work in CSBB, and to avoid the horror of having to remember new numbers, during the migration process I am recording "legacy ID numbers" for the most important objects (teams, players, leagues, seasons, etc.). Combined with a cool way of handling URLs (the addresses of web pages), your old ID numbers -- and old URLs -- will still work when CSBB replaces CSFBL.&lt;/p&gt;&lt;p&gt;Come to think of it, the URLs you'll see in CSBB will be a feature in themselves. But more on that another day...&lt;/p&gt;&lt;p&gt;[And trust me -- "another day" will be much sooner than you think.]&lt;/p&gt;&lt;p&gt;&lt;a href="http://forums.csfbl.com/photos/csbbscreenshots/picture1123978.aspx" target="_blank"&gt;&lt;img src="http://forums.csfbl.com/photos/csbbscreenshots/images/1123978/original.aspx" border="0"&gt;&lt;/a&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;a href="http://forums.csfbl.com/photos/csbbscreenshots/picture1123980.aspx" target="_blank"&gt;&lt;img src="http://forums.csfbl.com/photos/csbbscreenshots/images/1123980/original.aspx" border="0"&gt;&lt;/a&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;a href="http://forums.csfbl.com/photos/csbbscreenshots/picture1123981.aspx" target="_blank"&gt;&lt;img src="http://forums.csfbl.com/photos/csbbscreenshots/images/1123981/original.aspx" border="0"&gt;&lt;/a&gt;&amp;nbsp;&lt;/p&gt;&lt;img src="http://forums.csfbl.com/aggbug.aspx?PostID=1123984" width="1" height="1"&gt;</description></item><item><title>Lineups and rating leadoff hitters</title><link>http://forums.csfbl.com/blogs/developers_notes/archive/2007/02/15/lineups-and-rating-leadoff-hitters.aspx</link><pubDate>Thu, 15 Feb 2007 21:11:00 GMT</pubDate><guid isPermaLink="false">c2c8bed2-76c5-4505-a3ac-80a7b243eed6:763995</guid><dc:creator>brian</dc:creator><slash:comments>31</slash:comments><description>&lt;p&gt;When I build lineups for my teams, I usually sort my players from best to worst, then assign them to slots that I feel are most appropriate. Typically, OPS -- On Base Percentage (OBP) plus Slugging (SLG) is the stat I use, as it incorporates all facets of the game: the ability to get on base and move baserunners. The high OPS guys generally bat between second and fifth. Those guys who have a higher OBP generally get the higher spots in the order, as you want guys who get on base more to be ahead of the guys who slug.&lt;/p&gt;&lt;p&gt;What about the guy who leads off? The guy who bats first in the order has some interesting characteristics (numbered for future reference). For each, we'll examine how they impact our decision on who should be the leadoff hitter.&lt;/p&gt;&lt;ol&gt;&lt;li&gt;&lt;b&gt;The leadoff hitter gets more plate appearances than any other player.&lt;/b&gt; As a result, he should be a good hitter, better than your team average, because he'll hit more than anyone else.&lt;br&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;He is always up at least once with no runners on and no one out.&lt;/b&gt; If the typical leadoff batter has four plate appearances per game, 25% of his times to the plate will be with none on and none out. As a result, his ability to move runners by getting extra-base hits -- especially home runs -- is reduced in 25% of his at-bats.&lt;br&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;He is generally followed by the best sluggers on the team.&lt;/b&gt; Because of this, the leadoff guy &lt;i&gt;must &lt;/i&gt;get on base, and if he can get in scoring position right away, even better. A leadoff hitter who slaps doubles or can steal bases will also reduce the chance the sluggers ground into double plays.&lt;br&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;The guys who bat before him are generally the worst hitters on the team.&lt;/b&gt; This is magnified in non-DH leagues, but either way, the 7th through
9th guys usually hit below your team average. This generally means that
the leadoff hitter is more often coming up at the top of the inning or
when there are less runners on base ahead of him (as with #2, reducing
the value of moving runners around the bases).&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;That's all well and good, but can we &lt;i&gt;measure &lt;/i&gt;how well a player is suited for leading off, similar to how we have OPS for all-around batting?&lt;/p&gt;&lt;p&gt;To bridge this gap, I came up with what I am calling &lt;b&gt;Leadoff Percentage&lt;/b&gt;.&amp;nbsp;&lt;/p&gt;&lt;blockquote&gt;&lt;p&gt;Leadoff Percentage =&amp;nbsp; (h + 2b + 3b*2 - hr*2 + bb - ibb + hbp + sb - cs) / (ab + bb - ibb + hbp + sb + cs)&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;What leadoff percentage (LOP) does is this:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Gives positive credit to a player's ability to get on base (H, BB excluding IBB, HBP) and to advance bases (SB).&lt;/li&gt;&lt;li&gt;Gives extra credit to a player's ability to hit extra bases, excluding home runs.&lt;br&gt;&lt;/li&gt;&lt;li&gt;Gives negative credit to a player's tendency to generate outs (either batted outs or CS).&lt;br&gt;&lt;/li&gt;&lt;li&gt;Gives negative credit to a player's ability to hit home runs. This is necessary to keep guys like &lt;a href="http://www.baseball-reference.com/w/willite01.shtml"&gt;Ted Williams&lt;/a&gt; (#1 career OBP of .482, #7 career AVG of .344) from showing up at the top of the list. Home runs are less important to leadoff hitters, anyway.&lt;a href="http://www.baseball-reference.com/w/willite01.shtml"&gt;&lt;br&gt;&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Looking at MLB players whose first year was on or after 1940, with at least 2,000 career plate appearances, the following players are the top five in career LOP.&lt;br&gt;&lt;/p&gt;&lt;ol&gt;&lt;li&gt;&lt;a href="http://www.baseball-reference.com/f/fainfe01.shtml"&gt;Ferris Fain&lt;/a&gt; (.458). Far from the prototypical 1B, Fain played from 1947 to 1955, posting a respectable batting average (.290) and an excellent OBP (.424). He didn't steal much (46 career steals) and didn't slug much (48 career HRs), but he sure as heck got on base a lot.&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.baseball-reference.com/b/boggswa01.shtml"&gt;Wade Boggs&lt;/a&gt; (.450). It should come as no surprise to find Boggs here. Powered by his career .328 batting average and .415 OBP, he did it with his bat (578 career doubles) and not with his feet (24 stolen bases -- and 35 times caught stealing!).&lt;br&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.baseball-reference.com/a/ashburi01.shtml"&gt;Richie Ashburn&lt;/a&gt; (.445). The first speedster in our list, Ashburn batted .308 for his career (.396 OBP) and stole 234 bases. He had no power (29 career HRs) -- one of the lowest home run rates among regulars in MLB history.&lt;br&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.baseball-reference.com/r/robinja02.shtml"&gt;Jackie Robinson&lt;/a&gt; (.439). His numbers (.311 BA, .409 OBP) and speed (197 career steals) are measurable; his competitiveness is off the charts.&lt;br&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.baseball-reference.com/r/raineti01.shtml"&gt;Tim Raines&lt;/a&gt; (.435). When you consider his career numbers (.294 BA, .385 OBP, 808 SB and only 146 CS) spanned four decades (1979-2002), it's even more impressive. His 85% success rate on steals is among the all-time best.&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;Where are the legendary leadoff hitters of modern times?&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.baseball-reference.com/h/henderi01.shtml"&gt;Rickey Henderson&lt;/a&gt; (.429) ranks 7th. The power he displayed in his late 20's and early 30's moved him a notch below the rest.&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.baseball-reference.com/c/carewro01.shtml"&gt;Rod Carew&lt;/a&gt; (.428) ranks 8th. Bad stolen base success rate (career 65%) hurt him.&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.baseball-reference.com/g/gwynnto01.shtml"&gt;Tony Gwynn&lt;/a&gt; (.424) ranks 11th. He'd be at the top of the list if he walked more and didn't put on the weight which stopped him on the basepaths (two-thirds of his steals came in the first six full seasons).&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.baseball-reference.com/m/morgajo02.shtml"&gt;Joe Morgan&lt;/a&gt; (.416) ranks 21st. He is the model for &lt;a href="http://www.csfbl.com"&gt;CSFBL&lt;/a&gt;'s Discipline rating, for good reason: he was one of the most prolific walkers in modern baseball, with an OBP 121 points higher than his batting average (.392 to .271). He also stole 689 bases (81% success rate).&lt;br&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.baseball-reference.com/r/rosepe01.shtml"&gt;Pete Rose&lt;/a&gt; (.409) ranks 32nd. He was a hustler (in more ways than one), and had a strong bat (.303 BA, .375 OBP), but sloppy with the steal (57% success rate).&lt;br&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Who's the highest slugger on the list? &lt;a href="http://www.baseball-reference.com/m/musiast01.shtml"&gt;Stan Musial&lt;/a&gt; (.423, 14th overall). Stan the Man was an extra-bases machine. In the first four full seasons of his career, he had 77 triples to 70 home runs. Once he found his home run power at 26, that ended, as he went on to hit 475 home runs. Still, a .331 BA, .417 OPS, and all those extra-base hits (#3 in career doubles) gave him a good LOP. A leadoff guy until 26, at least.&lt;/p&gt;&lt;p&gt;The bottom line on leadoff hitters is this: make sure he's good, because he's going to be at-bat more than anyone else, but don't neglect the value he provides to the guy who hits next (because that guy will get the second-most times at-bat).&lt;br&gt;&lt;/p&gt;&lt;img src="http://forums.csfbl.com/aggbug.aspx?PostID=763995" width="1" height="1"&gt;</description></item><item><title>First SimpleSim Update of 2007</title><link>http://forums.csfbl.com/blogs/developers_notes/archive/2007/01/06/first-simplesim-update-of-2007.aspx</link><pubDate>Sat, 06 Jan 2007 20:06:00 GMT</pubDate><guid isPermaLink="false">c2c8bed2-76c5-4505-a3ac-80a7b243eed6:741192</guid><dc:creator>RickA</dc:creator><slash:comments>2</slash:comments><description>&lt;p&gt;I made only one &lt;a href="http://forums.csfbl.com/blogs/communitymanagers/archive/2007/01/01/new-year-s-resolutions-2007.aspx"&gt;New Year's Resolution&lt;/a&gt; this year and I broke it pretty much the first day I made it. &lt;img src="http://forums.csfbl.com/emoticons/emotion-9.gif" alt="Crying" /&gt;&amp;nbsp;&amp;nbsp; Fortunately, I've been able to make up for it by working on it several hours last night and several more hours this morning so I'm still averaging 1 hour per day. &lt;img src="http://forums.csfbl.com/emoticons/emotion-4.gif" alt="Stick out tongue" /&gt;&lt;/p&gt;&lt;p&gt;The Steal Logic is fully ported to SimpleSim but it's not being called yet (I'll be working on this the rest of today).&amp;nbsp; When I first finished porting the Steal logic I tried to sim a game and it wouldn't get past the first batter.&amp;nbsp; Apparently, the sim engine doesn't like it when there's no pitcher assigned. &lt;img src="http://forums.csfbl.com/emoticons/emotion-4.gif" alt="Stick out tongue" /&gt;&lt;br&gt;&lt;br&gt;I updated the team xml files to include a Starting Pitcher and I updated the LoadXML logic to load the Starting Pitcher from the xml and assign him as the current pitcher before the game starts.&amp;nbsp; Some of you may remember that Brian had said he already simmed a game with SimpleSim so the missing pitcher shouldn't have happened but a lot was changed from the time he simmed that first game to the time he shared the code with the rest of the dev team.&amp;nbsp;&amp;nbsp; The missing Starting Pitcher was just one of several things that didn't work correctly.&amp;nbsp; It took some time to fix everything but I finally got it to sim an entire game (still without the Steal Logic) and it's fast...real fast.&lt;br&gt;&lt;/p&gt;&lt;p&gt;Remember, this is a very simple engine, there is a lot of missing logic (no steal logic, no logic to pull the pitcher, no advanced baserunning like runners taking extra bases, no errors, etc).&amp;nbsp; The engine just does hits, walks, strikeouts, and regular outs and moves players around the bases and counts the runs properly.&amp;nbsp; Once all of the necessary logic is implemented it will slow the sim down a bit but I bet it'll be insignificant...especially compared to the current version.&lt;br&gt;&lt;/p&gt;&lt;p&gt;You may have seen &lt;a href="http://forums.csfbl.com/forums/thread/738198.aspx"&gt;Brian's announcement&lt;/a&gt; about the fix he implemented that brought the sim time down from 15 seconds to about 5 seconds. Well...SimpleSim crushes that by a huge margin.&amp;nbsp; Here's the time stamps of 2 games:&lt;/p&gt;&lt;p&gt;Game 1: &lt;br&gt;
Started:&amp;nbsp; 12:42:50.6356250&lt;br&gt;
Finished: 12:42:50.6668750&lt;/p&gt;&lt;p&gt;Game 2: &lt;br&gt;
Started:&amp;nbsp; 12:45:30.9325000&lt;br&gt;
Finished: 12:45:30.9637500&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;br&gt;A full game in three hundredths of a second?!? Now that's fast!&amp;nbsp; Even with all the full logic I bet it'll still be far less than a second! &lt;img src="http://forums.csfbl.com/emoticons/emotion-19.gif" alt="Party!!!" /&gt;&lt;br&gt;&lt;/p&gt;&lt;p&gt;I've mentioned a few times that we are designing the game to be able to sim thousands of games at the same time instead of the way it is now where each game is simmed from beginning to end before it moves on to the next game. The new game will sim one play in one game and then move on to the next game and sim one play and so on.&amp;nbsp; When it gets to the end of the list of games it starts over and sims one play per game again.&amp;nbsp; So, the time we really need is how long it takes to sim one play instead of the whole game from start to finish.&lt;/p&gt;&lt;p&gt;I simmed a couple more games and put timers in between each play.&amp;nbsp; The engine simmed from the start of the game until the 4th before the timer increased at all and it ended with that same time.&lt;br&gt; &lt;/p&gt;&lt;p&gt;Game Started:&amp;nbsp; 12:53:27.5418750&lt;br&gt;Middle of 4th:&amp;nbsp;&amp;nbsp;&amp;nbsp; 12:53:27.5575000&lt;br&gt;Game Finished: 12:53:27.5575000&lt;/p&gt;&lt;p&gt;Based on this data I don't think we'll have any problems handling 1,000+ games simming at the same time.&amp;nbsp; WOO!&amp;nbsp; &lt;img src="http://forums.csfbl.com/emoticons/emotion-19.gif" alt="Party!!!" /&gt;&lt;/p&gt;&lt;p&gt;I mentioned above that I was going to be working on adding in the Steal Logic.&amp;nbsp; I'm also going to work on adding a full roster and bullpen and add in the logic to pull pitchers. I'll make another blog post when I'm finished. &lt;img src="http://forums.csfbl.com/emoticons/emotion-21.gif" alt="Yes" /&gt;&amp;nbsp;&lt;/p&gt;&lt;img src="http://forums.csfbl.com/aggbug.aspx?PostID=741192" width="1" height="1"&gt;</description><category domain="http://forums.csfbl.com/blogs/developers_notes/archive/tags/SimpleSim+Update/default.aspx">SimpleSim Update</category></item><item><title>New Year's Resolutions - 2007</title><link>http://forums.csfbl.com/blogs/communitymanagers/archive/2007/01/01/new-year-s-resolutions-2007.aspx</link><pubDate>Tue, 02 Jan 2007 02:41:00 GMT</pubDate><guid isPermaLink="false">c2c8bed2-76c5-4505-a3ac-80a7b243eed6:736659</guid><dc:creator>chrisgeleven</dc:creator><slash:comments>3</slash:comments><description>&lt;p&gt;Us community managers at ComputerSims aren't perfect...if we were, we would be getting paid for this gig! So without further delay, here is some resolutions that I am suggesting for all of us with this semi-important title:&lt;/p&gt;&lt;ol&gt;&lt;li&gt;&lt;b&gt;Return PM's in a timely fashion!&lt;/b&gt; - I just sent 11 replies in 5 minutes to PM's dating back to December 11th. Yes, I am way tardy on the PM front lately and it is a definite thing I am going to work on, even though I am trying to blame a vacation and the holidays on this latest fiasco.&lt;br&gt;&lt;br&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;Spend more time on the forums!&lt;/b&gt; - Lately my posting activity on the forums, especially on the very important forums like Questions and Answers or Bugs/Issues, hasn't been anything to write home about it. I definitely need to step up my presence.&lt;br&gt;&lt;br&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;Return of the Community Questions! &lt;/b&gt;- We need to start bringing up discussion topics for our users more, so we can pick their brains for excellent ideas for ComputerSims Baseball.&lt;br&gt;&lt;br&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;Finish ComputerSims Baseball! &lt;/b&gt;- Well, duh...&lt;br&gt;&lt;br&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;Win a World Series...finally, after 40 seasons or so! &lt;/b&gt;- Sorry, personal goal of mine...but hey, I think anyone who loses a Game 7 of the World Series needs to get moral support from the user base.&lt;/li&gt;&lt;/ol&gt;What are your CSFBL/CSBB resolutions?&lt;br&gt;&lt;img src="http://forums.csfbl.com/aggbug.aspx?PostID=736659" width="1" height="1"&gt;</description><category domain="http://forums.csfbl.com/blogs/communitymanagers/archive/tags/CSFBL/default.aspx">CSFBL</category><category domain="http://forums.csfbl.com/blogs/communitymanagers/archive/tags/World+Series/default.aspx">World Series</category><category domain="http://forums.csfbl.com/blogs/communitymanagers/archive/tags/ComputerSims/default.aspx">ComputerSims</category><category domain="http://forums.csfbl.com/blogs/communitymanagers/archive/tags/Community+Manager+blog/default.aspx">Community Manager blog</category></item><item><title>Holiday 2006 CSBB Update</title><link>http://forums.csfbl.com/blogs/developers_notes/archive/2006/12/19/holiday-2006-csbb-update.aspx</link><pubDate>Wed, 20 Dec 2006 03:43:00 GMT</pubDate><guid isPermaLink="false">c2c8bed2-76c5-4505-a3ac-80a7b243eed6:728796</guid><dc:creator>RickA</dc:creator><slash:comments>3</slash:comments><description>&lt;p&gt;With the Holidays rapidly approaching I figured I would give everybody a little present...a quick update on the progress of CSBB.&amp;nbsp; &lt;img src="http://forums.csfbl.com/emoticons/emotion-4.gif" alt="Stick out tongue" /&gt;&lt;/p&gt;&lt;p&gt;I have a lot of time off from work the rest of this year and I'm planning on working on &lt;a href="http://forums.csfbl.com/blogs/developers_notes/archive/2006/11/13/The-new-sim-engine-takes-shape.aspx" title="SimpleSim"&gt;SimpleSim&lt;/a&gt; as much as possible. I still have a wife and kids and parties &lt;img src="http://forums.csfbl.com/emoticons/emotion-19.gif" alt="Party!!!" /&gt; to go to so I won't be working on it 24/7, but it will still be a whole lot more than if I was working. &lt;img src="http://forums.csfbl.com/emoticons/emotion-21.gif" alt="Yes" /&gt;&lt;img src="http://forums.csfbl.com/emoticons/emotion-2.gif" alt="Big Smile" /&gt;&amp;nbsp; SimpleSim is our first test sim engine that will sim a game from start to finish but it's severely lacking in features...hence the name. &lt;img src="http://forums.csfbl.com/emoticons/emotion-4.gif" alt="Stick out tongue" /&gt;&amp;nbsp; I'm hoping to add a lot of the missing features to get the engine up to the current CSFBL feature set.&amp;nbsp; Basically, it'll be a  straight port of most of the current VB code but it'll be done with the new architecture that Brian has come up with for SimpleSim.&amp;nbsp; Once we get it up to the current CSFBL feature set we plan on playing around with the code to see what works and what doesn't in regards to the current design and finding the best approaches to adding new features. Then we build the real CSBB. &lt;img src="http://forums.csfbl.com/emoticons/emotion-21.gif" alt="Yes" /&gt;&lt;/p&gt;&lt;p&gt;So far I've been playing with SimpleSim for the last few nights and I've been working on adding the Stolen Bases logic.&amp;nbsp; I got about half way through it and realized that there wasn't any manager options in the engine yet, so I had to add in the manager options before I could finish the Stolen Bases logic. I'm almost done adding the manager options and I'm hoping to have the rest of the Stolen Bases logic done in the next day or so. &lt;img src="http://forums.csfbl.com/emoticons/emotion-21.gif" alt="Yes" /&gt; Then it's on to the bullpen logic, which shouldn't take more than a day or two....hopefully.&amp;nbsp; &lt;img src="http://forums.csfbl.com/emoticons/emotion-4.gif" alt="Stick out tongue" /&gt;&amp;nbsp; &lt;br&gt;&lt;br&gt;If things go smoothly, and they have been so far, I should have quite a few of the features added by the new year. I'll try and post another update soon with my progress.&amp;nbsp; &lt;img src="http://forums.csfbl.com/emoticons/emotion-21.gif" alt="Yes" /&gt;&lt;br&gt; &lt;/p&gt;&lt;p&gt;I hope everybody has a great Christmas and a Happy New Year!&amp;nbsp; &lt;img src="http://forums.csfbl.com/emoticons/emotion-51.gif" alt="Gift" /&gt;&lt;img src="http://forums.csfbl.com/emoticons/emotion-19.gif" alt="Party!!!" /&gt;&lt;br&gt;&amp;nbsp;&lt;/p&gt;&lt;img src="http://forums.csfbl.com/aggbug.aspx?PostID=728796" width="1" height="1"&gt;</description><category domain="http://forums.csfbl.com/blogs/developers_notes/archive/tags/computersims+baseball/default.aspx">computersims baseball</category><category domain="http://forums.csfbl.com/blogs/developers_notes/archive/tags/developer+notes/default.aspx">developer notes</category></item><item><title>Some lessons in governing leagues</title><link>http://forums.csfbl.com/blogs/communitymanagers/archive/2006/11/20/some-lessons-in-governing-leagues.aspx</link><pubDate>Tue, 21 Nov 2006 01:47:00 GMT</pubDate><guid isPermaLink="false">c2c8bed2-76c5-4505-a3ac-80a7b243eed6:705446</guid><dc:creator>chrisgeleven</dc:creator><slash:comments>2</slash:comments><description>&lt;p&gt;I recently was asked for some tips on how to properly govern leagues in the CSFBL. It was a question I really pondered, as I was unsure if I could provide the proper guidance. This is because I left my previous jobs as commissioner in several leagues due to burning out badly.&lt;br&gt;&lt;/p&gt;&lt;p&gt;I decided though that for those exact reasons I should answer the question, because if I could help someone else from burning out and properly govern a league, then I succeeded in the end.&lt;br&gt;&lt;/p&gt;&lt;p&gt;So here it goes...some tips for commissioners and leagues around the CSFBL on how to run a league the right way, straight from someone who did the exact opposite on many of them at one time or another.&lt;br&gt;&lt;/p&gt;&lt;ol&gt;&lt;li&gt;&lt;b&gt;Baby Steps&lt;/b&gt; - Don't propose a bunch of rule changes in one time. Not only will it be viewed as a power grab, but no one has the time to handle them all at once. Instead take your time, do it right, and reap the rewards in the long run.&lt;br&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;Keep It Simple, Stupid&lt;/b&gt; - The KISS principle applies 100% to running leagues. Rules are needed, but keep them simple, keep them limited in number, and make sure they are 100% clear. Do it right the first time, so they never have to change again. Do it right, and when bad situations occur (such as a commissioner suddenly disappearing or stepping down), the rules take over and clearly spell out what to do.&lt;br&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;Interview Potential Owners&lt;/b&gt; - When there is an opening in your league, interview potential owners just like it is a real world job. Try to avoid owners with egos and agendas. Instead try to find owners who love playing baseball (and the CSFBL) and love talking about it, even if the experience isn't there. An owner can be taught how to play the CSFBL...an owner cannot be taught to be nice, friendly, and become a vital member of the community...that comes naturally and can not be created.&lt;/li&gt;&lt;li&gt;&lt;b&gt;Provide Value&lt;/b&gt; - Get various owners to do special reports on the league and its events. Power Rankings, interesting stats, playoff race updates, trade analysis, HOF, etc. all add value and keep owners interested while making your league unique. Plus anything that creates discussion is a major positive.&lt;/li&gt;&lt;li&gt;&lt;b&gt;Talk With Owners&lt;/b&gt; - Make a point to talk with owners about the league and its direction. The worst thing you can do is not ask other owners for input.&lt;br&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;Low Turnover is Key&lt;/b&gt; - Nothing kills a league faster then high turnover. While turnover cannot be avoided forever, you need to limit the reasons for turnover. Stability brings the best out of baseball and the CSFBL.&lt;/li&gt;&lt;/ol&gt;These aren't 100% guaranteed, because every league and situation is unique. However I hope they help everyone out when it comes to running a league.&lt;br&gt;&lt;img src="http://forums.csfbl.com/aggbug.aspx?PostID=705446" width="1" height="1"&gt;</description><category domain="http://forums.csfbl.com/blogs/communitymanagers/archive/tags/Tips/default.aspx">Tips</category><category domain="http://forums.csfbl.com/blogs/communitymanagers/archive/tags/CSFBL/default.aspx">CSFBL</category></item><item><title>Finally, the pieces come together</title><link>http://forums.csfbl.com/blogs/developers_notes/archive/2006/11/20/finally-the-pieces-come-together.aspx</link><pubDate>Mon, 20 Nov 2006 22:29:00 GMT</pubDate><guid isPermaLink="false">c2c8bed2-76c5-4505-a3ac-80a7b243eed6:705329</guid><dc:creator>brian</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;After months of toiling on database code, programming methodologies, design patterns, security implications, and countless other things, it looks like it's finally come together.&lt;/p&gt;&lt;p&gt;We finally have what I think is a solid, stable foundation that we'll build off. This foundation includes a nifty new method of data management (built on an old method; you can read about it &lt;a href="http://demarzo.net/archive/2006/11/15/957.aspx"&gt;here&lt;/a&gt;) and a web architecture built around the &lt;a href="http://en.wikipedia.org/wiki/Model-view-controller"&gt;Model-View-Controller design pattern&lt;/a&gt;. What's good is that it works, and it is all linked together (finally!) in one big code project.&lt;/p&gt;&lt;p&gt;Even more exciting is the fact that I've already got code to migrate existing leagues to the new database schema. At this point, I don't have code to migrate everything, but the most critical stuff (teams, players, games, stats, and play-by-play) can all be done.&lt;/p&gt;&lt;p&gt;&lt;img src="http://forums.csfbl.com/photos/csbbscreenshots/images/705327/194x90.aspx" align="right" border="0" height="90" hspace="8" width="194"&gt;To prove that it can be done, and to give you a quick glimpse of the general direction we're headed, I'm posting &lt;a href="http://forums.csfbl.com/photos/csbbscreenshots/picture705327.aspx"&gt;a screen shot&lt;/a&gt; to the &lt;a href="http://forums.csfbl.com/photos/csbbscreenshots/default.aspx"&gt;ComputerSims Baseball Screenshots gallery&lt;/a&gt;. Keep in mind that this is a largely un-styled representation of what we're calling the "player ratings" page. However, it should help illustrate the types of things (in terms of content and layout) that we want to bring to the new game.&lt;/p&gt;&lt;p&gt;In the design for CSBB, we're trying to make things as modular as possible, and using the feedback we've gotten from the community to find out what people like and dislike. The page you see has a header which shows core player data, including current season and career stats. Below this is a depiction of the player's ratings. Obviously, there is a lot missing, but remember, these are early concepts and outlines to test different techniques.&lt;/p&gt;&lt;p&gt;Let us know what you think!&amp;nbsp;&lt;/p&gt;&lt;img src="http://forums.csfbl.com/aggbug.aspx?PostID=705329" width="1" height="1"&gt;</description><category domain="http://forums.csfbl.com/blogs/developers_notes/archive/tags/computersims+baseball/default.aspx">computersims baseball</category><category domain="http://forums.csfbl.com/blogs/developers_notes/archive/tags/developer+notes/default.aspx">developer notes</category></item><item><title>The new sim engine takes shape</title><link>http://forums.csfbl.com/blogs/developers_notes/archive/2006/11/13/The-new-sim-engine-takes-shape.aspx</link><pubDate>Mon, 13 Nov 2006 15:44:00 GMT</pubDate><guid isPermaLink="false">c2c8bed2-76c5-4505-a3ac-80a7b243eed6:699633</guid><dc:creator>brian</dc:creator><slash:comments>2</slash:comments><description>&lt;p&gt;For much of the past two weeks, I&amp;#39;ve been spending time revisiting work done in the past by Rick (&lt;strong&gt;babarfloyd&lt;/strong&gt;), who was working on the new sim engine framework. We have some very specific design goals for the sim engine, among them the following:&lt;br /&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Allowing individual games to be paused and resumed (primarily so we can hook interactive play -- think live head-to-head play)&lt;/li&gt;&lt;li&gt;Allow external script to be used for baseball logic (baserunning, etc.)&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;To prove that our design goals are practical, I threw together a simple project (affectionately called SimpleSim) that does the following:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Loads two teams from an XML file: the nine players in the lineup, and the pitcher.&lt;/li&gt;&lt;li&gt;Simulate a simple game between those two teams.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;When I say &amp;quot;simple&amp;quot; I mean simple. There is no baserunning logic, no fielding logic (in fact, no defensive influence on results at all), no relief pitchers, no subs, no fatigue. There is, however, the following: a straight-forward batter/pitcher matchup that generates a core outcome (single, double, triple, home run, walk, hit batter, strikeout, or &amp;quot;out&amp;quot;), moves baserunners around the bases (in a logical way, so walks &amp;quot;push&amp;quot; runners around but hits &amp;quot;advance&amp;quot; runners the appropriate number of bases), and tracks things like runs and catches the all-important end of game situation. From a functionality perspective, it&amp;#39;s similar to CSFBL circa 2000, but the code is much more robust. ;)&lt;/p&gt;&lt;p&gt;Why is this important? Well, it&amp;#39;s not as much what it does that&amp;#39;s important, but how it does it. We&amp;#39;re using a combination of techniques to do these things in a way that is easily expanded upon and easily portable. This &amp;quot;little project&amp;quot; is becoming larger and larger as I incorporate more functionality (not just related to the sim engine, but related to the management of all the data for the game). In the end, this project will become a template for what we build the real thing on.&lt;/p&gt;&lt;p&gt;It may not sound like much, but it&amp;#39;s a big step forward in the development process, and I&amp;#39;m very happy with the way the code looks (as are the other guys on the team).&lt;/p&gt;&lt;img src="http://forums.csfbl.com/aggbug.aspx?PostID=699633" width="1" height="1"&gt;</description><category domain="http://forums.csfbl.com/blogs/developers_notes/archive/tags/computersims+baseball/default.aspx">computersims baseball</category><category domain="http://forums.csfbl.com/blogs/developers_notes/archive/tags/developer+notes/default.aspx">developer notes</category></item><item><title>Nov. 4th - PM catchup</title><link>http://forums.csfbl.com/blogs/communitymanagers/archive/2006/11/04/Nov.-4th-_2D00_-PM-catchup.aspx</link><pubDate>Sun, 05 Nov 2006 02:03:00 GMT</pubDate><guid isPermaLink="false">c2c8bed2-76c5-4505-a3ac-80a7b243eed6:696069</guid><dc:creator>chrisgeleven</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;Quiet week on the PM front:&lt;br /&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Dinobassi has been &lt;a href="http://forums.csfbl.com/forums/thread/694208.aspx"&gt;named an assistant commish&lt;/a&gt; in Little League.&lt;/li&gt;&lt;/ul&gt;That is all for now.&lt;br /&gt;&lt;img src="http://forums.csfbl.com/aggbug.aspx?PostID=696069" width="1" height="1"&gt;</description><category domain="http://forums.csfbl.com/blogs/communitymanagers/archive/tags/PM/default.aspx">PM</category><category domain="http://forums.csfbl.com/blogs/communitymanagers/archive/tags/Little+League/default.aspx">Little League</category><category domain="http://forums.csfbl.com/blogs/communitymanagers/archive/tags/Assistant+Commish/default.aspx">Assistant Commish</category></item><item><title>State of the Game: November 2006</title><link>http://forums.csfbl.com/blogs/developers_notes/archive/2006/11/02/State-of-the-Game_3A00_-November-2006.aspx</link><pubDate>Thu, 02 Nov 2006 14:26:00 GMT</pubDate><guid isPermaLink="false">c2c8bed2-76c5-4505-a3ac-80a7b243eed6:694590</guid><dc:creator>brian</dc:creator><slash:comments>2</slash:comments><description>&lt;p&gt;It&amp;#39;s been a long time since I posted anything official, but it&amp;#39;s not because nothing has been going on. There has been a lot going on, both in the CSFBL world, in the ComputerSims Baseball world, and in my personal life -- and all of them may be impacting the game.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;In the CSFBL world&lt;/strong&gt;, we&amp;#39;ve seen some big changes in the past three months, the largest of which were the forums upgrade and the awards revamp.&lt;br /&gt; &lt;/p&gt;&lt;p&gt;In October, we upgraded our forums software to &lt;a href="http://www.communityserver.org"&gt;CommunityServer&lt;/a&gt; 2.0. It wasn&amp;#39;t a painless upgrade, mostly due to the lackluster performance that some people are getting. Unfortunately, the performance (or lack thereof) is partially because the forums are rather huge, and they add a big load onto an already overloaded web/database/game server. (More on that soon.)&lt;/p&gt;&lt;p&gt;In September, we revamped the awards system. The revamp went beyond just &amp;quot;fixing what was broken&amp;quot; -- we enhanced the selection criteria for all awards, added a Hall of fame, and updated the awards web site to reflect the changes. Hopefully, the awards continue to add &amp;quot;color&amp;quot; to the game, and the winners (and losers) continue to encourage people to debate who should (or should not have) won.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;In the &lt;/strong&gt;&lt;strong&gt;ComputerSims Baseball&lt;/strong&gt; world, things have progressed, slowly but steadily. I&amp;#39;ve spent most of my time on the general architecture and the database schema. At this point, the framework for everything (the game engine that will run everything, the web architecture, the &amp;quot;middle tier&amp;quot; that talks to the database and the web site) is largely complete.&lt;/p&gt;&lt;p&gt;After toiling on architecture for much of the time over the past months, I refocused on the user interface in October -- not the graphical look, but the layout and content. I thought about where to start, and decided the best place to start was the player page. But how can I design a player page without a player who has ratings and statistics?&lt;/p&gt;&lt;p&gt;Before working on UI stuff, I decided to revisit the database migration script -- that is, the script which will convert a CSFBL league to a ComptuerSims Baseball (CSBB) league. Yes, I can and will say officially at this time that &lt;em&gt;it will be possible for us to convert CSFBL leagues to CSBB&lt;/em&gt;. Although we can&amp;#39;t guarantee that all leagues will be converted, or the parameters for the conversion, or what will be preserved or lost, but we will, at the least, have the capacity to convert leagues, players, and game history from the old game to the new game.&lt;/p&gt;&lt;p&gt;What will the new UI include? I stole a lot of ideas from existing web sites (based on user feedback months ago where I asked people to give their likes/dislikes of some top baseball sites). It should be reminiscent of sites like Yahoo! Sports, MLB.com, and ESPN, with the typical &amp;quot;CSFBL&amp;quot; flair thrown in.&lt;/p&gt;&lt;p&gt;It&amp;#39;s too early to show anything (besides, everything is pretty plain vanilla anyway), but once I get more time to focus on the UI, I&amp;#39;ll put together some screenshot.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;One other note on CSBB: All my testing of the conversion process has been with Negro League Tribute. Thanks for letting me bastardize your data, guys.&amp;nbsp;&lt;img src="http://forums.csfbl.com/emoticons/emotion-1.gif" alt="Smile" /&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;On a personal note,&lt;/strong&gt; over the next few weeks I may embark on a significant career change. There is the potential for me to take a full-time job with a very exclusive company -- a once-in-a-lifetime opportunity. If it happens (I hope it does!), it&amp;#39;ll mean a lot of work for me as I transition from being a full-time consultant to being a full-time employee. I&amp;#39;ve got lots of existing contracts and projects that will need to be completed or transitioned, so I may not have a lot of time to work on new stuff for CSFBL or CSBB for a few weeks if and when this happens. Once the transitional dust settles, I should be able to jump back in to things. I&amp;#39;ll let you know when I know more (and when I can tell you about it). All I can say is this: it&amp;#39;s a company with one of the most recognizable brand names in the world. &lt;img src="http://forums.csfbl.com/emoticons/emotion-5.gif" alt="Wink" /&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;em&gt;[Footnote: To those who know who this company is, you are NOT at liberty to say, so keep your traps shut!)&lt;/em&gt;&amp;nbsp;&lt;/p&gt;&lt;img src="http://forums.csfbl.com/aggbug.aspx?PostID=694590" width="1" height="1"&gt;</description><category domain="http://forums.csfbl.com/blogs/developers_notes/archive/tags/computersims+baseball/default.aspx">computersims baseball</category><category domain="http://forums.csfbl.com/blogs/developers_notes/archive/tags/developer+notes/default.aspx">developer notes</category><category domain="http://forums.csfbl.com/blogs/developers_notes/archive/tags/csfbl/default.aspx">csfbl</category></item><item><title>October 29th - PM catchup</title><link>http://forums.csfbl.com/blogs/communitymanagers/archive/2006/10/29/October-29th-_2D00_-PM-catchup.aspx</link><pubDate>Mon, 30 Oct 2006 02:20:00 GMT</pubDate><guid isPermaLink="false">c2c8bed2-76c5-4505-a3ac-80a7b243eed6:691902</guid><dc:creator>chrisgeleven</dc:creator><slash:comments>3</slash:comments><description>&lt;p&gt;The following leagues have been granted private league status and elected commissioners, due to a majority vote (13+ owners):&lt;/p&gt;&lt;ul&gt;&lt;li&gt;College World Series (commissioner: dinobassi)&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;The following leagues have removed a commissioner and/or assistant commissioner:&lt;br /&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;MLB Middle-Eastern - removed Thuganomics from assistant commish position, &lt;a href="http://forums.csfbl.com/forums/thread/617540.aspx"&gt;per his post&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Attempted to fix the following issues:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;jp4 is reporting that in the IBA League forums that he cannot edit other owner&amp;#39;s posts. Reapplied all permissions, hopefully that fixed the issue.&lt;/li&gt;&lt;li&gt;Vol67 reports that he cannot get into the league management pages for Senior Circuit and Hall of Fame leagues. Did some checking around, reapplied his permissions, and sent him direct links to those two league management pages, hoping one of the above fixed the issue.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Misc.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://csfbl.com/team.asp?teamID=41877"&gt;Checked Moneyball team&lt;/a&gt;, grumbled about a mini losing streak after going .600 for 3 months, and then headed to bed.&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;img src="http://forums.csfbl.com/aggbug.aspx?PostID=691902" width="1" height="1"&gt;</description></item><item><title>Welcome to the blog!</title><link>http://forums.csfbl.com/blogs/communitymanagers/archive/2006/10/29/Welcome-to-the-blog_2100_.aspx</link><pubDate>Mon, 30 Oct 2006 02:18:00 GMT</pubDate><guid isPermaLink="false">c2c8bed2-76c5-4505-a3ac-80a7b243eed6:691893</guid><dc:creator>chrisgeleven</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;Welcome to the official blog of the ComputerSims Baseball Community Managers!&lt;/p&gt;&lt;p&gt;Realmwalker and I will try to post on here frequently, documenting the various aspects of our community manager jobs.&lt;/p&gt;&lt;p&gt;Take care,&lt;/p&gt;&lt;p&gt;Chris&amp;nbsp;&lt;/p&gt;&lt;img src="http://forums.csfbl.com/aggbug.aspx?PostID=691893" width="1" height="1"&gt;</description><category domain="http://forums.csfbl.com/blogs/communitymanagers/archive/tags/blog/default.aspx">blog</category><category domain="http://forums.csfbl.com/blogs/communitymanagers/archive/tags/welcome/default.aspx">welcome</category></item><item><title>Release 0.1 almost done!</title><link>http://forums.csfbl.com/blogs/developers_notes/archive/2006/06/29/576363.aspx</link><pubDate>Thu, 29 Jun 2006 14:38:00 GMT</pubDate><guid isPermaLink="false">c2c8bed2-76c5-4505-a3ac-80a7b243eed6:576363</guid><dc:creator>brian</dc:creator><slash:comments>10</slash:comments><description>&lt;div align="left"&gt;I'm putting the finishing touches on "Release 0.1" of ComputerSims Baseball. It may not sound like much to you, but internally, it's a big step.&lt;br&gt;&lt;br&gt;What do we see in Release 0.1?&lt;br&gt;&lt;ul&gt;&lt;li&gt;The framework for the entire application (from back-end code to the database) is finished (a definite prerequisite for just about everything else).&lt;br&gt;
&lt;/li&gt;&lt;li&gt;The web site's membership functions (login/out, register, etc.) are done.&lt;/li&gt;&lt;li&gt;Web-based admin panels are completed, allowing game admins to create associations, leagues, conferences, divisions, and teams (essentially, allowing someone to custom-build a league down to the team level).&lt;/li&gt;&lt;/ul&gt;The web site itself is nothing pretty -- it uses bare-bones formatting and has no graphics. We'll add the high-tech theme elements in the future.&lt;br&gt;&lt;br&gt;Essentially, this is the basis for everything else we'll be adding over the coming months. Our plan is to have periodic "releases" with each release adding a little more functionality on to the previous release.&lt;br&gt;&lt;br&gt;What will Release 0.2 have? This second release will begin tying together more user interface
components to make the project more "interactive", as well as the
beginning of some core game engine systems. The framework for the core
game engine (i.e. the engine that runs all the league functions, like drafts, trades, etc.) will be finalized in this
release. Among the goals:
&lt;div class="description"&gt;
&lt;ul&gt;&lt;li&gt;Game engine framework
&lt;/li&gt;&lt;li&gt;Code to start leagues -- the league is full, the first day begins (Jan 1 2006?)
&lt;/li&gt;&lt;li&gt;Database framework for contracts 
&lt;/li&gt;&lt;li&gt;Contract System, Part I
&lt;ul&gt;&lt;li&gt;Algorithm for player "ask" contracts
&lt;/li&gt;&lt;li&gt;Algorithm for player offer evaluation
&lt;/li&gt;&lt;li&gt;View contracts (team, league)
&lt;/li&gt;&lt;li&gt;Offer contracts (own players, last year of current contract)
&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li&gt;Initial team player creation with default contracts
&lt;/li&gt;&lt;li&gt;Database framework for transaction tracking
&lt;/li&gt;&lt;li&gt;Free Agency system, Part I&lt;/li&gt;&lt;ul&gt;&lt;li&gt;View Free Agent list&lt;/li&gt;&lt;li&gt;Submit offers (team, league)&lt;/li&gt;&lt;li&gt;Withdraw offers (team, league)
&lt;/li&gt;&lt;li&gt;
&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;The idea for Release 0.2 is to take the game to the point where a league first starts, by writing the code that kick-starts everything, and writing the core code to take a league through the post-season up to the start of spring training. Future releases will continue to add a little more to the process (i.e. we'll probably add spring training and trade code in Release 0.3, the first core of the sim engine and the pre-season games in Release 0.4, and so-forth).&lt;br&gt;&lt;br&gt;How long between releases? My goal is two months, but nothing is written in stone. Ultimately, I'd prefer to scale back what we do in a release to keep things on a 2-month release schedule as a way to keep up focused on moving forward with what we can accomplish in a given period of time, rather than delaying everything while we wait to finish something that is overdue. The flip side of that is that there is no fixed number of releases before the game goes live -- we may go to Release 0.7 and go live, or Release 0.11, or any other number. I haven't planned that far ahead -- my goal is to plan one release ahead and no more.&lt;br&gt;&lt;br&gt;&lt;/div&gt;&lt;/div&gt;&lt;img src="http://forums.csfbl.com/aggbug.aspx?PostID=576363" width="1" height="1"&gt;</description></item><item><title>Names and places (and other oddities)</title><link>http://forums.csfbl.com/blogs/developers_notes/archive/2006/05/17/516499.aspx</link><pubDate>Wed, 17 May 2006 22:07:00 GMT</pubDate><guid isPermaLink="false">c2c8bed2-76c5-4505-a3ac-80a7b243eed6:516499</guid><dc:creator>brian</dc:creator><slash:comments>2</slash:comments><description>&lt;div align="left"&gt;While doing research for the player creation algorithms, I wanted to look at the probability of things like names, places of origin, positions, and handedness of typical MLB players. The findings were intriguing!&lt;br&gt;&lt;br&gt;(All research was done using the excellent &lt;a href="http://baseball1.com/statistics/"&gt;Lahman database&lt;/a&gt;, which includes baseball stats from 1871 to 2005.)&lt;br&gt;&lt;br&gt;&lt;b&gt;Player Names&lt;/b&gt;&lt;br&gt;&lt;br&gt;Listing all first names and last names from all baseball players from the beginning to the end of time was fun. The most popular last names? Smith, Johnson, Jones, Miller, Brown... boring! The most popular first names? Bill, John, Jim, Mike... Who couldn't guess that?&lt;br&gt;&lt;br&gt;Some fun first names turned up, including Ziggy, Yo-Yo, Suds, and Flea (Red Hot Chili Peppers)...&lt;br&gt;&lt;br&gt;&lt;b&gt;Where'd they come from?&lt;br&gt;&lt;br&gt;&lt;/b&gt;Did you know that more players came from California than any other state? Runners-up include Pennsylvania, New York, and Illinois. The highest non-U.S. state is of course the Dominican Republic, followed up by Venezuela, then Cuba. Our northern neighbors produced more baseball players from Ontario than anywhere else. The craziest source of players included a single player each from Afghanistan and Samoa.&lt;br&gt;&lt;br&gt;One thing to note: these numbers were based on a historical look at baseball, not a recent look (i.e. the last 20-30 years). As a result, I'd expect the number of non-U.S. players to increase when I re-run the stats and weigh things for the modern era.&lt;br&gt;&lt;br&gt;&lt;b&gt;Handedness&lt;/b&gt;&lt;br&gt;&lt;br&gt;For throwing hand by position, I classified players based on the position where they played the most games, and restricted myself to more recent decades. With no surprise, all catchers, second basemen, third basemen, and shortstops were righty-throwers. The most lefty throwers were at first (41% left-handed). Overall, 70% of pitchers were right-handed.&lt;br&gt;&lt;br&gt;Looking at batting hands for recent decades as compared to the entire history of baseball showed that there's nearly twice as many switch hitters in modern baseball as there was in early baseball (as a percentage of total batters). Overall, 10% of all righty throwers, and 5% of all lefty throwers, were switch-hitters. Why the difference? Most lefty throwers (81%) were left-handed, so they don't have much of an incentive to learn to switch-hit.&lt;br&gt;&lt;br&gt;&lt;b&gt;And the last interesting tidbit...&lt;/b&gt;&lt;br&gt;&lt;br&gt;Of all ballplayers born since 1975, there were more that played 2B and CF than any other position (excluding pitcher).&lt;br&gt;&lt;br&gt;&lt;/div&gt;&lt;img src="http://forums.csfbl.com/aggbug.aspx?PostID=516499" width="1" height="1"&gt;</description></item><item><title>A bit about ComputerSims Baseball</title><link>http://forums.csfbl.com/blogs/developers_notes/archive/2006/05/15/514450.aspx</link><pubDate>Mon, 15 May 2006 17:12:00 GMT</pubDate><guid isPermaLink="false">c2c8bed2-76c5-4505-a3ac-80a7b243eed6:514450</guid><dc:creator>brian</dc:creator><slash:comments>3</slash:comments><description>On March 16, 2006, I announced a major step in the evolution of CSFBL. (&lt;a href="http://forums.csfbl.com/forums/455107/ShowPost.aspx"&gt;Read about it on the CSFBL forums&lt;/a&gt;.) Basically, rather than trying to re-tool the current game to fix all the problems, inadequacies, and inefficiencies, we decided to start from scratch.&lt;br&gt;&lt;br&gt;We've been talking about ComputerSims Baseball for over three months, so the announcement to you comes after we've deliberated a lot on the back-end. Up until about a week ago, we ("we" being the core team that includes myself, realmwalker, chrisgeleven, babarfloyd, and harborpirate) have not written a drop of code, but we have discussed and outlined many of the key game systems, including the league/world model, trade system, free agency system, draft systems, contract systems, scouting systems, and plenty more.&lt;br&gt;&lt;br&gt;Meanwhile, over those months, I've been reading everything imaginable on software architecture and design. The goal is to make ComputerSims Baseball everything that CSFBL is not, both on the front-end (the features you see) and the back-end (the plumbing that makes the game work). In many cases, ComputerSims Baseball is the coming together of over 20 years of programming experience (dating back to an Atari 800 and a machine running MS-DOS 2.1), and over ten years of professional experience in programming Web sites and Windows applications, managing databases, and doing all sorts of IT automation.&lt;br&gt;&lt;br&gt;Over the past week, I finally started tying together the plumbing, and actually have a functional model in place. For those who are interested, here's some of the technologies, products, and techniques being used.&lt;br&gt;&lt;ul&gt;&lt;li&gt;The basic architecture uses a three-layer approach. It takes lots of hints from the &lt;a href="http://www.martinfowler.com/eaaCatalog/modelViewController.html"&gt;Model-View-Controller&lt;/a&gt; (MVC) design pattern, with strong data abstraction included.&lt;/li&gt;&lt;li&gt;The database is built on Microsoft SQL Server 2005, which supports improved caching features that we will definitely take advantage of.&lt;/li&gt;&lt;li&gt;Separating the database from everything else (the data abstraction layer, or DAL) is &lt;a href="http://www.wilsondotnet.com"&gt;Paul Wilson&lt;/a&gt;'s excellent &lt;a href="http://www.ormapper.net"&gt;O/R Mapper&lt;/a&gt;. The core code for this was built using a trial version of &lt;a href="http://www.codesmithtools.com"&gt;CodeSmith&lt;/a&gt; (30-day trial, but I expect to buy the product when the trial is up), which includes a spectacular template for Wilson's O/R Mapper.&lt;br&gt;&lt;/li&gt;&lt;li&gt;All custom code to tie things together and do "baseball stuff" is in a separate library -- this helps keep the Web site from having to know too much about the game, and will facilitate future changes and upgrades (and, eventually, a local application version of the game).&lt;/li&gt;&lt;li&gt;Web services will be used for as much processing as possible. This means that the core game Web site and users will have use the same Web services to access data. This means you will effectively be able to access game data using any tool that can use XML data exposed via Web services.&lt;/li&gt;&lt;li&gt;The core Web application will be AJAX-enabled (using the &lt;a href="http://atlas.asp.net"&gt;Atlas framework&lt;/a&gt;), use some popular JavaScript effect libraries (including &lt;a href="http://prototype.conio.net/"&gt;prototype&lt;/a&gt;, &lt;a href="http://bennolan.com/behaviour/"&gt;behaviour&lt;/a&gt;, and &lt;a href="http://script.aculo.us/"&gt;scripalicious&lt;/a&gt;), use &lt;a href="http://www.componentart.com"&gt;ComponentArt's fantastic UI tools&lt;/a&gt;, and be as XHTML-compliant and accessible as humanly possible.&lt;br&gt;&lt;/li&gt;&lt;li&gt;Logging throughout everything is handled using the free, open-source &lt;a href="http://www.nlog-project.org/"&gt;NLog&lt;/a&gt; tool.&lt;/li&gt;&lt;li&gt;The latest version of &lt;a href="http://www.communityserver.org"&gt;CommunityServer&lt;/a&gt; (&lt;a href="http://www.telligent.com"&gt;Telligent Systems&lt;/a&gt;) will support the central "community" site, and all user account information will be shared between the community and all worlds.&lt;/li&gt;&lt;li&gt;Each "world" will have its own Web site and database, meaning we can do rolling upgrades, rollbacks, and easily support "test center" environments with custom rule-sets.&lt;/li&gt;&lt;/ul&gt;That's a sample of the plumbing. Things, of course, are subject to change, but the core goals shouldn't.&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;img src="http://forums.csfbl.com/aggbug.aspx?PostID=514450" width="1" height="1"&gt;</description></item></channel></rss>