Twin Cities Code Camp - Fall 2008 Sessions

Here's a list of session titles currently submitted. Note that the final list may not contain all of the session ideas.

Sessions

Demystifying Analysis Services 2008

Need help understanding Analysis Services and would like to get a quick introduction and basic understanding of what Analysis Services is? This presentation is going to go through Analysis Services in very simple terms so that first and foremost, everyone comes away with a good understanding of what it is, what Analysis Services does, and what you as the developer can do with it. If you have been frustrated with attempting to understand the basics of Analysis Services, then this presentation is for you!

We will cover the following basic components of analysis services and what each of them do: star schemas, dimensions, facts, measure groups, calculated measures, aggregations, and more. We will also cover what the basic processing mechanisms involved are for processing dimensions and measure groups. We will build a simple cube and browse the cube, so you can see the how and the why. You will come away from this presentation with a solid understanding of what Analysis Services is, when you might want to use it, and how to manage it.

Speaker

David Baldauff is a consultant for Digineer, a Microsoft certified Gold and Managed Partner, in Plymouth, MN. David has been working in software and database development for over 15 years and specializes in data architecture and data-centric application design. David recently completed a courseware book for AppDev.com on SSIS 2005, and has also recently contributed to a Microsoft whitepaper on SQL Server 2005 Enterprise Edition features.

Lighten Up! Lighting a 3D World with HLSL

The basics of Microsoft’s high-level shading language (HLSL) are introduced, including a basic overview of the rendering pipeline, through the creation of a point light shader. HLSL allows graphics programmers to create realistic graphics through the use of a combination of math algorithms and the hardware they are processed on. Around the time of DirectX 8, shaders were implemented to allow changes per geometric shape, vertex, and pixel during a frame render. As one of the items comes to render on the graphics device, the math algorithm written into the shader file is applied to the respective object and is rendered to the screen. Current technology has reached the point where shaders are a necessity for any graphics developer, considering graphics libraries such as Microsoft’s XNA have removed support for a non-programmed, ‘fixed’ graphics pipeline. A simple shader is built to emulate a point light while each step includes reasoning behind the code and relevance to the theory of a point light. A conclusion is given explaining other uses for shaders.

Speaker

Matt Christian

The Intersection of F# and LINQ

LINQ is a functional language within C#. However, with C#, you are only touching the tip of the iceberg with LINQ and functional programming. Leverage the power of F# to really superpower how LINQ can work for you.

Speaker

Aaron Erickson is the Technical Solution Specialist for the Magenic Chicago office. Named a Microsoft MVP in 2007, he has written and spoken extensivley about LINQ to Objects, Agile Software Development, and CSLA.net.

Links

The Zen of ASP.NET and MVC

The Model-View-Controller (MVC) pattern has been around for over 20 years and has predominantly been the pattern-poster-child for web frameworks, such as Ruby on Rails, Struts, SpringMVC and recently ASP.NET. In this session will we cover how the two current implementation of this pattern on the .NET platform, MonoRails and ASP.NET MVC, enhance the way we approach web development by making it more specific, yet simple at the same time. If you're a web developer that's either curious or seasoned on this old new thing, this session is definitely worth checking out.

Speaker

Javier is a web developer for imagetek, an ECM provider based in Grimes, Iowa. He's also an ASP.NET MVP specializing in web/system architecture, development techniques and training. On his blog you can find posts on ASP.NET, architecture, community and .NET. Javier enjoys giving back to the community by speaking at user groups and local/regional .NET events. His major community involvements are with the Iowa .NET User Group and Iowa Code Camp where he serves as a co-leader/co-founder. In his spare time, Javier enjoys spending time with his family and writing about himself in the third person.

Links

Jumpstart Your Web Site with ASP.NET Dynamic Data

Do you need to get a web site setup quickly? Why code all the pages yourself when you can use the ASP.NET Dynamic Data to build the initial pages based on your data schema? This new feature creates the .aspx pages for you based on your data. The pages can be used directly, or you can customize the pages to add your own look and feel. You can augment the data model for the site to include information that can automatically create the necessary validation controls! Included are a set of Field Template controls that are user controls to edit particular types of data, these can be customized once and apply to all page templates used on the site. Don't start with nothing when you need to create a new site, take advantage of the ASP.NET Dynamic Data support to have a functional site very quickly and simply customize it to get a great site!

Speaker

Robert Boedigheimer works for Schwans Shared Services, LLC providing business solutions with web technologies and runs Robert Boedigheimer Consulting, LLC. Robert has been designing and developing web sites for the past 12 years including the early days of ASP and ASP.NET. He was the lead architect, designer, and developer for the schwans.com rewrite with ASP.NET, and recently implemented a large ASP.NET 2.0 project. He is a columnist for aspalliance.com, an "Early Achiever" MCSD for .NET with C#, an MCPD: Web with C#, and a 2nd degree black belt in Tae Kwon Do. Robert has spoken at industry conferences including the Heartland Developers Conference, Twin Cities Code Camp, Tulsa Tech Fest, Microsoft's Visual DevCon, and numerous national and international VSLive! events.

Links

PICK/Multivalue 101

If you are thinking, “What the hell is PICK?”, you are not alone. This Database/Runtime/Operating System has been around for over 40 years and is still going strong. Many companies don’t realize what they are running, only that it has served them well for decades. Companies like IBM are bringing the system into a new age with U2. This session will cover the fundamentals of PICK, how data is stored, accessed and manipulated. This system is seeing it’s features resurge these days in the form of Multivalue columns in Access 2007 and CLR in SQL Server. Join in on learning the fun and pain of developing in this widespread but often forgotten system.

Speaker

Jeff Klawiter is a Senior .NET Developer with Sierra Bravo Corporation. Starting out in high school as a PHP developer for PhotoSource International in Osceola Wisconsin. He continued on to run his own PC repair business, designing sites for local companies, Twin Cities bands and a few international bands. He moved into .NET programming and landed a job at Sierra Bravo in 2004. At Sierra Bravo he was introduced to PICK/Multivalue. He has worked on many projects including barcode scanning .NET CF Warehouse Management Solutions, ERP WinForms applications and PHP/ASP.NET sites that use PICK/Multivalue as their backend. He has consulted with a few fortune 500 companies assisting with PICK/Multivalue and .NET integration. Including training developers to use IBM’s UniObjects.NET for communication with their PICK/Multivalue U2 products.

Introducing Continuous Integration to Your Project

Save time, reduce defects, and eliminate boring, repetitive work and dependence on “tribal knowledge” using a Continuous Integration framework in your project. This session will explain the concepts if Continuous Integration, explore the benefits of this practice, and provide a “getting started cookbook” for introducing Continuous Integration framework to your project, no matter what phase it is in. A demonstration of automating a build, introducing some automated testing, and running the build will conclude the session.

Speaker

Kirstin Juhl

BOO! A Wrist-Friendly Language for the CLI

Boo is a new object oriented statically typed programming language for the Common Language Infrastructure with a Python-inspired syntax and a special focus on language and compiler extensibility. In this discussion I will be showing some practical examples of BOO and talk about some of the benefits it may offer.

Speaker

Justin Chase is a Software Professional working with Magenic Technologies for the last two years. He is the lead developer on the open source project NBusiness. In his spare time he likes to play paintball, brew beer and play games. He has participated in judging a few home brew competitions with the Minnesota Home Brewers Association over the last two years including the Minnesota State Fair.

Links

So What is Biz Talk Anyway?

We’ve all heard of Biz Talk, but not many of us truly understand what Biz Talk is and how it fits into a larger solution. In this session we’ll take a tour of the features of Biz Talk and give attendees a good starting point to learn more about the product and how it might play into their solution plans.

Speaker

Part of the emerging Canadian Developer Community 2.0, D'Arcy Lussier has been an active member of the developer community for many years. In addition to being part of the leadership for the Winnipeg .NET User Group, he is also the INETA Membership Mentor for Manitoba, Saskatchewan, and Alberta, and has organized various user group tours which saw Roy Osherove, Jean-Paul Boodhoo, and Jean-Luc David (among others) make their way across central Canada. In addition to his community efforts, D'Arcy holds an MCSD and has been developing with .NET since the initial beta. His focus over the last 6 years has been on web development with ASP.NET and has presented at the Winnipeg .NET User Group and the recent Calgary Code Camp on the subject.

Why Should Developers Care About Security?

Security. The very word generates strong reactions from ALL developers, most often negative. Is security really such a bad thing? Is security hard? As a rank-and-file developer, why should I care about security? In this session, I will talk about reasons to care about security, show how to find security holes in applications, show ways to fix these holes, and demonstrate techniques to improve the application security. This session assumes no prior working knowledge of security, encryption, or any other $0.25 words that seem hard. Think of this session as application developer security 101.

Speaker

Jeff Knutson is a Principal Consultant for Magenic in Minneapolis, MN. Jeff's primary job interests include web services and security. He has over 14 years experience with various Microsoft development technologies and holds numerous certifications including the MCSD.NET. If he had spare time it would be spent with family/friends, golfing and playing with technology.

Links

The Arc Programming Language

Arc is a new dialect of Lisp focused on minimizing the size of source code while maximizing productivity, particularly for relatively simple web-based applications. This session will introduce participants to the Arc programming model, as well as the Arc development ecosystem as it exists today.

Speaker

Kurt Christensen is a complete idiot, and always has been, although Kurt's idiocy wasn't unleashed onto the software community until 1995. Kurt has been weaseling his way into interesting coding gigs ever since, always underqualified for the task at hand. For the past four years, Kurt has also subtracted value from organizations as an "agile" snake oil salesman. Kurt still tries to code as often as possible, but the agile stuff pays more per hour, so of course you can see the difficulty.

Taking Your Tests to the Next Level with Mocks

This session will walk through the progression of testing with mocks. In the session we will learn how to mock out dependencies that stand in our way of solid testing. You will learn how mocks can make for cleaner tests and as well as improve the reliability of tests. We will do a quick overview of TDD using NUnit, but the crux of the session will be focused on mocking with RhinoMocks (or TypeMock).

Speaker

Derik Whittaker is a software developer currently working as an independent consultant. Derik has over 8 years of experience developing, mentoring and leading Microsoft based products for a wide variety of different professional fields. Derik has been working exclusively with .Net since its inception and has professional experience in both VB.net as well as C#. He has also been a follower and believer in the Agile methodologies for the past 2+ years and has wide array of experience using various Agile techniques in the real world.

Links

Build an XNA Game for the Zune

Watch me build an XNA game for the Zune.

Speaker

Chris Williams

Links

CSLA Light: CSLA .NET for Silverlight

Silverlight is lighting up the web in exciting and innovative ways. Since Silverlight includes a subset of .NET, there is a subset of CSLA .NET that targets Silverlight as well. Come see how CSLA Light makes building business-oriented Silverlight applications easier, allowing you to leverage the power of Silverlight with the flexibility and rich capabilities of CSLA .NET.

Speaker

Rockford Lhotka is the author of several books, including the Expert VB 2005 Business Objects and Expert C# 2005 Business Objects books. He is a Microsoft Regional Director, MVP and INETA speaker. He contributes to several major magazines and regularly presents at major conferences around the world - including Microsoft PDC, Tech Ed, VS Live! and VS Connections. Rockford is the Principal Technology Evangelist for Magenic, a company focused on delivering business value through applied technology and one of the nation's premiere Microsoft Gold Certified Partners.

Links

Becoming a Documentation Ninja

Have you ever wondered if their was an easier way to maintain your documentation? Would you like to be able to generate custom documentation at the push of a button? DocBook is a great tool for creating and maintaining documentation. DocBook allows you to keep all of your documentation consistent and up to date with ease. DocBook is "a schema (available in several languages including RELAX NG, SGML and XML DTDs, and W3C XML Schema) maintained by the DocBook Technical Committee of OASIS." In this session we will show you how to set up a DocBook project and use it to its full potential for you and your company. We will show you how to use the DocBook build chain to produce custom documents to ship to your clients and use the same files to build different documents for your developers.

Speakers

Chris currently a student at the University of Wisconsin Eau Claire. He is graduating in December with a BBA in Information Systems. Chris has been developing web applications since early 2004. Chris is currently interning with Inacom Information Systems in Madison, WI as a custom solutions developer.

Brian Hogan has been developing web sites and web applications since 1995 when he founded his consulting company, New Auburn Personal Computer Services, LLC. Brian specializes in small business web sites, web applications, Ruby on Rails training, and accessibility for the visually-impaired. His clients were one of the first to deploy Rails applications in a Microsoft Windows environment.

When he's not busy on the computer, he enjoys watching The Simpsons and spending time with his wife and daughters.

Links

Advanced OO Laws & Principles

This session introduces some object-oriented laws and principles currently used in our field and provides discussion around the context of their use in building applications.

Speaker

Clint Edmonson

Windows and Web Applications with Microsoft Presence

Microsoft Presence is the ability to allow users to see if others are available via Windows Live IM or Office Communicator along with contact and other information about the user directly inside custom applications. Chris will demonstrate how this service will allow developers of Windows and web applications to integrate Windows Live Presence and/or Microsoft Office Communicator inside their application to bring more communication and collaboration to the end user.

Speaker

Chris Woodruff is an Architect in the West Michigan Practice group at NuSoft Solutions. His work involves integrating new technologies, assisting development teams with architecture designs, and helping with development standards. Chris is the VP of the West Michigan .NET User Group and also is an Advisory Council Member at Capella University for the External Information Technology Advisory Council. Chris is the founder and coordinator of the Day of .NET West Michigan and also helps with other Day of .NET events in Michigan. He holds a Bachelor of Science degree in Computer Science from the College of Engineering at Michigan State University. In his spare time, Chris coaches his sons sporting teams and plays poker.

Links

Building MyTube with Microsoft Silverlight 2

In this session, we will look at using Microsoft Silverlight and Silverlight Streaming to build your very own online television station. The session will show how to encode and host video on Silverlight Streaming, build a online media player using Silverlight including how to design and develop the experience using Visual Studio and Expression Blend. It will also look at using web services to provide data to the media player to show a video catalog.

Speaker

Jeff Brand

A Survey of Future Operating Systems

This presentation will compare three operating systems built around a managed (.NET) kernel: Microsoft Singularity, SharpOS, and Cosmos. Singularity is an effort from the Microsoft Research Group; Cosmos and SharpOS are open source kernels. All three kernels are under development but already provide an insight into the future of computer systems and design. This presentation will discuss the approaches behind each kernel and then demonstrate how to compile and create applications for each.

Speaker

David Pinch

Software Evolution: Inversion and Injection

Useful software evolves and adapts to changing needs. This continuing change cannot happen if the software design and implementation is riddled with dependencies: A change to module A triggers changes in B and C, that collectively, trigger more changes in D, E, F, and G and so on until the software explodes. This sounds like a terrific special-effects movie but a very bad information technology experience. There are design practices that build "fire walls" that isolate one part of the software from other parts, but ultimately the question becomes, how can one part of the software invoke the services of another part without becoming dependent on that other part? This sounds very much like a Zen riddle: "What is the sound of one hand clapping?"

Enter the twin concepts of Inversion of Control and Dependency Injection. With Inversion of Control, when a particular module of the software is dependent upon a particular service, say logging, that dependency is abstracted down to an interface. Any invocation of the logging function is made against the interface. Before the module can execute, it must obtain a reference to an object that implements the interface. There are a lot of ways to accomplish this: 1) passing the reference as a part of instantiating or invoking the functions of the module, 2) returning the reference from a factory method, and 3) injecting the dependency reference as part of a Dependency Injection framework.

We will look the design patterns for Inversion of Control and demonstrate code that uses the following Dependency Injection frameworks:

  • Castle Windsor
  • StructureMap
  • Unity
  • Spring.NET

Speaker

Jon Stonecash is a Senior Consultant at Magenic. Jon Stonecash has worked in software development for much longer than he would like to admit. In that time Jon has had the opportunity to make most of the serious software development mistakes at least once. He has programmed in over a dozen languages including several different assembly languages, Fortran, COBOL, SNOBOL, classic Visual Basic, VB.NET, and C#. He has survived the structured programming revolution and the object-oriented revolutions (having inexplicably missed out on the sexual revolution). Jon's software development activities have included the development of operating systems, scientific and engineering applications, and enterprise systems. He has worked in every phase of software development from the initial specification of requirements through to customer support. Along the way, he picked up a BS in Mathematics and an MBA. He still has hopes of finding something that he can be reasonably good at. His long term interests center about databases and the aspects of the application that handle data access and business logic. He is also interested in the tools and processes that assist the development process. Jon can be reached at jons@magenic.com.

Links

Dynamic Coding in .NET

In this session, we'll take a very deep dive into .NET assemblies to see how you can create and modify them to simply and strengthen your code. Different techniques and frameworks will be investigated (dynamic methods, assembly emission, code modification using Cecil and Phoenix, etc.)

Speaker

Jason Bock is a Principal Consultant for Magenic, and is also a Microsoft MVP. He has worked on a number of business applications using a diverse set of substrates and languages such as C#, .NET, and Java. He is the author of "Applied .NET Attributes", "CIL Programming: Under the Hood of .NET", ".NET Security", and "Visual Basic 6 Win32 API Tutorial". He has written numerous articles on software development issues and has presented at a number of conferences and user groups. Jason holds a Master's degree in Electrical Engineering from Marquette University.

Links

From Scratch to Finish: Building an Application That Interacts

In this session I'll build an application from scratch to finish, skipping through the basics and jumping into advanced techniques to get the most out of Silverlight 2. I'll build an interactive image viewer and slideshow presenter in VS2008 that will cover advanced techniques that range from custom controls using the parts model to local storage for personalization.

Speaker

Corey Miller

Entity Framework - Building Applications On Top Of It

What are the components of Entity Framework? How can you implement an application using Entity Framework? This presentation will show what Entity Framework is and how to build applications on top of it.

Speaker

Johan Wettstrom is a Sr. Architect for Magenic Technologies. He has been developing systems since 1986. Starting with COBOL on IBM mainframe, Borland C on PC and then migrated to Microsoft tools in 1990. Since then he has been developing using C++, VB, C#, VB.NET and ASP.NET. He also has extensive knowledge in database design, Microsoft SQL Server and has written and designed application on top of Microsoft SharePoint.

Amazon Flipper

LINQ is a great technology for accessing data and Silverlight opens the door to a rich set of options for presenting information in your application. In this session we’ll look at how we can use these new technologies together to build a rich user experience. From working with LINQ to pull information from a web service to building the front end using the latest techniques with XAML you will get insight in how to leverage these tools.

Speaker

Mike Benkovich is a published author, technology specialist and an MSDN developer evangelist based in Minneapolis, Minnesota. Focusing on the effective use of relational technologies for scalable, high-performance, and mission-critical applications, Mike has worked as an architect, project manager, developer, and technical writer. He speaks regularly at technical conferences and corporations.

Using WPF to build LOB Applications

There has been a lot of discussion on using WPF to build Line of Business applications. There are a number of aspects that need to thought about before making the decision of whether to use WPF or not. This talk will focus on those elements like Developer Designer Workflow, WPF Learning Curve and Getting up to Speed, Advantages/Disadvantages of using WPF, Limited WPF Control Set (the no Data Grid complaint), WPF best practices for developing WPF applications and if we finally have a platform that we can write once and run everywhere using xaml, WPF and Silverlight.

Speaker

Shannon Braun is an independent consultant and founder of Sysknowlogy, which provides consulting and development services using Microsoft technologies. Shannon focuses on assisting corporations adopt Microsoft technologies and has helped companies solve business problems with Microsoft .NET, BizTalk, Commerce Server, SharePoint, Windows Presentation Foundation (WPF) and Web Services.

Shannon has served as a member of the .NET Partner Advisory Committee, Microsoft Architecture Partner Board, Microsoft Architecture Advisory Board and is currently a member of the Visual Studio Partner Advisory Board. Shannon was awarded a Microsoft Solution Architect MVP for 2006 and 2007 and a Microsoft Client Application Development MVP for 2008.