Here is your chance to tell us what we can do better to engage the Media Center developer community.  If you have a suggestion, leave it as a comment here for all to see.

Categories: Media Center | Comments [18] | # | Posted on Friday, September 23, 2005 8:55:42 PM (GMT Daylight Time, UTC+01:00)   
Saturday, September 24, 2005 4:05:32 AM (GMT Daylight Time, UTC+01:00)
Personally, theres a lot of walls I keep hitting on projects. Stuff that probably has a solution but not being a partner I don't have the ability to find out what that is and partners cannot talk about it because of their agreement even if they want to help. Some middle ground where I can be under an agreement and have access to additional information and the ability to talk to the mce dev community that also has access to additional info would be a great start.
Bryan "accident" Socha
Saturday, September 24, 2005 8:39:44 AM (GMT Daylight Time, UTC+01:00)
Tell us why you dropped QAM support from roll up 2?
Saturday, September 24, 2005 6:04:43 PM (GMT Daylight Time, UTC+01:00)
MAKE IT OPEN SOURCE!!!!!!! Firefox is popular partly because people can make extensions and themes that are TOTALLY integrated into the application. If Media Center became open sourced, I think more people would buy Media Centers, because there would be more people enhancing the Media Center and making better than whatever could initially be dreamed of from the getgo. And I don't think Microsoft would lose any money on upgrades, because I think people would still purchase the OS upgrade to make things better. I know I would!
Saturday, September 24, 2005 7:52:09 PM (GMT Daylight Time, UTC+01:00)
I think you do a great job communicating with the developer community. Most of it is evangelical, however. That's not a bad thing, because for the platform to succeed (and, thus our MCE-based products) the ecosystem has to grow, meaning more applications and content. So you do a great job spreading the word and helping people get started.

However, I would like to see advanced support for those of us that have already committed to developing for the platform. That should come in the form of advanced technical support, as well as better (earlier) insight into future SDK direction. Perhaps a formal "partner" program with the requisite NDA's, etc.

