Saturday, August 26, 2006

This post contains links to resources for .NET developers who are interested in exploring ADO.NET vNext for Visual Studio vNext ("Orcas"). The link topics are the Entity Framework (EF), Entity Data Model (EDM), Entity SQL (eSQL), LINQ to Entities, LINQ to SQL (formerly DLinq), LINQ to DataSets, LINQ to XML (formerly XLinq), LINQ to Objects, and EF's erstwhile predecessor, ObjectSpaces. The last two sections of this post are devoted to Object/Relational Mapping (O/RM) in general and Domain-Specific Languages (DSLs).

Note: Unlike most blogs entries, this item is updated and republished periodically (see the end of this post for details.) Last update 4/11/2007.

ADO.NET vNext and LINQ CTP Downloads

The following CTPs have been superceded by the ADO.NET Entity Framework and LINQ implementation of the Orcas March 2007 Community Technical Preview. However, some features of the May and August 2006 LINQ CTPs are missing from this Orcas CTP -- most notably, the Entity Data Model (EDM) Designer, which will not be included in the final Orcas RTM version.

Use the Add/Remove Programs tool to remove previous versions (PDC 2005 or January 2006) of the LINQ CTP and review the C# Readme, VB Readme, or both before downloading and installing the LINQ May 2006 CTP (5/10/2006)

Slides from Jim Gray's Database Activities and Trends Tech*Ed London 2006 presentation, which refers to Entity Sets as the "next step for DataSets in ADO.NET v3", and describes LINQ for SQL and LINQ for XML as "a BIG deal" (June 2, 2006)

Note: The following two Jim Gray papers don't relate directly to ADO.NET vNext or LINQ, but are the foundation for much of the preceding Tech*Ed 2006 presentation.

Thursday, August 24, 2006

My August 6, 2006 Windows Live Writer (WLW) review couldn't test the Web Layout and Web Preview features or post directly to the OakLeaf Web site because the Blogger API includes a spam blocker, presumably a CAPTCHA. I sent a message to Blogger requesting removal of the spam blocker the same day as the review.

Today, 18 days after my request, Blogger finally verified that my blog wasn't a splog. This is a test post to see if removing the Blogger API's spam blocker enables Windows Live Writeer's Web Layout and Web Preview modes, as well as publishing posts and posting drafts. Previously only drafts posted. Sure enough, you're seeing WLW here in Web Layout mode.

and here in Web Preview mode.

Not only do I get an instant view of the post, but also no CAPTCHA to complete before manually posting to the blog.

If your Blogger blog requires you to complete a CAPTCHA to post, send a "Non-spam review and verification request for BlogName.blogspot.com" message to support@blogger.com. After a long hiatus, you should receive the following message:

Hello,

Your blog has been reviewed, verified, and cleared for regular use so that it will no longer appear as potential spam. If you sign out of Blogger and sign back in again, you should be able to post as normal.

Thanks for your patience, and we apologize for any inconvenience this has caused.

Sincerely,

The Blogger Team

Update: A newer version of Tim Heuer's Flickr4Writer add-in solves some minor problems:

Why have we reopened now? Maybe it was because we just won a very nice product review on CNET ... or maybe it was that ten-billionth person who emailed us to say, "Hey what's UP? When will Writely open again?" Well, in fact, now Writely is truly ready to open its doors to everyone, so let's just do it!

I'm sure the timing of the WLW beta influenced Google's timing for releasing the Writely beta, but I'm not as sure that "Writely is truly ready to open its doors to everyone." For example, I immediately encountered problems in IE 7 Beta 3 deleting selected text and formatting paragraphs as block quotes. Note: WLW is a downloadable .NET 2.0 WinForm app, while Writely is an online .NET 2.0 WebForm app. (The .aspx file extension indicates ADO.NET Web pages.)

