<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:copyright="http://blogs.law.harvard.edu/tech/rss" xmlns:image="http://purl.org/rss/1.0/modules/image/">
    <channel>
        <title>Handy Tools</title>
        <link>http://blog.mrdaveredding.net/category/5941.aspx</link>
        <description>A place for me to blog about and list any tools that i use that are really pretty spiffy</description>
        <language>en-US</language>
        <copyright>Dave Redding</copyright>
        <managingEditor>DavidARedding@gmail.com</managingEditor>
        <generator>Subtext Version 0.0.0.0</generator>
        <item>
            <title>Tech in 5 Minutes: Nifty C# operators that don't get much love</title>
            <link>http://blog.mrdaveredding.net/archive/2008/03/11/120462.aspx</link>
            <description>&lt;p dir="ltr" style="MARGIN-RIGHT: 0px"&gt;    In my travels around  .Net land, I've come to know, love and exploit several denizens of the tribe of C#.  Some of these have already been written about, such as Yield return and the =&amp;gt; operator.  But more recently, I've had the opportunity to educate some fellow travelers on two of the most useful, but least used operator.  Those being the Comparison Operator (&lt;strong&gt;?:&lt;/strong&gt;) and the Null Coalescing Operator (&lt;strong&gt;??&lt;/strong&gt;).&lt;/p&gt;
&lt;p&gt;    Lets start our adventure by watching the Comparison Operator in it's natural environment.  If you watch closely, it'll show you it's syntax...&lt;/p&gt;
&lt;blockquote dir="ltr" style="MARGIN-RIGHT: 0px"&gt;
&lt;p&gt;bool statement &lt;strong&gt;? &lt;/strong&gt;true &lt;strong&gt;:&lt;/strong&gt; false &lt;/p&gt;
&lt;/blockquote&gt;
&lt;p dir="ltr"&gt;    Due to it's nature, this operator is sometimes called the Ternary operator. The reason being is that it takes 3 operands.  In normal use, here is what it looks like:&lt;img style="FLOAT: right; WIDTH: 129px; HEIGHT: 179px" height="358" width="247" alt="" src="http://www.zillowblog.com/wp-content/uploads/2007/07/beer.jpg" /&gt;&lt;/p&gt;
&lt;blockquote dir="ltr" style="MARGIN-RIGHT: 0px"&gt;
&lt;p dir="ltr"&gt;CurrentBeer.Empty==True &lt;strong&gt;?&lt;/strong&gt; CurrentBeer = Wife.GetMebeer() &lt;strong&gt;: &lt;/strong&gt;Me.TakeDrink(CurrentBeer);&lt;br /&gt;
(&lt;em&gt;this can be shortened further by taking out the ==True, since .Empty is most likely a bool property&lt;/em&gt;)&lt;br /&gt;
CurrentBeer.Empty&lt;strong&gt;?&lt;/strong&gt;CurrentBeer=Wife.GetMeBeer()&lt;strong&gt;:&lt;/strong&gt;Me.TakeDrink(CurrentBeer);&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p dir="ltr"&gt;    You can see how this replaces the overly verbose syntax of :&lt;/p&gt;
&lt;blockquote dir="ltr" style="MARGIN-RIGHT: 0px"&gt;
&lt;p dir="ltr"&gt;If(CurrentBeer.Empty)&lt;br /&gt;
    CurrentBeer = Wife.GetMeBeer();&lt;br /&gt;
else&lt;br /&gt;
     Me.TakeDrink(CurrentBeer);&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p dir="ltr"&gt;    Syntax sugar? Maybe.  But it's definitely useful as a quick way to get things done. Elegant, Efficient and Desirable, three features my first girlfriend was lacking in.&lt;/p&gt;
