Flip my own or use an existing CMS (Drupal perhaps?)
I need to create an internal website and can't figure out if we should write our own or use the existing infrastructure.
Most of the website will essentially be a database front-end. We want a number of people to enter data into forms. Then we want to show different views of all this data, including running small queries (for example, how many resources we have with the "X" attribute). As usual with this, we want to tweak the UI regularly.
The actual design of the data is not a simple 1: 1 resource mapping for input. For example, we could keep track of multiple attributes for one element as the "base dataset" for that element. Then we could have several additional datasets.
Imagine a recipe. You may have a starter recipe. On this, you can then refer to several other recipes that need the same information.
I think this works best for a general framework (Ruby on Rails, Django, etc.), but I'm wondering if this might be bad for a "traditional" CMS platform like Drupal? I mention Drupal specifically since the people who would develop this have most of the knowledge using php and MySql.
I tend to tend to want to use an existing platform, but I'm interested in other people's thoughts. To give you an idea of ββthe scope, I would assume that if we were to write this from scratch, we were probably talking about 3-5 week development.
Would you recommend writing your own or using an existing framework? If you suggest using what exists, what would you recommend?
Do you think this is best for a straight framework or straightforward CMS?
Thank!
source to share
Drupal may be a good solution for you, although you will probably need a few key add-on modules such as the Content Creation Kit (CCK) and Views.
Unlike other web CMS systems (WordPress, Exponent, phpNuke), Drupal treats your posts as a "pool" of content from which you pull different subsets for different areas of your site.
There is a lot of documentation for Drupal (almost too much), the biggest challenge is finding the part that is relevant to what you are trying to achieve. Diving on one of the interactive IRC channels can be a good idea as the community is very helpful and almost always ready to give you a sign in the right direction.
The strengths, flexibility and capabilities of Drupal are both its greatest strengths and weaknesses - I know it took me a little effort to grasp the basic concepts, and I am far from being a Drupal expert.
One final comment: Having written my own CMS from scratch, which I left in favor of Drupal, I would assume your 3-5 week estimate is likely to be on the bright side.
source to share
Stay away from Drupal for any site that requires custom functionality. I recently used Drupal to work on a site and it was very difficult to figure out how to get it to do what I wanted. There is a lot of documentation out there, but it's all useless - it answers very specific questions about specific questions, but doesn't provide any context as to how you approach building the site in general. If you are a programmer, using a more general structure will probably work better as CMSs are designed for a specific type of site, and if you want your site to have non-standard functionality, you will struggle with the system rather than working with it. If your developers are the most experienced with PHP, try one of the PHP frameworks that mimic the Rails architecture - for example. cakePHP or CodeIgniter.
CMSs usually make sense when you have a wide and potentially expanding array of different types and modes of content that you need to handle. Drupal has literally dozens. Considering you mentioned RoR, this sounds like what you want, it's more of an MVC framework. Maybe similar to what stackoverflow..NET was the problem for you?
If you are really limited to 3-5 weeks I think a Rails based strategy makes sense, so submit RoR or CodeIgniter
source to share
If Drupal can do what you want, I would say go with Drupal. I am not very good at Drupal.
Otherwise, what you are describing looks like a data driven web application, or more like a reporting application. It looks like you may have some specific needs or that users may want very specific needs in the future. This is difficult to obtain from off-the-shelf software as you don't know what users will be asking for. Since I'm a programmer, I would probably want to create one myself.
source to share
Funny that you have to ask ... I just stumbled upon this in SD Time Linkpalooza today:
Ten Free Powerful Content Management Systems ...
At least 4 more are mentioned in the comments on this post.
There seems to be little point in developing a new one that has so many options to choose from!
By the way, this is not a recommendation or endorsement of any particular CMS.
source to share
Think of Drupal as a framework. The + CCK + Views kernel modules are a good start for development.
If you are doing something that other applications might need, consider the Services module . A lot of cool stuff has been done with flex interfaces, connecting to drupal services with amfphp .
source to share