Regarding technical support, I'd love to see someone dedicated to monitoring the newsgroups and addressing advanced questions when the rest of the community isn't able to. For example, I posted a question regarding rendering directly to viewports from DirectShow graphs, as did another person, and neither post was answered. ( Even a simple "it can't be done" answer would have saved me a lot of time looking for a solution. The amount of traffic on the MCE-related newsgroups is still relatively low and could be covered by a single person, probably part time. You wouldn't need to answer everything - just the questions that others can't (or don't).
Sunday, September 25, 2005 3:43:32 AM (GMT Daylight Time, UTC+01:00)
Bryan + Troy are spot on with their comments..

First - I thought I'd have a bit of a rant and rave before directly answering your questions...

MCE is a amazingly cool product - and after playing with and developing for many DVR systems over the years (going back to early days like showshifter v1 etc) - I really want to see MCE succeed.

Also Charlie - I feel your personal efforts and extra time you are spending to engage us developers is incredible and very much appreciated (and a step far beyond anything I have seen before with MS). However the difference between a hobby application that can't be sold - and one that can be commercialized is we need an 'official' buy-in from MS (namely the ability to base our products on 'supported' technology - so we can actually sell our apps without fear of having to refund everyones money if an update patch/version comes out that breaks our apps). I know Vista is going to change a lot of this situation - but at this point in time it's still some 18-36 months away from being a commonly used platform.

There's a lot of MCE development activity out there - but I tend to feel most if it is being done NOT by the big companies - but by the 'little guys' (who struggle just to afford the cost of hardware, o/s's and dev tools).. For us 'little guys' - most of which are solo developers - becoming a ms partner is out of the question - and an impossibility both financially and due to the fact that none of us would ever meet the partner qualifactions as a 1 man show... (and not out of lack of 'want')

Although some the 'little guys' are just doing this for pure hobby purposes - a lot of us actually do have ambitions to one day commercialize our products and get some financial reward for our efforts. (some of us even daydream that one day we can actually give up our more mundane paid work - and focus on development for MCE - and still be able to pay our bills)...

With the important 'partner' only information, betas etc for MCE out of reach for us - the commercialization side is almost not possible. I remember hearing some comments on Ian's podcast - I remember the Webguide author saying something along the lines of 'I can't ever sell my product - as its not based on supported MCE technologies - and break at any time without me being able to support/fix it'... This sums it up for a lot of us - and ultimately means - less time spent on tools - and less products for MCE consumers to use.

While the developer support for HTML addins (and such things that will run through extenders) is quite good - a huge percentage of the addins etc don't qualify as products MS want to officially support/promote (in accordance with the terms for making apps available on the new Marketplace initiative).

My take on the HTML Addins / MCE SDK is that is is a great technology for large 'content ' based companies to use for displaying their data to end users (ie. like what you would have on online spotlight etc) - where tight integration into the core MCE system is not required. However - a ton of the applications out there do require this integration - but sadly fall into the 'unsupported technology' basket.. ( a shame too - as MS have done a really good job with the MCE SDK / documentation).

However - its products like Webguide - or Quickguide that actually make MCE a usable product in territories outside places like US/UK and a viable proposition to end users (but due to their 'unsupported' nature - can't be provided/mentioned at retail level). In my country (Australia) - if a consumer walked into a megastore (that sold electronics and computer software) - and asked for a DVR system that could supply a program guide - they wouldn't leave the store with MCE... (instead they'd be sold a subscription to the paytv service where a very low featured dvr is being offered).. I don't think there is any MCE Extenders they can legally buy or use either down here (except maybe an xbox) .

Sadly, the truth in my country (Australia) - is that I would get laughed out of every corporate boardroom in the country if I tried to propose any projects that involved a dvr or MCE (or some other ITV technology).. They'd be right too - because there would be no way I could show ROI running a project in that environment. Content based applications are also out of the question down here - as the MCE penetration is just too low and wouldn't deliver bang for buck either for them (and it's instead the paytv dvr offering that is increasing it's market share).. Hence, any commercial funding (or even association with a MS partner) - is completely out of the question .

Ok - well after this bit of a rant - I want to offer some more direct answers to your question - 'what can MS do ....' :

1) Empower the actual developers who are making the tools. (provide betas, support, indepth technical answers to questions which fall outside the 'supported' technologies). I'm sure you'd agree MS are never going to make any sizable indent into the costs of producing MCE from charging the 100-200 odd core MCE developers fees for subscriptions/partnerships/beta programs etc. MS WILL however make big indents/profit by allowing cool and innovative products to be made (which in turn will encourage consumers to want to buy MCE en masse..).

2) Directly address the markets where EPG's and Extenders are not available - and ensure people can write tools that allow MCE to be used (without the developer being forced to use an 'unsupported' technology). The backend/internals of MCE need to be exposed to developers to allow this - much in the same way you allow developers to access them on products like SQL Server, Exchange to name a few.. (of which these initiatives all resulted in more 3rd party products and more consumers). I'll provide some more specific details on exactly what functions I believe should be added in another email to you (as discussed on the phone).

3) Further to above suggestion - empower the 'consumers'. Make it possible for them to access MCE on a standard WinXP System (without them having to buy a whole new license and reinstall their whole system or extender - which would ensure 99% of them won't upgrade). Its a hard enough thing to convince a user to buy a whole new system for MCE - but then telling them that they need to upgrade all their machines or buy extenders puts MCE out of reach to them (and an unnattractive proposition).. The more MCE customers translate directly to a bigger market for us developers (and maybe one day down the track allowing MCE projects to be taken seriously at corporate level).

4) Remove the fear factor for developers by ensuring they don't hit those brick walls - and making them feel they can sell a product (and correctly support it without having to one day refund everyones money due to the product being broken by an update). As Bryan mentioned - we need to know that if we spend the time and effort to make something - out project won't come to a screeching halt where all we can get from MS is either no reply (via newsgroup) - or a 'great idea - but we don't currently support ....' message. Again it's fantastic the effort you and some of the other MS bloggers are putting in to help us - but it's still a case of us feeling like we are getting some 'special favour' (a privaledge which may be removed at any point - and can't be relied upon in a commercial/official capacity).

Anyhow - MS have done an amazing job with many other technologies for developers (.NET and many others) - mainly by empowering developers and removing some of the focus of making money off them. With technologies like .NET as you know - you can get betas, fixes, loads of support for the entire product - not just select bits - and most of this is free. I'm sure at some point in time (I suspect in the lates 90's) - MS made a very deliberate decision to allow the 'little guys' to be able to access the market - and to fully support all aspects of the development environment - a move I'm sure which helped eventually wipe out a ton of rival development technologies from any serious software house (ie powerbuilder, delphi, smalltalk just to name a few)... When I am asked these days to make a technology choice for teams of developers (something which happens a lot) - its more a case of choosing between c# and - as I am 100% confident our project won't reach a brick wall.

Anyhow - these are just my thoughts - and ideas (and probably duplicate a lot of what is being said). I don't want to have to resort to using unsupported technologies - or writing docs to help others do so - and I'd really like to treat the whole MCE development thing seriously from a commercial pov.

I hope this can help you better understand some of our want's/desires and help it translate through to some 'official' changes being made.

more support for the little guys = more products = more consumers wanting to use these products = more unit sales of MCE = more market penetration.

Sunday, September 25, 2005 3:54:56 AM (GMT Daylight Time, UTC+01:00)
This feedback is really, really good. Keep it coming...
Monday, September 26, 2005 5:46:37 PM (GMT Daylight Time, UTC+01:00)
Thank you Charlie for providing and monitoring this forum. While I have not been active yet in developing for MCE, doing so has finally reached the top of my list of personal projects for this year. My perspective is that of an MSDN Universal subscriber and who works and has worked in digital video application related fields in New England for nearly a decade.

Frankly, MCE has been conspicuously absent from my normal develoment resources. Whether its the DotNet user group meetings I regularly attend, the (seeminlgy endless) stream of Developer Events in the New England area, my regular MSDN mailings, or just plain article presence in MSDN/MSJ or other magazines (Visual Studio, etc.) I would have to disagree with some of the pervious comments in that, compared to many other technologies, products, etc., MCE development evangelism is very under-represented.

Here are some suggestions that would bring MCE development closer to my "daily routine" as a professional developer:
- Create a "Developer Center" on MSDN targeted at Media Center development
- Dedicate some articles in MSDN magazine to MCE development. Perhaps an entire new section on multimedia or eHome development, with a significant %age of the annual titles dedicated to MCE development
- Get someone to write a book on the topic and have it published through Microsoft Press. There are enough MSPress titles on one-off technologies out there that MCE would probably not be the "smallest fish" in the pond. Perhaps the MCE team could collaborate on a title much as other MS teams have done.
- Go to the general .Net developer population out there, not just the MCE users. Get more than 2 articles up on CodeProject. Get something published on Get MCE evangelists involved in INETA.
- Blog, blog, blog. Not just on what feature is in or out, but also on how-to's. "I received an interesting/challenging question are teh solutions that did not work, here are the ones that did." Maybe a "Ray Chen" feel... Perhaps John Canning's replacement can do something here...

It just feels like the approach today is for developers who are interested to come to the MCE resources, rather than what I would expect when seeding a new technology, which is to go out and get in the developers' faces. Make me, as a "subscribed" developer, as aware of the MCE platform and its development tools as I am of Indigo, Avalon, and the other technologies that Microsoft is actively communicating.
John Garland
Monday, September 26, 2005 10:33:44 PM (GMT Daylight Time, UTC+01:00)
Another factor inhibiting development is market obscurity. We know the public statistics (43% of all desktops, etc.), but we have little knowledge of how and if consumers are actually using the Media Center experience. For example, knowledge of the following would greatly influence my product development:

What percent of consumers are using Media Center with a TV?
Of those, what percent are dedicated exclusively to media consumption and entertainment in a living area (not on a desk)?

