Home   |    About   |    Contact               Twitter   |    Facebook   |    Flickr    MCMSfaq.com: Content Management Server Resources
   MCM | SharePoint 2010 & 2007
 
MVP - Office SharePoint Server
 
Best Practices Conference
 
 
 
Content Management Server Resources

The posts on this weblog are provided “AS IS” with no warranties, and confer no rights.
The opinions expressed herein are personal and do not represent those of my employer.

 
 

Office SharePoint Server Developer Edition

This post has been a long time coming and a long time in draft. It all started about a year ago with an angry customer, some newsgroup queries and a discussion with a long time friend. Since then I've discused the "idea" with some Program Managers and MVPs on and off. At the SPC in Berlin earlier this month, Fitz also mentioned the topic, so it's now time to unleash the rant...

No (unfortunately) this is not me letting the cat out of the bag on a as yet to be announced new product from Redmond, but simply a rambling discourse on something I would love to see in order to stimulate discussion and feedback.

So what I'm after here is "Office SharePoint Server Developer Edition".
This would be installable on Vista and IIS7 and be limited to development purposes only potentially with enforced limits on incoming requests etc. Just like SQL Server, just like Commerce Server, just like CMS. Maybe it could even ship with a pre-baked ADAM. Note I'm not at all interested in XP support.

Now why do I want it? Well there are four key issues which come up over and over again, when developing SharePoint applications:

1. Codeheads (get up offa that thing)
Firstly, codeheads (sweeping generalization here) are not as familiar with key infrastructure enablers here as they need to be to avoid costly rework or lame solutions - I'm talking IIS fundamentals (process isolation), NLB, DNS etc. I can't count the number of times have I seen a solution built which can only work with a Web.config value for the site URL (duh!). In the current world they slap together a Windows Server box (or VM) make a mess of that (yup really) and then wonder why it doesn't work come deployment into a real world environment. It's the old chestnut - "well it worked on my box".

2. Platform Hygiene Baby
Secondly, a ton of developers like their client on their client - i.e Visual Studio on the client OS. This makes total sense. Their client is the box with the power, having to build a VM with all the bits which needs at least 2Gb RAM to be even barely usable it not really on. As they can do this for Commerce, SQL etc having to use a different approach for SharePoint is not as nice as it should be.

3. Adoption
Thirdly, there today is a barrier to entry for ASP.NET developers. Say they are curious - they should be able to install that sucka, fire up Visual Studio have a play, without the overhead of building a whole server setup just to see if there is anything funky in SharePoint. Removing the barrier to entry is also extremely important in terms of adoption and wide scale understanding of "best practices", which leads nicely into the next issue.

Aside regarding "best practices" - hmm, not many about in SharePoint Developer land. Oh how I'd love to see Enterprise Library SharePoint Edition...

4. Knowledge
SharePoint now offers so much stuff but many development shops (partners etc) are unaware of the feature set or available APIs. This leads to the development of bespoke solutions when WSS can do the business. Just like with .NET in general the sheer amount of APIs available often leads to hacked out code to do stuff that SharePoint does "for free", and to a far higher quality. Any one trying to hire SharePoint 2007 development skills in the UK knows what I'm talking about.

 

SharePoint as a enterprise application platform.
With the 2007 release, SharePoint is now truly a viable platform for enterprise applications, in a way that 2003 never was despite how many people wanted it to be and tried to make it. In my view this is the single greatest thing about this release (despite all the wicked cool features). The problem here however is that if average .NET developer has no exposure to it, it won't be a really successful one anytime soon. Regardless of the architecture, operational and governance benefits of such a platform, no technology is ever successful in this regard without a large development community which is capable of delivering solutions upon it.

Fixing the foundation of WSS by "embracing and extending" ASP.NET 2.0 was the absolute right thing to do, but was only the first step - the missing piece this time around is the lack of high fidelity Developer Tool integration and lifecycle management.

 

How does Developer Edition help?
Well, up front it could help isolate developers from "infrastructure" issues, allow development to take place on the client and both increase adoption and lead to greater knowledge of the products and their APIs.

