Ottawa Code Camp
Partners
Ottawa .NET Community
Ottawa Windows Server User Group
Federal SharePoint Users Group
Professional Association for SQL Server
Platinum Sponsors
Gold Sponsors
Bronze Sponsors
Code Camp Sessions

Working with the Jetfire Framework
Jetfire is a persistent scripting language and tools that take the complexity out of application programming. Jetfire features first class support for workflow application programming. Jetfire is to Workflows what Lotus 1-2-3 was to spreadsheets.

Jetfire is a free language and application framework that aims to increase the speed and ease with which workflows are created. The framework offers skeleton code frameworks (scaffolding) to aid in designing new applications. The Jetfire framework is an open source project written in the Jetfire programming language. Sample applications using the Jetfire framework are developed using the Model-View-Controller design pattern.

The Jetfire language has been implemented in .net C#. The Jetfire language binaries are freely available for developers to use in their projects.

John and Charles will demonstrate the capabilities of Jetfire from writing code, using the libraries and user interactions.
Threads: What, when, and how to use them in .NET
Michael gives examples of using thread pools or “roll your own” threads using the Asynchronous Thread Pattern. These hands on code examples have you creating, controlling, synchronizing, terminating, and the all important interfacing with the GUI thread.
Team Foundation Build
Team Foundation Build provides the functionality of a public build lab and is part of Team Foundation. With Team Foundation Build, enterprise build managers can synchronize the sources, compile the application, run associated unit tests, perform code analysis, release builds on a file server, and publish build reports. Build result data are propagated to the warehouse for historical reporting. Team Foundation Build works with other Visual Studio Team System tools during the build process, including version control, work item tracking, and with test tools.

New features & improvements for Team Foundation Build:
Build Definitions
Continuous Integration of Builds
Scheduled Builds
Build Agents
New Properties for Customizing Team Foundation Build
New Tasks and Targets for Customizing Team Foundation Build
What is PowerShell and what opportunities does it provide to a developer?
PowerShell is a command-line shell, an interactive scripting environment and an object-oriented scripting language all in one. During this session you will learn about each of these aspects of PowerShell and how you can use them to your advantage as a developer. This session will include a discussion about how you can use PowerShell to prototype .NET code, to perform test-driven development and automated testing using ADSI, .NET classes, COM objects and WMI classes, and to create powerful scripts that can gather a lot of information from customer environments for support purposes.
Delegates, Events, Threading and Custom Controls – Key tools for the Intermediate Developer
Are you passed the stage of learning about constructors, properties and the basic of WinForms and TextBoxes?  You know Events are delegates and they act like function pointers, but what else is there?  You know how to use them in your program, but do you know their inner workings?  Do you avoid using Threads cause of their complexity?  Do you keep using the same controls over and over again but think there has to be a better way to reuse them?  Then this is the presentation for you!  In this presentation we’ll be taking an example from concept to a reusable user control which uses events and threading.  This presentation is being held by two people who participated in the last ODNC MCTS Study Group for Windows Applications.  If you’re curious to see the caliber of coding at these study group, join us!
Intro to building SharePoint 3.0 Web Parts
You've discovered that WSS 3.0 is an inexpensive way to quickly create Intranet applications for your client but are thwarted by the limitations of the existing web parts. You want to adapt your ASP.NET 2.0 skills to create SharePoint Web parts and see how they differ from ASP.NET web parts (the Safe Mode Parser).
Create a simple web part by inheriting the WebPart class, setting the assembly name in Web.config generating the .webpart file and populating the SharePoint gallery. Examine the issues in making Web parts the hard way with your own renderer.
Compare with the easy approach using SmartPart to host ASCX controls.
What is SQL Server Service Broker & How Am I Supposed to Work With It?
What is SQL Server Service broker (SSB)? What does it do? Which version of SQL Server can use SSB? What kind of application can use this? Does it scale between servers? Why use SSB over MSMQ? What are the advantages and disadvantages of SSB over MSMQ, BizTalk and WSE and WCF? Is it complicated to use SSB?