&lt;p dir="ltr"&gt;    But wait! Theres more!  Just send me three easy payments of $29.95!&lt;/p&gt;
&lt;p dir="ltr"&gt;  So now, lets check out the &lt;strong&gt;?? &lt;/strong&gt;operator.&lt;/p&gt;
&lt;p dir="ltr"&gt;    The ?? operator has saved me boat loads of finger_impact_on_keyboard stress ever since the advent of C# 2.0.  It's easiest to think of this operator working similar to the comparison operator above.  Lets lift it's skirt real quick and have a peek at how it functions&lt;/p&gt;
&lt;blockquote dir="ltr" style="MARGIN-RIGHT: 0px"&gt;
&lt;p dir="ltr"&gt;x = ValueThatMightBeNull ?? DifferentValue;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p dir="ltr"&gt;    Ok, much like the first time you played doctor, things might be confusing, but it's really simple.  Basically the &lt;strong&gt;??&lt;/strong&gt; will evaluate whether or not the thing to the left of it is null, if it is, it will evaluate and return the thing on the right.  Lets just see it in action, it's easier that way...&lt;em&gt;&lt;strong&gt;&amp;lt;&lt;/strong&gt;Dear "Usually offended by my posts": &lt;strong&gt;Please&lt;/strong&gt; &lt;strong&gt;Insert vulgar joke of your choice here&amp;gt;&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;
&lt;blockquote dir="ltr" style="MARGIN-RIGHT: 0px"&gt;
&lt;p dir="ltr"&gt;&lt;em&gt; //This is how my wife found me&lt;br /&gt;
&lt;/em&gt;Mate SuitableMate = Mate.Get(GoodLooking)??&lt;br /&gt;
                                      Mate.Get(AverageLooking)??&lt;br /&gt;
                                      Mate.Get(DoesntHaveAnAssForAFace)??&lt;br /&gt;
                                      Mate.Get(AtleastHeHasAJob)??&lt;br /&gt;
                                      Mate.Get(Dave)&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p dir="ltr"&gt;    If your confused, let me lighten things up for you hear.  Each A = B??C statement is the equivalent of saying&lt;/p&gt;
&lt;blockquote dir="ltr" style="MARGIN-RIGHT: 0px"&gt;
&lt;p dir="ltr"&gt;If(B != null)&lt;br /&gt;
    A = B;&lt;br /&gt;
else&lt;br /&gt;
    A = C;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p dir="ltr"&gt;    So when we string them together like that, it's just like saying &lt;em&gt;If = null else if = null else if = null&lt;/em&gt;  etc etc etc...  So, obviously, based on our previous statement, everything up to &lt;em&gt;Mate.Get(Dave)&lt;/em&gt; must have returned null if my wife wound up with me.  I do have a job now though....so I wonder if i still would have made the cut.&lt;/p&gt;
