﻿<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/">
  <channel>
    <title>Software Development</title>
    <description>This is a technical blog to share learnings and interesting technical information.</description>
    <link>http://www.infrandom.com/42/Blog/tabid/53/BlogId/4/Default.aspx</link>
    <language>en-US</language>
    <managingEditor>tech@infrandom.com</managingEditor>
    <webMaster>consult@techmindset.com</webMaster>
    <pubDate>Fri, 30 Jul 2010 05:05:27 GMT</pubDate>
    <lastBuildDate>Fri, 30 Jul 2010 05:05:27 GMT</lastBuildDate>
    <docs>http://backend.userland.com/rss</docs>
    <generator>Blog RSS Generator Version 3.3.0.16726</generator>
    <item>
      <title>TechEd 2006 Boston Recap</title>
      <description>Statistic for my TechEd 2006 Trip</description>
      <link>http://www.infrandom.com/42/Blog/tabid/53/EntryID/24/Default.aspx</link>
      <author>tech@infrandom.com</author>
      <comments>http://www.infrandom.com/42/Blog/tabid/53/EntryID/24/Default.aspx#Comments</comments>
      <guid isPermaLink="true">http://www.infrandom.com/42/Default.aspx?tabid=53&amp;EntryID=24</guid>
      <pubDate>Sat, 17 Jun 2006 07:00:00 GMT</pubDate>
      <slash:comments>0</slash:comments>
      <trackback:ping>http://www.infrandom.com/42/DesktopModules/Blog/Trackback.aspx?id=24</trackback:ping>
    </item>
    <item>
      <title>TechEd 2006 Boston: The Final Day</title>
      <description>&lt;P&gt;&lt;STRONG&gt;ClickOnce: Beyond The Basics&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;I went to this session to finally find out more information about ClickOnce, I had kept hearing about it at previous TechEds but never used it. A few weeks back I wanted to use it for a project but oddly enough didn’t find out very much information on it. I thought it was supposed to be integrated with Visual Studio. As it turns out it’s the “Publish” method in Visual Studio.&lt;/P&gt;