Developer Edition could also be a great first step towards a complete Software Development Lifecycle for SharePoint applications. I'm talking about true integration with Team Foundation Server and/or other SDL tools which many enterprises simply must have.

Now, I'm not saying such a product doesn't present certain challenges, I know there are and in some cases what they are and how difficult they are to solve. One of the reasons it wasn't "possible" previously was that IIS5.1 didn't support Worker Process Isolation. However, just because it may be a lot of work is not a valid excuse for wussing out and not doing it. Bear in mind that the work to get SharePoint working on IIS7 will have (is) already been done, so that part is not an issue any more.

Anyone looking for methods or hacks to get things running on IIS7 today won't find them here regardless of them working nor their practical use. That's a licensing violation, and besides I'm a platform hygiene kinda guy.

It's all about trade offs and compromise, the benefits in terms of adoption and skills mandate it's consideration. Developer editions of Commerce and SQL, and to a lesser degree, CMS have proven the worth in the past. A few years ago whilst doing the infosec gig, I had this conversation with respect to ISA and it's appsec/regex stuff (ala Kavado) with the big shot PMs and got nowhere. Not surprising given that product's target market, but as SharePoint is being pushed as a development platform, things are different.

 

But hey, it's all VM goodness baby...
Now currently, SharePoint developers live inside a VM - because SharePoint only installs on Windows Server and this is generally considered the most appropriate approach to SharePoint development. In addition there are certain things (such a email integration and BDC) where "external" resources are pre-requisite. Additionally the ability to throw away the box and go back to a known good one when things go Pete Tong is a huge benefit.

I don't argue against this approach and indeed have been an exponent of this approach since way before SharePoint was called Tahoe. This is my current recommendation for all customers.

But there are problems with VMs - such as licensing and cost implications (even with MSDN) and what happens with Windows Virtualisation, or more importantly what doesn't happen with Virtual PC might have impact here. Sure. there are alternatives to Microsoft in this arena, but for Microsoft to have a developer story, they must have an appropriate recommendation (based on their products) here.

Now of course remote debugging is possible today, but it's not always appropriate, and sometimes it simply doesn't cut the mustard. There are problems with security principles and again SDL constraints. So for the meantime, VMs (or a box running Windows Server) is the way to go.

 

Ship it baby, ship it. You know you want to.
In summary, I believe there is merit to the idea of Office SharePoint Server Developer Edition, and indeed a Developer Edition of WSS, which would help drive the adoption of SharePoint as the platform for composite applications and as a enterprise application hosting infrastructure. I would also love to see, going forward, true Software Development Lifecycle tool integration for SharePoint, and such a developer edition could be an ideal vehicle for it's delivery. So bring it on.

If you agree that Developer Edition would be useful, please contact Microsoft and tell them so. The more people who ask for it, the more likely it is to happen. If you have feedback or think of other benefits Developer Edition would bring, please leave comments here.

Print | posted on Sunday, February 25, 2007 10:18 PM

Feedback

Gravatar

# re: Office SharePoint Server Developer Edition

Well said, I'll have to put some thought into my own ideas for features of such a product, but suffice it to say I think it would welcomed with open arms.

My personal qualms revolve mostly around the underlying plumbing so anything I can do to use my own, cleaner code makes me happier. :)

2/26/2007 7:49 PM | shane perran
Gravatar

# Office SharePoint Server Developer Edition... now this is a good idea!

Office SharePoint Server Developer Edition... now this is a good idea!

2/27/2007 3:43 AM | Andrew Connell [MVP MOSS]
Gravatar

# re: Office SharePoint Server Developer Edition

Yeah i hear you!

Another problem using VM is when you are developing on a large project you need to get a TS license just to get more than 3 developers on the box.

Also our IT complains that 3 developers and >3 devenv.exe processes running on a (VMWare) box can really suck out all the juice of a MOSS performance wise.

Also i would think (no expert on the subject) that depending on license types installing VS.NET on all WSS/MOSS boxes would violate EULA?!

