Spring 2010 - Sessions
Here's a list of session titles currently submitted. Note that the final list may
not contain all of the session ideas.
"Introduction To..." Sessions
Introduction to C# 4.0 - Explore the Amazing Possibilities
Come to this introductory talk where we take a look at a new CLR 4.0 feature that
is likely to significantly change the way we code in C#.
Do you remember when generics were introduced in the .NET runtime 2.0? That was
the the biggest new feature in that version of the framework and it's almost 5 years
old. Time for a new runtime release with new and exciting features.
In this talk, we focus on the only new feature in C# 4 that really matters — the
dynamic keyword. There are some new, amazing possibilities that, previously, were
only elegantly achievable with dynamic languages like JavaScript and Ruby. We will
touch on ways that using dynamic can change the way that you code, including things
like a true ActiveRecord pattern, Expando objects, and more.
Speaker
Aaron Erickson is a
software developer/technology writer/agilist based out of Chicago, IL, where he
is a Lead Consultant for ThoughtWorks. His life's work is to help convert the human
intellectual capital into results for companies that empower both the knowledge
workers who produce software, and the people for whom that software is designed
to serve. He frequently speaks at events such as TechEd, DevTeach, VSLive, and .NET
user groups - with a goal of furthering the exchange of ideas - be they technology
contributions - or observations about the technology consulting business.
He is a co-author of the upcoming book, Professional F#. He is also the author of the book, The Nomadic Developer, a career guide for technology consultants.
In his spare time he likes to buy random ingredients at the store and have "iron
chef" night with his wife, play video games with his kids, and occasionally, log
on to World of Warcraft where he has a level 80 Rogue named EffSharper on the Bloodscalp
server.
Introduction to Developing with Android
In this session, Donn will delve into the basic requirements for you to get started
with Android development. We will cover the architecture of the Android operating
system as well as some ins-and-outs of Android mobile development. Starting with
the basic install (Eclipse and Android SDK) an actual Android Application will be
created during this session that will be published to the Android Marketplace in
real time. A general understanding of the Java language is advised but not required.
Speaker
Donn Felker is an independent consultant with over 9 years of professional experience
in various markets that include – entertainment, health, retail, insurance, financial,
and real estate. He is a Microsoft ASP Insider, an MCTS in Web Client Development
for .NET 2.0 and 3.5 and is also a certified ScrumMaster. He is the founder and
coordinator of the Twin Cities Give Camp, leader of the Twin Cities Developers Guild
and the founder of Twin Cities Pragmatic Beer. He is also a writer, presenter and
consultant on various topics ranging from architecture, development in general,
agile practices and patterns & practices. Follow Donn on twitter: @donnfelker or
read his blog here: http://blog.donnfelker.com.
Introduction to Distributed Source Control with Mercurial
Distributed source control systems have become popular in the last several years,
but they have just recently gained popularity in the .NET/Windows space. CodePlex,
Microsoft's open source code hosting website, recently added support for Mercurial
as an alternative to Team Foundation Server(TFS). This is an exciting change for
people wanting to take advantage of a distributed source control tool. In this talk
I'll introduce you to TortoiseHg which is a Windows shell tool for interacting with
Mercurial. We'll cover the basic command-line options like init, clone, push, pull,
log and status. Then we'll examine how to perform the same actions with hgtk commands,
which offer clean graphical interfaces to perform the same actions. In the second
part of the talk we'll look at how to use branching and merging well. And we'll
finish up by discussing what makes distributed source control different from centralized
systems like Subversion and how it can change your source control workflow.
Speaker
Chris Sutton is a software developer and technical trainer in Eastern Iowa. He helps
run CRineta.org in Cedar Rapids, Iowa and he co-founded the Iowa Code Camp in 2008.
Chris is a Microsoft MVP, a Microsoft Certified Trainer (MCT) and holds the MCPD:Enterprise
certification. He has been consulting and speaking on web related topics since the
beginning of 2005 and loves developing for the web. He also enjoys hiking and biking
in the summer with his family and snowshoeing in the winter.
Introduction to Go
Go is a brand-spanking-new systems language that Google released in November, 2009.
Every wonder how awesome C would be if it was garbage-collected, concurrent, and
didn't take a few weeks to compile? Wake up; it's here! We'll take a look at this
new language that steals some of the dynamic flexibility of Python and Ruby, the
performance of C, and a compile time that you'll miss if you blink.
Speaker
Kevin W. Gisi is a Ruby developer
in Eau Claire, Wisconsin. Co-founder of the Eau Claire Ruby User Group, he co-organized
the Chippewa Valley Ruby Camp. Kevin has a strong interest in promoting community
involvement in technology, and is currently one of the organizers for the Rails
Rumble annual competition.
Introduction to ADO.NET Entity Framework
ADO.NET 3.5's Entity Framework presents us with several new options for accessing
data within our application. EF can be used build applications against a conceptual
model that is mapped to the logic data model. The goal of this session is to provide
an overview of the components provided within the ADO.NET Entity Framework including
EntityClient, Entity SQL, Object Services, the Entity Data Model, and LINQ to Entities.
This session will explore these and other features and will provide several examples
of how to properly apply this technology to your own development project.
Speaker
Patrick Kragthorpe-Shirley is a Senior Consultant at RBA Consulting with over 10
years of development experience. He is focused on providing enterprise solutions
that leverage Microsoft's .Net technologies while applying best patterns and practices.
Patrick has a BS in computer science from California Lutheran University and is
a Microsoft Certified Application Developer.
Standard Sessions
What's New in CSLA .NET 4.0
CSLA .NET is a widely used .NET development framework focused on helping you build
a powerful OO business layer for Windows and web applications. CSLA .NET 4.0 supports
Visual Studio 2010, .NET 4.0 and Silverlight 4, and includes many new and exciting
features and enhancements that make the framework and your overall development experience
productive and enjoyable. Learn about the new features and changes and how they
enable the creation of amazing applications using ASP.NET MVC, Silverlight 4 and
WPF.
Speaker
Rockford Lhotka is the creator of the popular CSLA .NET development framework, and
is the author of numerous books, including Expert C# 2008 Business Objects and Expert
VB 2008 Business Objects. 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. 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.
For more information go to www.lhotka.net.
.NET Continuous Integration with Hudson and NAnt
Need to implement Continuous Integration but can't afford Team Foundation Server?
Hudson is an open-source CI platform that is easy to use and is has a management-friendly
interface. This session will walk through the capabilities of Hudson CI with the
NAnt build scripting engine and demo a basic build that performs the build, unit
tests, code complexity tests, and comment notes.
Speaker
Todd H. Gardner is a Senior Software Developer at the Toro Company, where he works
in C# and the alt.net community. He is a graduate of the University of Minnesota
Technological Leadership Institute and has a background in application and infrastructure
architecture.
Regular Expressions for Fun and Profit
The Regular Expression is one of the most powerful, yet least understood features
of any programing language. In this session, we'll cover:
- The basic internals of the Regex engine
- Regex Gotchas, Tips and Tricks
- How to format your regexes to be much more programmer friendly
- Input data validation
- When to use code instead of regexes
- Regular expression tools
- How to save boat loads of time with complex text manipulation
While the some of the demos will use Visual Studio, the session is intended for
developers of all languages that support Regular Expressions, regardless of their
familiarity with the subject.
Speaker
Jon von Gillern is a consultant and owner of Nitriq Code Analysis, a tool that helps
.net developers better understand their code base and helps enforce rules to keep
their code clean. He has been programming for over 14 years and in his free time
enjoys politics, poker and paintball. You can read his blog at blog.nitriq.com.
WPF with MVVM: From the Trenches
MVVM is gaining popularity, especially in the WPF world. An MVVM approach will give
you a lot of benefits if you know how to leverage it. In this session, we will discuss
the benefits and pitfalls of implementing MVVM with WPF using examples based on
real world situations encountered during development of an application leveraging
MVVM. With topics ranging from data templates to event handlers to testable navigation,
the goal will be to beef up your arsenal with tips and tricks that you can use in
the great battle.
Speaker
Brent Edwards is a Consultant for Magenic, a Microsoft Gold Partner consulting company.
Brent has been knocking around the .NET world for over five years, working on projects
ranging from ASP.NET MVC with C# and jQuery to WPF with VB.NET. When not cranking
out code, you can find him hanging out with his wife and three kids or riding his
wakeboard, snowboard or mountain bike.
HTML5 and CSS3 Today
The future of web development is upon us. Learn how to leverage HTML5 and CSS3 to
improve your web applications and your users' experiences *right now*! In this session,
you'll see how to use new markup, local storage, web sockets, graphics on the canvas,
advanced CSS3 selectors, and you'll also see how to gracefully degrade so that Internet
Explorer users aren't left behind. We'll also discuss hidden benefits, such as improved
accessibility.
Speaker
Brian Hogan is a a web developer, author, accessibility expert, and technology consultant
living in Eau Claire, Wisconsin. He develops web sites with HTML5, JQuery, and Ruby,
and loves to teach web development techniques to others. He is the author of "Web
Design For Developers" and is working on a book about developing accessible sites
with HTML5 and CSS3.
DIY Project Hosting: Build Your Own Private Codeplex/Sourceforge/Github
When you start a software project and want to collaborate with others, setting up
the tools can be a project unto itself. If the needs of your project happen to match
up exactly with the rules and restrictions of existing open source project hosting
options: Codeplex, Sourceforge, Github, Google Code, etc., those can be a great
choice. However, setting up all of those services, on your own domain, is easier
than you think and can be done on $9/month web hosting while giving you complete
control with few restrictions. In this session, we'll set up git/svn, bug tracking,
project management, blogging, wiki, mailing lists and Jabber instant messenger for
a project on Dreamhost.
Speaker
J Wynia is an independent software consultant, writer and geek generalist. He's
been working in the field of IT and software development for 10+ years. When he's
not working on billable software, he is often working on software to solve his own
problems or to enhance any of a wide range of hobbies.
Loose Coupling - Understanding Dependency Injection and Inversion of Control
As enterprise software development has evolved we have identified patterns and practices
that help us write more extensible and maintainable applications. Patterns with
the names of Dependency Injection and Inversion of Control have emerged to simplify
the reuse of existing components and aide us in wiring together disparate components.
Frameworks have been built to support these patterns. This presentation will explain
the patterns and enable you to build your own custom framework or review existing
frameworks to meet your needs.
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
has been nominated both as a Microsoft Solution Architect MVP and a Microsoft Client
Application Development MVP.
Advanced RIA Services
Anyone that has followed Silverlight in recent months has probably heard that RIA
Services is "game changing." Admittedly, it is pretty cool, but what if you want
to go past the slap-it-together demos everyone is doing on the Internet? What if
I want to tailor RIA Services for my specific needs? How do I minimize my data traffic
to keep my cloud computing costs as low as possible?
In this session we will look under the hood for RIA Services and explore how to
manually manipulate RIA Services from code. How do I force one row in my RIA Services
bound datagrid to update, without refreshing the whole page? Where is the RIA Services
cache inside my Silverlight application? How can I access it, what if I want to
remove something from the cache? How can I control filtering from my code? How do
I implement security into my RIA Services? This session will cover these topics
and more.
Speaker
Scott Davis is a seasoned consultant with a decade of consulting experience on both
the Microsoft and Java platforms, involving mostly Web application development.
Recent work for Scott has primarily revolved around Microsoft Silverlight, starting
with the 1.1 Alpha release. Scott has experience in web, desktop, mobility, reporting,
and database design and development, as well as project & staff management. Scott
is currently the owner and principal consultant for Ignition Point Solutions; he
is the leader of the Twin Cities Silverlight User Group; he is the president of
BizLounge, a local entrepreneur group; and he is a member of the adjunct faculty
in the information technology management master's degree program at St Mary's University
in Minneapolis.
RESTing in the ASP.NET MVC Framework
This session is for the advanced developer looking to break into RESTful services
utilizing the ASP.Net MVC framework. The attendee will come away with a good knowledge
of how and what a REST service is; and how to build one utilizing MVC 2.0 and VS
2010. The session will also cover the third-party frameworks, Open RASTA and Siesta
frameworks that are built upon ASP.Net and the MVC Framework.
Speaker
Gus Emery is a consultant in the Twin Cities ares with over fifteen years experience
architecting and implementing highly-scalable ASP.Net applications and distributed
n-tiered applications across a broad array of industries within the Twin Cities
area. Gus has been working with Visual Basic since v3.0 and .Net since Beta #1,
and loves to seek out new and exciting technologies to serve his customers technological
needs! He has also been very active as a conference speaker, which he loves to do
in his spare time.
I Need to Secure My Software...Now What?
We will be discussing where you should go once you have learned that you need to
increase the security within your application. Several Sample applications will
be shown with and without secure practices. The benefits of secure coding will also
be discussed.
Speaker
Glenn Leifheit, CSSLP is a Lead information Security Consultant at FICO (Formerly
Fair Isaac Corporation) with responsibilities in Application Security Architecture
and Secure Software Development. He is also an active member of TechMasters, a Toastmasters
club for technologists.
HTTP Optimization Lessons From WestlawNext
WestlawNext is the next version of westlaw.com, the leading online legal research
service, launched in February 2010. A heavy AJAX application, we knew we would work
the browser hard. Come learn the tricks we pulled to make the app sing!
Speaker
Dan Bennett is Senior Director, New Product Technology for Thomson Reuters Core
Legal based in Eagan, MN. A web developer since the mid nineties, Dan led the online
development of WestlawNext and browser optimization efforts in Q3/4 of 2009
Agile Development and Getting Things Done
"Getting Things Done" (the personal productivity framework) helps busy professionals
manage their work and goals with a set of personal tools and techniques. Scrum (the
agile software development framework) helps organizations manage the process of
software development with a set of organizational tools and techniques. We'll spend
time introducing and discussing both, and then explore the principles of productivity
they have in common.
Speaker
Dan Nordquist is a developer with Popular Front, an interactive marketing agency
in Northeast Minneapolis. Dan has been working with SQL, ASP, and .NET for over
ten years. During this time, he's helped introduce smarter development practices
to a variety of companies.
Happy Tasty Clojure
Clojure is a dialect of Lisp which runs on the Java Virtual Machine and is designed
for easy integration with existing Java code, and also provides features like software
transactional memory, lazily-evaluated sequences, and more. In this presentation,
I will provide a brief introduction to what Clojure is, and how it can be used.
Speaker
Kurt Christensen has been getting paid to write code for 15 years, using a variety
of different programming languages. For the last 7 years he's also been "coaching
agile teams" (whatever the hell that means).
Everything You Wanted to Know About Velocity But Were Afraid To Cache
Microsoft's AppFabric Caching (aka Velocity) offers a distributed caching solution,
not unlike the popular "memcached" open source library. Come and here about the
concepts and terminology, as well as deployment considerations, typical usage patterns,
pitfalls, and more.
Speaker
Scott Colestock lives and works in the Twin Cities. He is a partner at Marcato (marcatopartners.com),
which focuses on delivering agile coaching services. He is also a BizTalk MVP, performance
engineering guy, and "Team Foundation Server + Scrum" resource.
ASP.NET MVC and Open Source Tools...Them's Is Like Peas and Carrots
The flexibility ASP.NET MVC framework makes it very easy for web developers to swap
components (in-house, 3rd party or open source) in and out from their applications.
In this session we will assemble different open source tools such as NHibernate,
MvcContrib, MVC Turbine and Windsor Container to create a simple blog engine with
minimal effort.
If you're currently using any of these open source tools within your Web Form applications
or you're wondering how fully leverage the separation of concerns MVC offers, then
you should definitely check out this session.
Speaker
Javier Lozano is an ASP.NET Insider and MVP that specializes in ASP.NET, system
architecture, and training. He has helped co-found the Iowa .NET Users Group as
well as the Iowa Code Camp. On his blog,
http://blog.lozanotek.com, you can find posts on ASP.NET, Silverlight, architecture,
and design patterns just to name a few topics. Javier is an avid supporter of the
community and likes to give back by speaking at user groups, local/regional .NET
events, participating in forums, and by writing articles. In his spare time, Javier
loves spending time with his family and enjoys writing about himself in the third
person.
Kanban to Cash: Stolen Ideas Make A Beautiful Process
This is an "Open Kimono" type discussion about the process I've been using/adapting
for the last few years. We take the Kanban ideas of Limited WIP and cumulative flow
diagrams and add Arlo Belshee's Naked Planning, modified a very little for integrating
with TDD/BDD and meld some XP practices and Agile practices together to make a development
process that is easy to do and easy to change as we feel friction.
Speaker
Lee Brandt is a Project Lead Consultant for Adventure Tech Group, Inc. in Kansas
City. Lee has been programming professionally for more than a decade and developing
solutions in .NET and C# since the early beta releases. He is an advocate for behavior
driven development, design patterns and lean software methodologies. Lee spends
most of his free time reading about programming, discussing process and hanging
out with his wife Stacey and their dog (daughter) Frieda.
Developing for Windows Phone
Take a look at how you can get started developing applications for Windows Phone
7 Series using the free downloadable tools that are now available. Starting off
with an overview of the Windows Phone platform, we'll then cover the new application
model, updated control templates, themes, and services available to Windows Phone
applications. We will also cover new input paradigms including multi-touch, software
keyboard, accelerometer and microphone, as well as the APIs to leverage phone applications
like email, phone dialer, contact list and more.
Speaker
Jeff Brand is a .NET Developer in Microsoft's Developer and Platform Group. Jeff
assists customers in evaluating, developing and deploying applications built on
the .NET Framework and the Microsoft platform. He has been with Microsoft for thirteen
years and has served in variety of roles including infrastructure consultant, e-commerce
technology specialist, and enterprise technology advisor.
Imposing Order on Chaos with Reactive Extensions
The world of computing is becoming more and more parallel. A lot of the computing
technology that we use is an attempt to hide the chaos of mouse and keyboard events,
messages, and other asynchronous events from our programs. The approaches used to
date have limited succeeded in part by limiting what can be done with parallel processes.
The Reactive Extensions in .NET allow the program logic to handle external events
as first class citizens. Programs can manipulate events using LINQ expressions.
Take the example of example of handling a drag-and-drop operation from a source
region of the screen to target region. Without the Reactive Extension logic, this
might take dozens of lines of code to keep track of the state of operation and to
invoke the drop logic at the right time. With Reactive Extensions, you could handle
this in as little as one line of code.
The Reactive Extensions are more than a shorthand for multiple lines of code; they
are a different mindset. They provide a way to "collect" events and route them to
the appropriate logic in a very simple way. The final bonus is that the Reactive
Extensions provide a way to de-couple the event source from the event consumer in
such a way that unit testing event handling is very simple and understandable.
Speaker
Jon Stonecash is a senior consultant at Magenic, a Microsoft Gold Partner consulting
company. 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. Jon also has an active blog on "Designing
Out Loud in the .NET Space" at http://blog.magenic.com/blogs/jons/default.aspx.
ASP.NET 4.0 and Visual Studio 2010
Are you ready for another version of ASP.NET and Visual Studio? ASP.NET 4 provides
some major additions to AJAX with greater client support in the way of templates
and the DataView control for data binding. It also remedies several issues that
have existed since version 1.0, including control naming and controls that render
more standard compliant HTML. Dyanamic Data also has changes to make its features
available to all ASP.NET web sites. This release also focuses on easing deployment
issues with web packages and the ability to transform web.config files for deploying
to production servers.
Speaker
Robert Boedigheimer works for Schwans Shared Services, LLC providing business solutions
with web technologies and leads Robert Boedigheimer Consulting, LLC. Robert has
been designing and developing web sites for the past 15 years including the early
days of ASP and ASP.NET. He is a columnist for aspalliance.com, an ASP.NET MVP,
an author, an "Early Achiever" MCSD for .NET with C#, an MCPD: Web with C#, MCPD:
ASP.NET 3.5, and a 2nd degree black belt in Tae Kwon Do. Robert has spoken at industry
conferences including the Heartland Developers Conference, DevLink, DevTeach, Tulsa
Tech Fest, DevWeek, TechEd, AJAXWorld, and numerous national and international events.
Dynamic .NET Demystified
Dynamic .NET is going mainstream with the upcoming promotion of the Dynamic Language
Runtime into .NET 4. This session will discuss what the DLR is, how it works with
C# 4 and Visual Basic 10, and why this doesn't mean C# has jumped the shark. We
will also look at some ways in which these features can be used to solve real-world
problems.
Speaker
Keith Dahlby is a .NET developer and language geek from Cedar Rapids, IA. He works
as a software guru at J&J Cycles and blogs about various software development
topics at Los Techies. Keith has spoken at community events around the midwest and
studied Human-Computer Interaction at Iowa State University.