&lt;P&gt;ClickOnce allows .NET applications to be deployed via a web browser. Application will be installed into the user’s local app directory (Document Settings\Local Settings) and once installed into a folder that is created, can’t access any files outside of its sandboxed directory.&lt;/P&gt;
&lt;P&gt;Security access is controlled but the .NET Code Access Security. This is the security model that defines certain permissions based on the browsers internet zone. However, most useful application need to be given Full Trust to access resources. &lt;/P&gt;
&lt;P&gt;Some of the requirements include needing to sign the assemblies (we already have a certificate for this), if group policy is set to allow full trust to application with our certificate we can pretty much avoid any tricky application security issues. Deploying applications via ClickOnce also builds in an ability to provide “web based update” capabilities. Checking for updates is supported in a variety of ways, and when one if found you can force the user to download it before they run the application. Another benefit is the application is cached/installed on a per user basis. So you can install it for one user on the machine.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Putting It Together: Moving Beyond the Basics of SQL Server 2005 Integration Services&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;This was probably one of the most beneficial sessions I attended while at TechEd, fitting that it’s my last session of TechEd. After leaving this session  I think it would be a good idea to set aside a bit of time so that I can re-write the SSIS employee import from scratch. This will be especially important as we look to accommodating changes for the HRIS project. While I knew that package modularization would be good, I hadn’t quite seen how that would fit into our import. This session cleared that picture up and I can now see a much better implementation that would address the issues of the old DTS as well as the new ones we’ve uncovered with the first version. Being the first SSIS package, I knew that it would not be written optimally. I think HRIS would be a good opportunity to refactor and redesign the import, this would also be the same type of design we would use for the W50 import.&lt;/P&gt;
&lt;P&gt;For anyone planning on doing SSIS, after you’ve started writing packages and understand SSIS programming this would be a good session to watch on the DVD. I would not however recommend watching it until AFTER you have already become familiar as this was pretty advanced SSIS information and would be way more confusing than beneficial. Experiencing the “quirks” of how the new Data Flow works is necessary for understanding the benefits of the design guidelines that were presented. This is where you need to throw out the old DTS mentality and adopt the SSIS data process.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Conclusion:&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;With that my TechEd blog series comes to an end. Overall this conference had some pluses and minus. Seems organization was down this year, planning didn’t seem as good. The food was defiantly a minus this year, lunch was editable at best most of the time a real disappointment from previous years. Traffic is Boston seems to be really bad at time, but by mid week drivers seemed to have figure it out, or they replaced the old ones, not really sure. They had some very “interesting” tactics that I can’t say I know for sure were quicker, they defiantly weren’t the shortest route, but I don’t remember sitting in mindless traffic either.&lt;/P&gt;
&lt;P&gt;One of the pluses that really surprised me was the concert at Fenway. While the lines for food were very long, and there was way too much Budweiser and I never found the Coors I heard spoke of, the Train performance was off the hook. Fenway Franks were excellent as well, I guess this night there was no need for anything fancy. Most of the sessions were good although it seemed much lighter on the development offerings. I found myself going to more SharePoint sessions that I had planned for which made me miss out on some other stuff. SharePoint has come back for 2007 with a really strong product addressing MANY of the pain points of the version 2 product. I think it’s a serious option to consider for projects moving forward and I look forward to playing with the beta version.&lt;/P&gt;</description>
      <link>http://www.infrandom.com/42/Blog/tabid/53/EntryID/25/Default.aspx</link>
      <author>tech@infrandom.com</author>
      <comments>http://www.infrandom.com/42/Blog/tabid/53/EntryID/25/Default.aspx#Comments</comments>
      <guid isPermaLink="true">http://www.infrandom.com/42/Default.aspx?tabid=53&amp;EntryID=25</guid>
      <pubDate>Fri, 16 Jun 2006 07:00:00 GMT</pubDate>
      <slash:comments>0</slash:comments>
      <trackback:ping>http://www.infrandom.com/42/DesktopModules/Blog/Trackback.aspx?id=25</trackback:ping>
    </item>
    <item>
      <title>TechEd 2006 Boston: Day 5</title>
      <description>&lt;P&gt;The penultimate day...&lt;/P&gt;
&lt;P&gt;In case anyone has been wondering where all this stuff takes place...&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/P&gt;
&lt;P align=center&gt;&lt;IMG height=225 alt="" src="http://www.infrandom.com/42/Portals/0/Blog/Files/4/23/IMG_0147_blogsm.jpg" width=300&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;Architecture Decisions: DataSets or Objects&lt;o:p&gt;&lt;/o:p&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/P&gt;
&lt;DIV style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 4pt; BORDER-TOP: windowtext 1pt solid; PADDING-LEFT: 4pt; BACKGROUND: #e6e6e6; PADDING-BOTTOM: 1pt; MARGIN-LEFT: 0.25in; BORDER-LEFT: windowtext 1pt solid; MARGIN-RIGHT: 0.25in; PADDING-TOP: 1pt; BORDER-BOTTOM: windowtext 1pt solid; mso-border-shadow: yes; mso-element: para-border-div"&gt;
&lt;P class=Quote style="BACKGROUND: #e6e6e6; MARGIN: 0in 0in 0pt"&gt;&lt;I style="mso-bidi-font-style: normal"&gt;“Objects rule, DataSets drool.”&lt;o:p&gt;&lt;/o:p&gt;&lt;/I&gt;&lt;/P&gt;
&lt;P class=Quote style="BACKGROUND: #e6e6e6; MARGIN: 0in 0in 0pt"&gt;&lt;I style="mso-bidi-font-style: normal"&gt;-- Rockfor Lhotka, Magenic Technolgoies&lt;o:p&gt;&lt;/o:p&gt;&lt;/I&gt;&lt;/P&gt;&lt;/DIV&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal styl="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;This was a very interesting discussion on a subject that I’ve been dealing with on a regular basis now. As I’m starting to develop more and more projects using .NET 2.0 I’ve been starting to use strongly types DataSets. It turns out I’ve actually been using Data Transfer Objects or DTOs. But that’s not important to anyone reading this really.&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;So the session was presented by a strong adovactor of object oriented programming. DataSets are a structure created by Microsoft, and by using them your tieing yourself to what MS will and will not let you do. Which for some companies this might be acceptable. In our case it’s possible we can accept these limitations in turn we would gain faster development and less code writing.&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;His recommendation however is to use Business Objects. To create a data layer (not necessarily a data tier). He advocated removing ALL business logic form the UI and presentation layers. Business logic would include ALL calculations, manipulations, validation and authorization. By remove he’s not saying you can’t do validation on the client or for UI objects. But those pieces of code should exist in a DLL library. MS has changed their data object on avg every 2.7 years so by using a BO data layer you keep a consistent architecture that is not tied to a passing MS phase. There hasn’t been any major OOP changes for close to 12 years (when interfaces were formally introduced). The biggest plus for using BO is that implementing&lt;SPAN style="mso-spacerun: yes"&gt;  &lt;/SPAN&gt;the IBindingList interface and the INofityProperyChanges interface would mean that your BO layer would already be compatible with the Windows Presentation Framework. Your BOs would bind to XAML based application without any (or little) modification. The downside is the ammout of code to implement a true OOP BO layer is much more significant. However it is a time tests approach with a clear upgrade path to .NET 3.0.&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&lt;/o:p&gt; &lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&lt;/o:p&gt; &lt;IMG height=225 alt="" src="http://www.infrandom.com/42/Portals/0/Blog/Files/4/23/IMG_0263_blogsm.jpg" width=300&gt;&lt;IMG height=225 alt="" src="http://www.infrandom.com/42/Portals/0/Blog/Files/4/23/IMG_0288_blogsm.jpg" width=300&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;Visual Studio: Developing Local and &lt;?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" /&gt;&lt;st1:place w:st="on"&gt;Mobile&lt;/st1:place&gt; Data Solutions with Visual Studio 2005&lt;o:p&gt;&lt;/o:p&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;This was a very interesting session, its downside was being a level 200 it was more a talk and not so much of a how to. Mobile application are evolving and what starts off and a simple program for a single user soon becomes a multi-user distributed application. Once this happens more thought has to go into how the forms are crated to allow data to be accessed by multiple users.&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;Previously SQL Mobile filled this role but it was limited by liecencing restructions. SQL Express is more functional that most device application would need. The total foot print of the SQL Everywhere platform is less than 1.4MB. That’s right, it fits onto a floppy disk. The thought was to hand it out at TechEd on a floppy only they realized it would take most people more time to get data off a floppy (especially since most of us don’t have them anymore) than to just download it off the web.&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;SQL Everywhere gives only the functionally a standalone application needs. It runs in process so services don’t need to be installed onto the target machine. As such, there is also no support for stored process or other heavy database features since there is no advantage with the data store running in process with the application. This is the future of mobile device development database needs.&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;After this session I wanted to resolve an issued I’d always come across when it came to previous SQL Mobile attempts to create a simple smart device application. I ran through two of the Hands on labs for SQL Mobile (sadly there was no updates specific to SQL Everywhere and I would be unable to attend the syncing session for SQL Everywhere to SQL Server (have to catch my flight). I was able to resolve that my issue can now be solves with setting up a Publication for mobile devices. And I’m pretty sure Meena should be able to set that up now that she’s attended the Replication session.&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/P&gt;
&lt;P&gt;&lt;IMG height=225 alt="" src="http://www.infrandom.com/42/Portals/0/Blog/Files/4/23/IMG_0161_blogsm.jpg" width=300&gt;&lt;IMG height=225 alt="" src="http://www.infrandom.com/42/Portals/0/Blog/Files/4/23/IMG_0219_blogsm.jpg" width=300&gt; &lt;/P&gt;
&lt;P&gt;&lt;IMG height=225 alt="" src="http://www.infrandom.com/42/Portals/0/Blog/Files/4/23/IMG_0283_blogsm.jpg" width=300&gt;&lt;IMG height=225 alt="" src="http://www.infrandom.com/42/Portals/0/Blog/Files/4/23/IMG_0293_blogsm.jpg" width=300&gt;&lt;/P&gt;
&lt;P&gt;&lt;A href="http://www.infrandom.com/vid/MVI_0309-1.wmv"&gt;&lt;IMG src="http://www.infrandom.com/42/Portals/0/Blog/Files/4/23/vid1.jpg" width=300&gt;&lt;/A&gt;&lt;A href="http://www.infrandom.com/vid/MVI_0276.wmv"&gt;&lt;IMG src="http://www.infrandom.com/42/Portals/0/Blog/Files/4/23/vid2.jpg" width=300&gt;&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&lt;IMG height=450 alt="" src="http://www.infrandom.com/42/Portals/0/Blog/Files/4/23/IMG_0260_blog.jpg" width=600&gt;&lt;/P&gt;</description>
      <link>http://www.infrandom.com/42/Blog/tabid/53/EntryID/23/Default.aspx</link>
      <author>tech@infrandom.com</author>
      <comments>http://www.infrandom.com/42/Blog/tabid/53/EntryID/23/Default.aspx#Comments</comments>
      <guid isPermaLink="true">http://www.infrandom.com/42/Default.aspx?tabid=53&amp;EntryID=23</guid>
      <pubDate>Fri, 16 Jun 2006 07:00:00 GMT</pubDate>
      <slash:comments>0</slash:comments>
      <trackback:ping>http://www.infrandom.com/42/DesktopModules/Blog/Trackback.aspx?id=23</trackback:ping>
    </item>
    <item>
      <title>TechEd 2006 Boston: Day 4</title>
      <description>&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;Birds Of a Feather: DotNetNuke 4.0&lt;o:p&gt;&lt;/o:p&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;Well let me start with a quick blub about my adventures last night at the birds of a feather meeting at 9PM in the food hall. The session started off on a bad note when Shawn Walker, creator and leader of DotNetNuke didn’t show up. He was in &lt;?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" /&gt;&lt;st1:State w:st="on"&gt;&lt;st1:place w:st="on"&gt;New York&lt;/st1:place&gt;&lt;/st1:State&gt; for the open source conference. Steve Fabien, the Core Project lead of the Document and Repository modules stepped up to lead the discussion despite being promised he wouldn’t have to speak.&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;So an agenda was set and the first topic was support. This is where I’ll give the short version. Basicall the discussion was dominated by a Noreigen DNN developer who was hoping to use DNN to offer schools in his country to setup web sites and offer student each personal sites. He seemed to be worry about support only to later retract that support wasn’t and issue. This led to a discussion about money not being an issue either and that schools in his country can get SharePoint for $50. I really don’t even know what he was deabating, for $50 a school DNN isn’t in the running with the new SharePoint. After using up most of the time I pushed to move ahead with the agenda. My main question about Activy Directory support was answered with an explination of the source code was dontated, it was converted to work as part of the core and then the original creator who was supposed to be the lead for the project on the core disappeared and can’t seem to be contacted. In talking to another person earlier in the day I did learn that perhaps it’d be better to look at some of the 3&lt;SUP&gt;rd&lt;/SUP&gt; party AD modules that might work better if need be.&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;Testing and Refactoring Your Database with Visual Studio Team Edition for Database Professionals&lt;o:p&gt;&lt;/o:p&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;This session was the second is the series, its main focus was on the features it offers for testing. Data Generation can be done for all SQL value types as well as a few complex types like foreign keys, regular expressions, and data bound (dictionary look up from another table). Futher more they will be able to create value distributions that are unfirom, normal, inverse normal, exponensial and inverse exponential. And when the RTM ships they will have an option allowing you to create a historgram from your production data and they will conform the generated data to that historgram.&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;Unit Testing looks pretty easy to setup and yet is very powerful if you want to add custom code to perform tests. Basically you have a SQL script that executes all of your conditions including assertions, rowsets, row count and execution time. You then define the expected result for each of the statements in the script.&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;In the deployment of a database project is the ability to generate test data, and perform tests to make sure the deployment didn’t break anything. Finally they talked about the refactoring feature.&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/P&gt;
&lt;DIV style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 4pt; BORDER-TOP: windowtext 1pt solid; PADDING-LEFT: 4pt; BACKGROUND: #e6e6e6; PADDING-BOTTOM: 1pt; MARGIN-LEFT: 0.25in; BORDER-LEFT: windowtext 1pt solid; MARGIN-RIGHT: 0.25in; PADDING-TOP: 1pt; BORDER-BOTTOM: windowtext 1pt solid; mso-border-shadow: yes; mso-element: para-border-div"&gt;
&lt;P class=Quote style="BACKGROUND: #e6e6e6; MARGIN: 0in 0in 0pt"&gt;“A database refactoring is a small change to your database schema which improves its design with out changing its semantics” &lt;/P&gt;
&lt;P class=Quote style="BACKGROUND: #e6e6e6; MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/P&gt;
&lt;P class=Quote style="BACKGROUND: #e6e6e6; MARGIN: 0in 0in 0pt"&gt;– Agile Database Development, Scott Ambler&lt;/P&gt;&lt;/DIV&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;In this first version of the product, the only refactoring functionality that will be offered will be the rename feature. Since the project knows the entire database schema they will be able to rename all object references, direct and indirect inside of all tables, views, stored procs, triggers, user defined function, data generation plans, scripts, and database unit tests.&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;Vistual Studio Team Foundation Server, Part 1&lt;o:p&gt;&lt;/o:p&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;This session went over the work flow for work items. This is the part of the TFS that allows for team member collaboration on projects. The highlights are the ability to edit the project file information in both Excel and Project (for scheduling) and information is all stored into a project web site (based on sharepoint). TFS is built from the ground up as a new product. It’s built on Sql Server 2005 for full database storage of souce items. Check in can be enforeced by policys which define rules such as requiring each check in to be associated with a work item or having been code reviewed by a peer. Shelving is probably one of the most powerful new features. A set of changes can be “shelved” into TFS. This shelf can then be checked out by another team member to see the changes that were made in that shelf. If that co-worker has been making their own modification there is no confliect as they are maintain in separate bracnhes in the source control system. So if team member B is having problem with their code, they can shelf it. Team member A can shelf their own current work in any state its in to check out Team member Bs shelf to help work on it. When he’s done he can return to his own changes. There is also a lot of repoting functionality for managing project status. Managers need not constently ask developers for status updates as the true project staus can always be determed by the project web site or reports.&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;Converting to VS2005 Web Apps – Web Application Project (WAP)&lt;o:p&gt;&lt;/o:p&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;This session was supposed to be on migrating code from .NET 1.1 to .NET 2.0. However it got renamed and focused only on ASP.NET migration. This was diapointing as I don’t think ther process is that complicated. I did learn there was a little more than running the wizard to full migrate a web project to 2.0. However, the speaker was going at a very slow pace explaing in slides each details step vs just showing the demo and explaining it. Once he finished the steps I left to work on the SSIS import. &lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;BR&gt;The main point from this session is that its’ the recommendation to migrate to the new (SP1 or download plugin) ASP.NET Web Application Project vs. the ASP.NET Web Site that was the new development mode when VS2005 was released. However the reason to do the migration are based on each application and require an analysis on a project by project basis for ROI.&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/P&gt;</description>
      <link>http://www.infrandom.com/42/Blog/tabid/53/EntryID/22/Default.aspx</link>
      <author>tech@infrandom.com</author>
      <comments>http://www.infrandom.com/42/Blog/tabid/53/EntryID/22/Default.aspx#Comments</comments>
      <guid isPermaLink="true">http://www.infrandom.com/42/Default.aspx?tabid=53&amp;EntryID=22</guid>
      <pubDate>Wed, 14 Jun 2006 07:00:00 GMT</pubDate>
      <slash:comments>0</slash:comments>
      <trackback:ping>http://www.infrandom.com/42/DesktopModules/Blog/Trackback.aspx?id=22</trackback:ping>
    </item>
    <item>
      <title>TechEd 2006: Day 3 in Boston</title>
      <description>&lt;P&gt;Ever Wondered how big Tech Ed was? Here’s the dinning hall? It was filled at one point and not everyone eats at the same time.&lt;/P&gt;
&lt;P&gt; &lt;/P&gt;
&lt;P&gt;&lt;IMG height=225 src="http://www.infrandom.com/42/Portals/0/Blog/Files/4/21/IMG_0127_blogsm.jpg" width=300 border=3&gt;   &lt;IMG height=225 src="http://www.infrandom.com/42/Portals/0/Blog/Files/4/21/IMG_0130_blogsm.jpg" width=300 border=3&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Windows SharePoint Services (version 3) Development 2: ASP.NET, Web Parts, Master Pages, Field Types, and More&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;This session went over the low level architecture of SharePoint version 3. It’s predecessor was built almost as a hack around the ASP.NET runtime and that resulted in many issues. Now SharePoint is built on top of the ASP.NET 2.0 runtime using best practices that have developed.&lt;/P&gt;
&lt;P&gt;The base of all SharePoint site is based on Master pages. By changing the default template you can change all of the SharePoint sites. &lt;/P&gt;
&lt;P&gt;The presenter gave an analogy of SharePoint development that equated site based modifications by the user or SharePoint Designer as the mussel system of the body. Here you can make changes but those changes exist only on that one site. SharePoint designer can only make changes to the content database and knows nothing about the actual file system. Visual Studio is the tool to modify the skeleton structure. Changes here can be done to the SharePoint base templates. These changes are propagates to every site and its where most of the custom development opportunities exist.&lt;/P&gt;
&lt;P&gt;Aggregation of site information in a site collection is possible though the SPSiteDataQuery() method. This can’t be used to do aggregation across site collections. You are also limited to searching one site list at a time i.e. you have to know what list you want to search (by ID).  &lt;/P&gt;
&lt;P&gt;UserControl based web parts for v2 (using SmartPart) are no longer being supported. However, there is a directory that user controls can be placed and a simple ASP.NET Web Part shim can be wrapped around the user control.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Typed DataSets, Data Binding, and the SQL CLR: Harmonic Convergence&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;SQL CLR is the ability to write database functions, stored procedures and triggers using the .NET language. The highlight of this session would have been short talk on when to use CLR vs. T-SQL. Basically, if you are going to do a simple select or just retrieve data from the database, it’s best to use T-SQL and the Sql Analyzer to optimize your queries. However, the benefit of the CLR is that it allows you to transverse the data before you return it. In doing so you can perform logical operations to only return some rows or columns based on conditions or the ability to do some sort of aggregation or computational operations on the data. The benefit of doing these operations in the CLR is that it allows you to still return a datareader for use in your code but just with a subset of the database information or with computations that would be much more complex or costly to write using database cursors.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Managing and Deploying your SQL Server schemas with Visual Studio Team Edition for Database Professionals&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;This session was the first to introduce the new flavor of Visual Studio Team System for Database Professionals. It was somewhat of a basic introduction as it focused on the new project type for Visual Studio along with the source control features, schema comparison, data comparison, and refactoring features. Database version control would be a great addition to our development workflow.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;SQL Server 2005 Reporting Services: Advanced Report Design&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;This session was interesting to learn some neat tips and tricks for better reports such as initially laying out the Report in ReportBuilder. This provides a better way to lay out the report with less effort than is required in BIDS. Once that is done you can enhance the report using BIDS. But the biggest interesting thing to learn was that whatever version the presenter was using seemed much more advanced than the version I had when building my last report, I’m going to have to make sure I have the right version installed and this addresses a few of my concerns with ReportBuilder.&lt;/P&gt;
&lt;P&gt; &lt;/P&gt;</description>
      <link>http://www.infrandom.com/42/Blog/tabid/53/EntryID/21/Default.aspx</link>
      <author>tech@infrandom.com</author>
      <comments>http://www.infrandom.com/42/Blog/tabid/53/EntryID/21/Default.aspx#Comments</comments>
      <guid isPermaLink="true">http://www.infrandom.com/42/Default.aspx?tabid=53&amp;EntryID=21</guid>
      <pubDate>Tue, 13 Jun 2006 08:00:00 GMT</pubDate>
      <slash:comments>1</slash:comments>
      <trackback:ping>http://www.infrandom.com/42/DesktopModules/Blog/Trackback.aspx?id=21</trackback:ping>
    </item>
    <item>
      <title>TechEd 2006: Day 1/2</title>
      <description>The trip on JetBlue wasn't too bad, the jet had very good leg room and arm room. Of course I didn't have anyone in the middle seat so it was a pretty comfortable flight for being cross-country. Sadly however of the 36 DirectTV channels, they only had NBC and FOX of the big network channels so I missed out on the Formula 1 race, atleast until I get home. Now for the technical stuff...</description>
      <link>http://www.infrandom.com/42/Blog/tabid/53/EntryID/20/Default.aspx</link>
      <author>tech@infrandom.com</author>
      <comments>http://www.infrandom.com/42/Blog/tabid/53/EntryID/20/Default.aspx#Comments</comments>
      <guid isPermaLink="true">http://www.infrandom.com/42/Default.aspx?tabid=53&amp;EntryID=20</guid>
      <pubDate>Mon, 12 Jun 2006 08:00:00 GMT</pubDate>
      <slash:comments>1</slash:comments>
      <trackback:ping>http://www.infrandom.com/42/DesktopModules/Blog/Trackback.aspx?id=20</trackback:ping>
    </item>
    <item>
      <title>Preparing for TechEd 2006</title>
      <description>&lt;P&gt;So in less than 48 hours now I'll be in Boston, MA. I haven't started packing, I have a million and one erans to run before I leave, what else is new. It's always exciting when the extra erans I hadn't planned for show up too. I was atempting to take a red eye Sunday night in order to accomidate the things I needed to acomplish but it wasn't to be. From the time I get off work tonight until 5am Sunday morning when I wake up to get ready and leave for the airport, it should be a fun time.&lt;/P&gt;
&lt;P&gt;I did however get to see this, an early preview of the TechEd 2006 bag. I think it looks useable so I'm going to find away to not take a laptop bag so that I don't have to try and smash an extra bag into my luggage for the trip home like I do every other year. I'm more of a fan of backpacks these days, but I'm sure it'll make due as long as it is of sturdier construction than last years bag.&lt;/P&gt;
&lt;P&gt; &lt;/P&gt;</description>
      <link>http://www.infrandom.com/42/Blog/tabid/53/EntryID/18/Default.aspx</link>
      <author>tech@infrandom.com</author>
      <comments>http://www.infrandom.com/42/Blog/tabid/53/EntryID/18/Default.aspx#Comments</comments>
      <guid isPermaLink="true">http://www.infrandom.com/42/Default.aspx?tabid=53&amp;EntryID=18</guid>
      <pubDate>Fri, 09 Jun 2006 08:00:00 GMT</pubDate>
      <slash:comments>1</slash:comments>
      <trackback:ping>http://www.infrandom.com/42/DesktopModules/Blog/Trackback.aspx?id=18</trackback:ping>
    </item>
    <item>
      <title>Ask ElCid73</title>
      <description>&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;Lately I've been trying to follow Eddie Lopez's blog "&lt;A href="http://my.opera.com/usability"&gt;User Centered&lt;/A&gt;", as Eddie studies the designs of everyday items from a user's point of view.&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;Well being more technical, everyday things for me sometimes include technology. And today I finally reached a point where something just got me wondering, is this just me, or is this not intuitive. As a software engineer I've used a broad range of developer based software. This differs from end user software because developer focused software is intended to only be used by software developers. The lexicon of programming, and the symbols used aren’t expected to be understood by the lay man.&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;With that said, it always stumps me when I come across something that just isn’t right. At least not to me, so I thought I would post this one as an open question to the up and coming blogger. (I can't even keep up with his posts, does that guy ever work?)&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;This is a snippet from the Microsoft Visual Studio 2005 IDE. Microsoft has come a very long way with Visual Studio 2005. In fact, I'd say software development is finally now getting to a point it should have been 10 years ago. Finally the computer is actually doing things that a human shouldn't have to. Writing hundred if not thousands of lines of glue code just to tie and application to a data layer, or to present some simple web based layout, it's just been ridiculous. Visual Studio 2005 has greatly reduced the actual number of lines of code to implement something. &lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;Focusing specially Microsoft has put a lot of work into the new IDE. Intellisense now is everywhere you need it to be (Ok so not inside of some of the Visual Studio Business Intelligence Development Studio) and part of that is the help box that pops up as you start to write a function letting you know what the method parameters are. If there is more than one signature, an up arrow and down arrow indicate the navigation to the alternative signatures as shown below:&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&lt;/o:p&gt; &lt;IMG height=114 alt="" src="http://www.infrandom.com/42/Portals/0/Blog/Files/4/6/vs2k5_1.png" width=497&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;So I’m thinking clicking the down error should take me to 3 of 3. Since I’m at the first one, going down would circle back to 3. Likewise if I was at the 3&lt;SUP&gt;rd&lt;/SUP&gt; definition I’d expect the down arrow to take me to the 2&lt;SUP&gt;nd&lt;/SUP&gt; definition. But when I click on the down arrow this is what you get…&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt; &lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt; &lt;IMG height=105 alt="" src="http://www.infrandom.com/42/Portals/0/Blog/Files/4/6/vs2k5_2.png" width=489&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;2!! So down means next and up means previous. This is the opposite of what I expect considering the reverse direction. If I’m at 1 and want to go to 2, I want to go up. Up is what takes you from 1 to 2, and 2 to 3. Apparently Microsoft doesn’t agree.&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;So I ask the ElCid for his opinion, what is the usability take on up/down in terms of previous/next?&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt; &lt;/P&gt;</description>
      <link>http://www.infrandom.com/42/Blog/tabid/53/EntryID/6/Default.aspx</link>
      <author>tech@infrandom.com</author>
      <comments>http://www.infrandom.com/42/Blog/tabid/53/EntryID/6/Default.aspx#Comments</comments>
      <guid isPermaLink="true">http://www.infrandom.com/42/Default.aspx?tabid=53&amp;EntryID=6</guid>
      <pubDate>Thu, 04 May 2006 07:00:00 GMT</pubDate>
      <slash:comments>13</slash:comments>
      <trackback:ping>http://www.infrandom.com/42/DesktopModules/Blog/Trackback.aspx?id=6</trackback:ping>
    </item>
    <item>
      <title>SSIS: Foreach Loop over a directory of DBF files.</title>
      <description>This is a quick demonstartion of how to use a Foreach Loop over a directory of DBF files.</description>
      <link>http://www.infrandom.com/42/Blog/tabid/53/EntryID/2/Default.aspx</link>
      <author>tech@infrandom.com</author>
      <comments>http://www.infrandom.com/42/Blog/tabid/53/EntryID/2/Default.aspx#Comments</comments>
      <guid isPermaLink="true">http://www.infrandom.com/42/Default.aspx?tabid=53&amp;EntryID=2</guid>
      <pubDate>Mon, 17 Apr 2006 07:00:00 GMT</pubDate>
      <slash:comments>3</slash:comments>
      <trackback:ping>http://www.infrandom.com/42/DesktopModules/Blog/Trackback.aspx?id=2</trackback:ping>
    </item>
  </channel>
</rss>