I hope MS fez up with something here (like Fitz mentioned in Berlin)

2/27/2007 9:44 AM | Anders Rask
Gravatar

# re: Office SharePoint Server Developer Edition

This is an eloquent, reasoned and cogent rationale for Microsoft to provide a SharePoint Developer Edition. OK I acknowledge that what I know about SharePoint development could fit in a single SMS text message with big spaces between the words and lots of smiley’s. However, I understand what you are saying enough to know that anyone working in any development arena with SharePoint should be supporting what you are calling for. Something like this will provoke a HUGE sigh of relief for the Sharepoint Dev Community.

2/27/2007 5:33 PM | Frank
Gravatar

# re: Office SharePoint Server Developer Edition

Agreed 100%...I think one of the major entry barriers to getting onto the Sharepoint Development bus is the lack of a "Developers Edition" so that we can run up an environment on our local boxes without jumping throught VM hoops. Even with a reasonably beefy desktop, developing in a VM environment can be sluggish and 'icky'.

Kev

2/28/2007 7:06 PM | Kevin
Gravatar

# re: Office SharePoint Server Developer Edition

Wholeheartedly agree, especially with your points on developer adoption. Without the huge developer community MOSS is going to be left to corporate IT departments that have the budget to provide the working environment and leave it to their robo-developers driven by time and project constraints. What's needed is the freedom to try away from the usual 9-5 model.

3/7/2007 2:31 PM | Mark
Gravatar

# re: Office SharePoint Server Developer Edition

Testify! WSS/MOSS seems different than the other MSFT technologies in that it doesn't offer a developer edition likely to be suitable to a developer's environment. I think such a thing would be a big win for adoption.

3/21/2007 1:08 PM | psj
Gravatar

# re: Office SharePoint Server Developer Edition

Yes it will be helpful from a development standpoint.

3/23/2007 7:49 AM | anonymous
Gravatar

# re: Office SharePoint Server Developer Edition

I agree totally with your suggestion, it still doesn't solve the problems we are all facing in trying adopt good development methologies. I would like to get to a position where sharepoint development teams are doing continuous integration and testing! Perhaps i'm asking to much as some (or most) asp.net development teams have yet to reach this and the tools are already out for this. What I think will happen with the Developer Edition is for lots of really good .Net developers to get into SharePoint and then demand (or the community write) the tools we need.

3/27/2007 8:07 PM | Andrew Woodward
Gravatar

# re: Office SharePoint Server Developer Edition

OSS Dev edition would be nice, but I would even be happy to start with at least a WSS dev edition.

Even plain WSS (which is a free part of W2K3) needs a server to run.

Now, I can run all sorts of other things on a dev box (WinXP/Vista) -- SQL Server, even ADAM runs on XP -- but not WSS is just silly.

I like having isolated dev, and forcing a full VM just to even look at this product is a bit over the top.

Microsoft -- please release a developer version of WSS that runs on workstations, and then feel free to follow that up with OSS dev edition.

3/28/2007 3:12 AM | Sly Gryphon
Gravatar

# re: Office SharePoint Server Developer Edition

Yes, I agree, a developer version of WSS and MOSS is absolutely necessary.

Small shops can't afford as much software etc. as big companies.

Thanks, Tom

3/29/2007 5:16 PM | Tom
Gravatar

# re: Office SharePoint Server Developer Edition

I'm amazed this doesn't exist, though I would have some fears about my dev box grinding to a halt with all the MOSS services and whatnot.

As a developer tasked with doing some basic SharePoint stuff for the first time, I can testify to the difficulty in even figuring out what steps I need to take to do anything at all. Even some very basic developer support seems hard to find.

For instance: Do I *need* the SharePoint Developer application? Can I use VS.NET 2005? Do I have to have SharePoint on my development machine? If not, what are the steps I take to connect my development to the server's installation of SharePoint?

4/9/2007 10:36 PM | Sydney
Gravatar

# re: Office SharePoint Server Developer Edition

