in

Utah .NET User Group

Home of Utah's professional .NET developers.

Bryan Hinton's Blog

June 2007 - Posts

  • Tech Ed 2007 Day 2 Birds of a Feather – Agile Planning Tools and TDD/Mocking

    I took in two BOFs tonight – one led by Joel Semeniuk on Agile Planning Tools – that included the likes of Steven Borg and Clementino Mendonca as well – there was some lively discussion – not all of it about Planning tools per se, but perhaps approaches to planning – I thought it was an excellent discussion and in the least made people think and hear the views of others which I think captures the essence of Birds of a Feather very well.

    One of my comments in the session was that there is no ONE tool for Agile planning – I believe there is tooling (perhaps it is Excel or Project which were the two most common mentioned) needed for Iteration planning (tactical planning if you will) and perhaps with co-located teams a sticky board is good enough (although having the traceability that you get with a tool like Team Foundation Server is valuable and you can see teams like what David Anderson is doing at Corbis where they use cards on the wall and TFS).

    I also think there is a need to manage the strategic space and the needs of the strategic space are different than that of the tactical. Another gentleman in the room captured that well in a comment about the decrease in granularity that is tracked as you move farther out on your roadmap. The items farther out are broader strokes of functionality or ideas that represent where you "may" go.

    At the end I chatted with Clementino, Steven Borg, and Martin Danner (from Accentient along with Steven), and Rob Lowe from my group at Intel about how easy it would be to put out a simple tool to enable card like planning. I was thinking something in WPF (it would be fun) and Steve mentioned using AJAX and the web (can you do drag and drop – maybe a Silverlight alpha test?). It wouldn't be too hard to make it such that you could plug in adapters for the backend technology that you used (VersionOne, TFS, etc…). We are going to talk some more on it and CodePlex seems like a good place to host that – we'll have to see where that goes.

     

    The second session was on TDD/Mocking/Dependency Injection and facilitated by James Kovacs. Again it was interesting to hear people's perceptions on mocking and TDD. I think in general most in there with a couple of exceptions perhaps were behind TDD. There was a little bit more variability in mocking and the levels that people were using mocking and even what mocking was. My input was

    1. TDD is about driving your design and development through testing – it isn't ABOUT THE TESTS – the fact that you have unit tests as an output that you can run for validation – to me – that is like a side product to a degree. TDD is a great at helping the right design emerge from your code (and I love ReSharper helping me get there!)
    2. Mocking is a tool to help you test in places that may be difficult – the example I used where it came in handy was when I was trying to mock a successful windows authentication for a login procedure. I didn't want to hard-code a correct account with the password so we injected the authentication object in and mocked it so that it always returned true (since we didn't care to test the windows authentication procedure – that is MS job). In that case and many others I see mocking and dependency injection working hand in hand. And I believe (as do most of the patterns books) that dependency injection is a key principle to produce loosely coupled systems. Mocking is great at helping test in those dependency injection scenarios. Several others brought up using mocking more generally and I am sure there are cases – I guess my advice would be mock when you have to and no more.

       

      In all the discussions about mocking and mocking frameworks Rhino Mocks was the only name mentioned of course there are others, but it was the only one called out by name perhaps speaking to it's popularity in comparison to the other frameworks right now.

  • Tech Ed 2007 Day 2: What a day! - ADO.NET Entities (EDM), LINQ, ASP.NET, and Data Mining, Performance Point, and a little WPF

    • Dynamic Languages

      There was supposed to be a chalk talk about this that John Lam was supposed to be at, but for some reason it got cancelled so I swung by their booth and had a good (but quick chat with them). It mostly involved talking about the DLR console written in Silverlight that is available. We talked about some of the challenges in trying to enable .NET on those languages while still allowing those languages to maintain the uniqueness that people like about them. In another discussion with the EDM folks (Entity Data Model or Entity Framework) they mentioned Jasper which is the codename for a project that allows dynamic languages to take advantage of the Entity framework (think a combination of NHibernate and Rails) such that you get NHibernate type of ORM mapping and when coupled with the ASP.NET Dynamic Data Control (which literally is a one line definition of the control) you create a complete web interface for administering your data. The reasoning behind this effort is to enable dynamic languages but without requiring the early binding that languages like C# do. The scenario presented was that you would pass a connection string to a method that connected to the DB and would pull back all the tables, etc… in your DB and allow you to program to them (remember you don't have to have pre-defined them in languages like Python, Ruby, etc…) without them being explicitly created.

      As one of the MS guys said they have felt the pulse of the community around dynamic languages and are working to support the movement by the development community in that area.

    • ADO.Net Entities (EDM)

       

      This topic is covered extensively in Internet articles and so I will just highlight a couple of points – EDM will ship "out of band" from Orcas perhaps sometime March 2008. It represents an ORM-like implementation similar to NHibernate – I am not an NHibernate expert so I can't comment on what is different etc…, but I would imagine that most of the major NHibernate capabilities are covered with some of the edge cases (or perhaps many) not covered which will likely cause great commotion when it comes out as people like their edge cases and get upset when they are not covered.

       

      Perhaps the one scenario that really stood out here is the opportunity to leverage this defined Entity Framework in other places. The example that comes to mind is in the Adhoc reporting arena. Say that you create an object model and use that in your apps that you write and then you maintain a report model (whether you do that for SQL Reporting Services or the Universe concept that Business Objects uses). Well now you have two models to maintain – which if you want them to be two is good, but if you don't (and I would suggest that as often as you don't want them to be the same you do want them to be the same) then that is bad. Well now if Reporting Services leverages the Entity Framework you can expose that model to both your programming and adhoc reporting users. I plan on dropping by the SQL Server Reporting Services booth and raising my voice that I want this type of integration.

       

    • LINQ and ASP.NET Dynamic Data Control

       

      Full disclosure – I love LINQ – it is really cool – I would like to excuse that by the fact that I like SQL as well, but the more I am around it the more I am convinced that it is not just me – LINQ is just cool. LINQ is well known so I won't spend much more time on that – the Dynamic Data Control I referenced above in the Dynamic Language discussion, but in short it allows you to in one line define the control and map it to the Linq model that it will use to inspect your DB and then spit out the relevant web pages. It gives you an abstraction layer such that you don't have to adhere to design/naming rules like Rails requires (I am not a Rails expert so if I am butchering things on Rails I apologize). The one thing I don't know is if you have control over the styling of the output of the dynamic data control – I would hope so, but I don't know for sure.

       

    • The guy does great talks – I wonder if the guys that work for him get mad because he gets to do all the cool demos? I think it is awesome that someone so senior still codes. I have the same kind of respect for Brian Harry as well. Not knowing them personally or how the people who work under them feel I guess it is an opinion from afar, but senior people who have to handle the management and technical together and seem to be staying on top of it are impressive to me.

       

    • Performance Point

      With KPIs available in Excel 2007, Analysis Services, SharePoint, and now in PerformancePoint (and I don't know, but probably ProClarity as well) MS obviously needs to do some consolidation. From talks with them I think they realize that – one of the key messages to take away is if your KPIs are in Analysis Services then everybody seems them so at least there is a convergence point within the technology stack. We have been looking for a dashboarding type tool – I know that there are tons out there, but with the technology we have available to us due to MS licensing already PerformancePoint begins to look appealing. It is definitely something that we are going to take a longer look at when we get back from the Conference.

       

    • Data Mining

      I went to several Data Mining sessions two years ago and am revisiting them today – not much has changed in the server landscape and they haven't said anything about changes coming in SQL Server 2008, but they did release Data Mining Extensions for the Office platform (2007) and they demo'd the Excel plug-in – it was very impressive and made it easy to running data mining algorithms across Excel data – the wizard that is used does a good job of hiding the complexities and enabling you to just get at the Data Mining results.

  • Tech Ed 2007 – Day 1 : Business Intelligence and SharePoint

    So today started off a little slow after the keynote – at least for me. While I had a lot of sessions that interested me – none brought the “I can’t wait for this” feeling. I spent a fair amount of the data in sessions talking about SharePoint, Excel, and BI in general. This is a hot topic at work as of late as is reporting in general. The best part of the day so far surprisingly is the Hands-On lab I did where I published an Excel workbook to Excel Server. It was interesting to see what MOSS gives you. It exposed named elements in Excel and in the sample I had two named tables, a chart, and a named range (which was actually just one column). So put an Excel Viewer on top of it in the browser and I could see those items (with the visualizations as well). You can also create a filter that links different web parts together so that they can be parameterized together (kind of like having an area parameter that governs all the data displaying on the page when they are on different web parts). Couple that with a better connection between SharePoint and ASP.NET with ASP.NET 2.0 and SharePoint 2007 and SharePoint as a platform may be coming of age.

    I am in a session covering the upcoming features in SQL Server 2008 or “Katmai” (I think I spelled the codename right). They talked about ADO.NET entities which is interesting to hear them plugged into that effort – that feature got pushed out from release with Orcas to lag Orcas by a few months to align the strategy there – I wonder if aligning with the SQL team was part of that? Now the presenter is talking about storing “beyond relational” data in SQL Server.

    I closed up the sessions for the day by going to Scott Guthrie’s Silverlight session – I had seen most of the demos in a recent webcast, but it was still really cool. When you see the ease of creating an RIA (Rich Internet Application – perhaps RIE would be better – Rich Internet Experience) that connects to web services and leverages the investment that many shops already have in .NET it is easy to see how really remarkable websites can be in the future. I ran into a friend that works for JetBlue who was in the same Silverlight session and I told him that I would fly JetBlue if they made it as easy to fly and book routes as it was in the Silverlight Demo that Scott showed (you drag and drop your flight plan and your dates). One of the other demos that was just incredible was the Video Editing one. You could cut videos, splice them together, break them down into frame components, and all in the browser. They also had one that mimicked the recent Microsoft Surface Computing experience to a degree (with a mouse of course).

    The evening was the reception in the Exhibitor Hall the food was good. I talked with Infragistics, Dundas, DevExpress, and BusinessObjects - there may have been a couple of others in their as well. Dundas really stuck out to me in the charting space – they have a rich set of functionality for Reporting Services, ASP.NET, WinForms, and now for SharePoint – very, very nice and definitely worth a look. Infragistics also was pretty impressive as they talked about the work that they are doing in the Silverlight control space. I was glad to hear that as MS will likely ship some controls, but is no doubt counting on partners to fill in the control gap there. They already had charting components up there (I thought they were real demo components anyway) which is key as we have been bouncing Flash around as a platform and part of the reason is the charting interactivity that you get.

    All in all a good day – it got better as the day went on – time to take some of the capability I saw for a spin and get some sleep as well!

     

    Technorati tags: , ,
  • Tech Ed 2007 Begins!

    I have been meaning to blog all last week about my impending departure to Tech Ed. I noticed that I felt like I had an extra bounce in my stop all last week. Coming to Tech Ed is something I look forward to. 2005 was great with the impending release of VS2005, SQL 2005, and TFS. 2006 didn't have anything as compelling, but this year with Orcas on the near horizon (hopefully) and with Silverlight there should be some really good stuff.

    I am sitting here waiting for the keynote to start – we are running about 5 minutes late so far. Bob Muglia is the guy this year – we'll have to see if they have anything good to share. Last year's keynote was pretty good I thought with the 24 theme.

    The Attendee party should be great – never been to Islands of Adventure and definitely .

    I flipped on my Bluetooth on my phone as I walked through the main hall and I got a lot of advertisements – I guess they would like to call them coupons, but ads were what they were – as if you don't get enough of that in your Tech Ed bag alone (which is much, much improved from 2006 thankfully). We'll have to see as the week goes on if the Bluetooth broadcasting that they are doing has anything more useful (they call it Bluecasting).

    Looks like it is showtime – Back to the Future theme – good start – Doc Brown (was that his name?) – spoofing Hailstorm back in 2001 – Doc Brown called it a big waste of time. WinFS and Clippy get hit next – then an entrance in the Delorian – nice – well done.

    Talking about the 70/30 split in IT with 70% of resources spent on maintenance and 30% on new capability or value.

    Brought out Tom Bittman from Gartner to talk about IT and Agility. Tom said that Agility in IT is a major differentiator and the gap between the Agile and the non-Agile companies is growing. Tom made a key point that not only does the process need to be agile, but also the communication between Business, Development, and infrastructure.

    Being Low-cost and High Quality is no longer good enough – you have to be Agile as well – spoke on how to measure Agile – said go ask your customer.

    It is interesting – here I am sitting at a MS conference and the Keynote is talking about how Agile has now joined Cost and Quality Service as a foundational principle of IT. For those Agilists out there that has to feel like a nice pat on the back and validation for the journey to acceptance. Tom even took a shot across the bow of CMM and said that you can't just focus on process – that isn't enough – in a survey Gartner did process was an issue to getting to a real-time infrastructure for a quarter of the people, technology was another quarter and culture/organizational was another.

Copyright © 2000-2007, Utah .NET User Group
Powered by Community Server (Commercial Edition), by Telligent Systems