tag:blogger.com,1999:blog-367668502024-03-07T08:57:38.895-05:00Joe Wirtley's BlogSoftware architecture and developmentJoe Wirtleyhttp://www.blogger.com/profile/11883071348754875431noreply@blogger.comBlogger149125tag:blogger.com,1999:blog-36766850.post-84948972032096573012010-09-19T21:56:00.001-04:002010-09-19T21:56:57.629-04:00Creating Search Folders using the Query Builder in Outlook 2010<p>For one of my clients, I receive error information via email.  At times there can be hundreds of error emails, so I try to take advantage of Outlook to put things into folders and leverage search folders to see the types of errors that are happening.</p> <p>I found <a href="http://www.addictivetips.com/microsoft-office/outlook-2010-advanced-search-query-builder/" target="_blank">this post</a> that describes how to enable advanced queries in Outlook 2010 using the query builder.  The query builder supports the condition I was looking for, which is to check for messages containing two different search strings, including messages where only both are present.  And I found <a href="http://www.technospot.net/blogs/outlook-create-powerful-search-folders-with-query-builder/" target="_blank">this post</a> that described how to create a search folder from the query builder.  Unfortunately, it was describing Outlook 2007, and the steps to create a search folder didn’t work in Outlook 2010.  So this blog post connects the dots on how to create a search folder using the query builder in Outlook 2010.</p> <p>First, to enable the advanced query builder, you must add a “QueryBuilder” key to the registry for your version of Outlook, which is under     <br /> <br />    HKEY_CURRENT_USER\Software\Microsoft\Office\14.0\Outlook</p> <p>See the <a href="http://www.addictivetips.com/microsoft-office/outlook-2010-advanced-search-query-builder/" target="_blank">other post</a> for more detailed instructions on enabling the query builder and some description of its capabilities.  Next, right click on the Search Folders heading to create a new Search Folder:</p> <p><a href="http://lh6.ggpht.com/_-X64oVjJ6yE/TJa_UrhRApI/AAAAAAAAJeM/SUa00OAafow/s1600-h/New%20Search%20Folder%5B3%5D.png"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="New Search Folder" border="0" alt="New Search Folder" src="http://lh5.ggpht.com/_-X64oVjJ6yE/TJa_V4ujDWI/AAAAAAAAJeU/oIQ6BZe9hPQ/New%20Search%20Folder_thumb%5B1%5D.png?imgmax=800" width="279" height="64" /></a></p> <p>which will show the new search folder dialog.  On this dialog, scroll to the bottom selection, which is “Create a custom Search Folder” and click on the Choose… button:</p> <p><a href="http://lh3.ggpht.com/_-X64oVjJ6yE/TJa_WZk36lI/AAAAAAAAJec/9tXitme2o8I/s1600-h/New%20Search%20Folder%20Dialog%5B6%5D.png"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="New Search Folder Dialog" border="0" alt="New Search Folder Dialog" src="http://lh6.ggpht.com/_-X64oVjJ6yE/TJa_W2IwB8I/AAAAAAAAJek/PO1B4v67sZE/New%20Search%20Folder%20Dialog_thumb%5B2%5D.png?imgmax=800" width="316" height="392" /></a></p> <p>which will show the Custom Search Folder edit dialog.  On this dialog, click the Criteria button:</p> <p><a href="http://lh5.ggpht.com/_-X64oVjJ6yE/TJa_XTlVSdI/AAAAAAAAJes/wu9w8xJg-Ac/s1600-h/Custom%20Search%20Folder%5B4%5D.png"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="Custom Search Folder" border="0" alt="Custom Search Folder" src="http://lh6.ggpht.com/_-X64oVjJ6yE/TJa_YHMP7kI/AAAAAAAAJe0/q9hUfhFz8tE/Custom%20Search%20Folder_thumb%5B2%5D.png?imgmax=800" width="424" height="235" /></a></p> <p>which will finally produce the dialog where you can see the query builder and enter your criteria:</p> <p><a href="http://lh6.ggpht.com/_-X64oVjJ6yE/TJa_Y5tM9OI/AAAAAAAAJe8/7wl38pTj8UQ/s1600-h/Search%20Folder%20Criteria%5B3%5D.png"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="Search Folder Criteria" border="0" alt="Search Folder Criteria" src="http://lh3.ggpht.com/_-X64oVjJ6yE/TJa_aP1A7PI/AAAAAAAAJfE/bD_6kI4RUNE/Search%20Folder%20Criteria_thumb%5B1%5D.png?imgmax=800" width="381" height="389" /></a></p> <p>From here, you can enter the criteria and back your way out through the dialogs to add your search folder.</p> Joe Wirtleyhttp://www.blogger.com/profile/11883071348754875431noreply@blogger.com2tag:blogger.com,1999:blog-36766850.post-34849873976063496302010-08-13T15:02:00.001-04:002010-08-13T15:02:14.828-04:00Upcoming St. Louis Day of .NET<p>It’s not long until the upcoming <a href="http://stlouisdayofdotnet.com/" target="_blank">St. Louis Day of .NET</a> (August 20-21).  I’ve been selected to do two sessions:</p> <ul> <li><a href="http://www.stlouisdayofdotnet.com/SessionDetail.aspx?SessionID=182" target="_blank">Pragmatic Software Architecture and the Role of the Architect</a> </li> <li><a href="http://www.stlouisdayofdotnet.com/SessionDetail.aspx?SessionID=181" target="_blank">Pivot and the Silverlight PivotViewer Control</a> </li> </ul> <p>It will be the first time I’ve been to the St. Louis Day of .NET and I’m looking forward to it.  I haven’t presented to many people outside of our Microsoft district so I’ll have the opportunity to talk to many people who haven’t seen me speak before.  I also hope to meet other speakers and leaders outside of our district.</p> <p>If you’re in the St. Louis area and want discounted admission, I have a couple discount codes.  <a href="http://wirtleyconsulting.com/Contact.aspx" target="_blank">Contact me</a> if you’re interested.</p> Joe Wirtleyhttp://www.blogger.com/profile/11883071348754875431noreply@blogger.com0tag:blogger.com,1999:blog-36766850.post-35450438020810335052010-08-09T21:39:00.001-04:002010-08-09T21:39:03.303-04:00devLink 2010<p>I just got back from another great <a href="http://www.devlink.net" target="_blank">devLink</a>.  I did my presentation on <em><a href="http://prezi.com/9jkjh_jigupr/anatomy-of-an-e-commerce-site/">Anatomy of an E-Commerce Site</a></em> in the first time slot after the opening keynote, which left me the remainder of the event to sit back and enjoy the presentations.  I missed last year’s devLink, so this was my first event at Lipscomb University, which provided a great setting for the conference.</p> <p>The sessions I attended while at devLink included:</p> <ul> <li><em>Test Driven Development with T-SQL</em> by <a title="Phil Japikes (@skimedic)" href="http://www.skimedic.com/blog/" target="_blank">Phil Japikse</a>, </li> <li><em>Hyper-V: Tools to Build the Ultimate Virtual test Network</em> by <a href="http://blogs.technet.com/b/matthewms/" target="_blank">Matt Hester</a>. </li> <li><em>Workflow Systems: Myths, Truths and Wishful Thinking</em> by <a href="http://www.userinexperience.com/" target="_blank">Brandon Satrom</a>, </li> <li><em>Caliburn Micro</em> by <a href="http://codeswamp.com/" target="_blank">Bryan Hunter</a></li> <li><em>Architecting Silverlight Applications</em> by <a href="http://wildermuth.com/" target="_blank">Shawn Wildermuth</a> </li> <li><em>Best of Both Worlds: Sharing code and UI between Silverlight and WPF</em> by <a href="http://10rem.net/blog" target="_blank">Pete Brown</a> </li> <li><em>Combining WebForms, MVC and Silverlight</em> by <a href="http://blogs.telerik.com/toddanglin/posts.aspx" target="_blank">Todd Anglin</a> </li> <li><em>Entity Framework 4.0: Restoring the Confidence</em> by <a href="http://www.thinqlinq.com/" target="_blank">Jim Wooley</a> </li> <li><em>Continuous Integration: More than just a toolset</em> by <a href="http://www.cptloadtest.com/" target="_blank">Jay Harris</a> </li> <li><em>Event Driven Architecture</em> by <a href="http://blog.phatboyg.com/" target="_blank">Chris Patterson</a> </li> <li><em>Picking a Data Platform for Silverlight</em> by <a href="http://wildermuth.com/" target="_blank">Shawn Wildermuth</a> </li> <li><em>Leveraging Client Capabilities with jQuery in Visual Studio and ASP.NET</em> by <a href="http://aspadvice.com/blogs/robertb/" target="_blank">Robert Boedigheimer</a> </li> </ul> <p>I also sat in on an <a href="http://en.wikipedia.org/wiki/Open_Space_Technology" target="_blank">open space</a> on RabbitMQ.  I list all of these session to show the variety of topics and the quality of speakers at devLink.  And these were only the sessions that I attended; there were many more I would like to have seen.  And there were plenty of great open space discussions in which I would have liked to participate.</p> <p>And beyond the sessions, I was able to spend time connecting with and learning from my peers who are passionate about technology.  All for a $100 conference fee. If you’re anywhere near Nashville, keep an eye out for next year’s devLink.  And if you’re not, attend the local community events near you.   It’s a great way to get some valuable education at a great price.</p> Joe Wirtleyhttp://www.blogger.com/profile/11883071348754875431noreply@blogger.com0tag:blogger.com,1999:blog-36766850.post-6255916386176181242010-04-05T11:42:00.001-04:002010-04-05T11:42:03.081-04:00Microsoft 2010 Launch Events<p>Registration is open for the 2010 launch events <a href="http://bit.ly/8X8S4a">here</a><a href="http://www.microsoft.com/business/2010events/default.aspx"></a>.  Unfortunately, there’s not a “real” launch event in Ohio.  The full launch event in our area is in Detroit on May 25.  However, there are “<a href="http://www.microsoft.com/business/2010events/Highlights.aspx">Launch 2010 Highlights</a>” events in Cincinnati, Columbus, and Cleveland.  And you can register for them now also, if you can find the hidden link:</p> <p><a href="http://lh5.ggpht.com/_-X64oVjJ6yE/S7oEwz5jPmI/AAAAAAAAH2U/uY2yp9jIJyU/s1600-h/image%5B11%5D.png"><img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh3.ggpht.com/_-X64oVjJ6yE/S7oEyQbLkOI/AAAAAAAAH2c/dTvLStRvv8A/image_thumb%5B5%5D.png?imgmax=800" width="458" height="301" /></a></p> <p>Or you can just <a title="2010 Launch Highlights Tour Registration" href="http://www.microsoft.com/business/2010events/Highlights.aspx">click here</a> to go directly to the page that lists the launch highlights tour dates with registration links.  The dates in Ohio are:</p> <table border="0" cellspacing="0" cellpadding="2" width="218"><tbody> <tr> <td valign="top" width="124">Cincinnati</td> <td valign="top" width="92">May 6</td> </tr> <tr> <td valign="top" width="124">Cleveland</td> <td valign="top" width="92">June 3</td> </tr> <tr> <td valign="top" width="124">Columbus</td> <td valign="top" width="92">June 16</td> </tr> </tbody></table> Joe Wirtleyhttp://www.blogger.com/profile/11883071348754875431noreply@blogger.com1tag:blogger.com,1999:blog-36766850.post-46268481442619626902010-03-30T17:46:00.001-04:002010-03-30T17:46:12.457-04:00Gmail Refresh POP Accounts<p>I use Gmail to collect mail from several other POP accounts, which works great.  But you cannot control when Gmail chooses to check mail on those POP accounts.  You can go into the settings and manually force each account to check, but that is inconvenient.  </p> <p>Thankfully, Google recently published a Labs feature to make this easier: <a href="http://gmailblog.blogspot.com/2010/03/new-in-labs-refresh-pop-accounts.html">http://gmailblog.blogspot.com/2010/03/new-in-labs-refresh-pop-accounts.html</a>.  If you enable this feature, the refresh link in Gmail will not only update the display, it will go check for mail on all of the POP accounts you have configured.<a href="http://lh6.ggpht.com/_-X64oVjJ6yE/S7JxIp9ZRmI/AAAAAAAAH1w/qr1Tb_nFsMI/s1600-h/image%5B3%5D.png"><img style="border-bottom: 0px; border-left: 0px; margin: 10px 0px 0px 15px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" align="right" src="http://lh6.ggpht.com/_-X64oVjJ6yE/S7JxI2FYQeI/AAAAAAAAH14/4NOymQR-7Jw/image_thumb%5B1%5D.png?imgmax=800" width="173" height="51" /></a></p> <p>This is great when you know you have an email from another account and want to get it quickly.  Thanks Google Labs!</p> Joe Wirtleyhttp://www.blogger.com/profile/11883071348754875431noreply@blogger.com0tag:blogger.com,1999:blog-36766850.post-9267261685153534332010-03-27T16:51:00.001-04:002010-03-27T16:51:44.568-04:00Is this thing on?<p>So it’s been a while since I did a blog post.  I’m sure that many of you forgot that I was in your RSS reader, assuming you’re still using an RSS reader and not finding everything on Twitter.  Hopefully the fact that I was quiet didn’t get me deleted from those you follow.  If so, I guess you won’t be reading this.</p> <p>For the rest of you: Hi!  Those of you who have seen me at user groups know that I didn’t drop off the face of the earth and now the rest of you know it too.  I could tell you that I’m going to do regular blog posts from now on, but I don’t like to lie.  But I will say that you’ll be hearing from me a little more frequently than once every eighteen months.</p> Joe Wirtleyhttp://www.blogger.com/profile/11883071348754875431noreply@blogger.com2tag:blogger.com,1999:blog-36766850.post-57746365876996223572008-09-28T18:30:00.001-04:002008-09-28T18:33:46.538-04:00jQuery and Microsoft - ScottGu's BlogI just have to note this announcement from Scott Guthrie: <a href="http://weblogs.asp.net/scottgu/archive/2008/09/28/jquery-and-microsoft.aspx">jQuery and Microsoft - ScottGu's Blog</a>: "I'm excited today to announce that Microsoft will be shipping jQuery with Visual Studio going forward." Microsoft shipping jQuery? What's the world coming to? I'm sure that <a href="http://www.fallenrogue.com/">Leon</a> will be happy, even if it's not <a href="http://www.prototypejs.org/">Prototype</a>.Joe Wirtleyhttp://www.blogger.com/profile/11883071348754875431noreply@blogger.com4tag:blogger.com,1999:blog-36766850.post-80886560576580835632008-09-26T09:40:00.001-04:002008-09-26T09:40:14.682-04:00Chris Woodruff on Astoria<p><a href="http://blog.cloudsocket.com">Chris Woodruff</a> was the speaker at this week's <a href="http://daytondevgroup.net/">Dayton .NET Developers Group</a>.  He talked to us about Astoria, or what is now known as ADO.NET Data Services.  ADO.NET Data Services is a way to easily expose data via services.  He gave us a good introduction to using it and did a demonstration of how simple it is to get a basic service up that exposes a read only view of your data.  </p> <p>My primary take away from the presentation is that the ADO.NET Data Services is a solution looking for a problem.  It's hard to imagine too many scenarios where it would be useful.  In its current state, it would be most useful in exposing a bunch of read-only data that you wanted to make publicly available.  I can also see how it might be useful within an enterprise to expose data in .NET to consumers in other languages. </p> <p>Sadly, this was also our last meeting at <a href="http://maxtrain.com">Max Technical Training</a> in Dayton since they are closing their Dayton facility.  Max has been a great supporter of the user group and we've really enjoyed meeting in their facility.  I want to publicly thank Max for their support and for their continued support of many user groups.  I truly appreciate it as both a contribute and attendee at many user groups.</p> <p>We are still looking for a new home for the user group, so if you have any ideas of potential locations, or opinions about where we should meet, please <a href="http://www.wirtley.net/Contact.aspx">contact me</a>.</p> Joe Wirtleyhttp://www.blogger.com/profile/11883071348754875431noreply@blogger.com0tag:blogger.com,1999:blog-36766850.post-71961917198244043872008-08-25T13:34:00.001-04:002008-08-25T13:34:58.165-04:00Bill Vaughn in Dayton<p><a href="http://www.betav.com">Bill Vaughn</a> will be visiting Dayton Wednesday.  If you don't recognize his name, it may help to know that he is the author of <a href="http://www.amazon.com/gp/product/0321243625?ie=UTF8&tag=joewirsblo-20&linkCode=as2&camp=1789&creative=9325&creativeASIN=0321243625">Hitchhiker's Guide to Visual Studio and SQL Server: Best Practice Architectures and Examples, 7th Edition (Microsoft Windows Server System Series)</a>.  In the evening, he will be speaking to the <a href="http://daytondevgroup.net/">Dayton .NET Developers Group</a> covering a topic yet to be determined.  He gave us four potential presentation topics and we are going to have a vote at the meeting to choose the winner.  The four potential topics are: Visual Studio Reporting, SQL Server CLR Executables, ADO.NET Connecting, and SQL Server Compact Edition.  For more description of each, check out the <a href="http://daytondevgroup.net/forums/t/150.aspx">forum</a> on the web site.  </p> <p>In the afternoon, Bill has agreed to meet with group members in a less formal setting, so we're having a "open space with Bill Vaughn" starting at 3:00 at the Dorothy Lane Market in Springboro, which is just down the street from our meeting location at <a href="http://maxtrain.com">Max Technical Training</a>.    For more details, you can also see the <a href="http://daytondevgroup.net/forums/t/150.aspx">forum</a> on the web site.  </p> Joe Wirtleyhttp://www.blogger.com/profile/11883071348754875431noreply@blogger.com0tag:blogger.com,1999:blog-36766850.post-64319357464398668682008-08-24T17:37:00.001-04:002008-08-24T17:37:53.410-04:00devLink Day 2<p>I started the second day of <a href="http://www.devlink.net">devLink</a> by doing my presentation on <a href="http://www.wirtley.net/WPFforDevelopers">WPF for Developers</a>.  It was a new experience for me speaking in a college lecture hall, and with a microphone, but I think it went well.  I had a good group of people for the first session in the morning.  I had some good feedback from several attendees and good questions.   If anyone attending my session has any questions, or comments, please feel free to <a href="http://www.wirtley.net/Contact.aspx">contact me</a> here.</p> <p>I next went to an open space session on *DD, which covered <a href="http://en.wikipedia.org/wiki/Test-driven_development">TDD</a> (Test Driven Development), <a href="http://en.wikipedia.org/wiki/Behavior_driven_development">BDD</a> (Behavior Driven Development), and <a href="http://en.wikipedia.org/wiki/Domain-driven_design">DDD</a> ( Domain Driven Design).   I've been thinking quite a bit about TDD since that session and talking about it with <a href="http://www.fallenrogue.com/">Leon</a>.  I see great potential value in TDD/BDD, but I haven't yet made the time investment to start using TDD.   Stay tuned to this blog for future developments in this area.</p> <p>At the open space, someone suggested that they would like to see TDD in action which led to an impromptu lunch session.  The idea was to hook up to the projector and see someone doing TDD.  We expected five or ten people the room and we ended up with the entire room full.  It was a great idea, but with the larger crowd and spur of the moment execution, it didn't go smoothly.  But, it was great to see so many people interested in TDD.</p> <p>After lunch, I went to the <em>Essence of LINQ</em> presentation by <a href="http://blogs.msdn.com/charlie/">Charlie Calvert</a>.  His presentation was similar to one I saw at the <a href="http://cinnug.org">Cincinnati .NET User Group</a> by Stefan Kyntchev in that it showed the underpinnings of LINQ.  In his demos, Charlie created a basic LINQ to objects implementation from scratch using Lambdas, IEnumerable<T>, Extension Methods, Expression Trees, and IQueryable<T>.  Along the way, he showed the part each language element  plays in supporting LINQ. </p> <p>I next attended the closing circle for the <a href="http://en.wikipedia.org/wiki/Open_Space_Technology">open space</a> event.  I enjoyed the open spaces I attended and as demonstrated by the number and energy of attendees at the closing circle, I think a lot of other people enjoyed the open spaces.  About half of the people at the closing circle had never before attended an open space event.  <a href="http://netcave.org/">Alan Stevens</a> did a great job organizing the open space event and I think as a group we've built momentum for more open spaces.  So expect to see more open space events around the region in the future.  And if you've never attended an open space, check one out at your earliest opportunity.</p> <p><a href="http://www.misfitgeek.com/">Joe Stagner</a> did the closing keynote and gave us some insight into what goes on at Microsoft, and his thoughts about the future of our industry.  Somehow, I did not win any <a href="http://joewirtley.blogspot.com/2008/01/go-to-codemash-win-xbox-360.html">gaming</a> <a href="http://joewirtley.blogspot.com/2008/01/go-to-codemash-win-xbox-360.html">systems</a> at the closing raffle.  But <a href="http://jengriff.com/">Jennifer Griffin</a> did pick up a nice monitor.  Congratulations Jennifer!</p> <p>I want to express my thanks to all of the organizers of devLink: <a href="http://www.anvilsystems.com/Blog/tabid/114/Default.aspx">John Kellar</a>, <a href="http://crazedcodemonkey.blogspot.com/">Tommy Norman</a>, Leanna Baker, <a href="http://keithelder.net/blog/">Keith Elder</a>, and <a href="http://netcave.org/">Alan Stevens</a> (sorry if I missed anyone).  It was a great event and I think I will add it to the short list of can't miss events along with <a href="http://www.codemash.org/">CodeMash</a>.</p> <p> <div class="wlWriterSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:a24e9829-8c8f-4897-968f-cccdfcabf237" style="padding-right: 0px; display: inline; padding-left: 0px; padding-bottom: 0px; margin: 0px; padding-top: 0px">Technorati Tags: <a href="http://technorati.com/tags/devLink" rel="tag">devLink</a></div></p> Joe Wirtleyhttp://www.blogger.com/profile/11883071348754875431noreply@blogger.com0tag:blogger.com,1999:blog-36766850.post-30687346334614879652008-08-22T23:20:00.001-04:002008-08-22T23:20:35.183-04:00devLink Day 1<p>It's my first trip to <a href="http://www.devlink.net">devLink</a> and so far it's been well worth the drive.  The keynote was a disappointment, but everything after that was great; one important issue with the keynote is that we were a group of mostly developers, and I don't think that was the intended audience for the presentation.  I spent the first session after the keynote in the opening session  of the <a href="http://en.wikipedia.org/wiki/Open_Space_Technology">open space</a> event.  <a href="http://netcave.org/">Alan Stevens</a> is leading the open spaces at devLink and explained how open spaces worked and moderated as people contributed session topics.   The theme of the open space event is "good enough", as in determining when you've attained the right balance of quality, purity, and business value.  The opening session got the open space event off to a good start.</p> <p>Lunch was next and was unremarkable.  I took my normal route and got the vegetarian sandwich, which usually works well.  Didn't work so well this time.    The good part of lunch is that a group of us went to the open space area and ate lunch and got an early start on the discussion.</p> <p>The next official session I attended was the open space covering several closely related topics, including encouraging critical thinking and motivating developers.  In particular, we discussed how to share the passion that we have as devLink participants with our fellow developers who may not attend this kind of event, or user group meetings, or think about software development after they leave the office.   It was a great session.</p> <p>The next session I attended was <em>Parallel Computing in .NET</em> by Keith Rome of <a href="http://www.wintellect.com/">Wintellect</a>.  His presentation was directed toward using threads (or not) in today's .NET framework.  He began by taking about some basic thread information, including processor cores, and hyper-threading.  He then described the circumstances under which you should use threads and when you should not.  He did a great job of explaining a complex subject and I left with several things I'm going to take back to a couple of my current clients. </p> <p>The last session of the day I attended was <a href="http://www.platinumbay.com/">Steve Andrews</a> speaking about <em>Automation with MSBuild 3.5 and Team Build 2008</em>.  Steve gave a great introduction to MSBuild and the various elements of MSBuild files, such as targets, tasks, properties and item groups.  He also gave us several tips for working with MSBuild.   He then went on to show how to use Team Build to perform builds and schedule those builds.  There were a lot of questions/conversation in this session which I really enjoyed.  I left Steve's session with a good idea of how to proceed with builds and continuous integration in <a href="http://msdn.microsoft.com/en-us/tfs2008/default.aspx">Team Foundation Server</a>.</p> <p>Somehow every time I went to the attendee party tonight there were very few people there.  The first time I dropped by, I think that most people were still at dinner.  And  by the second time I dropped by, they were giving away Xboxes and the crowd really thinned after that.  </p> <p>I'm looking forward to doing my presentation on <em>WPF for Developers</em> Saturday morning and I hope I can live up to the great presentations I saw today.  Stay tuned for more after day 2.</p> Joe Wirtleyhttp://www.blogger.com/profile/11883071348754875431noreply@blogger.com0tag:blogger.com,1999:blog-36766850.post-91751731180161945132008-05-18T21:31:00.001-04:002008-05-18T21:31:55.761-04:00Developer Events this Week<p>There are several developer events this week that you might want to attend.  On Monday, the <a href="http://cinjug.org">Cincinnati Java User Group</a> will have James Carman discussing <em>Advanced Wicket</em>.  On Tuesday, the <a href="http://cinnug.org">Cincinnati .NET User Group</a> will be having a panel discussion from  <a href="http://esumerfield.blogspot.com/">Ed Sumerfield</a>, <a href="http://www.timapke.com/blog/index.php">Tim Apke</a>, and <a href="http://frazzleddad.blogspot.com/">Jim Holmes</a> on <em>Software Development: A Career</em>.  Both of these meetings will be at <a href="http://maxtrain.com">Max Technical Training</a> in Mason.</p> <p>The latest <a href="http://www.arcready.com/">ArcReady</a> event will be Wednesday morning at the Microsoft office in Mason.  The topic presented will be <em>Architecting for Scalable and Usable Web Applications.  </em>According to <a href="http://www.danrigsby.com/blog/">Dan Rigsby</a>, who saw the session in Indianapolis, it was a <a href="http://www.danrigsby.com/blog/index.php/2008/05/13/arcready-architecting-for-scalable-and-usable-web-applications/">valuable session</a>.  Register at the <a href="http://www.arcready.com/">ArcReady</a> site if you're interested.</p> <p>On Wednesday, I will be speaking at the <a href="http://cincypg.org">Cincinnati Programmers' Guild</a> and will be doing my presentation on <a href="http://www.wirtley.net/Presentations/#pragmaticSoftwareArchitecture">Pragmatic Software Architecture and the Role of the Architect</a>.  Like the other user groups, this meeting will be held at <a href="http://maxtrain.com">Max Technical Training</a> in Mason.  If you haven't seen this presentation and are interested, it is likely one of the last times I'll be doing it locally (or maybe at all).</p> Joe Wirtleyhttp://www.blogger.com/profile/11883071348754875431noreply@blogger.com1tag:blogger.com,1999:blog-36766850.post-85825224529627649562008-05-12T21:36:00.001-04:002008-05-12T21:36:20.356-04:00West Michigan Day of .NET Wrap Up<p>Saturday's <a href="http://www.wmdotnet.org/dodn08/">West Michigan Day of .NET</a> was another great event.  I really enjoyed the facility at <a href="http://www.davenport.edu/">Davenport University</a>.  There were many places to sit and chat with people.  Not that I did much other than go from one room to the next.  But I'm getting ahead of myself.  The weekend started with  <a href="http://danhounshell.com">Dan Hounshell</a>, <a href="http://bouncetadiss.blogspot.com/">Justin Kohnen</a> and I heading up on Friday and picking up <a href="http://www.michaeleatonconsulting.com/blog/">Mike Eaton</a> along the way.  We stayed at the Crowne Plaza where many people traveling from out of town stayed.  After dinner with many of the speakers and organizers, I got a good night's sleep, unlike <a href="http://www.michaeleatonconsulting.com/blog/archive/2008/05/11/west-michigan-day-of-.net-wrap-up.aspx">some</a> of those traveling with me.</p> <p>One reason I needed to get to sleep early was that I was speaking during the first session of the day.  I gave my presentation on <a href="http://www.wirtley.net/Presentations/#pragmaticSoftwareArchitecture">Pragmatic Software Architecture and the Role of the Architect</a>.  The room was very quiet, but I had a few questions and lots of head nodding, which is always a good sign that attendees are with you.  And the room was almost full, which was great.  After having done my latest <a href="http://www.wirtley.net/WPFforDevelopers">WPF for Developers</a> presentation sans bullet points, it was a little different to go back to a presentation with tons of bullet points, but I'm not sure I'm going to recreate it at this point.</p> <p>After my presentation, I attended <em>An Introduction to Boo and DSL</em> from <a href="http://jrwren.wrenfam.com/blog/">Jay Wren</a>.  As he said in his presentation, it seems like everyday we hear from someone else that we should be using <a href="http://en.wikipedia.org/wiki/Domain-specific_programming_language">DSLs</a>, but nobody ever shows us how.  He first talked a little about DSLs in general and a little about Boo.  The meat of his presentation was showing how to create a simple DSL leveraging Boo.  He used Rhino.DSL, which is available in source as part of the <a href="http://sourceforge.net/projects/rhino-tools/">Rhino Tools project</a>.   I enjoyed the presentation and see a clear path to implementing a DSL if the need arises.</p> <p>For the last session of the morning, I attended <a href="http://www.michaeleatonconsulting.com/blog/">Mike Eaton's</a> session <em>LightReader - The Anatomy of a Silverlight Application</em>.  <a href="http://www.codeplex.com/LightReader">LightReader</a> is a Silverlight 2  RSS reader that Mike started and put out on CodePlex, and his presentation described his development experience to date, including the current architecture and challenges he faced.  Some of the interesting tidbits were that there is apparently no easy way to render HTML in Silverlight.  And the TextBlock control does not allow you to copy text.</p> <p>After a few slices of pizza for lunch, I saw <a href="http://mobilitymatters.wordpress.com/">Dan Hibbitts</a> speak on <em><a href="http://mobilitymatters.wordpress.com/2008/05/11/slide-deck-from-western-michigan-day-of-net-2008/">Windows Mobile Tool-Chain Improvements for 2008</a></em>.  Since I don't do mobile development, I just got a flavor for what is available for mobile development in 2008, and a lot of the specifics went right over my head.</p> <p>I next attended <em>A Trip Around the Block with Rhino.Mocks</em> from <a href="http://stevenharman.net/">Steve Harman</a>.  He first talked about mock objects in general and discussed the various flavors of mocks, stubs, fakes, etc.  Most of his presentation was showing how mocks (Rhino.Mocks in particular) are used to support testing in various open source projects.   There was also a lot of interaction from attendees and discussion of various mocking frameworks and experience using mocking.  He showed an interesting <a href="http://code.google.com/p/codeincubator/source/browse/Tools/trunk/CodeInc.Tools/CodeInc.Commons/Testing/Specification.cs">Specification base class</a> he uses for testing that encapsulates some of the mechanics required to use Rhino.Mocks and helps support <a href="http://en.wikipedia.org/wiki/Behavior_driven_development">BDD</a>.</p> <p>In the last session of the day, I saw <a href="http://jamescbender.com/bendersblog/Default.aspx">James Bender</a> talk about <em><a href="http://lppq1w.bay.livefilestore.com/y1ppMwd0AhGATZCBeYsMpl_mr5D7RikM_hpI7kZv6UYogTNs2YfaruI22qv7j3GktIKzTrip4lNtlZ5Twfcb_RUeA/Reliable%20Messaging%20with%20WCF%20-%20CODODN.zip?download">Reliable Messaging in WCF</a></em>.  It was a great way to end the day.  I've been working with WCF quite a bit recently, but I haven't really paid much attention to reliable messaging, because I haven't needed it. So his presentation was good summary of why I might want to use reliable messaging, and how to go about it if I need to.   He had a slide deck with lots of illustrations and great animations to help show messages going from clients to services.  I also picked up a couple WCF tips.</p> <p>To round off the day, I won a copy of <a href="http://www.amazon.com/gp/product/1590599624?ie=UTF8&tag=joewirsblo-20&linkCode=as2&camp=1789&creative=9325&creativeASIN=1590599624">Pro WPF with VB 2008: Windows Presentation Foundation with .NET 3.5 (Pro)</a>, which was great since I enjoyed the previous version of the book and have been doing a WPF presentation where I talk about the book.    So now I can actually say something about it other than I haven't seen it.</p> <p>If it sounds like a great day, it was.  If you get a chance, I recommend that you attend a Day of .NET or Code Camp near you.  Or even if you have to drive a bit.  The <a href="http://www.clevelanddodn.org/">Cleveland Day of .NET</a> is coming up this Saturday May 17.  I'll be speaking on <a href="http://www.wirtley.net/WPFforDevelopers">WPF for Developers</a> and there will be a lot of great presentations.  I hope to see you there.</p> Joe Wirtleyhttp://www.blogger.com/profile/11883071348754875431noreply@blogger.com0tag:blogger.com,1999:blog-36766850.post-74168100806260646022008-05-02T14:10:00.002-04:002008-05-02T15:07:01.997-04:00Remote Desktop Crash and DirectX SDK on Vista<p>So I'm about to start development work today and I crank up remote desktop to access the virtual machine on my development server.  And it crashes.  So I try accessing other virtual and real machines.  And it keeps crashing.  So I disable anti-virus and close everything possible.  Keeps crashing.  If you're interested, this is the error:</p> <blockquote> <p>Faulting application mstsc.exe, version 6.0.6000.16386, time stamp 0x4549b425, faulting module ntdll.dll, version 6.0.6000.16386, time stamp 0x4549bdc9, exception code 0x80000003, fault offset 0x00042ea8, process id 0xd28, application start time 0x01c8ac7a33dfff9c.</p> </blockquote> <p>So I do some Google searches and don't find much of relevance.  But I do try disabling UAC (I'm running Vista Business).  Still crashes.   Then I try to remember the last time it worked and what I've installed since then.  And I did install something interesting yesterday, namely the DirectX SDK (March 2008).  So I do a system restore to the point I saved before I installed the SDK.  Still crashes. So I undo the restore, which fails...  But I'm not ready to give up yet.  So I uninstall the SDK.  And remote desktop starts working again.</p> <p>So, it appears that installing the DirectX SDK hosed remote desktop on my Vista Business machine.  Don't understand why, but there you go. </p>Joe Wirtleyhttp://www.blogger.com/profile/11883071348754875431noreply@blogger.com6tag:blogger.com,1999:blog-36766850.post-20276354543124834382008-04-29T11:29:00.001-04:002008-04-29T11:29:04.812-04:00Indianapolis Code Camp Wrap Up<p>Saturday was the first  <a href="http://www.indycodecamp.com/">Indy Code Camp</a>.  <a href="http://www.mvwood.com/blogs/blog/default.aspx">Mike Wood</a>, <a href="http://danhounshell.com">Dan Hounshell</a> and I drove up together and each had the opportunity to speak.   I did my presentation on <a href="http://www.wirtley.net/WPFforDevelopers">WPF for Developers</a> and I think it went pretty well.  I paced it a little better this time and actually had time to talk about all of the slides and not fly through the ones at the end.  The attendees represented a wide range of experience with WPF, from some who were brand new to WPF to those who had WPF applications in production.   If you attended my session and have any suggestions on how I can improve it, please let me know.  You can use my <a href="http://www.wirtley.net/Contact.aspx">contact form</a> to send me a message.  And if you attended the code camp and have not filled out your evaluation, you can do that <a href="http://www.codecampevals.com/Evaluation.aspx?CodeCampID=19">here</a>.</p> <p>After speaking, I attended several sessions on Silverlight, applying  AOP (Aspect Oriented Programming) to business objects, TDD with ASP.NET MVC, and WCF.  I enjoyed all of the sessions and as usual, came away with a few ideas that I'll try out for myself.  There was a good mix of speakers from around Indianapolis and outside the area.   It was good the chat with my <a href="http://twictionary.pbwiki.com/">tweeps</a> and meet some of them in person.</p> <p>I especially enjoyed speaking at this event because it was another step in breaking down the invisible barrier between Indiana and Ohio created by the Microsoft district boundary.   We're in the <a href="http://www.microsoft.com/about/companyinformation/usaoffices/Heartland/default.mspx">Heartland District</a> here in Ohio, while Indiana is in the <a href="http://www.microsoft.com/about/companyinformation/usaoffices/midwest/default.mspx">Midwest District</a>.  Indianapolis is about the same distance from me as Columbus, but I know so many more people in Columbus than in Indianapolis.  I wrote about not recognizing many speakers or attendees in <a href="http://joewirtley.blogspot.com/2007/10/indytechfest-wrap-up.html">my wrap up of IndyTechFest</a> last year.   It's great to have the opportunity to speak in Indianapolis and I hope to get some speakers from Indianapolis to speak at the <a href="http://daytondevgroup.net/">Dayton .NET Developers Group</a>.</p> <p>And speaking of <a href="http://www.indytechfest.org/">IndyTechFest</a>, this year's event will take place on Saturday October 4 and more details should be available soon.  I enjoyed last year's event and I will very likely attend again this year.</p> Joe Wirtleyhttp://www.blogger.com/profile/11883071348754875431noreply@blogger.com0tag:blogger.com,1999:blog-36766850.post-55368408747611593052008-04-25T09:59:00.001-04:002008-04-25T09:59:57.332-04:00Indianapolis Code Camp and other upcoming events<p>Tomorrow is the <a href="http://www.indycodecamp.com/">Indy Code Camp</a>.  I'll be doing my <a href="http://www.wirtley.net/WPFforDevelopers">WPF for Developers</a> presentation again that I first did at the <a href="http://cinnug.org/cododn/">Central Ohio Day of .NET</a>.  I've been tweaking the presentation this week based on the feedback I received from the first one (thanks to everyone who responded).  I'm looking forward to doing the updated version.  </p> <p>I'll also be doing my WPF presentation at the upcoming <a href="http://www.clevelanddodn.org/">Cleveland Day of .NET</a>  (May 17).  And at the <a href="http://www.wmdotnet.org/dodn08/">West Michigan Day of .NET</a> (May 10), I'll be doing my presentation on <a href="http://www.wirtley.net/Presentations/#pragmaticSoftwareArchitecture">Pragmatic Software Architecture and the Role of the Architect</a>.  I'll also be doing my software architecture presentation at the <a href="http://cincypg.org">Cincinnati Programmers' Guild</a> meeting on May 21.  If you'd like to see my architecture presentation, I'd recommend you come check out the guild.  I think it will be a great venue for this type of presentation, because it is normally a small group, and this presentation benefits from a lot of group discussion.</p> <p>I also got another piece of great news this week; I'll be speaking at <a href="http://www.devlink.net">DevLink</a> (August 22-23, Murfreesboro, TN)!   Interestingly, I'm not sure what I'll be speaking about, since the email I received said I have been selected as a speaker, but not the session that was accepted.  Stay tuned for updates.</p> Joe Wirtleyhttp://www.blogger.com/profile/11883071348754875431noreply@blogger.com0tag:blogger.com,1999:blog-36766850.post-52792535990416634282008-04-20T19:18:00.001-04:002008-04-20T19:18:41.291-04:00Central Ohio Day of .NET Wrap Up<p>The <a href="http://cinnug.org/cododn/">Central Ohio Day of .NET</a> (CODODN) was another great community event.   I started the day by <a href="http://joewirtley.blogspot.com/2008/04/wpf-for-developers-at-cododn.html">giving my presentation</a> on WPF for Developers.  I think it went pretty well and I definitely enjoyed it.</p> <p>I stuck around in that room to see <a href="http://nino.net/blog/">Nino Benvenuti</a> speaking about the <a href="http://msdn2.microsoft.com/en-us/sync/default.aspx">Microsoft Sync Framework</a>.  I enjoyed hearing about the current state and future potential of the sync framework.  I walked away knowing that there's a tremendous amount to learn about the sync framework.</p> <p>The next session I attended was <a href="http://programwith.net/">Matt Casto</a> talking about Silverlight 2.0.   As much as I've looked at WPF, I've pretty much ignored Silverlight, which is why I thought it was about time I looked at what was going on, especially with Silverlight 2.0 adding a lot of features to support business applications.  One of the things I was looking for was the differences between Silverlight and WPF, and he did a good job of covering that.  And the best thing about his presentation was that it was written in Silverlight 2.0; the presentation was most interesting when he was showing the code for the presentation and you could see the code representing the elements on the screen.</p> <p>After lunch, I attended a couple open spaces.  The first was an open space on static and dynamic languages and when to use each.  The consensus from most everyone who was there and expressed an opinion was that you should always use dynamic languages, except in the rare cases when performance is critical.  Because of their greater expressiveness, it makes sense to me that using dynamic languages will result in fewer lines of code, which speeds development and aids maintenance.  It also makes sense that statically typed languages limit the performance of your best programmers, while not providing the safety that is commonly believed.  Because of inertia, I think most of my work in the near future will continue to be with statically typed languages (C#), but I'll continue to explore dynamic languages, such as Ruby.</p> <p>The second open space was titled Beyond Bullet Points, but was generally about how to do better presentations.  Many of us speaking at CODODN have been influenced by <a href="http://www.amazon.com/gp/product/0735623872?ie=UTF8&tag=joewirsblo-20&linkCode=as2&camp=1789&creative=9325&creativeASIN=0735623872">Beyond Bullet Points</a> and <a href="http://www.amazon.com/gp/product/0321525655?ie=UTF8&tag=joewirsblo-20&linkCode=as2&camp=1789&creative=9325&creativeASIN=0321525655">Presentation Zen</a> in preparing our presentations and we wanted to share our experiences creating these presentations.   I didn't count, but there were over ten people there.  It was great to see so many people interested in talking about improving presentations.  I got a few tips, but mostly walked away with more questions I need to ponder to better craft my presentations to meet the needs of the most attendees.</p> <p>In the  last session of the day, I saw <a href="http://www.fallenrogue.com/">Leon Gersing</a> (a.k.a. <a href="http://www.fallenrogue.com/">fallenRogue</a>) talk about Share Point, Sharepoint, or maybe it was SharePoint.  Leon is a passionate speaker with strong opinions and is quite entertaining.  Fortunately, he also knows SharePoint.  I started doing some SharePoint work a couple weeks ago and gave Leon a call for a crash course.  His presentation was that crash course and much more.  He showed how to leverage your ASP.NET skills to create application pages within SharePoint and talked about the ways to accomplish it and keep everyone happy, including your system administrators.  I'm looking forward to downloading the sample code and learning more about SharePoint.  If you have a chance to see Leon speak, I recommend you attend.</p> <p>At the end of the day, most of the speakers, organizers, and several others went to Max & Erma's for dinner and geek talk.  The geekiest moment was the extended talk about programming with Wii remotes, Rock Band pedals, and eventually DDR pads powering CodeRush.  Don't ask.  After Max & Erma's, a bunch of us went to a party hosted by <a href="http://www.jeffblankenburg.com">Jeff Blankenburg</a>, our Heartland District developer evangelist.  I had the opportunity to chat with a few people I hadn't seen during the day and to just relax.</p> <p>In case you can't tell, I had a great time and learned a lot.  If you were there this year, I hope you had a great experience too.  And if you weren't there, I hope to see you next year.  Or check out the <a href="http://www.wmdotnet.org/dodn08/">West Michigan Day of .NET</a> or <a href="http://www.clevelanddodn.org/">Cleveland Day of .NET</a> coming up later this spring (I'd tell you to check out the <a href="http://www.indycodecamp.com/">Indy Code Camp</a>, but it's sold out.)</p> Joe Wirtleyhttp://www.blogger.com/profile/11883071348754875431noreply@blogger.com0tag:blogger.com,1999:blog-36766850.post-90420525395566825242008-04-20T08:30:00.001-04:002008-04-20T08:30:33.836-04:00WPF for Developers at CODODN<p>I did my <a href="http://www.wirtley.net/WPFforDevelopers">WPF for Developers</a> presentation for the first time yesterday at the <a href="http://cinnug.org/cododn/">Central Ohio Day of .NET</a>.  The most surprising thing was how many people were interested.  There ended up being 55 attendees by the official count, but I heard several comments later in the day that there were more people in the hall trying to get in.  I'm pleasantly surprised that so many people are interested in WPF, and sorry there were not a few more chairs so more people could attend.</p> <p>It was the first time I've done that particular presentation, and the first presentation I've done inspired by <a href="http://www.amazon.com/gp/product/0735623872?ie=UTF8&tag=joewirsblo-20&linkCode=as2&camp=1789&creative=9325&creativeASIN=0735623872">Beyond Bullet Points</a> and <a href="http://www.amazon.com/gp/product/0321525655?ie=UTF8&tag=joewirsblo-20&linkCode=as2&camp=1789&creative=9325&creativeASIN=0321525655">Presentation Zen</a>.  I did get a few questions, but overall it was a quiet crowd.  Of course, I did cover a lot of material at a fairly rapid pace, so I'm not sure I left a lot of room for questions.  </p> <p>I'm sure I made at least three mistakes.  First, I had too much material for the time.  I usually try to err on the side of having too much material, but I need to either cut some things or streamline my presentation.  The second mistake I made was to not know that I had an hour and ten minutes, not an hour, which exacerbated my first mistake.  And lastly, I didn't check the URL I put on my slide to make sure it actually worked.  So, if you're looking for the resources I referenced in my presentation, they're <a href="http://www.wirtley.net/WPFforDevelopers">here</a>. </p> <p>As for the mistakes I don't know about, that's where you come in.  If you attended my presentation at CODODN and have any suggestions to help me improve the presentation, I'd be happy to hear from you.  I plan to give this presentation several more times, so you'll be doing lots of people a favor by helping me out with some honest feedback.  You can use the <a href="http://www.wirtley.net/Contact.aspx">contact form</a> on my web site to send me a message, and you can remain completely anonymous if you like.</p> Joe Wirtleyhttp://www.blogger.com/profile/11883071348754875431noreply@blogger.com0tag:blogger.com,1999:blog-36766850.post-19248408958428792002008-04-18T20:23:00.001-04:002008-04-18T20:23:40.903-04:00Application Class and Main method in WPF<p>I recently ran into an interesting aspect of WPF applications that I had not previously seen.  It started with this error:</p> <blockquote> <p>Program 'DemoCorp.UI.exe' does not contain a static 'Main' method suitable for an entry point</p> </blockquote> <p>I had copied an App.xaml file from an existing application into a new application I was creating, because I wanted the resource definitions and thought that would be an easy way to do it.  I then deleted the App.xaml that was automatically generated in the new application, which created the compiler error above.</p> <p>As it turns out, there's a special output type for the App.xaml file to make it generate the Main method.  Here's an App.xaml in the solution explorer:</p> <p><a href="http://lh4.ggpht.com/JoeWirtley/SAk7hxHTzJI/AAAAAAAAACY/l-M6yGfAEG4/s1600-h/SolutionExplorerApp2.png"><img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="241" alt="Solution Explorer App" src="http://lh6.ggpht.com/JoeWirtley/SAk7iRHTzKI/AAAAAAAAACg/TBYy2BTgL2c/SolutionExplorerApp_thumb.png?imgmax=800" width="218" border="0" /></a> </p> <p>If you click on the properties tab to get the file properties for the App.xaml, you'll see something like the following:</p> <p><a href="http://lh3.ggpht.com/JoeWirtley/SAk7ihHTzLI/AAAAAAAAACo/ek2kV5t7Hd0/s1600-h/ApplicationDefinitionBuildAction3.png"><img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="253" alt="ApplicationDefinition Build Action" src="http://lh5.ggpht.com/JoeWirtley/SAk7jBHTzMI/AAAAAAAAACw/k2QOv5kYDJ0/ApplicationDefinitionBuildAction_thu.png?imgmax=800" width="351" border="0" /></a> </p> <p>To generate a suitable Main method, the Build Action must be set to ApplicationDefinition as shown in this image.  As soon as I figured this out, everything worked great.</p> Joe Wirtleyhttp://www.blogger.com/profile/11883071348754875431noreply@blogger.com28tag:blogger.com,1999:blog-36766850.post-86900666445848846342008-04-15T16:09:00.001-04:002008-04-15T16:09:15.360-04:00Upcoming Regional Developer Events<p>There are number of upcoming developer events in the region.  All are full day <strong>free</strong> events on Saturdays.  Some are full, but are accepting stand by registrations.   If you haven't been to one of these events, I highly recommend them as a good way to spend some time away from your job with people who are enthusiastic about software development.  It's a good opportunity to learn about something you may not be using in your day to day work, such as F#, Boo, LINQ, WPF, WCF,  Sliverlight, Astoria, or Wiimote and some topics that may help your everyday work including SEO, MOSS, ASP.NET, or TFS.</p> <table cellspacing="10" cellpadding="3" width="769" border="0"><tbody> <tr> <td valign="top" width="258"><a href="http://www.cinnug.org/cododn/"><img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" alt="Central Ohio Day of .NET" src="http://www.cinnug.org/images/CentralOhioDoDNBadge.png" border="0" /></a></td> <td width="476">The <a href="http://cinnug.org/cododn/">Central Ohio Day of .NET</a> (CODODN) is the first upcoming event, happening this Saturday April 19. Registration is full, so register early next year! <br /> <br />I'll be doing a WPF presentation first thing in the morning, so check it out if you're there.</td> </tr> <tr> <td valign="top" width="258"><a href="http://www.indycodecamp.com/"><img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="88" alt="image" src="http://lh3.ggpht.com/JoeWirtley/SAULahHTzII/AAAAAAAAACQ/--j6Y1hEbVQ/image%5B4%5D.png?imgmax=800" width="240" border="0" /></a> </td> <td width="476">The next event is the <a href="http://www.indycodecamp.com/">Indianapolis Code Camp</a> on the following Saturday, April 26, which is also sold out but accepting standby registration. <br /> <br />I'll be doing my WPF presentation here also.</td> </tr> <tr> <td valign="top" width="258"><a href="http://www.wmdotnet.org/dodn08/"><img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" alt="WM Day of .Net May 10, 2008 - I'll be there!" src="http://www.wmdotnet.org/DODN08/images/Site-Badge-I.gif" /></a></td> <td width="476">The next event is a little further afield.  On May 10, the <a href="http://www.wmdotnet.org/dodn08/">West Michigan Day of .NET</a> will be held.  As I write this, registration is still open. <br /> <br />I'll also be speaking at this event but will be doing my Pragmatic Software Architecture and the Role of the Architect presentation.</td> </tr> <tr> <td valign="top" width="258"><a href="http://www.clevelanddodn.org"><img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" alt="Cleveland Day of .NET" src="http://www.clevelanddodn.org/images/badge.png" border="0" /></a></td> <td width="476">The <a href="http://www.clevelanddodn.org/">Cleveland Day of .NET</a> will be the last regional developer event of the spring on May 17.  Registration is open on the site, but does require that you have an <a href="http://openid.net/">OpenID</a>. <br /> <br />Sessions and speakers have not yet been announced for this event.</td> </tr> <tr> <td valign="top" width="258"><a title="PodCamp Ohio, June 28, 2008" href="http://www.podcampohio.com"><img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" alt="PodCamp Ohio, June 28, 2008" src="http://www.podcampohio.com/banners/125x125.jpg" /></a></td> <td width="476"><a href="http://www.podcampohio.com/">PodCamp Ohio</a> on June 28 in Columbus is a little later in the year and not a developer event, but I thought I'd mention it here.  <a href="http://www.podcampohio.com/">PodCamp Ohio</a> is a FREE <a href="http://en.wikipedia.org/wiki/Unconference">UnConference</a> focused on podcasting, blogging, new media and social networking. I'm not podcasting and don't have any plans to start in the near future, but I plan to attend to learn more about podcasting and talk about the social web.</td> </tr> </tbody></table> Joe Wirtleyhttp://www.blogger.com/profile/11883071348754875431noreply@blogger.com0tag:blogger.com,1999:blog-36766850.post-74001653967875520982008-04-14T21:02:00.001-04:002008-04-14T21:02:37.912-04:00Community Launch Event<p>Since Microsoft is not doing an official HEROES happen {here} launch event in Cincinnati, several local user groups and <a href="http://maxtrain.com">Max Technical Training</a> are sponsoring a community launch event over <a href="http://www.maxtrain.com/pages.aspx?pagename=2008LaunchEvents">three separate meetings</a>.  The first meeting is Tuesday April 15 sponsored by the <a href="http://cinnug.org">Cincinnati .NET User Group</a>.  There will be an overview of new features in Visual Studio 2008 by Max, <a href="http://www.linkedin.com/ppl/webprofile?action=vmi&id=2575410&authToken=PyWH&authType=name&trk=ppro_viewmore&lnk=vw_pprofile">Stefan Kyntchev</a> will be speaking about LINQ, and <a href="http://danhounshell.com">Dan Hounshell</a> will be talking about the new features in ASP.NET 3.5.  Unlike typical user groups meeting, they request that you <a href="https://www.clicktoattend.com/invitation.aspx?code=126598">register</a> if you plan to attend.  In addition to the presentations there will also be Hands on Labs and access to the MAX Instructors if you have any questions regarding the new features and technologies.</p> <p>On May 7, <a href="http://cinpaweb.googlepages.com/">CINPA</a> will host the second portion of the community launch which will be about Windows Server 2008.  You can register for the meeting <a href="http://www.clicktoattend.com/invitation.aspx?code=125942">here</a>.</p> <p>The final launch meeting will be May 27, hosted by the <a href="http://cincysql.org/">Cincinnati SQL User Group</a> and will address SQL 2008.  Click <a href="http://www.clicktoattend.com/invitation.aspx?code=126602">here</a> to register for this meeting.  I hope to see you at one or all of these events.</p> Joe Wirtleyhttp://www.blogger.com/profile/11883071348754875431noreply@blogger.com0tag:blogger.com,1999:blog-36766850.post-17455413686163653832008-04-02T19:02:00.001-04:002008-04-02T19:02:00.728-04:00Decisions, Decisions<p>Thursday evening there are two user group meetings: <a href="http://www.gcvmug.org">Greater Cincinnati VMware User Group</a> and a special meeting of the <a href="http://cinnug.org">Cincinnati .NET User Group</a>.  This will be the second meeting of the VMware group.  I enjoyed the first meeting and met a number of people I don't typically meet at developer user group meetings.  The main presentation is going to be "MY VM SPACE...." whatever that means.  The .NET user group is having a special event at the Microsoft office in Mason.  Randy Pagels from Microsoft will be doing two hour long sessions on Visual Studio Team Systems.  I'm going to one meeting or the other, but I'm not sure which one.  Any thoughts?</p> Joe Wirtleyhttp://www.blogger.com/profile/11883071348754875431noreply@blogger.com2tag:blogger.com,1999:blog-36766850.post-80221422972922886352008-03-20T23:51:00.000-04:002008-03-21T00:49:02.685-04:00Michigan Tour - Day 2<p>After starting the day with a little relaxation and watching some of the tournament games, I headed out toward Lansing for the <a href="http://portal.artemis-solutions.com/glugnet/">Greater Lansing User Group .NET (GLUG.NET)</a> meeting.  But before the meeting, I was able to stop by and visit <a href="http://www.techsmith.com">TechSmith</a> along with <a href="http://www.mcwherter.net/blog/">Jeff McWherter</a>.  <a href="http://www.techsmith.com">TechSmith</a> creates screen capture and recording tools including SnagIt, Camtasia Studio, Morae, UserVue, and Screencast.com and is located in Okemos, which is a suburb of Lansing.  (I've used SnagIt for several years now and it's a  great product.)  Courtesy of our host, <a href="http://visuallounge.techsmith.com/">Betsy Weber</a>, Jeff and I were able to talk with one one the lead developers of their Screencast.com product about their development process which has a lot of elements from Scrum.  It's always good to hear from groups using agile development and hear about what works for them and the challenges they face.  And I walked away with some swag, which was great because as the speaker, I couldn't get any at the user group meeting.</p> <p>After our visit to <a href="http://www.techsmith.com">TechSmith</a>, Jeff took me over to the Michigan State campus for the <a href="http://portal.artemis-solutions.com/glugnet/">Greater Lansing User Group .NET (GLUG.NET)</a> meeting, where I gave my software architecture presentation.  Once again, I had a lot of good questions and conversation, but I think the presentation ran a little shorter than at <a href="http://www.migang.org/">Great Lakes .NET User Group (GANG)</a>.   Pizza was available and consumed.  After the meeting, a bunch of us continued our discussion at Bennigan's over a few beverages, which Jeff tells me has been a tradition since the group began. </p> <p>It was a great way to end my Michigan tour.  Tomorrow I head home, hopefully before the snow gets here.</p> Joe Wirtleyhttp://www.blogger.com/profile/11883071348754875431noreply@blogger.com2tag:blogger.com,1999:blog-36766850.post-56779435391673555182008-03-19T23:22:00.001-04:002008-03-19T23:22:41.083-04:00Michigan Tour - Day One<p>Today I did my software architecture presentation for a group at <a href="http://www.dominos.com/">Domino's</a> and for the <a href="http://www.migang.org/">Great Lakes .NET User Group (GANG)</a>.  The presentation at Domino's was a "lunch and learn" meeting.  We all gathered in a conference room, with Domino's pizza, or course.  I had previously done this presentation only at user groups, so it was a change to be talking to people all from one company.  There were several questions and discussion about how what I was talking about applied to their situation, and I got to learn a little about what they are doing at Domino's.</p> <p>This evening, I did the same presentation at <a href="http://www.migang.org/">Great Lakes .NET User Group (GANG)</a> at the Microsoft office in Southfield.   I think it was well received and there was a lot of interaction from the attendees, both questions and comments.   And the food wasn't pizza!  It was wraps and chips, and was quite good.  I had several conversations after the meeting about the presentation and other topics, including a Delphi programmer considering switching to .NET.  Having made that transition a while ago, I assured him it was a fairly painless transition from Delphi to C# language wise, but learning all the class libraries is another thing.</p> <p>This was the first developer group I've attended outside of the Cincinnati-Dayton area.   And I have to say that it was pretty much the same as the meetings I've attended in Cincinnati and Dayton.  As someone said, geeks are geeks.</p> <p>If you're in Michigan, reading my blog, and have somehow avoided seeing this presentation, you should know that I'll be doing it again on Thursday at the <a href="http://portal.artemis-solutions.com/glugnet/">Greater Lansing User Group .NET (GLUG.NET)</a>.   I hope to see you there.</p> Joe Wirtleyhttp://www.blogger.com/profile/11883071348754875431noreply@blogger.com0tag:blogger.com,1999:blog-36766850.post-81466033964986655912008-03-18T22:49:00.001-04:002008-03-18T22:49:37.654-04:00Detroit Launch Event<p>Since I'm in Michigan speaking at user groups this week, I had the opportunity to attend the Detroit launch event today.   The drive to downtown Detroit wasn't much fun, but also could have been worse.  I got through registration just minutes before the keynote session began.  I don't know how many people were there, but it was packed.  </p> <p>The opening keynote was a preview of the upcoming day and touched on the three products being launched: Visual Studio 2008, Windows Server 2008, and SQL Server 2008.  <a href="http://www.joshholmes.com/">Josh Holmes</a> did part of the key note and was the liveliest speaker of the group.  I missed the first developer session because I wandered into the partner expo area and met up with quite a number of people I've met at previous events, including <a href="http://www.michaeleatonconsulting.com/blog/">Micheal Eaton</a>, who I hung out with for a lot of the day (along with his friend Jeremy).  By the time we wandered up to catch part of the developer session, the room was completely full, so we stood in the hallway talking about Twitter.  After abandoning the idea of actually getting into the developer session, we went back down to the partner expo area to chat and to eat lunch, which was provided in a nice Microsoft lunch carrier, that I'm fairly certain my wife will snag when she sees it.</p> <p>After lunch I went to a session on web applications from <a href="http://brianhprince.blogspot.com/">Brian Prince</a> and <a href="http://www.jeffblankenburg.com">Jeff Blankenburg</a>.  It was a good session, but I'd already seen most of what they presented.  JavaScript debugging and IntelliSense is pretty cool, but after you've seen it several times, it loses some of its impact.  I next switched to the data platform track on BI (Business Intelligence).  It's been a long time since I've looked at BI tools, so I thought a high level overview would be good.  Unfortunately, much of the presentation was spent on demos that didn't work, so I didn't get much out of it.  I then took a quick peek in a Windows Server track session on web and application technologies, but the outline looked like material I already knew.</p> <p>So I went back to the last half of the developer track session by <a href="http://keithelder.net/blog/">Keith Elder</a> on smart client applications.  I came in at the tail end of a section on something about MFC applications, which was a little strange and disorienting.  But he returned to WPF, WCF and WF and in the end combined them all in one demo.  </p> <p>And of course I left the event with copies of Windows Vista Ultimate (with Service Pack 1!), Visual Studio 2008 Standard,  Windows Server 2008 Enterprise (32 and 64 bit, one year evaluation license), a community technology preview of SQL Server 2008 (32 and 64 bit), and an "appreciation voucher" for an evaluation-only license of SQL server 2008 Standard Edition.</p> <p>After the event, a bunch of us  took a short ride on the People Mover to Greektown for a geek dinner at <a href="http://www.pizzapapalis.com/Home.aspx">Pizza Papalis</a> courtesy of Microsoft, in particular the Visual Studio Team Systems group.  Thanks!   The pizza and conversation was great.  I left before at least some of the group moved to the <a href="http://www.mgmgranddetroit.com/">MGM Grand</a>.  They're probably still there now.</p> <p>Tomorrow I'm going to be doing my presentation on <em>Pragmatic Software Architecture and the Role of the Architect</em> for the internal user group at <a href="http://www.dominos.com/">Domino's</a> and later in the day at the <a href="http://www.migang.org/">Great Lakes .NET User Group (GANG)</a>.   I'm looking forward to the opportunity to present to both groups.   If you see me there, let me know that you read my blog.  </p> Joe Wirtleyhttp://www.blogger.com/profile/11883071348754875431noreply@blogger.com1