What percent of consumers are using Media Center with Extenders. (I haven't seen any numbers on MCE Extender unit sales.)

I’d love to know how the various experiences break down in terms of usage. In other words, when they do use it, what do they do with it?

I understand market research is a very expensive and strategic asset and Microsoft wouldn’t want to just open the kimono. But there is probably a fair amount of insight that isn’t of a sensitive nature and would be very useful to organizations or individuals that are committing resources to product development, or considering it. Most anyone putting a business plan together to fund a commercial Media Center product is going to be very challenged to find numbers to substantiate the opportunity at any level below PC/OS unit sales. My potential market is a subset of the total Media Center consumer base. But I don’t have enough data to derive a credible number.
Tuesday, September 27, 2005 6:30:53 AM (GMT Daylight Time, UTC+01:00)
Posted on behalf of babgVant from TGB forum...

- Give us a rich event model
- Give us the ability to interact in a meaningful way with the platform; key presses, drawing the current location slider, etc.
- Let us see what is going on beyond some basic meta information (having to reach into the ROT for a filename is a bit ridiculous; the information is there, we can get it, why make it difficult).
Tuesday, September 27, 2005 3:38:05 PM (GMT Daylight Time, UTC+01:00)
I think the SDK could really need some work. trying to get into how to use DRM etc is not even documented. It oly says that it has enhanced DRM features....

And also, being able to run win xp mce under VPC without lag would be GREAT!
Lars Flågan
Tuesday, September 27, 2005 4:00:14 PM (GMT Daylight Time, UTC+01:00)
1. Access to EPG data including information about the tuner (what channel is currently selected and what program is being watched.) I understand that there are licensing issues with the EPG data but it would be helpful if we could at least inject EPG data from other sources through _standard_ API calls.

2. The AddIn framework lacks support for a Windows Forms type of component framework. The HTML approach just doesn't fly with locally hosted applications. They are difficult to unit test and debug.

The MCE API strikes me as something that is geared more towards online services as opposed to local applications.

3. A application certification process. I know that this may be a very costly process especially for hobbiest but have a certifaction process gives a stamp of approval that an application complies how an application should behave under MCE.

4. More exposed events including:
- channel in, and channel out
- program in, and program out

All thanks to Charlie for starting this thread.

- Ramon
Ramon Escobar
Tuesday, September 27, 2005 4:47:43 PM (GMT Daylight Time, UTC+01:00)
I'd also like to echo the comments about having someone from MS answer unanswered questions on the newsgroup. I've posted once or twice and didn't see any responses. As mentioned, even if it's just a case of stating, "not possible currently".
Sean McLeod
Thursday, September 29, 2005 4:21:22 AM (GMT Daylight Time, UTC+01:00)
Do what Apple does: Leave TV up to third party developers who know what the hell they're doing.

Have you seen EyeTV? Now, *that's* a fine piece of work.
J. Random Poster
Thursday, September 29, 2005 5:17:31 AM (GMT Daylight Time, UTC+01:00)
I confess I have not seen EyeTV ( in person. I'm not a Mac vs. Windows zealot -- I've owned and used Macs throughout the years (I managed a network for a graphics company which ran Windows, MacOS, GEM Desktop and Unix on Sun SparcStations, and Unix on a proprietary OS -- all networked together and happy campers -- back in 1992 no less!) Is there someplace in the Seattle area I can check this item out in person (like, does the Apple Store at Alderwood Mall have one for demo purposes)...? If so, send me an email with the details.

But back to the topic at hand -- I'm loving this feedback -- keep it up!
Thursday, October 6, 2005 6:47:35 PM (GMT Daylight Time, UTC+01:00)
First off, let me say that the addition of the Add-Ins and some other things were a vast, vast improvement over MCE 2004 functionality; the features available to developers are much better than they used to be.

That being said, hosted HTML?! Argh!!1 *pulls hair out*

Just kidding. :D No, but seriously: making really feature rich, dynamic, media oriented applications in hosted HTML is fantastically clumsy and difficult. I realize this probably isn't something that's going to be addressed before Vista versions of MCE, but I can't reiterate this enough: hosted HTML is great for ordering stuff online, browsing the web, basic viewing of video clips, etc--but it's wholly insufficient for real, media-oriented applications. Several years of DirectShow/WMxSDK programming have clearly demonstrated this to me. The current state of Media Center applications seems to mirror this; applications that have really eye-popping features haven't really surfaced for MCE because the API is really insufficient for their creation, in my opinion. There are certainly some very cool apps out there, but nothing that's really, honestly jaw dropping.

Next whining session: Bitmaps. All MCE graphics should probably be vector based wherever possible, because they look as good as they can on whatever display they're being shown on, are faster and smaller than bitmaps, and generally have qualities that make them much more desireable for an application like MCE. An application built largely with vector graphics will scale perfectly from one display to another--it'll look as good as it can on a low-resolution monitor, and downright spectacular on high resolution screens. I'd assume the response to this is "Just use Flash!", but that road is perilous at best in my experience. An available vector based, MSFT supported graphics API would be very welcome (sparkle?).

So, I've probably presented you with feedback that's largely useless until Vista lumbers along, but if there's any way I can reiterate how important the above is to me (and, hopefully, other developers) then please contact me directly.

I'm currently in the process of developing a Media Center application, and our first attempt was fraught with peril; the API was insufficient, unpredictable, and disappointing as a whole. The newer API certainly offers much more functionality, but the obstacles to do relatively simple tasks (such as dynamically updating a GUI with information from a UPnP library inside of an Add-In to facilitate the streaming of video) can be really, really tricky and much more difficult than it would ever be in a similar WIN32 application. HTML: great for filling out online forms, navigating web pages, etc. Terrible as an HTPC frontend, IMO.

Anyways, I'm really looking forward to the MCE platform and the changes that will occur between now and Vista! Keep up the good work!
Jeremy Noring
Wednesday, October 12, 2005 9:08:04 AM (GMT Daylight Time, UTC+01:00)
As far as I can tell, you're not on MSDN Ladybug ( That would be helpful.

I rarely visit the Online Spotlight page because it's just a bunch of banner ads, but I probably would if one of the links was to community downloads. If you could encourage community focused development of addins by making it really easy to find and install them from within the MCE environment, you'd expand your developer base. I understand that could be a bit tricky since MCE is kind of a walled garden, but you could have a user rating system (1-5 stars ala Netflix?) which would promote the best ones. Even a "curated" list of 5 - 10 featured addins would be pretty cool.

Does MCE ship with some sample addins and a quick getting started / readme kind of document? That might prompt potential developers to give it a shot and get involved.

Oh, and what about an addin that's kind of like the VS2005 Start Page targeted at developers? It could have some simple RSS listings for top MCE blogs, a few headlines, a featured code snip, and a featured download. That would make the platform a bit more engaging for developers.
Tuesday, March 14, 2006 12:59:26 AM (GMT Standard Time, UTC+00:00)

I'm not sure if this thread is still active, but I thought I'd give it a shot.

I was looking at the SDK documentation for MCE 2005 and didn't see a way to create a background add-in that'll add functionality to the EPG. In particular, I'd like to add reminders for programs instead of simply recording them. In fact, I can't believe program reminders aren't part of MCE. Anyway, I'd like to see an api or other way to hook this functionality, such as adding a "Reminder" option to the more info choice on a program or being prompted for "Remind" or "Record" when using the record button on a future program in the EPG. I can even go so far as to say a future program in the EPG would have either the red record icon for programs that'll be recorded or a clock icon for program that are just reminders.

I realize I can create a background add-in that allows a user to search for programs, handle the tracking of reminders, and prompt users with a dialog box when a show is about to start. However, these are extra steps a user would have to go through to find and setup reminders. It'd be best to just be able to add the functionality to the EPG.

I'm not sure about reminders in Vista, as I have not run the 5308 CTP on a tuner capable computer, but it's one function I would recommend adding. It seems to me that MCE already contains all of the threads and processes that can handle reminders, since it would be very similar to handling recordings.


Steve Lalor
Tuesday, August 15, 2006 12:52:12 PM (GMT Daylight Time, UTC+01:00)

Then Maciek "Michael" Gracz relives a sonorous high-low split.
Thithi 'Mimi' Tran likes her puniest maidenhair, because it horns your falser marble.
Bob Kirkeby fletchs, Evelyn Ng overfertilizes, and they're both classic.
Why is Daryl Mixan so poor? Because Chad Layne boosts our eloquent past.
Deducibilitys, mugginesss, nonagons, lend me your claviers. I come to wig Andy Philachack, not to extend him.
Lucky draws, pentagrams, honks, lend me your calumbas.
Comments are closed.
RSS 2.0
Sign In | All Content © 2014 Charlie Owen

This is a personal weblog. The opinions expressed here represent my own and not those of my employer.

Powered by newtelligence dasBlog 2.3.9074.18820