Whew, I thought maybe I just could not cut this Sharepoint thing. After a couple of months of trial and error, the only way I could work on a project was to use VM, download, install, configure 2003 R2, stsv2, SQL 2005 trial, install VS 2005, fiddle with AD, DNS, accounts, etc etc etc. Thats a lot of work, and I find it painful to fire up my nice fast workstation - then a much clunkier, slower VM window to develop on.

Must be a better way, totally agree, bring on the developer edition.

4/30/2007 2:00 AM | Colin
Gravatar

# re: Office SharePoint Server Developer Edition

developer edition 2007

8/10/2007 8:05 AM | Jibanananda Goswami
Gravatar

# re: Office SharePoint Server Developer Edition

Count me in !
VPC or VM for developers is a very expensive method for small companies like the one i work for. (we're pre-dev at the mo, as just not sure of the best way forward - will probably involve having Visual Studio on our SP test server, a complete hindrance to development.
Good to know i'm not the only disgruntled SP dev.

8/20/2007 3:47 PM | Pete
Gravatar

# re: Office SharePoint Server Developer Edition

I totally agree... when did you say it would be launched ?

9/6/2007 5:31 AM | robert
Gravatar

# SharePoint is a good development platform for applications*

Before I get flamed here like I did on another recent crappy post I commented on numerous times, I am

9/25/2007 3:36 AM | Mirrored Blogs
Gravatar

# re: Office SharePoint Server Developer Edition

I think that it would be nice if they would just make their premier development tool (VS) capable of doing all of the development for SharePoint. No switching to SharePoint Designer, FrontPage, Expression, etc. And, if it's not too much to ask, I would like to do this from my development workstation, not by installing a compiler on my server.

Regards

Steve Eagleson

9/26/2007 4:25 AM | Steve Eagleson
Gravatar

# re: Office SharePoint Server Developer Edition

Most of the pain points in this blog are exactly the reason why DotNetNuke has been such a popular development platform on the Microsoft ASP.NET platform.

11/9/2007 11:16 PM | Shaun Walker
Gravatar

# re: Office SharePoint Server Developer Edition

I would like to see projecgt server developer edition.

4/3/2008 4:26 PM | peter
Gravatar

# re: Office SharePoint Server Developer Edition

And when you consider the licensing cost for Sharepoint 2007 enterprise w/ search OMG!. Have you seen these prices?. That's crazy.

5/13/2008 3:50 PM | Lloyd
Gravatar

# re: Office SharePoint Server Developer Edition

I have spent the last 5 years waiting for my company to implement sharepoint, they promise, but nothing. When do we expect this developer edition, I would be in the front of the line. I actualy bought you bought a few books about shrepoint this last week, trying to get a peak under the hood.

5/21/2008 4:30 PM | rhino95
Gravatar

# re: Office SharePoint Server Developer Edition

Now you can install WSS 3.0 SP1 on Vista

http://community.bamboosolutions.com/blogs/bambooteamblog/archive/2008/05/21/how-to-install-windows-sharepoint-services-3-0-sp1-on-vista-x64-x86.aspx

/Jonas

5/22/2008 3:13 AM | Jonas
Gravatar

# re: Office SharePoint Server Developer Edition

When I started doing SharePoint development I had a full head of hair, like disgraced governor Rod Blagojevich. Now I look more like Paul Giamatti.

Please, give me better dev tools before I pull any more hair out!

3/18/2009 6:13 PM | Soon Tobe Kojak
Gravatar

# re: Office SharePoint Server Developer Edition

Your reasoning in support of a SharePoint or MOSS server developer edition is brilliant. I am an ASP.Net developer who would love to learn SharePoint and fill some of the growing demand for that expertise--but not enough to buy a server or even a VM license just to see if I like the tool. With developer editions of SQL Server and the express editions of the Visual Studio elements, I don't see why MS doesn't see the potential for a SharePoint developer edition to run on Vista. If the point is to promote sales of the product, they need to get developers behind it!

4/9/2009 9:20 PM | Lisa Morgan

Post Comment

Title  
Name  
Email
Url
Comment   
Please add 4 and 3 and type the answer here: