Showing posts with label Events. Show all posts
Showing posts with label Events. Show all posts

Thursday, January 10, 2008

CodeMash, Day One Part One

Well, day one for me got off to a "bumpy" start. I request a wake up call for 7:00 intending to work out, and get downstairs in plenty of time for a little breakfast and the beginning of Neal Ford's keynote. Well, unfortunately, my wake up call didn't arrive till 8:00, so I didn't get to work out, missed breakfast and missed the first few minutes of the keynote.

One that subject...

I really dig what Neal Ford is saying about dynamic languages. I've been playing with Iron Python for a little while now and I see a lot of benefit in it, although it's still a bit "rough" in my opinion. If I never end up using it in a production project, it has made me re-think the way I do things in C#. He said something in his presentation that got a little chuckle out of me; compilers are basically weak unit tests and spell checkers. I remember being in school and hearing a lot of my fellow students in the computer lab "I can't understand why it didn't work, it compiled." I didn't think I would hear that after I left school, but I hear it at least once a year from co-workers. He also beat the testing drum, which I'm all for. I really wish this philosophy would catch on more widely in software development. I don't know why, but I'm still surprised when I meet with a client and find out that they have NO unit testing practices in place at all! I've been doing it so long myself, that I can't imagine developing without it.

From there I went to see Joe O'Brien present "Ruby:Testing Mandatory." I have to admit, I was definitely handicapped here since I have zero experience with Ruby, but I'm always interested in anything that can enhance my test-driven chops (very helpful when I evangelize this to clients). It did get me more interested then I had been in Ruby. I have been playing with Iron Python for awhile now, but I've decided I need to make some time for Ruby as well.

After that I went to see Jay Wren talk about Castle. I've heard a lot about Castle, but never really used it. It was pretty interesting.

Scott Hanselman's keynote was great! Had a great, funny intro followed by some very cool stuff for IIS 7. I've been playing with IIS 7 for a few months, but clearly haven't even scratched the surface with the HTTP Modules. More stuff to start playing with when I get home.

Served my first tour of duty in the "Ask the Experts" lounge. It was pretty cool; I didn't get a lot of people coming in for "hard-core" stuff; got one person looking for book recommendations (but that's another blog post), one person who had an interesting challenge which I will blog about later, but for the most part it was kind of an hour and hanging out and talking with Catherine Devlin and Darrell Hawley. I've never met Catherine, and if I want to continue learning Python, I should definitely start reading her blog. I hadn't seen Darrell in awhile and it was fun to talk to him again.

Off to the next session. To be continued...

Saturday, October 20, 2007

Reliable Messaging with WCF at Day of .NET

Thanks to everyone who came to my session this morning. I really enjoyed presenting it and hope you all enjoyed it and got some valuable information. I would love to hear from you all in the future about how you are using WCF, and how the information I presented has helped you design your services infrastructure.

As promised, here is a link to a zip file with my slide deck and the two demos I presented. If you are running Vista the MSMQ demo will have to be run in Visual Studio running with elevated privileges the first time you use it. This is because, as I pointed out, if the queue it uses does not exist it will try to create it. As I mentioned I DO NOT condone this as a best practice in an actual application, but it made the demo easier.

Thanks again for coming out!

Monday, September 17, 2007

DevCares recap

Thanks to all the people who came out for my DevCares presentation last Friday in Cincinnati. I had a great time and I hope the material was helpful. It was almost as fun as watching my Browns rack up 51 points on Sunday. J

Just kidding. But any win for us this year is going to be welcome.

Anyway, I'm providing a link to the materials as promised. I'm including the "ppt" files for those of you with Office 2007 and slide shows for those of you without. I'm also including the completed solution for the "Custom Channels" presentation.



As I mentioned, I will be at the Dayton .NET Developers next Wednesday the 26th presenting Microsoft Patterns and Practices Service factory for WCF. I will also be presenting the DevCares content again in Columbus on Friday September 28th. And if you can't just get enough of me, or just want some more .NET goodness, I will be speaking on "Reliable Messaging with WCF" at the Day of .NET in Ann Arbor on October 20th.

Hope to see you all there!

Thursday, June 21, 2007

Coming to Findlay!

For anyone in the area, I will be presenting "Building SOA based .NET applications with Microsoft Patterns & Practices Service Factory" at the Findlay Area .NET User Group Tuesday, June 26th at 5:30PM. You can get more details about my presentation and FANUG at their website www.fanug.org

See ya there!

Monday, May 07, 2007

Day of .NET Recap

