I find this question a bit strange, and it's ridiculous that people still ask s...
I find this question a bit strange, and it's ridiculous that people still ask such questions, because they don't understand what the SharePoint is.
SharePoint is just a platform that build on the top of asp.net and is appropriate for the specific needs. It's not a question of taste - use it or not, it's dictated by requirements and architecture.
Asking why asp.net devs wont use SharePoint is the same as asking why asp.net devs wont use AJAX for example ? u use it when it's necessary only
With these comments in mind...why not think about taking your questions a step f...
With these comments in mind...why not think about taking your questions a step further...what requirements and architecture suite SharePoint rather than just using ASP.NET. Essentially its the same question rephrased...e.g. what are the pros and cons of each approach and where does it fit?
If we can articulate what the Platform is to ASP.NET devs maybe they will consider it for their next solution...
Comparing AJAX to SharePoint is not exactly the best comparison but I get where you're coming from
I completely disagree with this comment. I think the question IS valid. Why do...
I completely disagree with this comment. I think the question IS valid. Why don't ASP.Net developers use WSS? This is a major problem I have had when building SharePoint teams up. I find it very difficult to get good coders who want to work with WSS.
I personally think that it is because, on most projects, writing code for a SharePoint project is quite dull.
Writing small web parts isn't much of a challenge
Writing large webparts doesnt happen often (and I don't think SHOULD happen)
The Framework does so much that the challenge of writing cool code just isn't there
I know that a lot of my friends who are top rate ASP.Net developers have no interest at all in SharePoint development. Mainly because of their nature. They like to write it all themselves and do, in their words, "proper" development.
I think this came from 2003 where the coding wasn't much fun or challenging and a lot of the "geeky" top notch asp.net developers had a major problem with the "niggly bits" of SharePoint. Those annoying little traits that we have learned to deal with and work around, for a lot of developers, that constitutes flaws in the framework and their nature does not allow them to cope with it.
Since MOSS has been released there is a lot more scope for enterprise level applications, workflow, silverlight, WCF, so I think it is a branding issue that we need to sort out to get more asp.net developers onboard. I think they will now enjoy working with the product. We just need to get them back on board. Or, not, then us contractors stay in demand and keep our rates up
In my world, the vast majority of requests for service are for workgroup apps of...
In my world, the vast majority of requests for service are for workgroup apps of varying size and complexity. As an IT Manager I have struggled over the past few years trying to get my peers to embrace Sharepoint as a solution provider. Also, I have had the same experience with .NET developers. However, my experience has been fairly consistent in that whether you're dealing with IT managers or .NET developers there is an inverse relationship between resistance to WSS and WSS knowledge and experience. In other words, IT folks who have taken a few minutes to learn about WSS and work with it a bit are far more likely to embrace it. Unfortunately, these folks are significantly in the minority as MS haters and IT folks with litle or no WSS knowledge or experience are significantly in the majority. Maybe someday this will change but I am still amazed at the longevity of the resistance.
RE: "However, my experience has been fairly consistent in that whether you're de...
RE: "However, my experience has been fairly consistent in that whether you're dealing with IT managers or .NET developers there is an inverse relationship between resistance to WSS and WSS knowledge and experience."
Hmmmm.... In my experience there is an inverse relationship between those who resist being put in the deep end of a pool and those who already know how to swim. (Profound observation, huh?).
RE: In other words, IT folks who have taken a few minutes to learn about WSS and work with it a bit are far more likely to embrace it.
Sounds like you are talking about SharePoint end users (aka 'power users') who use the UI to make lists and sharepoint designer to alter things, rather than sharepoint developers. If you are talking about developers please consider the possibility that you are delusional as sharepoint development has a steep learning curve and takes far more than 'a few minutes'.
"This is a major problem I have had when building SharePoint teams up. I find it...
"This is a major problem I have had when building SharePoint teams up. I find it very difficult to get good coders who want to work with WSS."
If you wish to hunt elephants you should hire elephant hunters; likewise, if you wish to build SharePoint applications you should hire SharePoint Developers. While Polar Bear hunters may have experience shooting big guns, withstanding extreme weather and going after large mammles, there are several essential traits and skills they do not have.
I would imagine that for a Polar Bear hunter to transform himself into an Elephant Hunter he would need at least the following:
Jungle survival skills, not tundra survival skills;
Experience hunting land mammels, not marine mammels;
An understanding of elephant psychology, phsyiology and anatomy;
An understanding of international elephant import/export laws;
Experience travelling around Africa
While it's certainly possible for a Polar Bear Hunter to transform herself into an Elephant hunter, she must first undergo some training.
I'd be willing to bet lots of smaller IT departments want to magically convert asp.net developers into sharepoint develpors without providing them with adequate time and training and without appropriate compenstation (from what I've see Sharepoint dev jobs pay anywhere from 15-30K more than asp.net dev jobs). From my perspective, sharepoint is a huge investment and needs to be taken seriously. Coaxing asp.net developers into figuring out sharepoint on the job is not a serious approach. Hmmm.. and while the following is an unfair analogy, I will say it anway: coaxing asp.net developers into 'figuring out' sharepoint (on the job) sounds alot like the same employers who coaxed classic asp/vb scripters into 'figuring out' asp.net on the job. Bad idea.
May I suggest adding to the Cons of Sharepoint that a significant issue of the s...
May I suggest adding to the Cons of Sharepoint that a significant issue of the server development environment is running as Administrator whereas ASP.NET development can easily be done on Cassini with a standard user account.
WSS provides a lot of rich features, but it also introduces a lot of complexity....
WSS provides a lot of rich features, but it also introduces a lot of complexity. As far as developing LOB applications I think the cons outweigh the pros for using SharePoint as a development platform (development experiance, need a specialized administrator to manage the enviornment, ...). Case in point imagine if team had built StackOverflow on top of WSS... there is no way they would run that on 2 servers and would have been able to deliver that application in 16 weeks.
WSS is powerful, but for a much narrower purpose than Microsoft (and much of the...
WSS is powerful, but for a much narrower purpose than Microsoft (and much of the Sharepoint community) claim. It is not even remotely close to a general-purpose development platform. If your business processes and IA strategy already line up with a WSS-compatible model, then Sharepoint gets some basic DM and collaboration plumbing out of the way for you.
Here are the major reasons I see ASP.NET developers avoiding Sharepoint:
- Steep learning curve. In ASP.NET, any newbie can make a Hello World application in less than an hour and generally grasp what's going on to make that happen. Learning & complexity grow in parallel with the developer's needs. By contrast (and maybe I'm just a little slower than most) - I have been using Sharepoint and MOSS for nearly two years solid and I *still* don't fully grasp what all is happening under the hood between writing a web part and getting it to show up on a page. That's fine for making Hello World widgets, but not for building and deploying complex LOB systems. Knowing ASP.NET backwards and forwards takes up a lot of space in my brain. I can't justify learning something just as vast and complex just so I can avoid writing my own publishing workflow.
- Overly simplistic. Although *getting it to do something* is very complicated, what it *actually does* is remarkably simple. But how many applications actually have a model which maps to a simple tree hierarchy of items? Most applications use an RDBMS because their model doesn't look anything like a file system. WSS emulates a file system on top of an RDBMS. You tie yourself into a pretzel writing CAML which accomplishes the same thing a mid-level developer could write in 2 minutes using SQL. Developers who *do* give it a try will last all of a week before giving WSS the boot and going back to SQL Server. Imagine trying to build Facebook on WSS. And yet in my experience, most applications have more in common with at least some aspect of Facebook than they do with the way WSS works.
- Microsoft has not attempted to sell it to ASP.NET developers. This might be the biggest one. Even something like SQL Server gets sexed up and trotted out at MIX. Any moderately-plugged-in ASP.NET developer can name at least one feature coming up in c# 4.0. WSS is... that thing I read about on some enterprise architecture blog. No developer uses Sharepoint because they want to, they use it because their EA got a ton of literature from MIcrosoft about it and learned all about it at the architecture conference, and got together with the CIO and decided that Sharepoint would be the development platform for the 3-year IT strategy.
Here's a quick list of reasons for my anti-SharePoint development tweet yesterda...
Here's a quick list of reasons for my anti-SharePoint development tweet yesterday.
Some background info to give some context:
- I've been a commercial developer for 8 years now. I started in Classic ASP and spent the last 5 years also in working ASP.NET, with the last 12 months in ASP.NET 3.5 working heavily in Visual Studio 2008.
- I follow developers like Scott Hanselman and Jeff Atwood and read books like Pragmatic Programmer. I'm continually trying to improve the overall technical solution quality and the general development experience. I have had to make some unhappy comprimises to get my current SharePoint solution working.
- I have poor recall memory but excellent recognition memory. Unfortunately I'm finding SharePoint development relies heavily on recall for fixes and workarounds (things the development toolsets - ie Visual Studio - should handle for us so we can get on with creating the best possible solution and user experience). By comparison, I find ASP.NET development more "natural".
- I'm heavily focused on software usability, producing the best possible product to meet business needs and improving developer efficiency. I'm finding SharePoint more difficult than need be to meet these goals (especially in caprison to standard ASP.NET development).
- I get frustrated that in 2009 we don't have the tooling (IDEs, Frameworks, APIs, etc) that allow developers to work at the "higher levels" of abstraction I would expect - i.e. that hide the mundane detail.
- My current dissatisfaction with SharePoint extends from both the specific difficulties I'm having with SharePoint as well as increasing diffulty in recent years with development using the .NET Framework and ASP.NET in general. It all combines to make for an unhappy developer.
- 12 months ago I did the MS certification of installation and configuration of SharePoint Server 2007 (Exam 70-630 I think) - I actually haven't worked on any SharePoint project since then. 2 weeks ago I started my first SharePoint development project. I'm developing Features (modules) and a site template using Visual Studio 2008 and need to deploy to an Extranet in [I think] a Farm configuration.
Some the my main gripes with SharePoint development are:
- Tooling: Visual Studio does not have enough integration with SharePoint, especially for testing and debugging. It is try painfail in comparison to ASP.NET development and adds considerable time and pain to the process. Everything seems half-baked.
- The background knowledge required to start SharePoint development and actually know and understand what you are doing is extensive, even for an experience .NET developer. It is hard for experienced ASP.NETdevs to jump across. As it is, I'm just being prodded in the right direction by a more experience developer then Googling for solutions to specific problems and requirements - this "Cody by Coincidence" and "Cody by Google" is not what I consider an optimal learning process for understanding the product.
- I having to perform lots of manual settings/file changes while developing in Visual Studio - eg Web.config and Module.xml. Time consuming, repetative and error prone. It also points to a half-baked product.
- There is considerable time wasted on basic tasks and fixing errors rather than being able to concentrate on important issues, like providing be best solution to the customer business needs.
- At least 50% of my day is currently spent Googling to find solutions to SharePoint errors and other technical problems. The constant stream of errors and friction it places on development is leaving me annoyed and aggavated.
- The whole development process is highly inefficient and has high development friction - there's NOTHING smooth about it (at least that's the way it seems - with the problems overshadowing any good that is coming from the experience).
- .NET and and SharePoint development requires us to deal increasingly in abstraction that hide lower level detail (which I belive is good and necessary), through increasing increasing class base. Yet as developers I find we often have to dig in an know the low level implementation detail in order to understand the abstraction, what it is doing and how to implement it. Again, wasted time, efficiency and cost.
- Documentation in MSDN (actually, much of what comes out of Microsoft in general) is a joke nowadays and often little better than a auto-generated snapshots of the API (which it probably is). For example, I looked up http://msdn.microsoft.com/en-us/library/ms468837.aspx for more information regarding the Location property on the Assembly element and the description I got was "The relative file path of the assembly". Relative to what?!? When I go looking for documentation it means I need a better understanding than what I derice from teh API. Again, it's a frustration that leads to a poor development experience.
Don't get me wrong, I think SharePoint has potential to be a great product for both users and developers and is certainly heading in the right direction. However, from my dealings with it as a user and my current experience as a developer I feel we have a long way to go before polished enough to provide the experience we should be getting.
Hello Jeremy and the Developer Community,
I am not sure this Con is really accu...
Hello Jeremy and the Developer Community,
I am not sure this Con is really accurate.
Development Environment Server development environment required
You can develop SharePoint components with just the DLL's on any computer with pretty much any operating system. For testing you need WSS or MOSS so I can see where some confusion arises in this. It is also important to note that you can run WSS (quite easily) on Vista, and develop on Vista. Thereby allowing you to test, and develop on the same local machine without any need for a server.
Do we have other cons?
The too many options doesn't seem like a Con to me. Really it can be perceived as a pro, or a con. In my experience that flexibility allows for you to develop it in a way that either works best for the specific client/support team, or in a way that is fastest/most cost effective.
I can agree with many of the points made by anonymous. However I don't see how many of these items don't apply to ASP, or other .Net related code. If you haven't read the books, or learned it all in the first place it really represents the same issues (too googling, and recall). Anyways looking forward to anyones thoughts or corrections on my quickly presented opinions.
I have to agree with Anonymous (3). Developer experience is still very poor. Fea...
I have to agree with Anonymous (3). Developer experience is still very poor. Feature wise there is lots to take advantage of but very hard to use due to lack of doco.
I'm going to push on with it simply because despite all the drawbacks it's better than starting from scratch every time with a new Web Application project.
I have been developing ASP.Net from the beginning so like others with a lot of&n...
I have been developing ASP.Net from the beginning so like others with a lot of experience even though SharePoint is built on top of the 2.0 Framework you are very limited in what you can do in SharePoint and it is very frustrating..
I often equate working with SharePoint to wearing hand-cuffs, there are two main themes which I found very difficult to deal with:
1. Customization
2. No relational database
Although there are templates, and assorted workarounds it is very problematic to customize OOTB functionality through Visual Studio.
2. Every application I have EVER built was based on relational data, how MS could give you a platform that doesn't effectively allow the standard T-SQL and CRUD functionality is a gross short-coming.
Regardless, "I will build it, because they do come", but I will continue to hope for a better design paradigm.
SharePoint provides a data store with strengths and weaknesses. Using XML files ...
SharePoint provides a data store with strengths and weaknesses. Using XML files on a file share as a data store also has strengths and weaknesses. If a tool doesn't meet your needs, use something else. We can certainly hope for improvements to SharePoint's data APIs, but in the meantime there's nothing preventing you from using your old techniques.
Unfortunately our clients want to use SharePoint but they want all the data mani...
Unfortunately our clients want to use SharePoint but they want all the data manipulation features that come with MSSQL. They don't care if it is a product or a platform, they wouldn't know the difference if you explained it to them they just want SharePoint and expect all the features that come with any other website that stores data.
Sharepoint can be made to do relational work. I've done it and I'm not eve...
Sharepoint can be made to do relational work. I've done it and I'm not even a developer. And so has lots of others who are developers.
in my company, and others with 5000 to 18,000 employees many have been using Excel spreadsheets to do much of their work, not relationa databases. SharePoint adds lots more horsepower to spreadsheet like work, and about 80% of things done in SharePoint do not use relational databases.
I've always relied on my IT develpers to do the work, but I mostly have been burned by long delays, and get applications don't work as my plan called for, and that only they can fix if something goes wrong. To solve that, I looked for something that lots of community people rallied around to do development on, and found SharePoint. I've been able to build a server from scratch, install a MOSS Engterprise site, and train other users to make it work for them. I do much of my own "custom" work without using visual studios.
No product is perfect, but I just got plain tired of waiting for develpers to show me something with the kind of things I can do with SharePoint. And now, SP 2010 is due out. There is new information that has been released as a sneak preveiw on the web. It seems to take care of lots of complaints I've heard.
Don't get me wrong, I like developers, but sometimes even they develop something so complex it takes forever to get something out of them. SharePoint gave me a way out.
This is exactly how SharePoint should be used. It is not a development platform....
This is exactly how SharePoint should be used. It is not a development platform. It is something that should be installed, CSS tweaked, and thrown to your users to manage by themselves. As long as your users are a bit tech savvy and don't expect a 100% solution and if they are content with a make-do-and-mend approach then SharePoint is a perfect fit and empowering for the normal user. As soon as you start introducing developers into the mix then you are moving away from the core strength of SharePoint, that strength being it is a 80% fit most of the time.
Unfortunately SharePoint is sold to the management as the next panacea and the users are either too busy to learn a new technology or the IT departments are too scared to let normal users loose with that amount of control. So we get developers in to make SharePoint work the we want it to and that is where the problems start.
Remember the KISS principle. Keep it Simple, Stupid.
As others have stated, SharePoint is both a product and a platform. There are en...
As others have stated, SharePoint is both a product and a platform. There are engagements when I stick to OOTB capabilities of WSS/MOSS, this is a big turnoff to developers that see such an engagement as administration. Other times that I perform heavy customizations via the APIs. The key is understand the technology stack (takes time), the business requirements, and doing your design and implementation accordingly.
I would really like to see SharePoint see a kind of 'service release' similar to...
I would really like to see SharePoint see a kind of 'service release' similar to Windows 7 for Vista. This release would address the significant pain points in consultation with the community and add some important new features (but not the huge number we had with 2007). The old way of doing things would be deprecated and then removed in the subsequent version.
It really feels like SharePoint is bogged down with some design flaws, and technologies that make it hard to develop for. It would be nice to clear the cruft away.
Source: Sanjay Narang's - Should I Build my application in SharePoint vs. ASP.ne...
Source: Sanjay Narang's - Should I Build my application in SharePoint vs. ASP.net
Many times, I get question from my customers if they should build a new application in SharePoint or ASP.net. For certain kind of applications such as Collaboration or KM Portal, Internet facing web site, intranet social networking site, applications requiring browser enabled forms or Enterprise Search, SharePoint is THE option to go for.
However, it's not a straight forward answer for all types of applications. You need to look at different aspects before deciding. I've put a high level list of questions that I use to make such decisions. Hopefully, the questions should help you also.
What are the features that you are going to use out-of-the-box (OOB) from SharePoint (site provisioning, search, version control, roles/groups, easy forms (list edit, new, view pages), collaboration, workflows, content deployment, alerts ) )
The list of feature is huge, have a look at evaluation guides for complete list: WSS, SharePoint and Search
If you are not using any of these features what's it that you'd gain from SharePoint?
If you need these features, why are you thinking of not going with SharePoint? What's the effort if you custom build those features?
What are the features that I'm going to build custom (for example, reports for some applications would be custom and need relational tables with transactional support)
How much effort is required for custom development in ASP.net vs. in SharePoint? Is the difference huge?
What kind of application it is? Is it one off application, or this is going to replicated across many teams. SharePoint is an excellent platform where you need to replicate one type of site to many teams.
What are the required Scale and Performance objectives of your application
SharePoint has some boundaries, most of these can be avoided with adjusted design or workaround. Would the adjusted design or workaround be acceptable to your users? Examples:
2000 list items at a single level – a well know limitation
2000 security principles for a securable object – a lesser known limitation, but this can create problems when users in a site collection grows more than 2000 – there are workarounds for this (such as using AD security groups) – are those acceptable?
SharePoint may not be able to match the performance of a plain ASP.net application as it does a lot more work (security trimming, getting files from database etc.) Can your performance targets be met using SharePoint?
You can check benchmarks published by Microsoft or other vendors (such as HP, Intel) to see if SharePoint can meet your requirements. Links to most of the benchmarks are available in this blog post: SharePoint (Performance, Stress ) Load Testing
How many employees would be using these application? How many requests you can expect for customization from different teams. Remember, SharePoint provides a pretty good platform for customization and personalization.
What's the cost you can afford. Remember, you need not buy any separate license, if you are only using Windows SharePoint Services. Have a look at difference of features between WSS and MOSS in the comparison Excel spreadsheet.
What skills your developers have? Though SharePoint is based on ASP.net, but you need have additional knowledge to develop SharePoint applications. Also, development is SharePoint is not like normal .NET development (for example, you don't get WYSWYG designer to develop web parts for SharePoint). You also need to take extra care to follow same build and source control process that you do for .Net code. Have a look at Application Lifecycle Management Resource Center for SharePoint Server for more details.
As I don't have WSSv3, I'd like to hear your impressions on it and a discussion ...
As I don't have WSSv3, I'd like to hear your impressions on it and a discussion on what it delivers. It seems like there's not much documentation on what this thing actually is and what it allows developers to do beyond the very generic best video poker hand frequency and encompassing title of "workflow".How flexible is this engine? Is it in any way related to WWF? What is the featureset of the workflow engine? Is it any good? What are the key limitations? And so on.If you know of other good resources to answer these questions, I think many in the community would appreciate links.
Thanks.
Time for my 2 cents...
I think WSS shouldn't be compared to plain old ASP.NET. ...
Time for my 2 cents...
I think WSS shouldn't be compared to plain old ASP.NET. WSS is built for a narrow range of solutions and even some of that it doesn't do so well. (did someone mention CMS?) ASP.NET on the other hand will cover a much broader range of solutions.
As for the workflow engine, it's WF. This is the direction that Microsoft seems to be going with workflow. I heard a while back that BizTalk will be implementing it too but not sure on that one.
Early on as I was learning to program against WSS, the thing that really annoyed me was that I didn't control the UI anymore. Rather the data drove it out. It was difficult to get used to.
I'm sure the other thing you may have noticed is that the .NET Framework has moved on a bit since WSS 3 was released (under .NET 3.0). Without a fair amount of work, it's looking pretty dated now.
If you don't "get" SharePoint, it's likely you can't fully digest enterprise arc...
If you don't "get" SharePoint, it's likely you can't fully digest enterprise architecture. Someone in the thread mentioned "8 years" of development experience. I have 13 years of development experience and I've been around long enough to note that sometimes developers with multiple years of experience can be talking about multiple years of the same. It doesn't count if you keep reliving the same year over and over again. If you're 13 years into a programming career - then you have more-than-likely relived a year on a few occassions. Unfortunately, the ones who shun SharePoint are the ones that need the exposure the most. Take a look at the SharePoint core technologies and architecture. You could learn a lot. Don't be just a code monkey for the rest of your life. Trust me, it gets old. If you want a real challenge, stretch yourself and jump into solutions architecture or go build a device driver or two.
Before you drink the sharepoint coolaide that many here are obsequiously cheerle...
Before you drink the sharepoint coolaide that many here are obsequiously cheerleading for you should read what independent sources have to say about sharepoint. From a Forrester Research report:
"(A)s many shops are discovering, SharePoint is also a development platform that people both inside and outside of IT use to create intranets, outward-facing portals, electronic forms, workflows, and even dashboards. The promise of SharePoint: Your organization will be able to create and deploy collaboration applications faster and give businesspeople productive new tools.The pitfalls: SharePoint can add new unplanned demands as your teams fill the product's gaps in application life-cycle management and enterprise integration and as they create policies to prevent a new chaos of usergenerated applications."
"Forrester noted that "SharePoint is a pure Microsoft server stack that closes off any opportunities to substitute third-party databases, Web servers, and other products for Microsoft components," Forrester cautioned. In addition, the Enterprise Edition of SharePoint, which includes many of the advanced app-development features, "can add$200 per userto your budget," the report's authors noted."
"The Forrester study provided a fairly lengthy laundry list of app-dev-specific shortcomings in Office SharePoint Server 2007 — everything from the lack of support for SharePoint database replication, to required custom development to include data stored in SharePoint lists for reporting purposes. Application lifecycle management of SharePoint is incomplete, the report authors said. And enterprise data integration for SharePoint is 'primitive.' "
"Forrester recommended customers keep their SharePoint customizations to a minimum and that they create a comprehensive SharePoint governance policy sooner rather than later."
Interesting discussion, and in most part ignores the root problem. I've been do...
Interesting discussion, and in most part ignores the root problem. I've been doing ASP.NET apps for years and after looking at SharePoint have dismissed it for the following reasons:
Bad db architecture, SharePoint should only hold the simplest of data and i can't get to the database schema.
WebForms based, scourge of web development.
If anyone has looked at SharePoint CSS and JS, it is amateur work at best.
I still have no help with business rules and have to write it myself, I am not counting workflow stuff in SharePoint as any help in this regard.
So I would rather spend a few weeks, develop my own code base, write the application and embed it in an Iframe if I need SharePoint integration as well as use the SharePoint API to interact with SharePoint if requirements call for such interaction.
In summary, SharePoint is too complex, over engineered and badly engineered application to extend. I get more bang for my buck by starting fresh... and if I am a architect/developer worth my paycheck I am not developing authentication, user management, simple CRUD froms, master pages and layouts from scratch every time, so all the benefits of SharePoint only benefit those without vision or decent library set.
Comments (32)
May 14, 2009
Anonymous says:
I find this question a bit strange, and it's ridiculous that people still ask s...I find this question a bit strange, and it's ridiculous that people still ask such questions, because they don't understand what the SharePoint is.
SharePoint is just a platform that build on the top of asp.net and is appropriate for the specific needs. It's not a question of taste - use it or not, it's dictated by requirements and architecture.
Asking why asp.net devs wont use SharePoint is the same as asking why asp.net devs wont use AJAX for example ? u use it when it's necessary only
May 14, 2009
Jeremy Thake says:
With these comments in mind...why not think about taking your questions a step f...With these comments in mind...why not think about taking your questions a step further...what requirements and architecture suite SharePoint rather than just using ASP.NET. Essentially its the same question rephrased...e.g. what are the pros and cons of each approach and where does it fit?
If we can articulate what the Platform is to ASP.NET devs maybe they will consider it for their next solution...
Comparing AJAX to SharePoint is not exactly the best comparison but I get where you're coming from
Jun 26, 2009
Mark Stokes says:
I completely disagree with this comment. I think the question IS valid. Why do...I completely disagree with this comment. I think the question IS valid. Why don't ASP.Net developers use WSS? This is a major problem I have had when building SharePoint teams up. I find it very difficult to get good coders who want to work with WSS.
I personally think that it is because, on most projects, writing code for a SharePoint project is quite dull.
I know that a lot of my friends who are top rate ASP.Net developers have no interest at all in SharePoint development. Mainly because of their nature. They like to write it all themselves and do, in their words, "proper" development.
I think this came from 2003 where the coding wasn't much fun or challenging and a lot of the "geeky" top notch asp.net developers had a major problem with the "niggly bits" of SharePoint. Those annoying little traits that we have learned to deal with and work around, for a lot of developers, that constitutes flaws in the framework and their nature does not allow them to cope with it.
Since MOSS has been released there is a lot more scope for enterprise level applications, workflow, silverlight, WCF, so I think it is a branding issue that we need to sort out to get more asp.net developers onboard. I think they will now enjoy working with the product. We just need to get them back on board. Or, not, then us contractors stay in demand and keep our rates up
Just my thoughts.
Jul 22, 2009
Anonymous says:
In my world, the vast majority of requests for service are for workgroup apps of...In my world, the vast majority of requests for service are for workgroup apps of varying size and complexity. As an IT Manager I have struggled over the past few years trying to get my peers to embrace Sharepoint as a solution provider. Also, I have had the same experience with .NET developers. However, my experience has been fairly consistent in that whether you're dealing with IT managers or .NET developers there is an inverse relationship between resistance to WSS and WSS knowledge and experience. In other words, IT folks who have taken a few minutes to learn about WSS and work with it a bit are far more likely to embrace it. Unfortunately, these folks are significantly in the minority as MS haters and IT folks with litle or no WSS knowledge or experience are significantly in the majority. Maybe someday this will change but I am still amazed at the longevity of the resistance.
Aug 27, 2009
Anonymous says:
RE: "However, my experience has been fairly consistent in that whether you're de...RE: "However, my experience has been fairly consistent in that whether you're dealing with IT managers or .NET developers there is an inverse relationship between resistance to WSS and WSS knowledge and experience."
Hmmmm.... In my experience there is an inverse relationship between those who resist being put in the deep end of a pool and those who already know how to swim. (Profound observation, huh?).
RE: In other words, IT folks who have taken a few minutes to learn about WSS and work with it a bit are far more likely to embrace it.
Sounds like you are talking about SharePoint end users (aka 'power users') who use the UI to make lists and sharepoint designer to alter things, rather than sharepoint developers. If you are talking about developers please consider the possibility that you are delusional as sharepoint development has a steep learning curve and takes far more than 'a few minutes'.
Jul 27, 2009
Mike 'MOSSuMS' Stringfellow says:
This is the answer why: Code Monkey Hates SharePoint Get any potential SP devs ...This is the answer why: Code Monkey Hates SharePoint
Get any potential SP devs to complete this survey first.
Kind regards, MOSSuMS
.
Aug 27, 2009
Anonymous says:
"This is a major problem I have had when building SharePoint teams up. I find it..."This is a major problem I have had when building SharePoint teams up. I find it very difficult to get good coders who want to work with WSS."
If you wish to hunt elephants you should hire elephant hunters; likewise, if you wish to build SharePoint applications you should hire SharePoint Developers. While Polar Bear hunters may have experience shooting big guns, withstanding extreme weather and going after large mammles, there are several essential traits and skills they do not have.
I would imagine that for a Polar Bear hunter to transform himself into an Elephant Hunter he would need at least the following:
While it's certainly possible for a Polar Bear Hunter to transform herself into an Elephant hunter, she must first undergo some training.
I'd be willing to bet lots of smaller IT departments want to magically convert asp.net developers into sharepoint develpors without providing them with adequate time and training and without appropriate compenstation (from what I've see Sharepoint dev jobs pay anywhere from 15-30K more than asp.net dev jobs). From my perspective, sharepoint is a huge investment and needs to be taken seriously. Coaxing asp.net developers into figuring out sharepoint on the job is not a serious approach. Hmmm.. and while the following is an unfair analogy, I will say it anway: coaxing asp.net developers into 'figuring out' sharepoint (on the job) sounds alot like the same employers who coaxed classic asp/vb scripters into 'figuring out' asp.net on the job. Bad idea.
May 14, 2009
Anonymous says:
May I suggest adding to the Cons of Sharepoint that a significant issue of the s...May I suggest adding to the Cons of Sharepoint that a significant issue of the server development environment is running as Administrator whereas ASP.NET development can easily be done on Cassini with a standard user account.
May 15, 2009
Jeff Dalton says:
WSS provides a lot of rich features, but it also introduces a lot of complexity....WSS provides a lot of rich features, but it also introduces a lot of complexity. As far as developing LOB applications I think the cons outweigh the pros for using SharePoint as a development platform (development experiance, need a specialized administrator to manage the enviornment, ...). Case in point imagine if team had built StackOverflow on top of WSS... there is no way they would run that on 2 servers and would have been able to deliver that application in 16 weeks.
May 15, 2009
Rex Morgan says:
WSS is powerful, but for a much narrower purpose than Microsoft (and much of the...WSS is powerful, but for a much narrower purpose than Microsoft (and much of the Sharepoint community) claim. It is not even remotely close to a general-purpose development platform. If your business processes and IA strategy already line up with a WSS-compatible model, then Sharepoint gets some basic DM and collaboration plumbing out of the way for you.
Here are the major reasons I see ASP.NET developers avoiding Sharepoint:
- Steep learning curve. In ASP.NET, any newbie can make a Hello World application in less than an hour and generally grasp what's going on to make that happen. Learning & complexity grow in parallel with the developer's needs. By contrast (and maybe I'm just a little slower than most) - I have been using Sharepoint and MOSS for nearly two years solid and I *still* don't fully grasp what all is happening under the hood between writing a web part and getting it to show up on a page. That's fine for making Hello World widgets, but not for building and deploying complex LOB systems. Knowing ASP.NET backwards and forwards takes up a lot of space in my brain. I can't justify learning something just as vast and complex just so I can avoid writing my own publishing workflow.
- Overly simplistic. Although *getting it to do something* is very complicated, what it *actually does* is remarkably simple. But how many applications actually have a model which maps to a simple tree hierarchy of items? Most applications use an RDBMS because their model doesn't look anything like a file system. WSS emulates a file system on top of an RDBMS. You tie yourself into a pretzel writing CAML which accomplishes the same thing a mid-level developer could write in 2 minutes using SQL. Developers who *do* give it a try will last all of a week before giving WSS the boot and going back to SQL Server. Imagine trying to build Facebook on WSS. And yet in my experience, most applications have more in common with at least some aspect of Facebook than they do with the way WSS works.
- Microsoft has not attempted to sell it to ASP.NET developers. This might be the biggest one. Even something like SQL Server gets sexed up and trotted out at MIX. Any moderately-plugged-in ASP.NET developer can name at least one feature coming up in c# 4.0. WSS is... that thing I read about on some enterprise architecture blog. No developer uses Sharepoint because they want to, they use it because their EA got a ton of literature from MIcrosoft about it and learned all about it at the architecture conference, and got together with the CIO and decided that Sharepoint would be the development platform for the 3-year IT strategy.
Jun 22, 2009
Anonymous says:
Here's a quick list of reasons for my anti-SharePoint development tweet yesterda...Here's a quick list of reasons for my anti-SharePoint development tweet yesterday.
Some background info to give some context:
, with the last 12 months in ASP.NET
3.5 working heavily in Visual Studio 2008.
development more "natural".
development).
in general. It all combines to make for an unhappy developer.
- I've been a commercial developer for 8 years now. I started in Classic ASP and spent the last 5 years also in working ASP.NET
- I follow developers like Scott Hanselman and Jeff Atwood and read books like Pragmatic Programmer. I'm continually trying to improve the overall technical solution quality and the general development experience. I have had to make some unhappy comprimises to get my current SharePoint solution working.
- I have poor recall memory but excellent recognition memory. Unfortunately I'm finding SharePoint development relies heavily on recall for fixes and workarounds (things the development toolsets - ie Visual Studio - should handle for us so we can get on with creating the best possible solution and user experience). By comparison, I find ASP.NET
- I'm heavily focused on software usability, producing the best possible product to meet business needs and improving developer efficiency. I'm finding SharePoint more difficult than need be to meet these goals (especially in caprison to standard ASP.NET
- I get frustrated that in 2009 we don't have the tooling (IDEs, Frameworks, APIs, etc) that allow developers to work at the "higher levels" of abstraction I would expect - i.e. that hide the mundane detail.
- My current dissatisfaction with SharePoint extends from both the specific difficulties I'm having with SharePoint as well as increasing diffulty in recent years with development using the .NET Framework and ASP.NET
- 12 months ago I did the MS certification of installation and configuration of SharePoint Server 2007 (Exam 70-630 I think) - I actually haven't worked on any SharePoint project since then. 2 weeks ago I started my first SharePoint development project. I'm developing Features (modules) and a site template using Visual Studio 2008 and need to deploy to an Extranet in [I think] a Farm configuration.
Some the my main gripes with SharePoint development are:
development and adds considerable time and pain to the process. Everything seems half-baked.
devs to jump across. As it is, I'm just being prodded in the right direction by a more experience developer then Googling for solutions to specific problems and requirements - this "Cody by Coincidence" and "Cody by Google" is not what I consider an optimal learning process for understanding the product.
for more information regarding the Location property on the Assembly element and the description I got was "The relative file path of the assembly". Relative to what?!? When I go looking for documentation it means I need a better understanding than what I derice from teh API. Again, it's a frustration that leads to a poor development experience.
- Tooling: Visual Studio does not have enough integration with SharePoint, especially for testing and debugging. It is try painfail in comparison to ASP.NET
- The background knowledge required to start SharePoint development and actually know and understand what you are doing is extensive, even for an experience .NET developer. It is hard for experienced ASP.NET
- I having to perform lots of manual settings/file changes while developing in Visual Studio - eg Web.config and Module.xml. Time consuming, repetative and error prone. It also points to a half-baked product.
- There is considerable time wasted on basic tasks and fixing errors rather than being able to concentrate on important issues, like providing be best solution to the customer business needs.
- At least 50% of my day is currently spent Googling to find solutions to SharePoint errors and other technical problems. The constant stream of errors and friction it places on development is leaving me annoyed and aggavated.
- The whole development process is highly inefficient and has high development friction - there's NOTHING smooth about it (at least that's the way it seems - with the problems overshadowing any good that is coming from the experience).
- .NET and and SharePoint development requires us to deal increasingly in abstraction that hide lower level detail (which I belive is good and necessary), through increasing increasing class base. Yet as developers I find we often have to dig in an know the low level implementation detail in order to understand the abstraction, what it is doing and how to implement it. Again, wasted time, efficiency and cost.
- Documentation in MSDN (actually, much of what comes out of Microsoft in general) is a joke nowadays and often little better than a auto-generated snapshots of the API (which it probably is). For example, I looked up http://msdn.microsoft.com/en-us/library/ms468837.aspx
Don't get me wrong, I think SharePoint has potential to be a great product for both users and developers and is certainly heading in the right direction. However, from my dealings with it as a user and my current experience as a developer I feel we have a long way to go before polished enough to provide the experience we should be getting.
May 29, 2009
Anonymous says:
perfectly statedperfectly stated
Aug 27, 2009
Anonymous says:
Great comment, nicely structured. Glad its not just me who feels like this!Great comment, nicely structured. Glad its not just me who feels like this!
Sep 04, 2009
Anonymous says:
Soo true !I can't add another statement, I hope Steve Blamer read these...(but h...Soo true !I can't add another statement, I hope Steve Blamer read these...(but he surely not)
May 20, 2009
Anonymous says:
More comments on stack overflowMore comments on stack overflow
May 21, 2009
Anonymous says:
totally agree with rex and anontotally agree with rex and anon
Jun 08, 2009
Richard Harbridge says:
Hello Jeremy and the Developer Community, I am not sure this Con is really accu...Hello Jeremy and the Developer Community,
I am not sure this Con is really accurate.
Development Environment
Server development environment required
You can develop SharePoint components with just the DLL's on any computer with pretty much any operating system. For testing you need WSS or MOSS so I can see where some confusion arises in this. It is also important to note that you can run WSS (quite easily) on Vista, and develop on Vista. Thereby allowing you to test, and develop on the same local machine without any need for a server.
Do we have other cons?
The too many options doesn't seem like a Con to me. Really it can be perceived as a pro, or a con. In my experience that flexibility allows for you to develop it in a way that either works best for the specific client/support team, or in a way that is fastest/most cost effective.
I can agree with many of the points made by anonymous. However I don't see how many of these items don't apply to ASP, or other .Net related code. If you haven't read the books, or learned it all in the first place it really represents the same issues (too googling, and recall). Anyways looking forward to anyones thoughts or corrections on my quickly presented opinions.
Thank you,
Richard Harbridge
Jun 22, 2009
Anonymous says:
I have to agree with Anonymous (3). Developer experience is still very poor. Fea...I have to agree with Anonymous (3). Developer experience is still very poor. Feature wise there is lots to take advantage of but very hard to use due to lack of doco.
I'm going to push on with it simply because despite all the drawbacks it's better than starting from scratch every time with a new Web Application project.
Jun 22, 2009
Jeffrey Langdon says:
I have been developing ASP.Net from the beginning so like others with a lot of&n...I have been developing ASP.Net from the beginning so like others with a lot of experience even though SharePoint is built on top of the 2.0 Framework you are very limited in what you can do in SharePoint and it is very frustrating..
I often equate working with SharePoint to wearing hand-cuffs, there are two main themes which I found very difficult to deal with:
1. Customization
2. No relational database
Although there are templates, and assorted workarounds it is very problematic to customize OOTB functionality through Visual Studio.
2. Every application I have EVER built was based on relational data, how MS could give you a platform that doesn't effectively allow the standard T-SQL and CRUD functionality is a gross short-coming.
Regardless, "I will build it, because they do come", but I will continue to hope for a better design paradigm.
JL
Jun 22, 2009
Keith Dahlby says:
SharePoint provides a data store with strengths and weaknesses. Using XML files ...SharePoint provides a data store with strengths and weaknesses. Using XML files on a file share as a data store also has strengths and weaknesses. If a tool doesn't meet your needs, use something else. We can certainly hope for improvements to SharePoint's data APIs, but in the meantime there's nothing preventing you from using your old techniques.
Jun 22, 2009
Jeffrey Langdon says:
Unfortunately our clients want to use SharePoint but they want all the data mani...Unfortunately our clients want to use SharePoint but they want all the data manipulation features that come with MSSQL. They don't care if it is a product or a platform, they wouldn't know the difference if you explained it to them they just want SharePoint and expect all the features that come with any other website that stores data.
Jul 17, 2009
Anonymous says:
Sharepoint can be made to do relational work. I've done it and I'm not eve...Sharepoint can be made to do relational work. I've done it and I'm not even a developer. And so has lots of others who are developers.
in my company, and others with 5000 to 18,000 employees many have been using Excel spreadsheets to do much of their work, not relationa databases. SharePoint adds lots more horsepower to spreadsheet like work, and about 80% of things done in SharePoint do not use relational databases.
I've always relied on my IT develpers to do the work, but I mostly have been burned by long delays, and get applications don't work as my plan called for, and that only they can fix if something goes wrong. To solve that, I looked for something that lots of community people rallied around to do development on, and found SharePoint. I've been able to build a server from scratch, install a MOSS Engterprise site, and train other users to make it work for them. I do much of my own "custom" work without using visual studios.
No product is perfect, but I just got plain tired of waiting for develpers to show me something with the kind of things I can do with SharePoint. And now, SP 2010 is due out. There is new information that has been released as a sneak preveiw on the web. It seems to take care of lots of complaints I've heard.
Don't get me wrong, I like developers, but sometimes even they develop something so complex it takes forever to get something out of them. SharePoint gave me a way out.
Aug 27, 2009
Anonymous says:
This is exactly how SharePoint should be used. It is not a development platform....This is exactly how SharePoint should be used. It is not a development platform. It is something that should be installed, CSS tweaked, and thrown to your users to manage by themselves. As long as your users are a bit tech savvy and don't expect a 100% solution and if they are content with a make-do-and-mend approach then SharePoint is a perfect fit and empowering for the normal user. As soon as you start introducing developers into the mix then you are moving away from the core strength of SharePoint, that strength being it is a 80% fit most of the time.
Unfortunately SharePoint is sold to the management as the next panacea and the users are either too busy to learn a new technology or the IT departments are too scared to let normal users loose with that amount of control. So we get developers in to make SharePoint work the we want it to and that is where the problems start.
Remember the KISS principle. Keep it Simple, Stupid.
Jun 22, 2009
Anonymous says:
As others have stated, SharePoint is both a product and a platform. There are en...As others have stated, SharePoint is both a product and a platform. There are engagements when I stick to OOTB capabilities of WSS/MOSS, this is a big turnoff to developers that see such an engagement as administration. Other times that I perform heavy customizations via the APIs. The key is understand the technology stack (takes time), the business requirements, and doing your design and implementation accordingly.
Steven Fowler
Jun 23, 2009
Alex Angas says:
I would really like to see SharePoint see a kind of 'service release' similar to...I would really like to see SharePoint see a kind of 'service release' similar to Windows 7 for Vista. This release would address the significant pain points in consultation with the community and add some important new features (but not the huge number we had with 2007). The old way of doing things would be deprecated and then removed in the subsequent version.
It really feels like SharePoint is bogged down with some design flaws, and technologies that make it hard to develop for. It would be nice to clear the cruft away.
Jun 26, 2009
Jeremy Thake says:
Source: Sanjay Narang's - Should I Build my application in SharePoint vs. ASP.ne...Source: Sanjay Narang's - Should I Build my application in SharePoint vs. ASP.net
Many times, I get question from my customers if they should build a new application in SharePoint or ASP.net. For certain kind of applications such as Collaboration or KM Portal, Internet facing web site, intranet social networking site, applications requiring browser enabled forms or Enterprise Search, SharePoint is THE option to go for.
However, it's not a straight forward answer for all types of applications. You need to look at different aspects before deciding. I've put a high level list of questions that I use to make such decisions. Hopefully, the questions should help you also.
Jul 03, 2009
Anonymous says:
As I don't have WSSv3, I'd like to hear your impressions on it and a discussion ...As I don't have WSSv3, I'd like to hear your impressions on it and a discussion on what it delivers. It seems like there's not much documentation on what this thing actually is and what it allows developers to do beyond the very generic best video poker hand frequency
and encompassing title of "workflow".How flexible is this engine? Is it in any way related to WWF? What is the featureset of the workflow engine? Is it any good? What are the key limitations? And so on.If you know of other good resources to answer these questions, I think many in the community would appreciate links.
Thanks.
Jul 03, 2009
Mike Hansford says:
Time for my 2 cents... I think WSS shouldn't be compared to plain old ASP.NET. ...Time for my 2 cents...
I think WSS shouldn't be compared to plain old ASP.NET. WSS is built for a narrow range of solutions and even some of that it doesn't do so well. (did someone mention CMS?) ASP.NET on the other hand will cover a much broader range of solutions.
As for the workflow engine, it's WF. This is the direction that Microsoft seems to be going with workflow. I heard a while back that BizTalk will be implementing it too but not sure on that one.
Early on as I was learning to program against WSS, the thing that really annoyed me was that I didn't control the UI anymore. Rather the data drove it out. It was difficult to get used to.
I'm sure the other thing you may have noticed is that the .NET Framework has moved on a bit since WSS 3 was released (under .NET 3.0). Without a fair amount of work, it's looking pretty dated now.
Jul 16, 2009
Anonymous says:
If you don't "get" SharePoint, it's likely you can't fully digest enterprise arc...If you don't "get" SharePoint, it's likely you can't fully digest enterprise architecture. Someone in the thread mentioned "8 years" of development experience. I have 13 years of development experience and I've been around long enough to note that sometimes developers with multiple years of experience can be talking about multiple years of the same. It doesn't count if you keep reliving the same year over and over again. If you're 13 years into a programming career - then you have more-than-likely relived a year on a few occassions. Unfortunately, the ones who shun SharePoint are the ones that need the exposure the most. Take a look at the SharePoint core technologies and architecture. You could learn a lot. Don't be just a code monkey for the rest of your life. Trust me, it gets old. If you want a real challenge, stretch yourself and jump into solutions architecture or go build a device driver or two.
Aug 27, 2009
Anonymous says:
Before you drink the sharepoint coolaide that many here are obsequiously cheerle...Before you drink the sharepoint coolaide that many here are obsequiously cheerleading for you should read what independent sources have to say about sharepoint. From a Forrester Research report:
http://blogs.zdnet.com/microsoft/?p=1492
http://www.forrester.com/Research/Document/Excerpt/0,7211,45560,00.html
Sep 05, 2009
Edin M says:
Interesting discussion, and in most part ignores the root problem. I've been do...Interesting discussion, and in most part ignores the root problem. I've been doing ASP.NET apps for years and after looking at SharePoint have dismissed it for the following reasons:
So I would rather spend a few weeks, develop my own code base, write the application and embed it in an Iframe if I need SharePoint integration as well as use the SharePoint API to interact with SharePoint if requirements call for such interaction.
In summary, SharePoint is too complex, over engineered and badly engineered application to extend. I get more bang for my buck by starting fresh... and if I am a architect/developer worth my paycheck I am not developing authentication, user management, simple CRUD froms, master pages and layouts from scratch every time, so all the benefits of SharePoint only benefit those without vision or decent library set.
Nov 09, 2009
Jeremy Thake says:
I've written an update on this opinion from a SharePoint 2010 perspective too.I've written an update on this opinion from a SharePoint 2010 perspective too.