Sharepoint - Pros and cons of code vs. no code in SharePoint development?

"It depends" :)

No code is great when you want to do something reasonably small, quick, not wide ranging on your site. You can do a fair bit with JavaScript, content editor webparts and client object model.

It isn't particularly scalable though. You end up copying a lot of stuff around, hacking away at master pages in notepad, that sort of thing just because you can't easily deploy code.

It comes down to whether you have complex systems which are maintainable because you follow decent solid software engineering principles, repeatable trustable deployment, source control, supportability etc

The fact that you create things through the UI and use JavaScript in CEWP, change master pages etc doesn't mean you don't have an application. You have still built one, just one which is harder to fix when it goes wrong.


The client side (no-code as you call it) approach is non-destructive to the platform as it all happens with what SharePoint natively serves up. If something breaks, you remove the problematic script and you're back functioning natively without any fancy customizations. If done right, this can still be very powerful and SharePoint gives you native version control. So your JS files can be versioned and rolled back quickly if there is an issue.

The coded approach is modifying what the server is sending to the user, so it's much more destructive in that if you don't have something right, i can cripple the site and or farm as a whole.

The client side approach is harder to deploy to multiple instances unlike the coded solutions which are deployed as features and can easily be activated anywhere.

I am in the former (no-code) with some spatterings of code (data view web parts, some custom CSS and master pages) and we can still deliver rich, specifically targeted applications.


As I am in the exact same situation here in my company, I can imagine your situation. When I searched for answers I stumbled upon Marc D Andersons Blog and especially his Middle Tier Manifesto. These ideas helped me a lot to define my situation.

If you are all new to JavaScript in SharePoint and don#t know yet what you can do with it, I recommend you to take a close look at Marcs SPServices library. It is an abstraction of SharePoints Webservices and all about retrieving and sending data from and to SP lists and so on.