<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/"><channel><title>Personal</title><link>http://www.agileprogrammer.com/scottden/category/138.aspx</link><description>Personal</description><managingEditor>Scott Densmore</managingEditor><dc:language>en-US</dc:language><generator>.Text Version 0.95.2005.109</generator><item><dc:creator>Scott Densmore</dc:creator><title>Enterprise Library without Configuration</title><link>http://www.agileprogrammer.com/scottden/archive/2007/05/23/22721.aspx</link><pubDate>Wed, 23 May 2007 17:38:00 GMT</pubDate><guid>http://www.agileprogrammer.com/scottden/archive/2007/05/23/22721.aspx</guid><wfw:comment>http://www.agileprogrammer.com/scottden/comments/22721.aspx</wfw:comment><comments>http://www.agileprogrammer.com/scottden/archive/2007/05/23/22721.aspx#Feedback</comments><slash:comments>74</slash:comments><wfw:commentRss>http://www.agileprogrammer.com/scottden/comments/commentRss/22721.aspx</wfw:commentRss><trackback:ping>http://www.agileprogrammer.com/scottden/services/trackbacks/22721.aspx</trackback:ping><description>&lt;p&gt;
At the end of Enterprise LIbrary v1, we knew .NET 2 was coming and that there would need to be changes to configuration.  The biggest thing I heard (from Brad, Peter, Jim, Brian etc) was that the blocks should be completely independent from configuration.  At the same time we were really talking about Dependency Injection and how we could accomplish removing configuration with this mechanism (at the same time figuring out .NET 2.0 config and the changes we wanted for EntLib V2).
&lt;/p&gt;&lt;p&gt;
While we were working on EntLib V2, we were working in the same room as the Composite Application Block team where Brad, Peter and Ed come up with ObjectBuilder.  We decided we would use ObjectBuilder as the DI framework and and build our own container (EnterpriseLibraryFactory).  By doing this we could inject config into the blocks given an IConfigurationSource.  Given all the learnings, changes, etc, I don't feel we made it to the finish line when breaking out configuration.  I think to really get to the solution we needed to remove the dependency of the Common library from all the other code.  Enter EntLib V3.
&lt;/p&gt;&lt;p&gt;
Enterprise Library version 3 is another great release, yet I am sad that the configuration did not get much attention (of course that is probably because I had written it 12 times before).    Now that we have the &lt;a href="http://www.codeplex.com/EntLibContrib"&gt;EntLibContrib&lt;/a&gt; project on CodePlex I thought I would start putting up the code that I have migrated to not use config.  You can find it there in the EntLibRefactored folder of the project.  I have my own solution so I can refactor more as I go along.  All the original EntLib assemblies are in the 3rd party directories so you don't have to install it.  Eventually, they will not be necessary.  Wouldn't this be a cool way to run EntLib 4?
&lt;/p&gt;&lt;p&gt;
&lt;span style="font-size:14pt;"&gt;&lt;strong&gt;Why am I doing this?&lt;/strong&gt;&lt;/span&gt;
&lt;/p&gt;&lt;p&gt;
Good question.  Developing a product and using it are two different things.  We use ObjectBuilder and EntLib V2 for the CodePlex site.  What we wanted was the new PIAB (Process Invocation Application Block) for the interception mechanism.  Looking at the block, I discovered that to use it we needed to drag along the Common and ObjectBuilder library.  I didn't mine ObjectBuilder but taking Common was out of the question... we were still using EntLib V2.  If I didn't have a dependency on the Common library, I could use ObjectBuilder and PIAB since they were the same.
&lt;/p&gt;&lt;p&gt;
This is the major reason that I decided that it was time to start this process of removing the dependency of configuration from the blocks.  My first stab was to rewrite PIAB using the EntLib V3 binaries... and I have to say it was pretty easy.   You could take the same approach (and I will eventually) with the rest of the library.
&lt;/p&gt;&lt;p&gt;
&lt;span style="font-size:14pt;"&gt;&lt;strong&gt;What is next?&lt;/strong&gt;&lt;/span&gt;
&lt;/p&gt;&lt;p&gt;
I have a few more things I want to do while removing the configuration.  If you think about removing the configuration from PIAB, you could move it further down the stack.  You could then build a container that did both DI and AOP.  This is what we are doing for CodePlex.   Watch here for updates.  Brad and I should have some new code for you that includes just this!
&lt;/p&gt;
&lt;!-- technorati tags start --&gt;&lt;p style="text-align:right;font-size:10px;"&gt;Technorati Tags: &lt;a href="http://www.technorati.com/tag/Enterprise Library" rel="tag"&gt;Enterprise Library&lt;/a&gt;, &lt;a href="http://www.technorati.com/tag/ObjectBuilder" rel="tag"&gt;ObjectBuilder&lt;/a&gt;&lt;/p&gt;&lt;!-- technorati tags end --&gt;&lt;img src ="http://www.agileprogrammer.com/scottden/aggbug/22721.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>Scott Densmore</dc:creator><title>Can I Live Without Cable?  Sounds Comcastic!</title><link>http://www.agileprogrammer.com/scottden/archive/2007/03/10/22449.aspx</link><pubDate>Sat, 10 Mar 2007 23:40:00 GMT</pubDate><guid>http://www.agileprogrammer.com/scottden/archive/2007/03/10/22449.aspx</guid><wfw:comment>http://www.agileprogrammer.com/scottden/comments/22449.aspx</wfw:comment><comments>http://www.agileprogrammer.com/scottden/archive/2007/03/10/22449.aspx#Feedback</comments><slash:comments>70</slash:comments><wfw:commentRss>http://www.agileprogrammer.com/scottden/comments/commentRss/22449.aspx</wfw:commentRss><trackback:ping>http://www.agileprogrammer.com/scottden/services/trackbacks/22449.aspx</trackback:ping><description>&lt;p&gt;
After going down from 12 shows to 6 (yes I let Grey's Anatomy back in), we have been pondering getting rid of  cable.  Now that AppleTV is out and iTunes has most of the shows I care about, why wouldn't I pay as I go instead of the $60 a month?  If you look at the cost for AppleTV of ~$250 and the average price for a season pass on iTunes of ~$35.00,  getting rid of cable is going to save me a lot of money (about $500).   Then I can take that extra cash and do something useful with it.  
&lt;/p&gt;&lt;img src ="http://www.agileprogrammer.com/scottden/aggbug/22449.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>Scott Densmore</dc:creator><title>It is all Crap</title><link>http://www.agileprogrammer.com/scottden/archive/2007/02/18/22215.aspx</link><pubDate>Sun, 18 Feb 2007 03:37:00 GMT</pubDate><guid>http://www.agileprogrammer.com/scottden/archive/2007/02/18/22215.aspx</guid><wfw:comment>http://www.agileprogrammer.com/scottden/comments/22215.aspx</wfw:comment><comments>http://www.agileprogrammer.com/scottden/archive/2007/02/18/22215.aspx#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.agileprogrammer.com/scottden/comments/commentRss/22215.aspx</wfw:commentRss><trackback:ping>http://www.agileprogrammer.com/scottden/services/trackbacks/22215.aspx</trackback:ping><description>&lt;p&gt;
Today was house cleaning day.   I am a freak when it comes to cleaning.  It drives Lisa and the girls insane when I get home because the first thing I do is start picking up things and putting them away.  We have an agreement (that I am starting to rethink) that I clean if Lisa cooks.  In our home office we have a pile of artwork from the girls.  As I was adding to the pile, Lisa stated that she would eventually clean all of the artwork out.  I said "... I have one word for what I would do with it..." (I am all about throwing things away, so garbage was my word).  Anna said "I know the word.... Crap".   I didn't stop laughing for 5 minutes.
&lt;/p&gt;&lt;p&gt;
&lt;strong&gt;Traveller&lt;/strong&gt; from the album "Chilled Ibiza" by &lt;a href="http://www.google.com/search?q=%22Talvin%20Singh%22"&gt;Talvin Singh&lt;/a&gt;
&lt;/p&gt;&lt;img src ="http://www.agileprogrammer.com/scottden/aggbug/22215.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>Scott Densmore</dc:creator><title>Agile Project Management</title><link>http://www.agileprogrammer.com/scottden/archive/2007/02/18/22213.aspx</link><pubDate>Sun, 18 Feb 2007 03:19:00 GMT</pubDate><guid>http://www.agileprogrammer.com/scottden/archive/2007/02/18/22213.aspx</guid><wfw:comment>http://www.agileprogrammer.com/scottden/comments/22213.aspx</wfw:comment><comments>http://www.agileprogrammer.com/scottden/archive/2007/02/18/22213.aspx#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.agileprogrammer.com/scottden/comments/commentRss/22213.aspx</wfw:commentRss><trackback:ping>http://www.agileprogrammer.com/scottden/services/trackbacks/22213.aspx</trackback:ping><description>&lt;p&gt;
&lt;a href="http://www.agileprogrammer.com/oneagilecoder/"&gt;Brian&lt;/a&gt; has just posted his ideas and life with &lt;a href="http://www.agileprogrammer.com/oneagilecoder/archive/2007/02/11/22180.aspx"&gt;Agile Project Management&lt;/a&gt;.  I miss working with Brian.  I still have my WWBD (What Would Brian Do) hat that I wear every once in a while.   Brian's words hit home with regard to some of the conversations I have seen going on internally.  Sometimes the answer is to just leave things alone.  I am reading between the lines here, but because of his experience, he has created a feedback loop that will help the whole team; they can ask for help when needed and get direction without getting hit by the big stick.
&lt;/p&gt;&lt;p&gt;
In my opinion this only works if the team is built with people that have the fundamentals.  I have found that a lot of people are lacking in the agile fundamentals.  If you don't have them, building a product agile is like playing football with the marching band.  You might win the game (probably not), but it will be ugly and your players will probably never do it again.  I have been trying to figure out what I believe are the fundamentals.  I am not sure I have all of them figured out (I am working on a post of what I think they are), yet I know that an open mind, a drive for success, and someone wanting to ship great software is key.
&lt;/p&gt;&lt;p&gt;
&lt;strong&gt;Woman Lose Weight&lt;/strong&gt; from the album "Charango" by &lt;a href="http://www.google.com/search?q=%22Morcheeba%22"&gt;Morcheeba&lt;/a&gt;
&lt;/p&gt;&lt;img src ="http://www.agileprogrammer.com/scottden/aggbug/22213.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>Scott Densmore</dc:creator><title>The MacBook is really designed better</title><link>http://www.agileprogrammer.com/scottden/archive/2007/02/18/22212.aspx</link><pubDate>Sun, 18 Feb 2007 02:58:00 GMT</pubDate><guid>http://www.agileprogrammer.com/scottden/archive/2007/02/18/22212.aspx</guid><wfw:comment>http://www.agileprogrammer.com/scottden/comments/22212.aspx</wfw:comment><comments>http://www.agileprogrammer.com/scottden/archive/2007/02/18/22212.aspx#Feedback</comments><slash:comments>5</slash:comments><wfw:commentRss>http://www.agileprogrammer.com/scottden/comments/commentRss/22212.aspx</wfw:commentRss><trackback:ping>http://www.agileprogrammer.com/scottden/services/trackbacks/22212.aspx</trackback:ping><description>&lt;p&gt;
I am watching Peter's (actually his wife's) dog (who I want to trade for my own). He decided he wanted to check out the place and walk behind me while I had my MacBook Pro plugged up.  He caught the cord (and as &lt;a href="http://movies.apple.com/movies/us/apple/getamac/accident_480x376.mov"&gt;this video&lt;/a&gt; puts it), it just popped out no problem.  I love this machine.
&lt;/p&gt;&lt;img src ="http://www.agileprogrammer.com/scottden/aggbug/22212.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>Scott Densmore</dc:creator><title>My Mac as a Media Center</title><link>http://www.agileprogrammer.com/scottden/archive/2007/02/13/22191.aspx</link><pubDate>Tue, 13 Feb 2007 19:47:00 GMT</pubDate><guid>http://www.agileprogrammer.com/scottden/archive/2007/02/13/22191.aspx</guid><wfw:comment>http://www.agileprogrammer.com/scottden/comments/22191.aspx</wfw:comment><comments>http://www.agileprogrammer.com/scottden/archive/2007/02/13/22191.aspx#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.agileprogrammer.com/scottden/comments/commentRss/22191.aspx</wfw:commentRss><trackback:ping>http://www.agileprogrammer.com/scottden/services/trackbacks/22191.aspx</trackback:ping><description>&lt;p&gt;
I just found &lt;a href="http://www.nullriver.com/index/products/connect360"&gt;Connect360&lt;/a&gt;.  This will allow me to use iTunes and iPhoto from my XBox 360.  I like the idea since all my music and photos are on my Mac. 
&lt;/p&gt;&lt;img src ="http://www.agileprogrammer.com/scottden/aggbug/22191.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>Scott Densmore</dc:creator><title>Five Things About Me</title><link>http://www.agileprogrammer.com/scottden/archive/2007/02/04/22133.aspx</link><pubDate>Sun, 04 Feb 2007 00:48:00 GMT</pubDate><guid>http://www.agileprogrammer.com/scottden/archive/2007/02/04/22133.aspx</guid><wfw:comment>http://www.agileprogrammer.com/scottden/comments/22133.aspx</wfw:comment><comments>http://www.agileprogrammer.com/scottden/archive/2007/02/04/22133.aspx#Feedback</comments><slash:comments>4</slash:comments><wfw:commentRss>http://www.agileprogrammer.com/scottden/comments/commentRss/22133.aspx</wfw:commentRss><trackback:ping>http://www.agileprogrammer.com/scottden/services/trackbacks/22133.aspx</trackback:ping><description>&lt;p&gt;
I was &lt;a href="http://www.agileprogrammer.com/dotnetguy/archive/2007/01/04/21967.aspx"&gt;tagged by Brad&lt;/a&gt;.  Here is my list:

&lt;ol&gt;&lt;li&gt;&lt;strong&gt;I love music.&lt;/strong&gt;&lt;br /&gt;
I don't like just listening to music, I even played a bit.  The one instrument most people would be shocked to learn I played was the Double B flat upright concert bass (aka the &lt;a href="http://en.wikipedia.org/wiki/Tuba"&gt;Tuba&lt;/a&gt;).&lt;/li&gt;&lt;li&gt;&lt;strong&gt;My favorite computers were my Commodores.&lt;/strong&gt; &lt;br /&gt;
I had a Vic-20, C64 and 128.  It was fun to come home after school, insert the disk in the 1571 drive and type Load "*.*", 8, 1&lt;/li&gt;&lt;li&gt;&lt;strong&gt;I love football.&lt;/strong&gt;&lt;br /&gt;
I am not a big fan of other sports, but I love this game.  The passion, the drive, the pure humanity of it.  I also like seeing someone getting whacked every once in a while.&lt;/li&gt;&lt;li&gt;&lt;strong&gt;I am a Mac.&lt;/strong&gt;&lt;br /&gt;
I bought my first mac this year and I love it.  I just wish their development platform would catch up.&lt;/li&gt;&lt;li&gt;&lt;strong&gt;I have a small circle of friends.&lt;/strong&gt;&lt;br /&gt;
I like people, but I have a small circle of friends.  Peter, Brad and I had a long talk about this in terms of our colors.  I like people and have friends, but there is only a few that I would consider in the circle.&lt;/li&gt;&lt;/ol&gt;So given that I have a small circle and most of them have either already done this or don't have a blog... guess I tag no one.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;(Rock) Superstar&lt;/strong&gt; from the album "Skull &amp;#38; Bones" by &lt;a href="http://www.google.com/search?q=%22Cypress%20Hill%22"&gt;Cypress Hill&lt;/a&gt;
&lt;/p&gt;&lt;img src ="http://www.agileprogrammer.com/scottden/aggbug/22133.aspx" width = "1" height = "1" /&gt;</description></item></channel></rss>