<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
		>
<channel>
	<title>Comments on: Watching Anders Hejlsberg reinvent the relationship between programs and data</title>
	<atom:link href="http://blog.jonudell.net/2007/05/01/watching-anders-hejlsberg-reinvent-the-relationship-between-programs-and-data/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.jonudell.net/2007/05/01/watching-anders-hejlsberg-reinvent-the-relationship-between-programs-and-data/</link>
	<description>Strategies for Internet citizens</description>
	<lastBuildDate>Wed, 17 Mar 2010 18:06:41 +0000</lastBuildDate>
	<generator>http://wordpress.com/</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Brad</title>
		<link>http://blog.jonudell.net/2007/05/01/watching-anders-hejlsberg-reinvent-the-relationship-between-programs-and-data/#comment-14245</link>
		<dc:creator>Brad</dc:creator>
		<pubDate>Mon, 07 May 2007 14:50:03 +0000</pubDate>
		<guid isPermaLink="false">http://blog.jonudell.net/2007/05/01/watching-anders-hejlsberg-reinvent-the-relationship-between-programs-and-data/#comment-14245</guid>
		<description>What I always like about any of Anders&#039; talks is that he simplifies everything so well (and indeed, linq is nothing but simplification).  For example, he demonstrates the skip and take ORM methods, then shows the query that is generated to make them possible; &quot;row number over yakity yakity...&quot;.  The query in SQL Server 2005 is fairly complex; the methods are simple.
It seems to inspire confidence when someone as bright as Anders raises the level of abstraction.  I get the feeling I won&#039;t ever find myself having to dig into the abstraction because it will be done right.</description>
		<content:encoded><![CDATA[<p>What I always like about any of Anders&#8217; talks is that he simplifies everything so well (and indeed, linq is nothing but simplification).  For example, he demonstrates the skip and take ORM methods, then shows the query that is generated to make them possible; &#8220;row number over yakity yakity&#8230;&#8221;.  The query in SQL Server 2005 is fairly complex; the methods are simple.<br />
It seems to inspire confidence when someone as bright as Anders raises the level of abstraction.  I get the feeling I won&#8217;t ever find myself having to dig into the abstraction because it will be done right.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Gavin.B</title>
		<link>http://blog.jonudell.net/2007/05/01/watching-anders-hejlsberg-reinvent-the-relationship-between-programs-and-data/#comment-13871</link>
		<dc:creator>Gavin.B</dc:creator>
		<pubDate>Sat, 05 May 2007 18:37:01 +0000</pubDate>
		<guid isPermaLink="false">http://blog.jonudell.net/2007/05/01/watching-anders-hejlsberg-reinvent-the-relationship-between-programs-and-data/#comment-13871</guid>
		<description>Maybe OT,  but did anyone mention security yet in the Silverlight context?
I guess since the great MS push two or so years back it will be either:

1) thoroughly inherent in every part of the infrastructure

2) about to be bolted on as an after thought.

Any afterthought?</description>
		<content:encoded><![CDATA[<p>Maybe OT,  but did anyone mention security yet in the Silverlight context?<br />
I guess since the great MS push two or so years back it will be either:</p>
<p>1) thoroughly inherent in every part of the infrastructure</p>
<p>2) about to be bolted on as an after thought.</p>
<p>Any afterthought?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: links for 2007-05-03 &#171; Talkabout</title>
		<link>http://blog.jonudell.net/2007/05/01/watching-anders-hejlsberg-reinvent-the-relationship-between-programs-and-data/#comment-13379</link>
		<dc:creator>links for 2007-05-03 &#171; Talkabout</dc:creator>
		<pubDate>Thu, 03 May 2007 04:10:35 +0000</pubDate>
		<guid isPermaLink="false">http://blog.jonudell.net/2007/05/01/watching-anders-hejlsberg-reinvent-the-relationship-between-programs-and-data/#comment-13379</guid>
		<description>[...] Watching Anders Hejlsberg reinvent the relationship between programs and data ? Jon Udell &#8220;The server-based version uses Python to accomplish the same effects. With Silverlight it should now be possible to move that Python version back to the client, where it would probably run faster than the JavaScript version. But what I’m really interest (tags: judell javascript xpath metadata silverlight microsoft comparison join linq) [...]</description>
		<content:encoded><![CDATA[<p>[...] Watching Anders Hejlsberg reinvent the relationship between programs and data ? Jon Udell &#8220;The server-based version uses Python to accomplish the same effects. With Silverlight it should now be possible to move that Python version back to the client, where it would probably run faster than the JavaScript version. But what I’m really interest (tags: judell javascript xpath metadata silverlight microsoft comparison join linq) [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Mike Champion</title>
		<link>http://blog.jonudell.net/2007/05/01/watching-anders-hejlsberg-reinvent-the-relationship-between-programs-and-data/#comment-13274</link>
		<dc:creator>Mike Champion</dc:creator>
		<pubDate>Wed, 02 May 2007 18:52:25 +0000</pubDate>
		<guid isPermaLink="false">http://blog.jonudell.net/2007/05/01/watching-anders-hejlsberg-reinvent-the-relationship-between-programs-and-data/#comment-13274</guid>
		<description>The presentation is now online at http://sessions.visitmix.com/silverlight/v1/videos/DEV04.wmv</description>
		<content:encoded><![CDATA[<p>The presentation is now online at <a href="http://sessions.visitmix.com/silverlight/v1/videos/DEV04.wmv" rel="nofollow">http://sessions.visitmix.com/silverlight/v1/videos/DEV04.wmv</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Brian Kerr &#124; links for 2007-05-02</title>
		<link>http://blog.jonudell.net/2007/05/01/watching-anders-hejlsberg-reinvent-the-relationship-between-programs-and-data/#comment-13167</link>
		<dc:creator>Brian Kerr &#124; links for 2007-05-02</dc:creator>
		<pubDate>Wed, 02 May 2007 04:29:29 +0000</pubDate>
		<guid isPermaLink="false">http://blog.jonudell.net/2007/05/01/watching-anders-hejlsberg-reinvent-the-relationship-between-programs-and-data/#comment-13167</guid>
		<description>[...] Jon Udell &#124; Watching Anders Hejlsberg reinvent the relationship between programs and data (tags: microsoft language research Cω integrated queries) [...]</description>
		<content:encoded><![CDATA[<p>[...] Jon Udell | Watching Anders Hejlsberg reinvent the relationship between programs and data (tags: microsoft language research Cω integrated queries) [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: In Re: &#187; Blog Archive &#187; Python in the Browser - brought to you by Microsoft?</title>
		<link>http://blog.jonudell.net/2007/05/01/watching-anders-hejlsberg-reinvent-the-relationship-between-programs-and-data/#comment-13145</link>
		<dc:creator>In Re: &#187; Blog Archive &#187; Python in the Browser - brought to you by Microsoft?</dc:creator>
		<pubDate>Wed, 02 May 2007 02:51:30 +0000</pubDate>
		<guid isPermaLink="false">http://blog.jonudell.net/2007/05/01/watching-anders-hejlsberg-reinvent-the-relationship-between-programs-and-data/#comment-13145</guid>
		<description>[...] There have been a bunch of announcements in the past couple of days about IronPython and SilverLight &#8212; will they beat firefox?Personally, I&#8217;m giddy about the prospect of using Python instead of javascript. &#160;John Udell&#8217;s blog entry tonight specifically mentionsthat exact combination.http://blog.jonudell.net/2007/05/01/watching-anders-hejlsberg-reinvent-the-relationship-between-prog... [...]</description>
		<content:encoded><![CDATA[<p>[...] There have been a bunch of announcements in the past couple of days about IronPython and SilverLight &#8212; will they beat firefox?Personally, I&#8217;m giddy about the prospect of using Python instead of javascript. &nbsp;John Udell&#8217;s blog entry tonight specifically mentionsthat exact combination.http://blog.jonudell.net/2007/05/01/watching-anders-hejlsberg-reinvent-the-relationship-between-prog&#8230; [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Alex James</title>
		<link>http://blog.jonudell.net/2007/05/01/watching-anders-hejlsberg-reinvent-the-relationship-between-programs-and-data/#comment-13120</link>
		<dc:creator>Alex James</dc:creator>
		<pubDate>Tue, 01 May 2007 21:41:19 +0000</pubDate>
		<guid isPermaLink="false">http://blog.jonudell.net/2007/05/01/watching-anders-hejlsberg-reinvent-the-relationship-between-programs-and-data/#comment-13120</guid>
		<description>Okay... so I stuffed that comment up... let me try again.

- But second, and more subtly, that even the simplified query syntax in the C# code can be made simpler. The tool-generated code that represents SQL tables, for example, can now express relationships among tables directly. Given a table of Products and a table of Categories, you can eliminate the join syntax from a LINQ query and treat Categories as a property of Products. -

I was talking to a friend (the author of an OR/M called Opf3) about this very issue, he was trying to implement IQueryable[T] and was having trouble with this:
 LinqQuery query = from call in context.GetObjectSearcher()
join user in context.GetObjectSearcher() on call.UserID equals user.ID
where user.Name.Contains(”Christian”)
orderby call.ID
select call;

When I said why not just handle this:
 LinqQuery query = from call in context.GetObjectSearcher()
where call.User.Name.Contains(”Christian”)
orderby call.ID
select call;

Which is of course a lot simplier, but relies on a conceptual model, overlaid on top of the data model. This is what people don’t get about conceptual models… they simplify programming scenarios immensely. 

Jon: Please delete the other comment!</description>
		<content:encoded><![CDATA[<p>Okay&#8230; so I stuffed that comment up&#8230; let me try again.</p>
<p>- But second, and more subtly, that even the simplified query syntax in the C# code can be made simpler. The tool-generated code that represents SQL tables, for example, can now express relationships among tables directly. Given a table of Products and a table of Categories, you can eliminate the join syntax from a LINQ query and treat Categories as a property of Products. -</p>
<p>I was talking to a friend (the author of an OR/M called Opf3) about this very issue, he was trying to implement IQueryable[T] and was having trouble with this:<br />
 LinqQuery query = from call in context.GetObjectSearcher()<br />
join user in context.GetObjectSearcher() on call.UserID equals user.ID<br />
where user.Name.Contains(”Christian”)<br />
orderby call.ID<br />
select call;</p>
<p>When I said why not just handle this:<br />
 LinqQuery query = from call in context.GetObjectSearcher()<br />
where call.User.Name.Contains(”Christian”)<br />
orderby call.ID<br />
select call;</p>
<p>Which is of course a lot simplier, but relies on a conceptual model, overlaid on top of the data model. This is what people don’t get about conceptual models… they simplify programming scenarios immensely. </p>
<p>Jon: Please delete the other comment!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Alex James</title>
		<link>http://blog.jonudell.net/2007/05/01/watching-anders-hejlsberg-reinvent-the-relationship-between-programs-and-data/#comment-13119</link>
		<dc:creator>Alex James</dc:creator>
		<pubDate>Tue, 01 May 2007 21:36:19 +0000</pubDate>
		<guid isPermaLink="false">http://blog.jonudell.net/2007/05/01/watching-anders-hejlsberg-reinvent-the-relationship-between-programs-and-data/#comment-13119</guid>
		<description>&gt;But second, and more subtly, that even the simplified query syntax in the C# code can be made simpler. The tool-generated code that represents SQL tables, for example, can now express relationships among tables directly. Given a table of Products and a table of Categories, you can eliminate the join syntax from a LINQ query and treat Categories as a property of Products. The bottom line is not only writing (and reading) less SQL code, but also less C# code.&lt;I&gt; he was trying to handle this:
   LinqQuery query = from call in context.GetObjectSearcher()
      join user in context.GetObjectSearcher() on call.UserID equals user.ID
      where user.Name.Contains(&quot;Christian&quot;)
      orderby call.ID
      select call;

When when I said why not just handle this:
   LinqQuery query = from call in context.GetObjectSearcher()
      where call.User.Name.Contains(&quot;Christian&quot;)
      orderby call.ID
      select call;

This is what people don&#039;t get about conceptual models... they simplify programming scenarios immensely.</description>
		<content:encoded><![CDATA[<p>&gt;But second, and more subtly, that even the simplified query syntax in the C# code can be made simpler. The tool-generated code that represents SQL tables, for example, can now express relationships among tables directly. Given a table of Products and a table of Categories, you can eliminate the join syntax from a LINQ query and treat Categories as a property of Products. The bottom line is not only writing (and reading) less SQL code, but also less C# code.<i> he was trying to handle this:<br />
   LinqQuery query = from call in context.GetObjectSearcher()<br />
      join user in context.GetObjectSearcher() on call.UserID equals user.ID<br />
      where user.Name.Contains(&#8220;Christian&#8221;)<br />
      orderby call.ID<br />
      select call;</p>
<p>When when I said why not just handle this:<br />
   LinqQuery query = from call in context.GetObjectSearcher()<br />
      where call.User.Name.Contains(&#8220;Christian&#8221;)<br />
      orderby call.ID<br />
      select call;</p>
<p>This is what people don&#8217;t get about conceptual models&#8230; they simplify programming scenarios immensely.</i></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Mike Champion</title>
		<link>http://blog.jonudell.net/2007/05/01/watching-anders-hejlsberg-reinvent-the-relationship-between-programs-and-data/#comment-13094</link>
		<dc:creator>Mike Champion</dc:creator>
		<pubDate>Tue, 01 May 2007 19:09:48 +0000</pubDate>
		<guid isPermaLink="false">http://blog.jonudell.net/2007/05/01/watching-anders-hejlsberg-reinvent-the-relationship-between-programs-and-data/#comment-13094</guid>
		<description>Astoria exposes server-side Entity Data Models over the Web, but AFAIK it&#039;s not useable for creating generic mashups by joining arbitrary data on the web.  The EDM does have a LINQ story, but as far as I know that&#039;s not exposed via Astoria. LINQ can take multiple data sources -- including the XML/RDF returned by Astoria -- and join them on the client, which with Silverlight can either be a traditional Windows app or a &quot;rich internet/interactive application&quot; running in IE, Safari, or Firefox (and presumably more platforms someday). 

More generally, don&#039;t try to find more order here than actually exists.  This is evolution in action happening all over the company, not intelligent design by Gates, Ozzie, or any other supreme being :-) Silverlight, LINQ, EDM/Astoria, a bunch of stuff in incubation, and probably some unannounced products are all swimming around in the primordial soup right now.  Watch what helps real customers survive and prosper, and how they cross-fertilize each other if you want to predict which of these technologies will rule in the long run.</description>
		<content:encoded><![CDATA[<p>Astoria exposes server-side Entity Data Models over the Web, but AFAIK it&#8217;s not useable for creating generic mashups by joining arbitrary data on the web.  The EDM does have a LINQ story, but as far as I know that&#8217;s not exposed via Astoria. LINQ can take multiple data sources &#8212; including the XML/RDF returned by Astoria &#8212; and join them on the client, which with Silverlight can either be a traditional Windows app or a &#8220;rich internet/interactive application&#8221; running in IE, Safari, or Firefox (and presumably more platforms someday). </p>
<p>More generally, don&#8217;t try to find more order here than actually exists.  This is evolution in action happening all over the company, not intelligent design by Gates, Ozzie, or any other supreme being :-) Silverlight, LINQ, EDM/Astoria, a bunch of stuff in incubation, and probably some unannounced products are all swimming around in the primordial soup right now.  Watch what helps real customers survive and prosper, and how they cross-fertilize each other if you want to predict which of these technologies will rule in the long run.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Joe</title>
		<link>http://blog.jonudell.net/2007/05/01/watching-anders-hejlsberg-reinvent-the-relationship-between-programs-and-data/#comment-13086</link>
		<dc:creator>Joe</dc:creator>
		<pubDate>Tue, 01 May 2007 18:22:35 +0000</pubDate>
		<guid isPermaLink="false">http://blog.jonudell.net/2007/05/01/watching-anders-hejlsberg-reinvent-the-relationship-between-programs-and-data/#comment-13086</guid>
		<description>I think your last point would eventually use something like Astoria http://astoria.mslivelabs.com/.</description>
		<content:encoded><![CDATA[<p>I think your last point would eventually use something like Astoria <a href="http://astoria.mslivelabs.com/" rel="nofollow">http://astoria.mslivelabs.com/</a>.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Ed</title>
		<link>http://blog.jonudell.net/2007/05/01/watching-anders-hejlsberg-reinvent-the-relationship-between-programs-and-data/#comment-13082</link>
		<dc:creator>Ed</dc:creator>
		<pubDate>Tue, 01 May 2007 17:38:08 +0000</pubDate>
		<guid isPermaLink="false">http://blog.jonudell.net/2007/05/01/watching-anders-hejlsberg-reinvent-the-relationship-between-programs-and-data/#comment-13082</guid>
		<description>Hi Jon,

I was looking for a video of Anders&#039; presentation - do you know if one is available, or will be available, somewhere?
NOTE: You misspelled &quot;Hejlsberg&quot; (and I, for once, spelled &quot;misspelled&quot; correctly on the first try).

Thanks,
Ed</description>
		<content:encoded><![CDATA[<p>Hi Jon,</p>
<p>I was looking for a video of Anders&#8217; presentation &#8211; do you know if one is available, or will be available, somewhere?<br />
NOTE: You misspelled &#8220;Hejlsberg&#8221; (and I, for once, spelled &#8220;misspelled&#8221; correctly on the first try).</p>
<p>Thanks,<br />
Ed</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Roger Jennings</title>
		<link>http://blog.jonudell.net/2007/05/01/watching-anders-hejlsberg-reinvent-the-relationship-between-programs-and-data/#comment-13071</link>
		<dc:creator>Roger Jennings</dc:creator>
		<pubDate>Tue, 01 May 2007 17:00:07 +0000</pubDate>
		<guid isPermaLink="false">http://blog.jonudell.net/2007/05/01/watching-anders-hejlsberg-reinvent-the-relationship-between-programs-and-data/#comment-13071</guid>
		<description>I&#039;ll be interested in your analysis of the use of LINQ in the DLR in the &quot;Jim and John Talk&quot; demo (see http://oakleafblog.blogspot.com/2007/04/stealth-dynamic-languages-presentation.html)

--rj</description>
		<content:encoded><![CDATA[<p>I&#8217;ll be interested in your analysis of the use of LINQ in the DLR in the &#8220;Jim and John Talk&#8221; demo (see <a href="http://oakleafblog.blogspot.com/2007/04/stealth-dynamic-languages-presentation.html)" rel="nofollow">http://oakleafblog.blogspot.com/2007/04/stealth-dynamic-languages-presentation.html)</a></p>
<p>&#8211;rj</p>
]]></content:encoded>
	</item>
</channel>
</rss>