Writely as a Blog EditorIt's a good bet that many Writely users will test it for blog posting, but they're likely to be disappointed. For example, I set up the OakLeaf Systems Blogger blog as the single publishing point in this dialog (Writely currently supports posting only to a single blog): Clicking test returned the following message: However, when I tried to publish the document to the OakLeaf blog (there's no option to post a draft version), I received this error message: (http://www.blogger.com/api/RPC2?rnd649026752=69898776 does not appear to be a valid url). However, Writely was successful at posting a draft, which I converted to this post. (The problem is undoubtedly due to the captcha entry required for posts.) Writely gets the nod over WLW for image handling because Google stores your images on line if you insert them with IE7.I specified Center alignment for all images I imported, but all graphics ended up left aligned. The 1 px black right border on all images is an artifact of the capture program, which doesn't appear when capturing in other applications. Image size settings don't include an option to maintain aspect ratio, so I had to calculate the height setting when limiting the width of images to 400 px wide (the maximum width of the text area of my blog). I gave up and used Paint.NET to resize the images with much better quality scaling.Blog preview doubles the number of newline characters. Here's the top of the test edit page:

And here's the corresponding top of the blog post preview: Browser Change

My results with IE 7 were so poor that I decided to check out Firefox 1.5. So I saved the document, opened it in Firefox, and rechecked the problems I was experiencing.

Firefox correctly formatted the block quote, but didn't fix any of the other issues that I encountered and described above. Firefox appeared to save images to the local file system instead of to http://www.writely.com/File.aspx?id=dcq9twsv_10hmwpzf or the like, caused problems with detecting image dimensions during insertion, and didn't respect my default 350-px maximum width setting for the text:
Back to IE7 Beta 3Round-tripping content between Writely and my OakLeaf Systems blog turned out to be a nightmare. Content copied and pasted from Blogger's Compose window appears OK in the Writely editor (except it's not in the selected font), but you must export HTML from Writely and paste it into Blogger's Edit HTML window, then do major fixups due to doubling or tripling of newline characters on importing to Blogger.

At this point, I decided to copy and paste the HTML with IE7 Beta 3 to the OakLeaf blog so I could point folks in the Google Groups: Writely Discussion Group to examples of the issues. Join the group and see what others have to say about my problems.Watch for frequent updates as I see what other reviewers and folks in the Writely Discussion Group have to say about Writely's readiness for prime time.

Interim Conclusion

Writely isn't even close to cooked as a blog editor. I doubt if CNET tested Writely's compatibility with "Google Blogger" (or any other blogging software) for its review. I'm also concerned about the different set of issues I encountered with IE 7 and Firefox. For now, I'll stick with WLW for blog editing, despite having to add images as a second operation in Firefox.

Paul Graham of the Y Combinator venture-capital group takes the position that competing head-to-head with a Google app ensures the immediate or eventual demise of a start-up. He cites the flat-lining of Kiko as an example, but David Heinemeier of 37Signals says "Google does not render resistance futile." Dare Obasanjo concludes that "Kiko was a feature, not a full-fledged online destination let alone a viable business." Fortunately, Google doesn't need—or, I assume, intend—to make a business out of Writely.

If you're into surfing or the surfboard business and don't subscribe to The New Yorker, go to your local newstand now and pick up a copy of the August 21, 2006 issue. You've got the right issue if you see "Surf's down! William Finnegan on the Howard Hughes of boards" on the promo flap. "The Howard Hughes of boards" refers to Gordon "Grubby" Clark, the owner of Clark Foam—the world's largest supplier of rigid polyurethane foam cores (blanks) for surboards. Clark Foam unceremoniously shut its doors on December 5, 2005, which became known as "Black Monday." The closure led to a state of semi-panic among Southern California's custom surfboard makers, who had no immediate source of blanks to continue production. Clark Foam had 80% to 90% of the U.S. blank business for custom-shaped surfboards. William Finnegan, the best-selling author of Cold New World: Growing Up in Harder Country and A Complicated War: The Harrowing of Mozambique, co-author with Matt Warshaw of The Encyclopedia of Surfing, world-roaming surfer, and staff writer for The New Yorker delivers an eloquent, feature-length analysis of Clark Foam and the surfboard industry in the magazine's August 21, 2006 issue. Unfortunately, the six-page article is only available in print or from LexisNexis, but it might appear in The New Yorker's digital archives after an appropriate hiatus. Your local public library will have a copy or you can obtain a back issue for US$9.00.

As if making amends for the digital oversight, the magazine offers archive links to a two-part article about the San Francisco surfboard scene that Finnegan wrote in 1999: "Playing Doc's Games: Part I and Part II." "Doc" refers to Mark Renneker, M.D. (a.k.a., "Doc Hazard" because of his near-sightedness), probably the most famous of the Ocean Beach surfers. I first learned about Dr. Renneker's devotion to cancer education and screening when he was the principal investigator of a demonstration project at the West Oakland Heath Center.

