Tuesday, March 18, 2008

Scott Galloway recently joined the ASP.NET team as a P.M. for ASP.NET 3.5. Congratulations!

My conspiracy theory is that Microsoft is actually building a new team for a new product called Scott.NET.

Who's next? Scott Mitchell? Scott Watermasysk? K.Scott Allen? There are still a LOT of ASP.NET Scotts not yet on the payroll.

Tuesday, March 18, 2008 10:09:07 AM (Eastern Standard Time, UTC-05:00)  #     |  Comments [5]  | 
 Monday, March 17, 2008

The DataDeveloper.NET website has got some new bling!

I'm using one on the home page of my blog so it's easy for visitors to my blog to find it.

 

 

Monday, March 17, 2008 10:15:20 PM (Eastern Standard Time, UTC-05:00)  #     |  Comments [0]  | 

As per my previous blog post, I have just installed CR2008 Service Pack 0 and tested a report that I was unable to run when I upgraded from CRXI to CR2008. Not only did the bug go away, but now I am experiencing some amazing performance gains thanks to the new version of Crystal Reports. Read more here

[A New DevLife Post]

Monday, March 17, 2008 9:35:22 PM (Eastern Standard Time, UTC-05:00)  #     |  Comments [0]  | 

In my article, What Visual Studio Developer Should Know about Crystal Reports 2008, for ASPAlliance, I pointed out the fact that CR2008 integrates with VS2003 and VS2005 but NOT VS2008 and that this would be eventually be rectified with a Service Pack.

Thanks to Guy Barrette's blog post "Will the real Crystal Reports 2008 stand up?", (and because I still can't figure out how to subscribe to the Crystal Reports team blog), I learned that the service pack that fixes this is out.

The Crystal Report's blog post about the service pack [Crystal Reports 2008 Service Pack 0] details the changes. Those related to Flash integration and Business Objects Enterprise connectivity aren't of interest to me, per se, but the VS2008 integration definitely is. It also says that CR2008 now runs on Windows 64 bit O/S.

The blog also points out that "It is also now available through the Update Service.  Use Help > Check for Updates within Crystal Reports 2008 to update your version. " but since my 30 day trial ran out I didn't realize this. Now it's time for me to see if the other showstopper problem for me has been resolved.

I'll report back.

Monday, March 17, 2008 8:53:08 PM (Eastern Standard Time, UTC-05:00)  #     |  Comments [0]  | 

[thanks to Roger Jennings for the correction about spatial data]

Samir Bajaj, a developer on the Entity Framework team has begun his blog with a bang.

He describes a sample application (available on MSDN Code Gallery) that can switch  between LINQ to SQL or ENtity Framework, highlighting the differences between the two.

The application targets an business case that he is very familiar with  - searching  a database filled with drawings which are based on a collection of shapes. Samir has a background working for a CAD company and explains that it is a common task to search for drawings that contain particular shapes.

Thanks to SQL Server 2008's new spatial data, this gets really interesting.

Added: While SQL Server 2008's spatial data may have been an inspiration, it will not be not supported by LINQ to SQL or EF in the near future, so Samir is using his own techniques with SQL Server 2005.

Check out his blog post and then the app, called Sketchpad (requires SQL Server 2008 CTP)

Monday, March 17, 2008 7:47:33 PM (Eastern Standard Time, UTC-05:00)  #     |  Comments [0]  | 
 Saturday, March 15, 2008

THANK YOU!!!

Saturday, March 15, 2008 9:03:12 AM (Eastern Standard Time, UTC-05:00)  #     |  Comments [1]  | 
 Friday, March 14, 2008

Okay, my poor little ego is saved... I thought I was doing something horribly wrong with the new Silverlight tools, but it wasn't me after all. Read more....

[A New DevLife Post]

Friday, March 14, 2008 7:38:44 PM (Eastern Standard Time, UTC-05:00)  #     |  Comments [0]  | 

A few days ago I wrote that I had learned about some of the new goodies in SQL Server 2008 that would be of interest to developers after watching Rick Dyess' video, What about Developers? SQL Server 2008 and the Development Environment"

It must have been a busy day last December when another similarly enlightening email arrived in my inbox. Michael Campbell wrote a post for .NET Briefing entitled "SQL Server 2008: What's New for Developers?"

Surprisingly there's only a small overlap between the features that Rick highlights and those which Michael highlights, which means I get to learn more stuff! :-)

While I have this in my inbox, I can't find the post anywhere on the originating blog on the WindowsDevPro website, so I'll highlight the things Michael wrote about:

The MERGE statement in t-sql lets you provide data for the database without having to predetermine if it's an insert or an update. Today you first have to query to see if the primary key exists or not. If not, do an Insert, otherwise do an update. Very cool.

Table-Valued parameters lets you pass shaped data as parameters to a stored procedure. Cool again, or as Michaeal calls it, "wicked".

While Rick also talked about the HierarchyID, Michael pointed out something interesting about it: "What’s cool, or interesting, about this data type though, is that it’s an intrinsic CLR data-type – meaning that Microsoft is starting to leverage Common Language Runtime functionality natively. I wonder what other CLR additions we’ll see in the future."

Intellisense, though I'm already a big fan of Red-Gate's SQL Prompt, which constantly saves me from having to go poke around tables that I haven't worked with in eons before I start building my queries, not to mention the help wiht operators and functions. I wonder how the built in Intellisense compares?

GROUPING SETS which work with teh GROUP BY clause to simplify grouping that you might otherwise perform by using a UNION ALL clause on a bunch of GROUP BY clauses.

XXL User Defined Data Types (the XXL is my term, not official). UDDTs can exceed 8000 bytes.

Thanks Mikey! :-)

 

Friday, March 14, 2008 7:06:48 PM (Eastern Standard Time, UTC-05:00)  #     |  Comments [0]  | 
 Thursday, March 13, 2008

From last week's The New Yorker:

Thursday, March 13, 2008 7:34:43 PM (Eastern Standard Time, UTC-05:00)  #     |  Comments [0]  | 
 Wednesday, March 12, 2008

Rick Dyess from Solid Quality Learning recorded a quick (12 minute) talking-head video explaining the new features of SQL Server 2008 that would be of interest to developers. It's called "What about Developers? SQL Server 2008 and the Development Environment"  As I haven't been paying huge attention to SS2008, I definitely wanted to see this.

You may have heard about some new date types: e.g. a Date that you don't constantly have to strip the time out of and a time that you don't have to extract out of a DateTime field - thank heavens!

There's also a file stream type that stores the stream in the file system but keeps a pointer in the database to it. We often do this manually. So now SQL Server will take care of the plumbing for you.

I hadn't been aware of the hierarchical type which lets you keep track of hierarchies between objects. I have to actually see this in action to understand it better.

There is also a geospatial type that will probably make a lot of people happy. It's over my head. :-)

SQL Server 2008 takes care of a problem that I wasn't even aware of. Rick explains that when you have a null in a column, it will take up the full space allocated to the column. That's a lot of wasted space for containing "nothing". SO that's been fixed. Null will take up no space.

There are other features that he quickly reviews in the video such as improvements to Service Broker (e.g. it knows how to prioritize the services).

One thing I found confusing was the way he presented LINQ to SQL and Entity Framework (including EF's object services). LINQ to SQL is a feature that is [extremely] useful for developers accessing a SQL Server Database. Entity Framework is a feature that is [extremely] useful for developers accessing any database which has an E.F. provider available. Rick presented these as "new features of SQL Server 2008" although I don't really think he actually meant to suggest that these are features OF SQL Server 2008. But unfortunately, that's how the message comes across. It's not the end of the world, but a bit misleading (again, I believe wholly unintentional).There's also "coming soon" book listed on Amazon with the confusing (to me) title of "Pro SQL Server 2008 Entity Framework", from APress. But then again, Roger Jennings pointed out that the title of my own book "Programming Entity Framework" is odd given that Dave Sceppa's book is called "Programming the Microsoft ADO.NET Entity Framework". I know my title was created by O'Reilly to fit into the "Programming" series at O'Reilly, so perhaps the APress book is following some in-house pattern as well.

Anyway, the video from Rick was a very quick and helpful way for me to do a quick, high-level, catch-up.

Wednesday, March 12, 2008 4:01:11 PM (Eastern Standard Time, UTC-05:00)  #     |  Comments [2]  | 
 Tuesday, March 11, 2008

Jeff McWherter wrote an article on ASPAlliance called Six Quick Crystal Reports Design Tips.

When I first read through them I laughed at two in particular.

One was how to get check boxes to appear on a report. I struggled with this one a few years ago and now use it frequently. Why didn't I just ask Jeff back then? (Oh yea, I didn't know him)

The other is using a DRAFT watermark. I have been doing this for a long time, however I am using a jpeg and because of the way CR handles embedded images, the JPEG (even one that is 24kb) adds about 100 - 300 KB to the DLL. I spent a LOT of time trying to deal with this. Jeff shows how to just use text. TEXT! I never even thought of this! I will definitely be changing those reports.

The other four were all new to me!

Tuesday, March 11, 2008 8:55:09 AM (Eastern Standard Time, UTC-05:00)  #     |  Comments [0]  | 
 Monday, March 10, 2008

While many of us are still struggling to get our entity objects across tiers, keep change tracking in place, keep graphs together, DevForce seems to have figured it out.

They are now touting their new DEF (DevForce Entity Framework) which going into Beta 1 soon.

You can sign up for the beta and check out some of their resources here.

Me? I'll still struggle. I want to  figure (and lavish the process of figuring) out how it works. Really, I don't want to ski; I don't want to hang out with my dogs or hubby; I certainly don't EVER want to go on a vacation. Nope, no shortcuts for moi! :-)

There's more to tell, but I'm supposed to be prepping for my user group presentation that's tonight.

What I'm happy about is that it's that this can be done in a flexible, reusable way; even if it's still a little (yes, I know that's probably a bit of an understatement, as was that) hard right now.

Monday, March 10, 2008 1:49:00 PM (Eastern Standard Time, UTC-05:00)  #     |  Comments [1]  | 
 Sunday, March 09, 2008

I thought that this was worth highlighting.

ADO.NET Data Services has a newer moniker:

ADO.NET Data Services Framework

While I still prefer "Astoria", adding "framework" now encompasses the fact that there are client APIs as well, not just the services.

Sunday, March 09, 2008 5:27:39 PM (Eastern Standard Time, UTC-05:00)  #     |  Comments [0]  | 

Last fall, I presented a 3 hour workshop at DevConnections, comparing and contrasting ADO.NET, LINQ to SQL and Entity Framework's LINQ to Entities, Object Services and EntityClient as well as comparing LINQ to Entities to Entity SQL, then providing recommendations for when one makes sense over the others in various scenarios. It was a really fun session to present.

It was a little daunting to pull together, though, because even Microsoft hadn't provided this guidance at that point beyond "LINQ to SQL is for RAD and EF is for the Enterprise". There were a few great forum comments by Mike Pizzo which were helpful.

Coincidentally, (definitely coincidence, I'm not trying to suggest otherwise) Diego Vega, a PM on the EF team, wrote a great post on the the API part of the topic three days after I did the session. And then followed it up in December with a post about LINQ to Entities vs Entity SQL. I laughed that it was in response to a question by John Papa and emailed John to say "geeze, man, you were at the conference, and you were a speaker. You could have come to my workshop for free!" John had presented two great intro sessions on Entity Framework as part of the Data Access track.

So, I am presenting this as a shorter talk at Vermont.NET tomorrow night. We'll see how short. I may just have someone lock the doors when I get started. :-)

I'll be doing this session again in May at DevTeach and June at TEchEd. I expect it to evolve by June.

Sunday, March 09, 2008 2:22:39 PM (Eastern Standard Time, UTC-05:00)  #     |  Comments [0]  | 

Ahh - but who needs data anyway, right?

Everybody! :-)

There's a new website in town filled with news from teh blogosphere, articles, tutorials and an extensive list of resources for doing Data Access.

It's called DataDeveloper.NET and can be found at http://datadeveloper.net (leave out the www)

Yours truly has had fun writing bunches of Entity Framework tutorials.

There's also a great article by Matthieu Mezil called Entity Data Mapping, Beyond the Basics.

Sunday, March 09, 2008 1:41:56 PM (Eastern Standard Time, UTC-05:00)  #     |  Comments [0]  | 

I think the appropriate mourning period is over.

Last week when Alex Homer and I were discussion the Data Access track at the upcoming DevConnections conference, he told me that he's going to work for THE MAN. He's taken a job on the Patterns and Practices Team for whom he has been contracting for a few years.

The next day there was a post on his blog called "Selling my soul".

It's not like I've been reading Dave & Al's books since I was in diapers or anything (I believe Dave is younger than me anyway) but it's definitely a huge deal for them and for anyone who has known them as Dave and AL or Al and Dave for such a long time. Sniff sniff.

It's not a drama or anything so don't' watch for it to show up in the next issue of Soap Opera Digest. Just a big change for both of them who have teamed up for years.

Dave follows up on this blog post, The End of an Era.

My biggest worry is not being able to count on hanging out with Alex at future DevCOnnections. This has always been a problem when friends who I see at conferences go to work for Microsoft. They aren't free to travel about quite as much. But at least I'll still have Dave.

They'll always be Dave and Al, to me.

Okay I have to get back to the kleenex now. ;-)

Sunday, March 09, 2008 1:30:49 PM (Eastern Standard Time, UTC-05:00)  #     |  Comments [1]  | 
 Friday, March 07, 2008

Charlie Calvert has created a new CodeGallery project to centralize blog posts and articles about some of the things that the C# and VB teams are working on for the next version(s) of their languages. You can read about and discuss (and influence) the direction of these features. Read more ....

[A New DevLife Post]

Friday, March 07, 2008 8:46:39 AM (Eastern Standard Time, UTC-05:00)  #     |  Comments [0]  | 
 Thursday, March 06, 2008

One or two C# developers needed for a one+ year project with our client in Montpelier.  Experience with C# and Visual Studio needed; knowledge of SQL Server 2005 helpful.  This is a contract position with hourly rate appropriate to experience.  Please send resumes and contact information to Marge Kolkin (recruiter@compass-sys.com) and reference position #719.  No resume is EVER submitted for a position without explicit permission from the candidate.  We do our best to acknowledge all responses. 

Thursday, March 06, 2008 9:40:03 PM (Eastern Standard Time, UTC-05:00)  #     |  Comments [0]  | 
 Wednesday, March 05, 2008

Last week, I pointed out a screenshot in Expression Blend from Scott Guthrie's post about Silverligth 2.0, showing a lot of new controls. Roger Jennings asked - so where's this datagrid I keep hearing about? I thought perhaps it was in the additional tools that were not visible in the screenshot, since there was a scrollbar.

I installed Silverlight 2.0 and the March Preview of Expression Blend 2.5 (oh dear, another ".5" version) and opened up to see what else was there. Here's the default view.

Here are all of the controls in the asset library.

No DataGrid.

BUt then I created a new Silverlight app in VS2008. I can't get over the Blend designer actually being right there inside of the VS IDE! And there is the DataGrid. But alas, no InkPresenter.

I spent some time (even digging around the dlls in Reflector) trying to find the SL version of the InkPresenter but finally decided to just give in.

Wednesday, March 05, 2008 7:58:12 PM (Eastern Standard Time, UTC-05:00)  #     |  Comments [0]  | 

[update: hmmm, I gave up trying to get the app working and started a new one from scratch, so "good to go" was only relative!]

The MSBuild files for Silverlight 1.1 were tucked inside of the MSBuild's Visual Studio folder. Now they are in their own folder.

If you try to open up a project created with Silverlight 1.1 in VS2008, you will get a message that the C:\program files\msbuild\microsoft\visualSutiod\v9.0\Silverlight\Microsoft.Silverlight.Csharp.targets (or VisualBasic.targets) file can't be found and you won't be allowed to open the project.

Click OK to let the solution load.

In the Solution Explorer you should seethe project listed but unavailable. Right click on it and choose the Edit option. The project's MSBuild file will open.

Scroll down until you find the Import Project= element that points to the targets file.

All you should have to do is replace

"VisualStudio9.0\Silverlight\"

with

"Silverlight\v2.0\"

Then you can reload the project after saving.

[continuing...]

Next steps are to get the right APIs referenced. Add references should show you relevant Silvelright 2.0 APIs. You'll see that the old ones are no longer valid (the warning icon). YOu can delete them. In there place you need to ref:

  • System [in C:\Program Files\Microsoft Silverlight\2.0.30226.2]
  • System.Core [in C:\Program Files\Microsoft Silverlight\2.0.30226.2]
  • System.Windows [in C:\Program Files\Microsoft Silverlight\2.0.30226.2]
  • System.Windows.Browser [in C:\Program Files\Microsoft Silverlight\2.0.30226.2]
  • System.WIndows.Controls [in C:\Program Files\Microsoft SDKs\Silverlight\v2.0\Libraries\Client]System.Windows.Controls.Extended [in C:\Program Files\Microsoft SDKs\Silverlight\v2.0\Libraries\Client]
  • System.XML [in C:\Program Files\Microsoft Silverlight\2.0.30226.2]

I'm down to one error and when I figure it out I'll append again.

Wednesday, March 05, 2008 5:34:01 PM (Eastern Standard Time, UTC-05:00)  #     |  Comments [0]  |