What's a good CMS for an intranet site? - wordpress

I know this question has been tossed around by many developers and designers. I just got finished with my companies intranet site using joomla 1.5 with a custom bulit template and modifying almost everything in joomla. It got me thinking if I should be using an enterprise CMS instead of an free open source CMS. I almost went with wordpress, but the company wanted joomla for there site. It was a great for me to jump into another CMS and learn, but is there a better CMS out there that meant for intranet or does it really matter at all?

Try OpenAtrium, its free.
http://www.openatrium.com

If you're planning an intranet project using a CMS, then you'll need to clarify a couple of requirements before choosing the right one. I have a blog post with some simple choices for choosing a cms for an intranet, more specifically on collaboration and community features. But other more basic requirements are:
Is there a technology stack that the organization prefers/uses? Does it need to be on-premise or cloud based? This will filter down the candidates
Is the Intranet for just posting read-only notices and information, or are community features (groups, lists, news feeds, etc)
Does the Intranet require SSO so that organization members can seamlessly interact with content based on their identity?
What sort of budget is available for the Intranet? All CMS installs have a cost, even the ones without any subscription cost.
Is document and file management an important requirement?
Are customizations needed for any specific Intranet functionality or connectivity to other systems?
Wordpress will do a simple intranet well, but will start to become more work if you start getting complex requirements around authentications, groups and social functionality. If on the LAMP stack and looking for more complex requirements, look at Drupal or Joomla. On the Windows/.NET side there have been suggestions in this answer already - the choices span from full commercial answers such as Sharepoint to those available open source and commercially licensed like Dnn.

Nowadays everything is called a CMS - tools to maintain websites, advanced portals, wiki's, and so on. The requirements for a "CMS" are drastically different for intranets and public websites, however.
Intranets usually have a high level of interaction, lot's of user generated content, different content types, and so on. More users need to be able to login to the system (basically everyone, not just the content editors) with different levels of authorization and different roles in general. Collaboration in general is much more important than with an average "public" CMS based website.
Furthermore you will usually want different types of plugins. Google analytics and SEO are much less important, you'd be more interested in some active user plugin, recent publications, integration with other internal tools (i.e. project management) and possibly exposing other datasources (databases, telephone directories, filesystems with internal documents), and so on.
In my personal experience, Plone is a good choice. It provides most of the above out of the box or through existing extensions and it has excellent integration possibilities with external systems. Cyn.in also provides a somewhat completer plone based solution.
If Plone's too much for you, you could consider some wiki-like system, such as TWiki or MediaWiki

As others have said, it will depend on your requirements.
If you are looking for something more in the enterprise space, then elcomCMS might be a good fit - it's .NET based though (not sure if that rules it out in your case), but has an API and other dev considerations.
Pretty strong as both a web CMS and an intranet.
http://www.elcomcms.com/Product/elcomCMS-Overview/Intranets

I have user long time drupal, but now I switching to WordPress it's much easier, if you don't want to create a community or something like this.

Related

Architecture for Web-App development aimed at aiding interoperability between CMS systems. Has it been done?

I'm thinking about attempting to design a new framework architecture aimed at allowing a web app to later be easily ported into a system such as Drupal or Joomla while maintaining the independence of the original app such that updates to core functionality would require only one release or otherwise minimal extra work.
Before I start on this however, I would like to see what work has previously been done that comes closest to what I am proposing. So an answer to this question would come in the form of a reference to the most similar work or if possible a definitive 'no' that this has not been done before.
Clarification by example: MediaWiki is a common web app that has become one of the most highly recommended of its kind. However, site admins building their sites with Drupal would be required to hack MediaWiki in order for it to play nicely with Drupal in terms of sharing a user base for example. Imagine that MediaWiki has decided to do a complete rebuild of their system, what design could be used to make this interaction simply require a Drupal module or Joomla component and thus make MediaWiki available to more users?
I'm using MediaWiki as just an example, I think modules and components already exist that solve this particular problem but I hope I am able to get my idea across. It is a problem I have encountered many times during web development now that CMS systems are appearing more and more enterprise-like.
Thanks!
godwin
Content Management Interoperability Services (CMIS) is an OASIS Specification that you can use to imrprove the data portability and interoperability of a CMS. If your system has (or your provide) a CMIS interface, you can move content to / from other CMS systems that also provide CMIS interfaces.
See:
http://en.wikipedia.org/wiki/Content_Management_Interoperability_Services
http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=cmis

writing from scratch or using CMS for heavy database use website

we want to build a website that have some forms (including image attachments, info, etc…) online payments, tracking system, and other features that I may add later.
The number of users using the site is estimated to be maybe more than 50,000.
I'm using Wordpress to develop regular websites, but I'm afraid to use it in this project because I don't know how optimized is WordPress for high database usage (and page rendering, bandwidth usage, and …)
My options (those that I know) are:
WordPress
Drupal
Pressflow
Agility CMS
Writing PHP/MySQL code from scratch (or using a framework)
I know it maybe unrelated, but how good is to use ASP.net instead of these options?
Right. If you are most comfortable with PHP (the scripting language behind Wordpress and Drupal), you'll most likely be more comfortable making the step to Drupal. Pressflow is just a fork of Drupal optimized for particular needs (and there are other forks of it -- all of them are really just Drupal and are often the basis for various Drupal distributions).
ASP.NET has a lot of capable options to do this. The most common ones (at least in my world), are Kentico, Umbraco, and DotNetNuke. There are a ton of others.
You'll find lots of capable CMS systems to work with no matter what language you're looking at. Use what you're most comfortable working with.

Can Drupal be used to make any kind of website?

I have worked on websites before and always hand coded in each. But as the size of the website grew, it really became difficult to manage them. Our is a college fest website which has a number of online games (like online trading, woodstock , forex and several online quizzes ) . This year we are thinking of migrating to Drupal for this website. Would it be a good choice ?
Drupal will do a fine job of managing users and associated information about users. It will create a framework that you can leverage to integrate your games into the system.
However, the games themselves will likely need to be translated into using the Drupal API, which isn't trivial. Drupal's learning curve can be steep, particularly if you have your own style of doing things.
Having said that, Drupal is extremely flexible and is more aptly called a Web Framework than a Content Management System.
I suggest you create a test version of your site on a local install and see how it feels to try and integrate one of your existing games into the Drupal framework. You'll know quickly if you like it or not.
Drupal is flexible enough to be used for any kind of website, but it's primary focus is around content-centric social networking or community sites. It works great for content pages, blog posts, products, etc. If you are building more of an "application" (ie, a web email client, web-based games, etc),you will have more work to do, to work to customize it.

Whether to use CMS or not

I've started to wondering whether ASP.NET Webforms/MVC even have a place in the web developers toolbox anymore... It seems that CMS systems like Umbraco have replaced the web developers job. Yes I know that those CMS systems are built with ASP.NET Webforms/MVC - however is there even any reason for learning those things if all you gonna do is to use a CMS system anyway? - Also I cant find any situation where a CMS system can be replaced by your own web application.
My question is therefore: Is there any reason for learning Webforms/MVC when using a CMS?
EDIT:
My question might be more like: When should I use a CMS, and when should I go and build my own web app?
The problem with CMS solutions, and I mean all CMS solutions (not just Umbraco, or other .NET solutions, but in any language) is that you will always pay a price for using them. You may gain more from the time-savings afforded by using the CMS, but there are trade-offs to consider:
You will sacrifice a great deal of flexibility
You could pay a significant performance penalty. Many CMSs load a large amount of modules and code to service every request, and much of this is not relevant to a particular page function. (though some CMSs are more monstrously heavy than others!)
The future of your project is tied to yet another vendor, and their own choices
Very often, you rule out the possibility of using other databases that might have better fit your customer's needs (Umbraco doesn't support PostgreSQL, Kentico only supports SQL Server)
Once you start using a CMS you will be tied into satisfying the architectural decisions and API of the CMS framework, and you could eventually be backed into a corner.
This can be particularly problematic if your 'site' is more of a web application than a pure content delivery site. In such cases it can make more sense to choose to build using the full flexibility of the web application framework, rather than risk getting backed into an architectural corner.
On the other hand, if you are building a web site that has potentially hundreds of pages, with a lot of user-contributed content and is much less of a web application, then often a CMS is the way to go, and makes a lot of sense. But remember, you now have two frameworks and two APIs to learn and manage (your platform's framework and the CMS framework).
Writing a CMS is like invading Afghanistan.
Everybody gets a turn but nobody wins.
I don't think that Stack Overflow could have been built with a CMS. Does that answer your question? =)
Update
To answer your updated question.
If you want a regular corporation web containing news, articles, forum etc: Go ahead and use a CMS.
If you need to build a more custom web site like stackoverflow, a web interface for a system or anything like that: Built it using MVC etc.
I personally use a CMS for our corparate website and a MVC framework to build user and administration interfaces for our products.
Not every problem needs a CMS. In the same way not every problem needs a bespoke MVC/webforms website. It depends on what your requirements are. You pick the technology to solve the problem.
Build vs buy is the hardest decision to make. As a developer build always looks best. You can do better than that pile of carp they want to buy. Nevermind that you're reinventing the wheel, axel, cart, etc. To users/management buy always looks best. They don't have to think to hard about what they want and can have it now, not 3 months later after you write it. They forget it'll cost the same again to customise & make it impossible to upgrade.
I'll stop ranting now.
Umbraco is a pretty bare minimum CMS. To customize it (e.g. Version 7+) you'll need to know Heavy MVC, JSON, XML, Sql, etc.
In fact a Site built on Umbraco 7+ is entirely based on MVC views you set yourself and assign to SurfaceControllers (which are MVC controllers) and all you are really getting is the ability for users to edit things about your pages and have Umbraco manage it for you in a DB.
In short you still need experienced web developers to build a site on Umbraco, they just save a lot of time by not having to build the entire backend from scratch.
You use Umbraco to organize Document Types that define what Templates (MVC Views) are used for rendering different types of documetns (e.g. Web Pages) and then you built the template from the ground up with 100% control over the HTML, Css, and Javascript that get's output.
Imo Umbraco is more of a Framework like Django than a complete CMS.
Sure you can build a site in Umbraco and not customize anything, but it would be a pretty cheesey site.
The whole point to Umbraco is to give skilled .Net Developers a good platform for building a site on top of it, but they still have to build it.
Now sharepoint would be more of a complete CMS out of the box that you can do a lot with, but let's see a few problems with SharePoint...
Resource Heavy, eats 50+ Gig's to install
Eats 16 GB of ram just to boot it up (Sharepoint 2013)
Requires Sql Server 2008 R2 or equivalent (enterprise license, $$ chaching)
Requires Windows Server ($$chaching)
It's a monster basically, if all you need is a user editable blod platform... man what a waste of money. Foundation is free, but doesn't include things like the Blog Site Template, so you buy a server enterprise license ($$ big cachinge, 40,000$+ in some scenarios...)
Agreed. A CMS like Umbraco provides a (very) good out-of-the-box solution for the most basic applications. Any sort of specialized purpose is going to require additional programming knowledge. Anymore, though, and your major, if not primary need is going to be a good understanding of the business need. I think we're getting away from building the Legos themselves and on to building the neat toys with the Legos. Cheers!
A CMS (or similar application framework) will provide you with a lot of functionality out of the box, and many of them also have a good library of plug-ins. But you'll still need to write WebForms/MVC code if you want to add any custom features.

iweb and mobile me for a group content management system versus open source CMS

I work at a non profit and we are looking for a web solution to do the following:
External facing web site
Internal posting board for news, updates, pictures
Entitlements around user content
One of the folks at the non profit is a mac person and suggests using iweb and mobileme for this functionality. i have no expereince with these tools but it seems like the following are more appropriate:
TikiWiki: http://info.tikiwiki.org/tiki-index.php
Drupal: http://drupal.org/
Joomla: http://www.joomla.org/about-joomla.html
i am a windows dot net guys so i also would prefer some asp.net solution here but i want to avoid getting religious here as any solution that does the job should be fine.
my question is, are there any thing to be concerned about with using the iWeb and mobileme solutions or any brick walls we are going to run into.
Also, are there PC based solution that will allow you to use these tools or does everyone need a mac?
This is only a partial answer to a multi-part question, but:
Drupal and Joomla are platform-independent. The software itself runs on PHP (presumably on a server, rather than a workstation), but you interact with the systems via a web interface. Drupal in particular lets you choose from many different editing options, via it's Wysiwyg module.
Personally, I think Drupal is an outstanding choice for nonprofit org (this being my own background) that have tech-skilled staff, and Joomla is an outstanding fit for nonprofits that don't have much in-house web expertise.
As for iWeb and MobileMe:
Compare them to Adobe Contribute. They're good software for what they do, but building organizational websites is not what they do.
What you've got is basically a souped-up MS Word that writes W3C compliant HTML. Things like members-only content, interactivity, etc are going to be pretty difficult to manage, and you'll be looking for another solution soon anyway if your site gets larger than a few dozen pages.
In short - avoid iWeb and MobileMe for this type of implementation. You may have a "Mac person" in the office (for now), but these products are designed more for individual/home use and not businesses/organizations. Eventually you'll run into any number of "brick walls".
A few other options (amongst many) if you don't have a web-designer on staff and want a hosted solution would be to look at Wordpress or Squarespace.
Thanks

Resources