Note: If you believe "San Francisco surfboard scene" is a typo, check out this photo by Q. T. Leong.

Finnegan received a B.A. from the University of California at Santa Cruz and an M.F.A. from the University of Montana. Cold New World received the New York Times Notable Book of the Year award, the Los Angeles Times Best Nonfiction of 1998 selection, and was one of the Voice Literary Supplement's Twenty-five Favorite Books of 1998. Finnegan was the Sidney Harman Writer-in-Residence (Fall 2004) at the Baruch College, City University of New York. His writing won the James Aronson Award for Social Justice Journalism from Hunter College (2002), a Citation for Excellence from the Overseas Press Club (2000), and the Sidney Hillman Award for Magazine Reporting (1998).

Note: If you wonder why this dramatically off-topic post is here, I was in the polyurethane foam chemicals and surfboard business in the late 1950s through the early 1970s. In his fax announcing the closure of Clark Foam, Grubby Clark credited me, Chuck Foss (my company's distributor to the Southern California surfboard industry), and Harold Walker as having "pioneered the first successful blank business selling blanks directly to surfboard builders." The full story is here.

Monday, August 14, 2006

GigaOm and TechCrunch, inter alia, announced that Microsoft released the first beta of Windows Live Writer (WLW) this morning. I've been underwhelmed by the current Blogger editor, so I downloaded and ran the installer to give WLW a test drive with the OakLeaf System site. WLW is a .NET WinForm app—as you'd expect—and thus requires previous installation of the .NET Framework 2.0.Note: This updated post, Blogger Finally Gives OakLeaf Blog Spam Clearance, demonstrates the solution to the template import problem.Installation ran without a hitch, other than the message that WLW was unable to import my blog's template to establish a compatible style. To obtain style information, WLW attempts a temporary post, which ultimately appeared in Blogger's Edit Posts page as a draft. (See the "Wait for Blogger Post Permissions" topic below.)
Of course, the installer wanted to add the Windows Live Toolbar to IE; I didn't. The installer also offers to create a Windows Live Spaces account for non-blogified users.

WLW's GUI

Without template data, WLW's GUI is what you'd expect for a basic WinForm text editor without a lot of bells and whistles:

The Windows Live Writer: First Impressions post on Nathan Weinberg's Inside Microsoft blog demonstrates editing and adding images in Web Layout view after successfully downloading style information. As Nathan observes, "The Normal View is the straight up simplest way to edit. It is fast, responsive, and lets you do your work."

Typing in the text pane feels much more like Microsoft Word, WordPad, and other Windows text editors than Blogger's editor. WLW's block quotes and bullet/numbered lists are more stable during the editing process. Finally, the WLW's HTML code omits the large number of span tags that tend to obscure Blogger's source.

Wait for Blogger Post Permissions

Attempting to save a Blogger draft or post while writing this article opened this dialog:

Which contains this Blogger message (the blogID is fictitious):

com.google.blogger.exceptions.AutospamException: Your post has been saved as a draft instead of published. You must go to Blogger.com to publish your post. To prevent these errors in the future, request a review at: http://www.blogger.com/unlock-blog.g?blogID=88888888. Sorry for the inconvenience.

Here's part of the Blogger page to request removal of the captcha requirement:

Blogger saves drafts and posts as drafts until someone at Blogger inspects your blog and OKs elimination of the word-recognition anti-span device. After your site passes the splog test, you can chose Weblog, Edit Weblog Settings to reattempt capturing the style for the Web Layout view.

Full Disclosure: I wrote this post with WLW, added it as a draft to Blogger, and then added images from the Blogger server.

No Image Publishing for Blogger

When you attempt to publish a page with an image, WLW claims in the following dialog that the "weblog doesn't support image publishing," which is obviously an untrue statement. Blogger doesn't support the newMediaObject API, which WLW requires to upload and display image, video, audio, or other media object files.

It's nice that WLW offers the alternative of specifying an FTP site for image publishing, but it's doubtful that most Blogger users would opt for FTP image delivery when Blogger offers its own image storage and processing system.

Unlike the Blogger editor, WLW doesn't have a center alignment option for images.

Minor Issue

I'm accustomed to typing HTML character entity references (entities) for special characters, such as — (mdash) in Blogger's WYSIWYG editor. Clicking the Edit Html tab, and then clicking the Compose tab substitutes the special character for the entity in the Blogger WYSIWYG editor. Microsoft needs this feature, too.

I'll probably use WLW to write the text for my future posts and add Blogger images with Firefox. I've found it necessary to switch from IE 6/7 to Firefox to reliably insert the images after storing them on the Blogger image server, so there's not much added effort. The alternative is to use Tim's Flickr4Writer add-in, but I found the current version has a couple of minor quirks. On the whole, WLW looks to me like a great start, even with the image and entity issues.

Sunday, August 06, 2006

TechCrunch's Michael Arrington delivers a glowing—but in my view unwarranted—paean to Hubpages, the beta version of a topical Web page publishing site—and erstwhile Squidoo competitor—that's funded by $2 million from Hummer-Winblad Venture Partners. Hubpages calls its version of a Squidoo Lens a Hub. According to Hubpages' FAQ, "A Hub is your personal webpage, written and designed by you, with lots of help from us. It's your Hub. Use it to share your passions with the world, whatever they might be." Sure sounds like Squidoo to me.Update 9/16/2006: Canadian venture capitalist Rick Segal takes on Arrington's continuing denigration of Squidoo. Details and links follow in the "Subsequent Events" section at the end of this updated post.Both Hubpages and Squidoo target the same niche: folks who desire to opine or expert on a particular topic. Unlike blogs, which usually resemble online personal diaries, Hubpages and Squidoo forego blogs' temporal aspect and encourage contributors to update their Hub or Lens page(s) frequently.
Hubpages and Squidoo entice prospective contributors with prospects of income from shared advertising revenue. Hubpages pays 60% of ad impression revenue and creates an AdSense account for users who don't have one. Hubpages also links to Amazon Associate and eBay Affiliate accounts. Squidoo pays contributors 50% of profits but doesn't provide information about operating costs.Note: According to this February 16, 2006 post by Squidoo Lensmaster Darren Rowse, the "most profitable lens on Squidoo" earned $10.21 over two months. Squidoo now claims some Lensmasters make $50 per month. My four Squidoo Lenses have returned $0.39 (donated to charity) in the few months since Squidoo exited the beta stage. My The Black Scholar lens is #2 of 29,900 for a Google search on "The Black Scholar". It's unlikely that anyone will get rich by authoring Lenses or Hubs.Arrington's May 9, 2006 post, Squidoo: Seth Godin’s Purple Albatross?, includes a "Why Squidoo Won’t Work" headline that foretells the demise of Squidoo because:

The best lenses are generating $30 or so a month for the lensmaster. A true expert on a topic could generate many, many times that number by creating a blog, along with some static content, and putting up simple Google adsense ads. So top content producers are not going to be heading to Squidoo for the money, ever (Squidoo’s model is set up in such a way that they could never make as much money from a lens as they could on their own). And besides, the blog format just works better for experts - fresh content generates lots of links, which equals traffic and search engine juice.

The only unanswered question is whether or not experts will go to Squidoo even without the financial incentive. Maybe, but Squidoo’s tools are not particularly advanced - self publishing is easy these days.

If Squidoo and Hubpages share the same target audience, why does Arrington wax enthusiastic for the future success of Hubpages? Better tools?

Comparing Hubpages and Squidoo's Creation ToolsArrington proclaims, "The creation tools are far beyond what [W]ikia or [S]quidoo has currently (I’d appreciate any comments on this from Squidoo authors), using ajax for previews, moving modules around on the page, etc. They’ve done a really nice job." I haven't worked with Wikia's creation tools, but Hubpages' limited Capsule set doesn't even come close to the number and usefulness of Squidoo's Modules collection.

Here's a list of Hubpages' eight current Capsules with brief descriptions:

Text opens a client-side HTML graphic editor that doesn't include the abilty to edit the HTML source code or include images. You must copy and paste HTML with tags that you can't add with the editor.

Photo lets you add an image from your file system or the Web. However, my attempt to add a photo resulted in the image being zoomed to the width of the hub and displace with black and white reversed.

News does a search of Yahoo news with the Hub name as the search term and displays three links to "related" items. You can't customize the News capsule.

RSS displays an RSS feed from a specified URL but doesn't support Atom 0.3 or format HTML contained in full-text description elements.

Comment displays a comments field that you can elect to be moderated, sent an e-mail when a comment is received, or both.

eBay is a revenue capsule that lets you specify a keyword to display links to related auctions or specific eBay items.

Amazon is a revenue capsule that lets you specify keywords or an ASIN code to display related items for sale.

My The Black Scholar sample Hub includes an example of each of the preceding Capsules.

Here's a capture of Hubpages' HTML editor for Text Capsules:

The following list describes the most widely used of the current Squidoo Modules:

Introduction—is the default Module for a site and offers a WYSIWYG HTML editor with HTML source editing capability. This module accepts a site image anchored at top left.

Text—renamed Write! (and add a Photo)—lets you add your own HTML formatting tags and display an image. The editor has a limit of 2,500 characters, but tells you how many you've used. There's no WYSIWYG HTML editor for this Module.

Link—renamed The Link List—doesn't include a WYSIWYG HTML editor either, but you can add your own tags for hyperlinks and formatting of the description text. There's no limit to the length of the description field that I've been able to find.

List—renamed Make a List—lets you add ordered or unordered lists and manually format the text. Hubpages' Text Capsule can format text as lists, but appear to remove the bullet prefixes exiting edit mode and number prefixes greater than 9 overwrite the text.

Flickr Pictures lets you add images to lenses, with or without a Flickr account.

RSS—AKA Add Your Own Feed—works with RSS and ATOM 0.3/1.0 feeds and lets you include and excerpt of 100 characters or the full text of the feed with optional HTML formatting. You also can specify the update frequency.

Google Maps enables adding a map with the centerpoint at the location you specify.

Amazon displays in a single module multiple entries for books, CDs, DVDs or other items you specify by ASIN.

eBay lets you display a randomly updated display of items based on your Lens' tags, specific items, or items offered by a seller you specify.

Technorati returns links to and optional content from posts tagged with the keyword(s) you specify.

BoingBoing, Word of the Day, JamBase Music News, BBC, Indeed Jobs, Engadget, and similar Modules appear to be aimed at entertaining readers rather than delivering expert comment on the Lens topic.

It's clear from the preceding lists that Squidoo offers more (20) modules than Hubpages (8) and that Squidoo has more versatile display capabilities for at least the two most important Module/Capsule types—Text and Link. Hubpages doesn't offer a corresponding List Capsule. Squidoo's Amazon and eBay Modules are more usable in my opinion than corresponding Hubpages Capsules. My original The Black Scholar Lens that I started early in Squidoo's beta cycle, contains multiple Text, Link, List, Amazon, and YouTube Modules.

Here's a capture of Squidoo's text editor for Introduction modules:
To be fair, Hubpages' Comment Capsule, is better suited for reader feedback than Squidoo's Guestbook Module because the former has comment moderation and notification options. Hopefully, Squidoo will soon offer a full-featured Comments module and a WYSIWYG editor for the Text and Link modules.

According to Arrington's February 7, 2006 post, "Hubpages a Better Squidoo?," it woul be Hubpages' bigger split of the pot for contributors that will be the secret of the start-up's success. But if "top content producers are not going to be heading to Squidoo for the money, ever," because "they could never make as much money from a lens as they could on their own," will they author Hubs instead of starting their own blog and keeping all the ad revenue to themselves? After all, it's not likely that Hub authors will receive "many, many times" the revenue of current Squidoo contributors on a popular topic.

It seems to me that Seth Godin and the Hubpages/HumWin folks are rearranging the deckchairs on the same vessel. Here are the one-year Alexa stats for reach:

and for pageviews:Notice the similarity between the data for the first couple of months after the two fims went into the public beta phase. It will take consistent traffic growth for Hubpages to deliver the pageviews that result in significant "Hubmaster" income, even with a more generous split. Is there reason to believe that Hubpages will do as well or better than Squidoo during the months following the initial traffic spikes? I don't think so.
Here's hoping that Arrington will provide the details that might resolve what appears to me to be his contradictory stance on the viability of topical page hosting as a business.

Subsequent Events [9/14-15/2006]

Michael Arrington delivered a presentation to The Future of Web Apps conference held in San Francisco on September 13-14, 2006. According to Dan Farber, who covered the the conference for ZD Net, Arrington included Squidoo in a "What were they thinking" list of companies that he was "not proud that they exist." The startups subject to Arrington's stigmata are Inform, Gather, PubSub, Browzor, Jigsaw, and Squidoo.

Of that group, I'm only familiar with Gather, which appears to me as an innocuous social sitebuilding startup that claims to be "a place to connect over common interests and passions, to engage in dialog or share different viewpoints." BusinessWeek's Liz Ryan named Gather one of the Top Ten Desktop Diversions of 2006 on March 27, 2006. I'm inclined to give a BusinessWeek columnist far more credence than a blog entrepreneur.

My impression of these wiki sites is that they are simply free (ad-supported) or paid Web site hosts with multi-person editing, comments, or both enabled. For example, pbwiki offers free, $9.95, $24.95, and $34.95 per month options. JotSpot (requires free registration to read) has $9.95, $24.95, $69.95, and $199.95 per month plans. Wikia requires a wiki to "have a large potential audience and be likely to attract enough editors to maintain the wiki." The preceding links open simple test wikis; here's a link to a more complete Wetpaint wiki. Unless you enable multiple editors, most of these sites offer fewer editing widgets than Squidoo. I've seen nothing so far to convince me that any of these startups have much—if anything—more to offer than Squidoo, Google Pages, or Blogger.

Canadian venture capitalist Rick Segal takes on Arrington's castigation of Squidoo in a trilogy of posts—Mike Arrington - Sit Down, Michael Arrington Responds, and The Good of Web 2.0. Squidoo donates a portion of advertising revenue after expenses to charity, and Squidoo Lensmasters have the option of donating their Ad Sense earnings to charity. Segal's issue is Arrington's insistence on an accounting of Squidoo's donations before considering a retraction of his miscategorization of Squidoo.

Arrington's Squidoo-related posts and comments demonstrate to me that he harbors personal enmity for Squidoo and/or Seth Godin. The question for TechCrunch readers is the extent to which personal animus biases Arrington's "Web 2.0" reviews.

Thursday, August 03, 2006

As mentioned in this earlier OakLeaf post, the Lang.NET 2006 Programming Languages and Compilers Symposium was held on July 31 through August 2, 2006 at the Microsoft Redmond campus. The organizers describe the symposium as a "forum for discussion on programming languages, managed execution environments, compilers, multi-language libraries, and integrated development environments. The event followed July's O'Reilly Open Source Convention (OSCON) in Portland, Oregon.Jason Bock's .NET Languages blog delivers a blow-by-blow account of each day's presentations. According to Jason, the symposium attracted about 80 attendees. Following are links to Jason's pages with presenter names and abbreviated topics:Monday, July 31, 2006

*Note: Jason mentions that Paul Vick "began with the Linus Torvalds quote that's going around these days about his view on VB." See the full quotation in the later "Linus Torvalds on Visual Basic" section.Bryan Tyler covered Day 2, also.Wednesday, August 2, 2006

I don’t think we’ll see a "big jump". We’ve seen a lot of tools to help make all the everyday drudgery easier - with high-level languages and perhaps the integration of simple databases into the language being the main ones. But most of the buzz-words have been of pretty limited use.

For example, I personally believe that Visual Basic did more for programming than "Object-Oriented Languages" did. Yet people laugh at VB and say it’s a bad language, and they’ve been talking about OO languages for decades.And no, Visual Basic wasn’t a great language, but I think the easy DB interfaces in VB were fundamentally more important than object orientation is, for example.So I think there will be a lot of incremental improvements, and the hardware improvements will make programming easier, but I don’t expect any huge productivity help or revolutions in how people do things.At least not until you start approaching real AI, and I don’t think real AI is going to be anything you will ever "program."

The dual Web role application has been running in Microsoft's South Central US (San Antonio) data center since September 2009. I believe it is the oldest continuously running Windows Azure application.

About Me

I'm a Windows Azure Insider, a retired Windows Azure MVP, the principal developer for OakLeaf Systems and the author of 30+ books on Microsoft software. The books have more than 1.25 million English copies in print and have been translated into 20+ languages.

Full disclosure: I make part of my livelihood by writing about Microsoft products in books and for magazines. I regularly receive free evaluation software from Microsoft and press credentials for Microsoft Tech•Ed and PDC. I'm also a member of the Microsoft Partner Network.