I should probably start this blog post by apologizing to everyone who attended my session for not being able to show a working demo. I did find out that I made two small errors; my resource file (the one I created in the first step) was miss-named. Therefore, when my pre-compile step tried to execute, it failed as it was unable to fine the file. I renamed the file, complied and it worked. Also, the "completed" solution didn't work because I tried to run it from Visual Studio when it was not in an elevated state. I will be sending the starting solution and the completed solution to the DODN organizers to post, with the slide deck, on the website. In the meantime, you can drop me an e-mail if you just can't wait and I'll mail it off to you.

But, this reminds me of something I didn't get to in my presentation; once you add the request for elevated privileges to your application, you MUST run Visual Studio with elevated privileges in order to run your application. If you'll remember from the presentation, your applications by default run under your standard user token. Once the application begins, without being elevated, it does not have access to the administrative token anymore. This will also affect you if your application attempts to perform an action requiring elevation and you HAVE NOT run Visual Studio in elevated mode. The solution it to right-click Visual Studio and select "Run as Administrator" which will ask you to confirm that you want to launch the application in elevated mode before starting the application.

Search (the part we ran out of time for)


Those who were disappointed with the search capabilities of Windows XP will be happy to know that the search facility in Vista is completely new and much faster and more user friendly.

Newer Microsoft applications (Windows, Office, SharePoint, SQL Server, Exchange, etc.) are built on a common search technology engine. It's important to understand that the engine technology, NOT the binaries are the same; the new search technology is simply packaged into a number of different forms. While the binaries are not the same, the similarity in the underlying technology allows for techniques used for one system to be used in another.

From a user standpoint, this translates into faster searches with the ability to be more specific about what you are looking for. This is possible because Vista takes a documents metadata into account when performing a search. For example, if you wanted to find all e-mails about vacation from Michelle, your search term would by "from:Michelle vacation." The "from:Michelle" property/value pair tells Vista to find all document with a property of "from" and a value of "Michelle." This can be used for any metadata property that is exposed by any document type in your system.

This common search functionally being deployed to the desktop also allows for Vista search functionality to be used in your application utilizing a specialized OLE DB provider and some extensions to standard SQL.

In order to utilize this search, you need to use a special OLE DB provider capable of accessing the operating systems indexing service. Out connection string is:

Provider=Search.CollatorDSO;Extended Properties=\"Application=Windows\";

For example:

SELECT System.Title,

System.ItemFolderPathDisplay,

System.ItemNameDisplay,

System.Document.CharacterCount,

System.Document.LastAuthor

FROM systemindex

WHERE SCOPE = 'file:C:/Users/Public' AND

CONTAINS('Day Of Dot Net')


