All posts by Julie

Finally! United Red Carpet Club has free wi-fi!

Hip hip hooray.

My only trip so far in 2008 was on USAirways, so I hadn’t realized this until just now as I’m stuck in Dulles for 3 hours because  – oh shock! – my flight from Burlington was delayed and I missed my connection by minutes. As we landed, I saw my plane to Orlando sitting at the gate. I hoofed it down the hallway with my backpack on and my carryon in tow (not great fun in Teva’s), arrived breathless to learn that it had just left. Now why don’t they get the fact that I’m on a connecting flight – one of their own – and just pulling into my gate and just wait another 2 minutes?

Anyway, at least I had the nice surprise of the free wireless to go along with teh carrott sticks and packaged bites of cheese they have for us here in the lounge. Oh, how it makes me miss the Lufthansa and Ai Canada lounges with their real food and (even though I don’t take advantage) local beer on tap!

 

Heading to DevConnections in Orlando

While it’s very hard to leave Vermont when we are having incredible weather (70 – 80 degree days with blue and sunny skies!) I am on my way to Orlando, FL for DevConnections.

Once again, there is a full track dedicated to Data Access. I’ll kick it off with a full day of Entity Framework tomorrow. Monday is Microsoft day and I’m thrilled that there will be talks by Mike Flasko from the Astoria team and from Danny Simmons and Colin Meek of the Entity Frameowrk team.

On Tuesday and Wednesday we’ll have two more full days with topics like from LINQ to SQL, Synch Services, ADO.NET Perfomance, Entity Framework, Data Sets and more. And top noch presenters like Dino Esposito, Don Keily, Kathleen Dollard, Cathi Gero and more!

Look for the Data Access track which is listed in both the Visual Studio and ASP Connections conferences.

I’ll also be doing a session on Astoria Web Mashups in the ASP Connections conference. I was bummed that the current Astoria bits don’t line up with Silverlight 2.0 so I can’t do that demo any more, but instead I have put together a cool little demo combining Astoria with Popfly. As far as I know, it’s the only implementation out there. The session is in one of the 60 minute slots so I’ll just have to talk fast, par usual.

If you’re at Connections, say hi!

Pay heed to what’s returned by iQueryables in ADO.NET Data Services

I was experimenting with creating data services from IQueryables. Rather than use the canonical example of creating a set of 3 person objects on the fly and exposing them, I decided to create a service for my application log. (Not something I plan to expose to the web, just a learning tool ;-)).

I created a wrapper class for the System.Diagnostics.EventLogEntry class because I needed to have an ID field that could be read. Thanks to Jonathan Carter’s blog post, I knew that there was no property of the real class that would work, so I needed to create my own class with a valid field for a discoverable identity property.

Having done this, I tested my service which worked just fine:

Since I knew there are  a LOT of entries in my application log file (I don’t have a sysadmin to do that maintenance for me) I thought it would be smart to filter the entries by adding /LogEntries?$top=10 to the URI. I wasn’t sure how Vista would handle that and wasn’t shocked to see in the debugger that the filtering was going to be left up to the dataservice:

It’s definitely a huge advantage to be able to expose (or interact with) any IQueryable through Astoria, but don’t forget that it’s the database that has the query processor. In this case, I was returning 23,000 items to my service to be processed.

If I do the same filter to a service that exposed a database via an Entity Data Model, for example Northwind

http://localhost:55176/DataServices/NWDataService.svc/Categories?$top=10

the query is processed by the Entity Frawework and the filter is part of query sent to the database:

SELECT TOP (10)
[Extent1].[CategoryID] AS [CategoryID],
[Extent1].[CategoryName] AS [CategoryName],
[Extent1].[Description] AS [Description],
[Extent1].[Picture] AS [Picture]
FROM [dbo].[Categories] AS [Extent1]
ORDER BY [Extent1].[CategoryID] ASC

Only 10 items are returned for the service to process.

LINQ to SQL will do the same … i.e. create a filter query that gets sent to the database.

Yes exposing my entire un-maintained application event log is not a real-life scenario and in a real network, I might even use the nice filters that Vista provides for event logs.

But the point is just to pay attention to what you may be asking your service to do.

Richard Stallman, founder of GNU, speaking in Burlington today and tomorrow

Richard Stallman, president of the Free Software Foundation (FSF) and founder of the GNU Project (http://www.gnu.org/), will be speaking in the Burlington area on April 17 and 18.

 

  o  Thursday, April 17, 4:30 p.m., St. Michael’s College; “Copyright versus Community in the Age of Computer Networks”

 

  o  Friday, April 18, 9:30 a.m., Champlain College; “The Free Software Movement and the GNU/Linux Operating System”

 

GNU is “free software” and a different concept from open source software. Per the GNU Web site…

 

=====

“Free software” is a matter of liberty, not price. To understand the concept, you should think of “free” as in “free speech”, not as in “free beer”.

 

Free software is a matter of the users’ freedom to run, copy, distribute, study, change and improve the software. More precisely, it refers to four kinds of freedom, for the users of the software:

    * The freedom to run the program, for any purpose (freedom 0).

    * The freedom to study how the program works, and adapt it to your needs (freedom 1). Access to the source code is a precondition for this.

    * The freedom to redistribute copies so you can help your neighbor (freedom 2).

    * The freedom to improve the program, and release your improvements to the public, so that the whole community benefits (freedom 3). Access to the source code is a precondition for this.

=====

 

The GNU/Linux system, basically the GNU operating system with Linux added, is used on tens of millions of computers today.  Stallman has received the ACM Grace Hopper Award, a MacArthur Foundation fellowship, the Electronic Frontier Foundation’s Pioneer award, and the Takeda Award for Social/Economic Betterment, as well as several honorary doctorates.

 

Help the Case Foundation pick it’s $25,000 community award grant winners!

FrontPorchForum, a local, very innovative community website that started here in the Burlington area, has made the cut from 5,000 community organizations to be on the shortlist of 20 to possibly win a $25,000 grant from the Case Foundation. Case Foundation will aware these grants to 5 organizations based on public voting.

So you can vote for 5 of the last 20 organizations on the list. I went to the site on behalf of FPF and was happy to see an organization from my home town (Syracuse, NY) on the list and was able to vote for them as well. Even if you don’t find a local organization on the list of 20, there will surely be at least 5 that inspire you. So go help them out and vote!

TechEd – it’s everywhere!

I’m used to seeing TechEd ads on many of the sites that I go to since they are developer sites. So it took a few minutes for it to register when I saw the ad on the website of our local newspaper, the Burlington Free Press.

I’ve been seeing them frequently for days now. This is a pretty small market and it’s surprising to me that they would be advertising here, but perhaps it’s part of a sweeping media buy and they didn’t explicitly choose Burlington. If I didn’t know better, I’d really wonder if they just weren’t using spyware to detect that I have VIsual Studio on my computer and therefore serving up this perfectly targetted ad. There are also a few other Microsoft ads showing up there, for example, one for MS Online Services.

Ruurd Boeke has succeeded in implementing IPOCO across tiers

While this has been an unfolding process on Ruurd’s blog and on the CodePlex/EFContrib site, today marks an impressive day in the evolution of the PostSharp4EF project that Ruurd Boeke has been working on.

He has used the available interfaces for IPOCO in Entity Framework to create a tool for using Entity Framework in a way that is more affable to Domain Driven developers.

His solution enables client side classes that are not dependant on Entity Framework APIs and supports a fully disconnected tiered application – the thing we have all been struggling to achieve.

Ruurd also solved the XML Serialization problem along the way, though in the meantime, changes to WCF actually solve the problem across the board for all WCF XML Serialization, including Entity Framework objects. So I’m sure that was frustrating for him to have this announced shortly after he completed that arduous step, but think of how much you learned, Ruurd and how much respect you have earned as well! 🙂

Here is short description of the project. You can find much more on the PostSharp4EF project site under the CodePlex/EFContrib home as well as on Ruurd’s blog.

PostSharp4EF: Automatically implement IPoco This project uses PostSharp to post-compile your assemblies. When it encounters a simple attribute, it will implement everything needed to use it in EF: Typelevel attributes, EDMscalar attributes, changetracking and default values. This means there are no runtime performance penalties. See Introducing EF Contrib post for more detailed information about this project. The following supporting projects are included as well and will enable the use of full disconnected n-tier usage of your domain objects:

  • Circular Serializer: enables the serialization of object graphs (including circular references) with knowledge of ‘original values’.
  • Editable Business Objects: does changetracking and provides the serializer with the correct values