&lt;p dir="ltr"&gt;    There is one more benefit of using the ?? operator that I actually stumbled across.  Take this code as an example:&lt;/p&gt;
&lt;blockquote dir="ltr" style="MARGIN-RIGHT: 0px"&gt;
&lt;p dir="ltr"&gt;public class DataObject&lt;br /&gt;
{&lt;br /&gt;
    public NullableObject a = 1... etc&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
public class BO&lt;br /&gt;
{&lt;br /&gt;
 public NullableObject  Stinks= 0;&lt;br /&gt;
&lt;br /&gt;
  public static implicit operator BO(DataObject e)&lt;br /&gt;
  {&lt;br /&gt;
      return new DataObject{Stinks= e.a};&lt;br /&gt;
  }&lt;br /&gt;
}&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p dir="ltr"&gt;now...later on in the UI of the app &lt;em&gt;(which should NOT have ANY reference to the DataObject class)&lt;/em&gt; if we write this code:&lt;/p&gt;
&lt;blockquote dir="ltr" style="MARGIN-RIGHT: 0px"&gt;
&lt;p dir="ltr"&gt;If(MyBo==null){Console.WriteLine("WOO HOO, You have no BO!!");}&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p dir="ltr"&gt;..were going to get a compiler error.  The reason being, as far as I understand (&lt;em&gt;hopefully commenter's can expand on this&lt;/em&gt;) is that when you compile that statement, the compiler is doing type checking against the objects used in the class your checking for null in.  In other words it checks to see if anything is returning null from within the class.  Now, since the operator takes a type of DataObject, the complier expect you to have a reference to that class...if you don't, then *Poof* no compile.&lt;/p&gt;
&lt;p dir="ltr"&gt;    Now, to get around this, we can write...&lt;/p&gt;
&lt;blockquote dir="ltr" style="MARGIN-RIGHT: 0px"&gt;
&lt;p dir="ltr"&gt;SomeoneElsesBo = MyBo??(MyBo = new BO());&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p dir="ltr"&gt;   ....And the compiler is happy.&lt;/p&gt;
&lt;p dir="ltr"&gt;Hell, we can even put these two operators together, check this out:&lt;/p&gt;
&lt;blockquote dir="ltr" style="MARGIN-RIGHT: 0px"&gt;
&lt;p dir="ltr"&gt;Mate SuitableMate;&lt;br /&gt;
Step Next_Step_In_Life = ((SuitableMate = Mate.Get(GoodLooking)??&lt;br /&gt;
                                                                                Mate.Get(AverageLooking)??&lt;br /&gt;
                                                                                Mate.Get(DoesntHaveAnAssForAFace)??&lt;br /&gt;
                                                                                Mate.Get(AtleastHeHasAJob)??&lt;br /&gt;
                                                                                Mate.Get(Dave)) == Dave?SobQuietly():null)??(Step)PartyItUpWOOT();&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p dir="ltr"&gt;  I'll leave you with this.  The best places I've found to use the ?? operator is in returning data base fields where the value might be null, here is a quick example and the best way I've found to implement the ?? solution&lt;/p&gt;
&lt;blockquote dir="ltr" style="MARGIN-RIGHT: 0px"&gt;
&lt;p dir="ltr"&gt;//&lt;em&gt;First i check to see if the value from the db is DBNull.value&lt;br /&gt;
//Dr = DataReader&lt;br /&gt;
//Do = Data Object with nullable Types&lt;/em&gt;&lt;br /&gt;
&lt;br /&gt;
DO.ValX == DBNull.Value?null:(Int32?)dr[0]&lt;br /&gt;
//&lt;em&gt;If you don't get the ? reference after the Int32, no worries, It's a nullable type, and I'll post about it soon.&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p dir="ltr"&gt;    The reason I do this, is so I can keep the actual DB value in my DataObject, which is supposed to be a true reflection of my data.  Later on, in the actual business object, where I don't accept Nullable types I can say this.&lt;/p&gt;
&lt;blockquote dir="ltr" style="MARGIN-RIGHT: 0px"&gt;
&lt;p dir="ltr"&gt;BO.ActualValX = DO.ValX??-1;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p dir="ltr"&gt;      And Bada-Bing, I'm good to go.  Later on, i can pass either -1 or even null back into the DB and repeat this cycle when retrieving my data, it works, and i don't have any logic, other than conversions from DBNull, in my Data Object class.&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=120462"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=120462" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://blog.mrdaveredding.net/aggbug/120462.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Dave Redding</dc:creator>
            <guid>http://blog.mrdaveredding.net/archive/2008/03/11/120462.aspx</guid>
            <pubDate>Tue, 11 Mar 2008 15:31:43 GMT</pubDate>
            <wfw:comment>http://blog.mrdaveredding.net/comments/120462.aspx</wfw:comment>
            <comments>http://blog.mrdaveredding.net/archive/2008/03/11/120462.aspx#feedback</comments>
            <slash:comments>2</slash:comments>
            <wfw:commentRss>http://blog.mrdaveredding.net/comments/commentRss/120462.aspx</wfw:commentRss>
            <trackback:ping>http://blog.mrdaveredding.net/services/trackbacks/120462.aspx</trackback:ping>
        </item>
        <item>
            <title>Board Games and the Software Developer</title>
            <link>http://blog.mrdaveredding.net/archive/2008/02/20/119801.aspx</link>
            <description>&lt;p&gt;     For a developer, the worst thing that can happen is to have the mind dulled.   This dulling can occur from a number of places.   Like too much heroin or watching reality TV.   So how would a developer keep his mind sharp and be entertained at the same time?   Flashy lights and bright colors only go so far.&lt;/p&gt;
&lt;p&gt;    The way I’ve discovered is some good ol' challenging board games.   Makes sense, most developers are gamers at heart.   And I’m not talking about just your standard fair of Stratego and Monopoly, but European games as well like Settlers of Catan and Power Grid.   While these games may not have the most complex rule set (&lt;em&gt;besides, after a hard day of thought, do you really want to spend the evening or weekend having to analyze rules to entertain yourself?&lt;/em&gt;) but they have a high fun factor and do lend themselves to analytical thought with strategy.  &lt;/p&gt;
&lt;p&gt;    I've compiled a list here of the board games I play at home, and what my thoughts are on them.   typically I play  with the Wife, and when time permits, the whole family.   &lt;/p&gt;
&lt;h3&gt;    1.) &lt;a href="http://www.boardgamegeek.com/game/18"&gt;Robo Rally&lt;/a&gt;&lt;/h3&gt;
&lt;img style="FLOAT: right" alt="" src="http://images.boardgamegeek.com/images/pic249264_t.jpg" /&gt;
&lt;p&gt;    Robo Rally IS the programmers game.  It takes about 35min - 2 hours to play depending.  The principal of the game is to race your robot through the flags in ascending order.  the first one to touch the last flag, Wins!  what makes this game great is the amount of cunning and analysis involved.  Each turn your dealt a number of cards.  Each card has some kind of movement associated with it.  For instance Move Forward 2 or Turn Right.  You take these cards and "Program" your robot, that is, place them, face down on 5 separate Registers (&lt;em&gt;see...programmers game&lt;/em&gt;).  Once everyone has programmed their bot, you all flip the card in the first register and your robot executes that movement.  It may mean:&lt;br /&gt;
&lt;/p&gt;
&lt;ol&gt;
    &lt;li&gt;Falling off the edge of the board &lt;/li&gt;
    &lt;li&gt;Pushing or being pushed &lt;/li&gt;
    &lt;li&gt;Or, just doing what you planned. &lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;    But, unlike in real world development, there   is no debugging.   My 7 y/o Step son loves this game.  He'll take cards and turn them in his hands to figure out which way to go and how he wants to move.  &lt;/p&gt;
&lt;p&gt;    The real gotcha is that your playing on a factory floor with all kinds of other crazy stuff.  Like conveyer belts that move you and gears that will spin you.  All in all, it's a good time and I’ll keep those analytical skills sharp&lt;/p&gt;
&lt;h3 dir="ltr"&gt;    2.) &lt;a href="http://www.boardgamegeek.com/game/13"&gt;Settlers of Catan&lt;/a&gt;&lt;/h3&gt;
&lt;img style="FLOAT: right" alt="" src="http://images.boardgamegeek.com/images/pic11394_t.jpg" /&gt;
&lt;p dir="ltr"&gt;    Settlers of Catan (SoC) is a classic European game that was made around '95.  Since then it's had an explosion in its follwing.  It has spawned many other games based on the same premise.  The games will last anywhere between 45 min and 2 hours, with the typical being an hour and half.   &lt;/p&gt;
&lt;p dir="ltr"&gt;    At first I was leery to pick this one up. I thought that the rules were going to be to complex so that it couldn’t really be enjoyed by someone (&lt;em&gt;me&lt;/em&gt;) who was just wanting to get in and play.   I was wrong, very very wrong.&lt;/p&gt;
&lt;p dir="ltr" style="MARGIN-RIGHT: 0px"&gt;    SoC is almost non-confrontational (&lt;em&gt;I say almost because you can be passive aggressive&lt;/em&gt;)  The goal is to get to 10 victory points.  You get those points by playing cards that give them to you, building small villages or upgrading the same to cities and gaining a couple of unique achievements during gameplay.  The focus of the game is a small hex board that can be re-arranged to change the game each time.   &lt;/p&gt;
&lt;p dir="ltr" style="MARGIN-RIGHT: 0px"&gt;    During the course of the game, you build roads and cities, collect resources and buy things like knights or libraries to increase your points.  The game is simple to learn, the rules are VERY straight forward.  The strategy comes in the form of where to build to maximize your resource input.  Trading with other players is also heavily encouraged.   I would say this game is great at rewarding the successful marketer.   It'll definitely keep those relationship skills sharp.&lt;/p&gt;
&lt;h3&gt;    3.) &lt;a href="http://www.boardgamegeek.com/game/2651"&gt;Power Grid&lt;/a&gt;&lt;/h3&gt;
&lt;p dir="ltr" style="MARGIN-RIGHT: 0px"&gt;    The wife and I just played this game last night.  It was some kind of fun.  I would compare it to monopoly, but that would be a gross undestatement.  It took us about 5 min to set the game up, and about 2.5 hours to play all the way through for the first time.  &lt;/p&gt;
&lt;p dir="ltr" style="MARGIN-RIGHT: 0px"&gt;    This is another &lt;img style="FLOAT: left" alt="" margin="2" src="http://images.boardgamegeek.com/images/pic173153_t.jpg" /&gt;European game made in Germany.  The premise is simple, buy power plants, buy access to cities, buy resources for the power plants, power the cities.  In our game, the first person to power 21 cities wins.  The game is engineered so that no one player can completely run away with the game.  Basically, whoever's in the lead is at a disadvantage when it comes to buying up resources and power plants.  this keeps the games very tight and makes for some interesting outcomes.  &lt;/p&gt;
&lt;p dir="ltr" style="MARGIN-RIGHT: 0px"&gt;    The rules are very simple and straight forward, but again, the strategy comes from off the board.  Will you pay more than anyone else for a power plant?  It follows auction house rules so you could end up paying much more than it's value.  Or will you try to snag up all the resources to cut the other players off?  All in all, it's a great financial and resource management game, with a built in player driven economy and balancing system.&lt;/p&gt;
&lt;h3&gt;    4.) &lt;a href="http://www.boardgamegeek.com/game/3699"&gt;Killer Bunnies, Quest for the magic Carrot&lt;/a&gt;&lt;/h3&gt;
&lt;img style="FLOAT: left" alt="" src="http://images.boardgamegeek.com/images/pic96982_t.jpg" /&gt;
&lt;p&gt;With a name like that, who can resist the temptation to play.  &lt;/p&gt;
&lt;p&gt;The excerpt from the back of the box explains it best&lt;/p&gt;
&lt;p dir="ltr"&gt; &lt;/p&gt;
&lt;blockquote&gt;    Killer Bunnies is a fast paced, action filled card game, in which you must try to keep as many Bunnies alive as possible, while eliminating your opponents' Bunnies. The problem: Your opponents are armed with weapons and will stop at nothing to keep you from winning the game, which can get dreadfully vengeful, horribly nasty, hilariously messy, and just plain fun! Can you keep from being attacked by the whimsical Whisk or the torching Flame Thrower? Defend your Bunnies with the Magic Spatula, or use a Feed The Bunny card to starve out an opponent! It's off-the-wall strategic fun, where the goal is to survive and claim the Magic Carrot to win the game! &lt;/blockquote&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p dir="ltr" style="MARGIN-RIGHT: 0px"&gt;Yes, your goal is to achieve the magic carrot.  The wife really likes this one, and we typically play it as a pickup game.  It takes about 30 min to work through an entire match.  This is in the same vein as Munchkins.&lt;/p&gt;
&lt;h3 dir="ltr"&gt;    5.) &lt;a href="http://www.boardgamegeek.com/game/15363"&gt;Nexus Ops&lt;/a&gt;&lt;/h3&gt;
&lt;img style="FLOAT: right" alt="" src="http://images.boardgamegeek.com/images/pic192998_t.jpg" /&gt;
&lt;p dir="ltr" style="MARGIN-RIGHT: 0px"&gt;    Nexus Ops is a fantastic tactical game, without all the overhead and rules of games like Axis and Allies or some of the more in-depth war games.  The scenario is that you have brought a squad of units (&lt;em&gt;including aliens&lt;/em&gt;) to a distant planet to find resources and stake claim to them in the name of your corporation.   But your not alone (&lt;em&gt;wouldn’t be much of a challenge that way&lt;/em&gt;).  &lt;/p&gt;
&lt;p dir="ltr" style="MARGIN-RIGHT: 0px"&gt;    This is another game where you win by accumulation of victory points.  You can duke it out or achieve objectives to get your points, and most likely you'll have to do both.  The most stunning thing about this game is the pieces, they are fantastically sculpted and look great under a black light.  &lt;/p&gt;
&lt;p dir="ltr" style="MARGIN-RIGHT: 0px"&gt;    The rules for the game are fairly simple and straight forward.  Once you've played a game or two, you'll have em' down.  this game plays in about 45 min or so for a 2 player game.  figure about an hour and half for a 3 or 4 player game.  Tactical strategy keeps you sharp on your decision making skills.  Now Get out there and kill something marines!!!!&lt;/p&gt;
&lt;h3&gt;    6.) &lt;a href="http://www.boardgamegeek.com/game/11170"&gt;Heroscape&lt;/a&gt;&lt;/h3&gt;
&lt;img style="FLOAT: right" alt="" src="http://images.boardgamegeek.com/images/pic230591_t.jpg" /&gt;
&lt;p dir="ltr" style="MARGIN-RIGHT: 0px"&gt;    Honestly, Heroscape rates on my "Ok" list.  If the boys really want to play it, we will.  But the setup time is a test in patients and endurance.  Once your up and running it can be fun, especially with several people playing.  &lt;/p&gt;
&lt;p dir="ltr" style="MARGIN-RIGHT: 0px"&gt;    My favorite is to create a FPS variant and start doing things like capture the flag and double domination.  This game doesn’t get as much play as it did around Christmas, but it's still a hoot when the mood strikes us.&lt;/p&gt;
&lt;h3&gt;    7.) &lt;a href="http://www.boardgamegeek.com/game/31358"&gt;Triple Triumph&lt;/a&gt;&lt;/h3&gt;
&lt;img style="FLOAT: left" alt="" src="http://images.boardgamegeek.com/images/pic290989_t.jpg" /&gt;
&lt;p dir="ltr" style="MARGIN-RIGHT: 0px"&gt;    Crainium typically makes educational games, and this one is no exception.   Visualization, Analysis and Strategy all come together when your trying to out build your opponent.  With a limited number of spots on the board, you have to try and match your pyramids colors with those around it.  You can also build Up, and get extra rewards for doing so.  &lt;/p&gt;
&lt;p dir="ltr" style="MARGIN-RIGHT: 0px"&gt;    This is a fast game, about 15 min or so, and is really fun.  My wife and I play this a lot, as do our boys.  A great multiplayer puzzle game.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;h3&gt;8.) &lt;a href="http://www.boardgamegeek.com/wiki/page/Ameritrash#toc9"&gt;Monopoly, Risk, Uno, Trouble and the rest of the standard fair&lt;/a&gt;&lt;/h3&gt;
&lt;img style="FLOAT: right" height="102" alt="" width="150" src="http://www.pennsylvaniaskihouse.com/photos/Articles/1/Boardgames.jpg" /&gt;
&lt;p dir="ltr" style="MARGIN-RIGHT: 0px"&gt;    With the games listed above, the standard fair doesn’t get much play.  We'll occasionally break out Risk or Monopoly on a rainy or dreary day.  But with games like Catan and Robo Rally, we really don't have much use for those "Other" kind of games.   &lt;/p&gt;
&lt;p dir="ltr" style="MARGIN-RIGHT: 0px"&gt;    Uno, trouble and sorry however...those can be pretty fun and fast paced in the electronic versions.   We'll typically break those out with the kids when were a little short on time, but want to get some quality family time in.  Definitely worth checking out just for their togetherness factor.&lt;/p&gt;
&lt;p dir="ltr"&gt; &lt;/p&gt;
&lt;hr /&gt;
&lt;p dir="ltr"&gt;    Well, that’s not exactly a comprehensive list.  There are a number of other games that we play.  And at this moment i'm waiting for &lt;a href="http://www.boardgamegeek.com/game/9209"&gt;Ticket to Ride&lt;/a&gt; to come in.  Looks like it'll be a good one for the wife, myself and the kids to play.  At any rate, these games provide the kind of thought processes that will keep us up on our toes as developers.  But the best part is the time you get to spend with friends and family while playing.  Nothing is able to simulate that.&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=119801"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=119801" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://blog.mrdaveredding.net/aggbug/119801.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Dave Redding</dc:creator>
            <guid>http://blog.mrdaveredding.net/archive/2008/02/20/119801.aspx</guid>
            <pubDate>Wed, 20 Feb 2008 17:22:42 GMT</pubDate>
            <wfw:comment>http://blog.mrdaveredding.net/comments/119801.aspx</wfw:comment>
            <comments>http://blog.mrdaveredding.net/archive/2008/02/20/119801.aspx#feedback</comments>
            <slash:comments>4</slash:comments>
            <wfw:commentRss>http://blog.mrdaveredding.net/comments/commentRss/119801.aspx</wfw:commentRss>
            <trackback:ping>http://blog.mrdaveredding.net/services/trackbacks/119801.aspx</trackback:ping>
        </item>
    </channel>
</rss>