This session will answer all of the above questions and will show how to put Service Broker to use in your applications. There actually *is* an API for it (stowed away in one of the samples), and we’ll build a queue implementation that’s considerably more useful than meets the eye.
Separation of Concerns   
This presentation presents simple but well proven design principles to simplify managing dependencies between elements composing a .Net program. At the end of this presentation you will understand how to design for testability using service locator, dependency injection, inversion of control and single responsibility principle.
Effective Enterprise Library 4.0   
Anybody can make a sample application; drag a control here, drag a database there, two lines of code and voila! But what happens when there is unexpected input? What happens if the wrong person clicks the button ? We will show you how to leverage Enterprise Library in your applications to make them robust and flexible. We guarantee you'll like these ideas so much, your team mates will be jealous when your application starts performing security checks and validate data entry in so little lines of codes. This session will treat the security and validation blocks.
Working with LINQ
Language Integrated Query, LINQ (pronounced "link"), is a next generation component introduced in Microsoft.Net 3.5 used to query data systems. LINQ is an open component and does not force you to use any specific design patterns. It can be implemented using a wide variety of data sources including arrays, enumerable classes, XML, relational databases and third party data sources encapsulating results into objects. In this presentation, Dominic and Zee will start with the basics of LINQ by querying objects and a relational database, following by showing you on how to leverage this new technology to tap into heterogeneous data sources.
Application Deployment and Database Synchronization for a Distributed Workgroup Application
You've developed a software application that will be installed and run by nine organizations located in nine different cities across Canada. None of the offices has any on-site technical support. Each site runs the application using its own local database. The database contains around 180 tables and numerous queries. Some of the tables contain local data, some contain centrally defined data and some contain application control data. Over time, the database schema is updated to meet new business requirements. When you deploy the upgraded application, each workgroup database needs to be updated so that its schema and common data are in sync with the current application standard while maintaining the workgroup's local data. This presentation describes the design and implementation of a Database Conversion function, built into the application, which automatically detects and upgrades the users' workgroup database to be in sync with a pre-defined schema and common application data. The Database Conversion function is written in VB.NET, uses ADO.NET and MS-Access and demonstrates the use of DML to create databases on the fly, populate them with tables and queries and then synchronize the data with a reference database. COM Interop is also used as the VB.NET code is hosted in a Visual Basic 6.0 application.
ASP.Net Pipeline Extensibility : Http Modules, Http Handlers, IHttpHandlerFactory, IHttpAsyncHandler and HttpApplication

The HTTP Pipeline can be extended in ASP.NET adding pre and post processing to incoming requests. This said there are multiple scenarios that can benefit from these processings. The presentation will include a real life HttpHandler scenario based on a "Ip Address Authentication Mechanism". The HttpHandler will handle multiple scenarios via the Factory pattern and will be fired asyncronously.

The presentation is for Intermediate to Advanced ASP.Net developers interested in tapping into the pileline's end points or starting points in order to: url rewrite, serve images, authenticate and authorize requests, capture errors and more.

Attending this presentation will ensure comprehension of: ASP.Net Pipeline Extensibility Options, Http Modules, Http Handlers, HttpApplication class, Key Interfaces for handlers ( IHttpHandlerFactory & IHttpAsyncHandler)

A demo of a HttpHandler will showcase:
-How to create Http Handlers that are Asyncronous and tied to the Factory pattern
-Utilizing a custom IP Class to verify ipranges
-The SqlCacheDependency in Sql Server 2000 and 2005
-How to add Session State support in a Httphandler
?
Building services and interfaces with CSLA 3.0
CSLA, the open source framework from Rockford Lhotka has a number of new components that target the new functionality of .net 3.0. This presentation will walk through the process of:

Using Enterprise library with CSLA 3.0
Defining and creating WCF services for business objects
Defining and creating WPF user interfaces for business objects
Defining and creating Workflows for business objects
Custom Authentication with principals and identities
Code Generation
?

TrackerRealm Content Management Solutions