This SQL is very similar to any other query you might write to query data from a table; you are selecting fields from a data store where certain conditions are met. In this case the values we are selecting are system values that will return metadata about files. We are searching "systemindex" (Vista's search index data store) where the file contains the string "Day of Dot Net" in the c:/users/public folder. In this case we are treating the systemindex like any other database table.

You can take this query and use it to populate either a data reader or a data set and manipulate the data just as you would for any other SQL query.

This provides us with another powerful tool that can be utilized in our Vista applications to enhance our applications value and provider a better user experience. And best of all, the other things discussed in the Day of .NET session, this is already built into Windows Vista. It's there, ready for you to use today!

Thursday, April 05, 2007

Dawn of a New Day… of .NET

The Great Lakes Area .NET User Group, The Ann Arbor .NET Developer Group and the Northwest Ohio .NET User Group are all co-sponsoring the "Day of .NET" on May 5th in Ann Arbor. More information can be found at their website.


Day of .Net May 5, 2007 - I'll be there!


This is a great opportunity to come and see some cool .NET stuff, learn some new tricks and participate in the .NET community.

There will be some great speakers, and I will be presenting "Windows Vista for Developers" for anyone who missed it at the February DevCares event.

See you all there!

Sunday, March 25, 2007

Code Camp

The Dayton/Cincinnati code camp was held today. Alexei, Arnulfo, Monish and I attended.

The Journey

Arnulfo's job apparently was to organize logistics. His "plan" was to have Monish and I meet him at the office at 4:30 (AM) and then go pick up Alexei on the way.

Arnulfo overslept. After hanging out at the office till about quarter of five, Monish called and woke him up. So we were a bit late. We then drove past the meeting point for Alexei, so more back tracking. We used Google maps to get us to our destination, but that was difficult. Many of the side streets we had to take between the freeway and the event were not labeled, or not labeled well. But we eventually made it.

1st Session: Practical Caching in ASP.NET 2.0 - Joe Wirtley

This was an OK session. We are going to be doing some data caching on my current project. The speaker talked a bit about static page and user control caching to. You don't have access to Session from cached user controls, so he showed us a work-around.

2nd Session: Layouts, Styles, Templates in WPF - Drew Robbins

I know Drew has given this presentation a few times, but I haven't seen if for over a year and half. I have to say that WPF is more impressive than its first incarnation. I kind of blew it off at first, thinking it was a neat toy, but seemed like a lot to go through, especially since it wasn't really on the horizon as far as being deployed. But, Drew showed some cool demos so I'm interested. I'll have to pick up Petzolds book and play with it.

3rd Session: Extending ASP.NET with Http Handlers and Modules - Joe Brinkman

This was a pretty interesting session about writing (you guessed it) custom Http Handlers and Modules. The speaker explained the page life cycle, and how sometimes it's more efficient to have a handler respond as opposed to an aspx page. He also showed some cool ways to use Modules to handle some authentication, compression and string substitution. The speaker was from DotNetNuke, and that framework uses several of these, so I'll download it and give it a look.

4th Session: Intro to XNA - Bill Steele

This one was for me. The fact is I haven't made much progress on my project. I downloaded and setup the XNA development tools, and fired up the starter project, but I wasn't really sure what to do after that. There is a little documentation for XNA, but if you don't have experience writing games, it's kind of hard to get your head around. This was a big help. I also learned that the next rev of XNA will be out next month, and that the new version will work with Visual Studio (the current version requires C# Express). I've went ahead and downloaded the framework and Anim8or (the recommended asset creation tool) but will probably wait until next month to avoid having to install Express.

5th Session: Balancing WCF Performance and Security - Darrell Hawley

This was a pretty helpful session that compared and contrasted the differences (both for performance and security, as per the title) of the various WCF bindings. There were some pretty marked differences. It was pretty helpful in determining which binding which binding to use where. One of the big strengths of WCF is the ability to have multiple bindings for the same service AND change these via configuration. So, you can expose your service via WS to the outside world, which provides interoperability, and TCP internally, which provides speed. There wasn't time to go into MSMQ, so I'm going to play with that a little on my own and how it "stacks" up.

6th Session: Improve Your Testing With Open Source Test Tools - Jim Holmes

I already use Team Test for most of my testing needs. Obviously, as good as Team Test is, it doesn't do everything, so I decided to check this out and see what was out there that was new and cool. There were a couple standouts. The first one, Fitnesse, is (according to their website) a tool to compare customer's expectation to the actual results. I also am interested in Pairwise, which is a case generation tool that helps test situations where conditions overlap. Watir looked kind of interesting as well. It basically does the same thing (on the surface) that Team Test’s Web Test does, but where a web test simulates web interaction by comparing query strings, Watir allows you to actually interact with specific fields on a web form. I don’t know what it will really offer that web tests don’t, or if it’s simply a better tool, so I’ll have to check it out. The only “drawback” is that it is Ruby based. I don’t have anything against Ruby per se, but I’d like to not in stall anymore stuff on my computer than I really have to.


All in all it was a great code camp and I got a lot of information and ideas out of the session. I’ll definitely be back next year, and would encourage everyone else who is able to also attend.

Thanks to everyone and CINNUG and The Dayton .NET Developers Group for putting on a great event!

Saturday, February 24, 2007

February DevCares Recap


February DevCares is history (at least in Columbus) and aside from a few technical glitches, I think things went well. My topic was new features in Vista and making application compatible with UAC. Jeff's topic was developing Gadgets and using Vistas RSS platform in .NET.


Aside from a few minor technical issues (it was kind of hard for Jeff to present RSS with a wonky Internet connection) things went very well. Drew gave me some good advice, and next time I'm not going to rely so much on my notes. I was too worried about trying to stay in-sync with the slides and I should have just talked to the group.


It was a relatively quiet group, but they asked some good questions, so they were definitely paying attention. Hopefully I was able to provide some value to their future Vista development AND demonstrate that those Apple commercials slamming Vista are totally full of crap!


I enjoyed Jeff's presentation, and especially in light of the network issues though he did a great job.


The content from both presentations will be up on the DevCares website soon. If you just can't wait, feel free to email me and I'll pass them along. Well, not Jeff's, you'll have to email him


Next month's topic is "Extending Word, Excel and InfoPath 2007" and "Building Workflow Applications on SharePoint 2007" and you can register at the DevCares website. And no, I don't know who's speaking yet, but I'm sure it will be great!


I would like to thank Drew Robbins and Microsoft for the opportunity. I really enjoyed it!


Now, some pictures (courtesy of Arnulfo Wing)








Monday, February 19, 2007

I will be speaking at the February DevCares event in Columbus

This Friday, Febuary 23rd, I will be presenting "Windows Vista for Developers" as part of Microsoft's DevCares event. It will be at the Babbage Simmel office in downtown Columbus.

I will be talking about some new things in Vista that developers can start taking advantage of now. I will demonstrate how to make your applications compatible with UAC, and if there's time how to use the new search functionality built into Vista. Jeff Blankenburg will be presenting on Sidebar Gadgets and Vista's built in RSS components.

You can register at http://www.devcares.com