The First Hartford, CT Code Camp coming August 16th, 2008

 ctdotnet

The first Hartford, CT Code Camp has been announced and is scheduled for Saturday August 16, 2008.   Details are limited but some information is available.

A code camp is a FREE, community-driven, all-day event for developers. Speakers are local or regional developers. Topics are based on community interest. Sessions are original and feature a heavy technical focus (no marketing fluff). We will follow the Spirit of the Codecamp Manifesto as described here – http://www.thedevcommunity.org/codecamps/manifesto.aspx

Location:

To be held at New Horizons Computer Learning Center (Bloomfield CT)
http://www.newhorizons.com/content/centerSearchResults.aspx?SiteId=25

Time:

CTDOTNET CodeCamp – Hartford CT (Saturday Aug 16th 9AM-5PM)

There is an open call for speakers right now so head over and sign up to speak.

We are seeking talented .NET developers to make a presentation or two at the First Hartford CodeCamp on August 16th (Saturday). If you have ever wanted fame (& perhaps fortune) – this is your opportunity! We are giving away one MSDN Premium subscription and other prizes for presenters (judged by evals from attendees).

Each session should be about 90mins in duration and the content should be on developer topics that would be of interest to attending developers. Just about anything in .NET and other Microsoft technologies!

Choose a .NET topic of interest and send a brief abstract or outline, your developer experience, expected audience level, etc or any other questions to [email protected]

See you there?

Technorati Tags: ,,

Rob Conery and team release SubSonic 2.1 Beta

subsonicsmall.png

Ron Conery, who recently joined Microsoft has somehow found time to release a new version of SubSonic, 2.1 in beta.

I have been using SubSonic since the 2.0 release and find it is a really nice OR/M tool for .NET applications. It offers some of the things I find particularly attractive in Ruby on Rails, things like Migrations.

The SubSonic 2.1 beta 1 offers so much more:

A New Query Tool

We have a new Query tool that lives happily alongside our existing one. Our goal with it was to make it as “Fluent” and “SQL-y” as possible. I wrote a post on how it works here, and updated that post here. Please refer to that until can crack out the docs which, yes now that this is my job, I will be spending a good amount of time on.

Northwind.CustomerCollection customersByCategory = new Select()
.From()
.InnerJoin()
.InnerJoin(Northwind.OrderDetail.OrderIDColumn, Northwind.Order.OrderIDColumn)
.InnerJoin(Northwind.Product.ProductIDColumn, Northwind.OrderDetail.ProductIDColumn)
.Where(“CategoryID”).IsEqualTo(5)
.ExecuteAsCollection();

SubStage

Eric and his secret little project are ready to see the light of day. I’m not sure how to categorize this thing, other than to say it’s a SubSonic Geek’s Best Friend. It’s part IDE, part Help Resource, Part Config tool, part Validator. Eric’s working up a screencast on it now (link to follow) and here are the highlights:

* Load your Web(or App).config and it will load your Database up, with settings
* Work with a GUI when setting your provider bits. Not sure what to use with that naming problem? SubStage will help.
* Validate your DB according our conventions, and see when you have problems right up front. Eric’s built in a complete validation system so if you don’t have a Primary Key on a table, you know it up front.
* View your object’s by Table or Class view. All of your naming and provider settings will be viewable when using our Class View – this way you’ll know your API before it’s generated.
* Generate your DAL using SubStage. Once you have everything set just so, generate the files then drag them from the SubStage Explorer window right into your project
* Work with your data. Eric build a frickin web server into SubStage, and wraps an AutoScaffold around your database so you can, literally, work with your data using our scaffold right there.
* Help… lots of Help. Access our API reference and Forums online, right through SubStage – we’re trying to make this easy for you… can you tell?

These features are great additions to what is already a great set of tools. I plan to post about a project I am working on using the ASP.NET MVC Framework with SubSonic handling my models. This project should be a great jump-off point for readers wanting to get into the Microsoft ASP.NET MVC Framework and not sure what to do about the back end.

Technorati Tags:

Microsoft Entity Framework Beta 3 and Entity Framework Tools CTP2 Released

The latest versions of the Entity Framework Beta and Entity Framework Tools CTP are available according to the ADO.NET Team Blog.

Entity Framework Beta 3 includes:

Performance improvements

  • Much quicker object query execution
  • Simpler generated SQL
  • Faster view generation

Easier disconnected operation

  • Public, serializable EntityKey property on EntityReference
  • ApplyPropertyChanges
  • Attach on EntityReference
  • Improvements to EntityKey serialization

Extensibility and business logic enhancements

  • Partial methods in code generation for property changing and property changed events
  • Load with MergeOption

Query improvements

  • Additional canonical functions for LINQ to Entities
  • Apply operator elimination (makes more operations work in SQL Server 2000 and other databases)
  • Compiled LINQ query
  • ToTraceString() method on ObjectQuery<T> and EntityCommand to facilitate debugging

Other

  • Connection management refinements
  • Provider interface allows better reasoning about primitive types

Entity Framework Tools CTP2 includes:

Map using stored procedures: you can now map entities to insert/update/delete stored procedures in the mapping details window in the designer

FunctionImports: Create, update and delete FunctionImports in your model

“Update Model From Database…”: update model and mappings if tables or columns in the database change. Very useful during iterative development when the database changes after you initially generate the model & mappings

Embed artifacts in output assembly: package CSDL/MSL/SSDL files as resources in the output assembly. This makes it easy to deploy projects with Entity Data Models

Easier to find and fix errors: Double-click a validation error selects the offending entity, property or association to make it easy to fix errors

Cut/copy/paste: Cut/copy/paste entities and properties

Abstract entity types: Create and map abstract entity types in your model

Support for more properties: Concurrency control for properties and documentation nodes for entities, properties, etc

MSBUILD integration: new EntityDeploy MSBUILD task that replaces the erstwhile EdmxDeploy.exe command line tool

Connection Management: Automatic Entity Connection string management in App/Web.config when .edmx file is moved/renamed in Solution Explorer

Easier Navigation: Navigate to nodes in the model browser from entities and properties on the designer surface

Enable MARS by default: Wizard sets MultipleActiveResultSets to “true” in Entity Connection string when connecting to SQL 2005

Usability: Numerous changes based on UI/usability feedback

Supported editions of Visual Studio 2008 RTM: Standard, Professional, Team Edition, and Express editions (C#, VB and Visual Web Developer)

This version has support for Visual Studio 2008 RTM, which the last releases did not.

I plan on installing on two of my development systems and will report any problems later.

Resources for Writing Facebook Applications with .NET

If  you doing any reading on the web you will have heard about Facebook, you may even have a Facebook account.  I have one which I created a few months ago trying to see what the hype is all about.  Honestly, I don’t see it but I am trying to understand it and find some value in it.  Maybe I am the wrong demographic (40 year old male) and I am starting to not understand the new-fangled Internet gadgets, but I sure hope not.

I do understand Facebook is popular and tons of people use it, so I don’t actually have to get-it to be part of it and take advantage of the opportunity. 

I have a few ideas for Facebook applications I think would be useful to users on Facebook so I started searching around the Internet for some information on what’s available to .NET developers who wish to create Facebook applications.  The Facebook development platform is relatively new and most developers are not using .NET to create them, but there are some resources I found valuable in my search.

I am will document my journey with these tools and how creating my first Facebook application goes.  If anyone has other resources like this please add them to the comments and I will update my resource list for later publishing.

Great Discussion on Hanselminutes about Realworld LAMP to .NET 3.5 Migration

I am a  regular listener of Hanselminutes and usually make it part of a daily walk I do around the lakes we live on or on my commute to a client site.  Those of you not familiar with Scott Hanselman’s podcast about all different aspects of technology, it is worth a listen.

The most recent podcast is with Matt Davis, architect at EarthClassMail.com about their migration from using a LAMP (Linux-Apache-MySQL-PHP) stack to Visual Studio 2008 Beta 2 and the .NET Framework 3.5. 

Scott’s podcasts normally run about 1/2 hour which is enough time to get an idea out and discussed but not so long it takes a bunch out of someone’s busy schedule.

This podcast is a great listen from anyone contemplating going to .NET 3.5 and those features like LINQ, WCF, WPF and Atlas which we may end up using.  Scott asks some great questions and Matt has some great answers.  I am not familiar with Matt but he seems like a really bright guy with more than book-smart experience.  EarthClassMail.com is large and complex application with many facets of its business.

Being an Architect myself I could relate to what Matt was faced with and how he solved the problems.  The bold move to .NET 3.5 while in beta is something you don’t normally year about.  I think I may listen to this one again and I would like to hear future interviews with Matt or ones like this.

Why Does Releasing the Source Code for the .NET Framework Libraries Matter?

Someone please tell me why this news from Microsoft really matter?  I can get all I need by using Reflector to view the code today.  I can then use and modify what Reflector gives me.  Once Microsoft releases the source and I agree to use it like a good person I can not use it in my projects.

I have seen so many people standing on rooftops in blogs patting Microsoft on the back for this news. Why?  It’s not like they are releasing this as open source.   You can’t contribute to it.  So who cares!

Look at some of the reaction :

Fallen Rouge says “Wow. wow. Wow”.

Ayende Rahien says “…this is huge”

Sam Gentile says “This is great news!”

Ted Neward has a nice and inciteful reaction to the news which I think is more in line with reality and taking and putting the news in context with what it really means.

Would someone please explain why this is important and why I should care?  At this point it is news consisting of only fluff..no stuff.

ADO.NET Team Releases Entity Framework Beta 2 & the 1st Entity Framework Tools CTP

Microsoft has released the Entity Framework beta 2 and the 1st beta of the Entity Framework Tools CTP today.

This is great news for those developers using Visual Studio 2008 Beta 2 and want to get serious with the Entity Framework and more importantly the Framework Tools.

From the ADO.NET team blog, the Beta 2 includes new features of the June CTP:

Beta 2 of the Entity Framework includes many great improvements and added features since the last release of the June CTP, including:

  • Events to customize code generation
  • Abstract types in EDM models
  • Complex types
  • <Using> support in metadata files
  • Entity key serialization
  • Increased persistence ignorance in entity data classes
  • Improved connection management in ObjectContext
  • Improved DataBinding usability
  • Metadata annotations
  • Better support for span over LINQ to Entities queries
  • Improvements to LINQ queries: additional canonical functions and automatic mapping from CLR functions to server functions
  • A new event for extensibility of SaveChanges
  • Usability and consistency improvements
  • Polymorphic results from stored procedures

My personal excitement is with the tools being released from the team.  From the ADO.NET blog, the tools include:

Entity Designer

  • Generate a model from a database (via wizard) and display it on the designer surface
  • Edit conceptual model properties (namespace, alias, etc.)
  • Control visual aspects of the design surface (layout) and persist changes
  • Add, Delete, and Edit Entities; Scalar properties; Associations; and Inheritance
  • Automatic set management
  • Automatic Navigation property management
  • Error reporting
  • Validate model and mappings using Entity Framework Runtime

Entity Mapping

  • View the mapping for a C-Side Entity or Association
  • Rename or delete C-Side objects without  worrying about mapping
  • Map an EntityType to multiple tables
  • Apply multiple conditions to a table mapping
  • Map associations
  • Automatic generation of conditions and referential constraints on associations
  • TPH: Map an Entity hierarchy to a single table
  • TPT: Map an Entity hierarchy to multiple tables

Entity Model Browser

  • Understand and visualize the model in a tree hierarchy
  • Visually relate shapes on the designer surface with hierarchy in model

Visual Studio Integration

  • Support for C# and VB in multiple project types: ASP.NET Web site, ASP.NET Web Application Project, Console, WinForms, and Library
  • Project system integration: item template for .edmx file, model generation wizard, EdmxDeploy.exe, and Entity Framework validation on build
  • Support for multiple Visual Studio editions: Express, Standard, Pro, and VSTS.

The team also announced a set of samples which should help out quite a bit as well.  I am looking forward to see how the tools stack up against some of my OR/M favorites.

Chris Sells Summarizes .NET 3.0 Framework Downloads

In the event you have been living under a rock, Chris Sells’ post summarizing the all of the available .NET 3.0 RC1 Framework downloads, gives the links to all the necessary tools to start working with the next release of the framework. I have been working with some of the new features in .NET for some time now and it looks great. The tools I am looking forward to is the new ADO.NET which include LINQ for Entities as well as the new features in C#. RC1 means we should see release bits soon. Technorati Tags :

.NET Tools Updates.

I have pointed out in the past various tools I use for .NET development as they are upgraded and such. Instead of individual posts about each tool and filling up everyone’s feed reader unnecessarily, I figured I would just group the new releases all together.  Everyone is releasing upgrades all at once, it takes some effort to keep up-to-date. CodeRush 2.0 – this is a major update to a great tool from Developer Express.  Coderush adds many nice single key command to insert code for you and cut down on coding time. GhostDoc 1.9.5 – a great tool for commenting methods in my C# code has been released with a few bug fixes. This tool allows easy customization and is a Visual Studio add-in that just works and takes little memory. Sourcegear Vault 3.5 – a nice replacement for Microsoft’s SourceSafe.  The tool has a nice integration with Visual Studio and a SQL backend.  The new version has some great new features. Red Gate Software SQL Compare and SQL Data Compare 5.2 – these tools save my life.  We don’t have much in the way of automated SQL table and store procedure deployment and these tools do the trick for a quick way to get table changes out. Technorati Tags : , ,

RubyCLR – Ruby meets .NET

My day job dictates most of my work be in .NET using C#, for the most part it works well. The usual drawbacks you hear are the costs of implementing a Microsoft solution using Windows 2003 and SQL Server. The platforms are complex but they do work. In my spare time I have had an interest in learning a new language, which is Ruby. Ruby is a language written by a Japenese developer and has gotten very popular as of late. If you haven’t gotten the chance to look at Ruby it was developed with other languages in mind and trying to better them, SmallTalk and Perl are a couple of those languages. It is well worth a look. Well it seems a developer named John Lam has created a Ruby to CLR bridge, known as RubyCLR, so developers can create Ruby code under the .NET CLR. It sounds like a match made in heaven and it has been getting more attention as of late. I downloaded the latest RubyCLR drop from John’s web site and proceeded to install it. Install is a strong word since you simple unzip the contents of the file into a directory. All of the CLR bridge source code is included as well as a bunch of ruby code to handle the Ruby side of things and a bunch of Ruby files that exercises the bridge to the CLR. The code below is an example from the drop. It brings up a window running in Windows and databinds a drop down list. It’s just works.

require 'winforms'
class MainForm def initialize form = Form.new form.Text = 'Ruby WinForms App' names = [] names << 'John' << 'Paul' << 'George' << 'Ringo' list = ListBox.new list.data_source = names.make_bindable form.controls.add(list) @form = form end end WinFormsApp.run(MainForm)

I have installed and tested all of the samples that came with RubyCLR, all but one work and it may be a permission issue on my system I need to work out. John points out his samples were tested in Ruby 1.8.2, but I am running 1.8.4 so it may have something to do with the differing version numbers too. I plan to write my own .NET apps over the coming weeks using this tool. I report my progress and share the code I create. Update : 7/30/2007 – the RubyCLR project has moved to RubyForge.  The project can be found at http://rubyforge.org/projects/rubyclr/. Technorati Tags : , ,