Drupal vs FatWire - Any thoughts? - drupal

a company I am working for is considering the usage of a CMS, apparently two of the suggested CMSs are Drupal and FatWire.
FatWire is proprietary and quite expensive, therefore it seems that there is a not so big community build around the product. Functionality seems to be extensive, even though a few design choices seem counter-intuitive and long-winded.
Drupal instead is open source and has an big community backing the product. There are plenty of books around and usage seems more intuitive.
Functionality wise I am unsure on how they compare. The main features that the company's team seem to like are team workflow features and revision control (present in FatWire, even though the implementation seems quite limited).
Hopefully some of you guys have been faced with these two products before, and might have a few suggestions up their sleeve.
Help would be much appreciated!

They are very different products -- apples and oranges really -- so it would depend on your organization and your needs.
For one example, all of the features listed at FatWire's website can be easily and quickly built into a Drupal installation .... if you already have someone who knows Drupal. If you don't have that expertise in house, and don't have enough spare time and resources to get someone trained, then FatWire could save you a lot of time and aggravation.
In a broad sense, Drupal is probably the more powerful of the two over the long run. But, it's a modular system and there's no real centralized brain controlling everything. It takes a little while before your team can get to the point where they know the right module to solve a certain problem, or the most effective way to build certain pages.
Depending on what the website it worth to your company, and the amount of customization you expect, you might find it easier to get a paid product that meets your needs right out of the box.

Related

How do you keep yourself updated with latest technology trends, considering that technology today is enhanced almost every day?

It's most asked question in IT job interview so I want to know what should the way that I explain the answer of this type of question asked to me.
"One machine can do the work of fifty ordinary men. But, No machine can do the work of one extraordinary man"
The simple meaning of new technology is to make work or effort simpler or make it easy.
Not just technology but everything that may changes you update yourself with it.
To keep updated with technology you need to use technology, specially latest enhanced technology.
The concept is: by doing so (using technology) it will become obligatory for you to keep track of any new or emerging technologies through reading, searching etc.
I am not claiming that this is something you should do. Its one of the way what you try to do to make yourself updated to some extend with the pace of technology change.
you should go and subscribe yourself to various RSS feeds, go frequently to some great sites (dzone, javalobby etc.) and look for blogs/articles which deserves a read.
Things which you don’t know in this case deserves more read and i start googling stuff to get more details.
see, technology products will not succeed if they are developed for their own sake, nor simply to help users complete a specific task. Technology products succeed when they are incorporated by users into their daily lives in ways that serve their fundamental needs as people - fundamental needs such as relating to others and keeping in touch, even when they are miles apart.
The truth is nobody fully understands knows how today’s technology might be used tomorrow. If the recent past is anything to go by it’s likely that people will certainly find innovative and as yet unthought-of ways to communicate and keep in touch.
Thanks,...!!!

Web Design w/CMS

I recently "inherited" an IT company that has a creative wing that does websites. Business is very good, but it seems like our throughput is very low. It's taking 3-6 months per site for just basic sites (no ecommerce, etc). From what I can tell, the process goes like this:
designers design the site using Adobe products
once those mock-ups look good, we outsource the files to be "sliced"
once we get the artifacts back from the "slicers", the web coders plug the information into a Joomla site
the site goes live
My question: is this the correct approach? I don't know enough about CMSs to know if we're using them in the way they're intended to be used. If there is a better process that you know of, or a better CMS that is easier to plug the results of the slicing into, I would love to hear about it.
Thanks for any feedback you might provide.
Ughh. I hate the process you describe. Designers who don't understand much HTML do the design, and then this "slicing" process involves cramming stuff that was never designed to be HTML into HTML.
Unfortunately, at my agency, we've found it difficult to find folks who design from the get-go in HTML/CSS.
But to your question about time, consider this. I'm a sole web developer working for an agency. We spent 4 months rebuilding our own site (a pretty simple site). But 3 of those months were spent going back and forth with the designer making changes.
I didn't start work on the site until one month before launch. From that point all I had was Photoshop files. I recreated the look of those files in Drupal templates and did all the other development (including some medium-complexity javascript) in just one month.
During that month, the design of 40% of the site changed dramatically. If it weren't for that, I would have been done in two weeks.
And I'm just one guy. And I don't consider myself a fast coder AT ALL. Your folks are taking WAY too long.
The web programmers should be able to slice the files, at the end of the day, they are the ones programming it so they should know what they want/need more than anyone else, it will save money and time theoretically.
Wow, 3-6 months for the workflow you described sounds painful. That's a timeline better suited to a site that includes a high level of custom data handling functionality. However, beyond the considerable mismatch between the process you describe and the time it's taking, the scope of this question seems pretty wide for stackoverflow.
I'd start by editing your question to indicate the amount of time typically spent on each of these steps. Just based on what you list I can't possibly imagine that taking 3 months, let alone 6.
Ok, if "Business is very good" and you're spending "3-6 months per site" then the only conclusion is that these are very high design websites with good margins. So you don't sound like you're in the slice and dice $14.95 a month website business.
Given that the sites we build often have a primary stake holder who is subject to corporate design guidelines and marketing criteria followed by product positioning criteria it's not unusual for us to spend 3 months getting the design work done. We can go through 3 design iterations (all of which the clients pay for).
The only difference to your situation is that our designers are 'web designer' and either understand how to build a Photoshop file to be 'sliced' or work in conjunction with the people that will be doing the slicing.
So, the only thing I find odd is that you send out the work to be sliced.
Nothing wrong with the process but the resource arrangement seems not correct. If it's a design company, I would expect you should have your own designers who can slice those images, rather than outsourcing. This will improve your efficiency and speed.
As for the CMS, Joomla is a much complicated CMS which is suitable for larger websites that require extensive CMS features. For normal corporate websites, I would suggest to use WordPress. It's very lightweight, easy to use, easy to skin and easy to setup.

Which is a better platform for starting a small module development business: DotNetNuke or Umbraco?

I am thinking of making some extra revenue on the side by becoming a module developer either for DotNetNuke or Umbraco. I still want to keep my full time job. I wanted to know which market is more promising. I know there are thousands of modules for DNN (just browse snowcovered.com). While DNN is a much bigger market, it seems to be crowded with a lot of competition versus Umbraco which is smaller but it looks like it lacks modules in certain categories. However I don't know if Umbraco is widely used or whether its customers are looking for development work.
I want to approach this by either developing commercial modules or doing custom development work. I am looking at this from revenue potential. Not from technical side (easier to develop for, MVC or not,.. etc)
Any ideas?
If you are a developer for either platform, are you making some good money? Any pitfalls?
Neither, I'd actually suggest Orchard. There are, in fact, pro's and con's to all three, but the best factors for Orchard are:
1) MS supported
2) It's brand new, so there's a LOT of opportunity for modules that haven't already been written
Just my 2c.
I agree with Tony, Orchard has only just come about and realistically the market is currently very small.
We are an Umbraco Gold Partner, so obviously biased towards Umbraco, but what I would say is that currently there are only a few commercial packages for Umbraco and so if you find a niche product, you certainly still have an opportunity to become the first to market and become the market leader for a specific module type. I think in the DNN camp you will find a lot of competition already exists.
Another thought is to write generic base code that can be used across all three and create a commerical package for each platform, then you have the best of all worlds.
Cheers,
Chris
If you want to do custom dev for clients the platform doesn't matter if you do it on the side.
If you want to create a commercial module it's hard to choose DNN as a platform because there is a lot of competition. Not that that's a bad thing but to get your name out there will take some time. I made the choise to do full time Umbraco Dev in 2008 and made a commercial product for Umbraco called CMSImport. It's quite popular so sales is quite allright. I have thought about the idea Chris mentioned to port it to other systems but the downside is that you only sell products if your product is known in the community and it will take a lot of time to get your name out there if you focus on other communities also.
So pick an idea and platform that has a nice userbase (I would not go for Orchard the community is simply not big enough at this moment) and build your product.
Cheers,
Richard
I don't think it really matters which you pick. The hard part is becoming know as a "good X developer" be that Umbraco, DDN, Orchard, Rails, etc.
Its being the name on the peoples lips at the right time that gets the phone ringing. Tech choice can increase your chance (simply with an increased number of sites for example) but it can also increase your competition.
There is plenty to be earned if you can get the work and the best way of doing that is by being recommended, being spotted as being active in the community, producing packages, etc.
We at Offroadcode chose Umbraco about 2 years ago and have had lots of work of it since and have specialised in it. Through engaging with the community we've got to know a lot of our fellow Umbraco developers (including Chris and Richard who have also posted answers) and we've recommended then and had work passed to us on recommendation too. I guess you get back what you put in.
Pete

Projects made with a CMS -> Money problems

i want to discuss about a problem: i've lately had discussions with some customers to which i've asked money for projects written in Drupal: when they know that i use a CMS they immediately say that they want to pay less "because I use a CMS".
I develope since 15 years and i've made many many projects without using a CMS and by using my libraries; i'm lately using a CMS but this does not mean that i don't write code ...
Which could be the best response to give to a similar question?
Ciao
c.
Explain it to them very simply.
If you have to install and configure any Content Management System, that takes you more time and therefore costs a bit more than a static website. You need be as transparent as possible when you detail the costs, so tell them how much time will be spend designing the theme, how much time will be spend configuring Drupal for their website and so on.
It would be interesting to ask them why they think it should be cheaper, as you will then understand what misconception they have about CMS. You can then explain things better to them so that they understand what using a CMS actually means.
I would say that they are paying for your expertise and experience, regardless of the tools you use. If they want it cheaper, they can ask someone else. The CMS helps to add stability, security and expandability to what they would get if they had a custom solution.
Plus, if it was all custom code it would be extremely difficult to hire someone else to take over if, God forbid, you were hit by a bus. The CMS gives THEM more options.
I would agree that you should explain where the money is going, in general terms, but you shouldn't have to justify every detail. Otherwise how do you itemize "dealing with stupid customers who need their password reset for the millionth time" or "explaining the difference between a 100x100 thumbnail JPG and a 3600x2700 BMP". It could also open the door to a lot of haggling that will just waste your time and frustrate you.
I had a client who asked me over and over again the same kind of question.
If your client doesn't perceive the value you're adding to an Open Source application then give them the source code and point them to the documentation. Tell them to build it themselves.

How to present your code to potential buyers?

I'll do a demo of my code to slightly non-technical audience, and I need to show them what I've got in my project (about 15K lines of code). I'm trying to convince them that I've spend time on the project and it's in a good state.
These guys planning to invest money into this product. Therefore I should convince them that this app worth the price that they are going to spend and justify the time I've spent, secondly they should see that this is something takes time and I know what I'm doing (basically I need to win their trust) .
What metrics I can use other than "lines of code"? (Maybe lines of comment?)
What are the best tools (preferably free) to generate a report from .NET Projects?
UPDATE :
Also a way to provide "project cost - cocomo" would be cool, like this one :
FOUND:
http://www.cms4site.ru/utility.php?utility=cocomoii will help you to calculate an estimated cost for your project.
If they're non-technical, it won't matter. It will be like trying to sell a high-end bike to people who don't know a bike from a car. 15k lines of code won't matter to them any more than 300k lines of code will.
You need to find something other than the actual code to wow them with.
Can you code up some demos and tell them how short time it will take them to build similar applications with your code? Like "If you use my code, you can build this multimedia application in 15 minutes without writing more than a few lines of code". Non-technical people generally love saving time and money.
It probably depends on how "slightly" they are in the non-technical department.
An investor only cares about money. Investors start at the exit and work backwards. Knowing this, pitch your project in terms of the return they will get in their investment.
Key points would include:
Your expertise: Do you know the market you want to sell in to? Are you leveraging your expertise in some way to make the project a reality?
Risk: Using your already existing code base lowers risk in terms of both time and money. They will probably do technical due diligence to validate your claims, so be honest here.
Time to Market: Having a code base in place will reduce their time to market, which may be significant.
Vision: They need to know that there is a future for your product. This is your chance to get them excited!
Investment is about the future, not the past, so understand that you need to achieve what you are promising. The path you trod to get to where you are now may be interesting, but largely irrelevant to the investor. What I'm trying to say is sell the vision, not where you are now or where you've been.
Good luck and hope you get what you need!
It's not clear to me from your question whether you're talking about people who would buy the use of your product or ownership of your product.
In either case, ask yourself these questions:
"What problem(s) does this product solve for my users, from their point of view?"
"What does this product let the users do, that they already want to do, but can't do without it?"
"What does this product let the users do, that they already want to do, but can't do as easily without it?"
Features don't matter. Menus and dialogs don't matter (unless they require explanation, in which case they matter in the negative sense).
If you want numbers that interest a potential buyer of (an instance of) the product, talk in terms of how much time or money the buyer can save by using your product.
If you want numbers that interest a potential buyer of shares in your company or product, talk in terms of the size of the market, how you've analyzed that market's needs, and the ROI of any investment.
I've had success showing potential customers our automated build cycle, in slideshow form. I took them through our "production line" as if it was a factory tour, and showed the nice colored bars of coverage reports, uptilted lines of historical lines of code, pie charts of breakdowns of lines of code per module.
Then I did the same for everything aroung the actual building. So there's a requirements pipeline where they are involved, and a test/validation cycle where they are again involved.
It may not mean anything to them, but it shows them you have control over your process, and control over the quality of the delivered end product.
Please note that although people may be non-technical, try to be as honest as possible. As soon as they discover one single tiny lie in your story, you're lost. And chances are that there's that one technical guy in the back who can ask that one question which makes your house of cards fall down.
Happy sales!
"good code" doesn't matter unless you are demonstrating the medium and long term advantages of it - enhanced flexibility, simplicity, which saves customer time/money while adding agility.
I think explaining the more complex aspects of the code and the work that went into it to any audience will help show how much work and effort have gone into a project.
Hours spent coding could be a good metric to give them.
Talk about the features. Explain what you have working or almost working. Go at it from what they are interested in.
Try to show them visuals that they care about if you can. I think a few minutes doodling on a board would be better than showing lines of code.
The only thing that is likely to matter to a buyer (particularly a non-technical one)is functionality. I would concentrate on selling the features. You might consider discussion how you have tested it to verify that it performs as you claim.
I wouldn't use code per se, since a non-techie wouldn't understand it. Boasting about quantity is probably meaningless (how does a non-techie know that a 1MLOC project is significant? As for quality, you can present, e.g., maintainability metrics, test coverage, things like that. Feel free to show off your excellent toolchain too (continuous integration and all that), your mastery of various performance-testing tools. Also, showing things like Workflow Foundation helps - customers like to see how their business processes can be turned directly into code with a diagram notation.
EDIT modified to reflect OP's clarification (in comment here) that these potential buyers are looking to re-sell the software
Re-sellers are going to be looking for three things:
Is anyone going to make something better, cheaper or more quickly?
Is this guy going to be able to use our investment effectively to produce more?
Can we sell what this guy has produced, and will produce?
How to address points 1 and 2 have been very well addressed in other answers, but it's question 3 which is the hardest to prove for us techie people. It's also extremely important - if you can go to these buyers and hand them 3 killer benefits which they can repeat with more flair and Powerpoint when they're doing their sales calls, you'll be off to a good start :)
The main thing you have to do is to take a step back from your work and look at the:
features: what does it do
advantages: why is it better
benefits: why should the customer care
Features are closest to what you care about as a developer, but are pretty much irrelevant to non-technical buyers. Advantages are an essential step in understanding your competition and the customers' alternatives.
By putting features and advantages together, you can hit the customer with a number of benefits, e.g.:
using my software will save you $0.01 per transaction, or $40,000 p.a.
my software will increase customer retention by 5%
your admins will need 15% less time to deploy changes using my software
These are the things that customers care about: what's going to be good for the company, and good for them.
To be brutally honest: the end customer don't care how much effort you put into it (LoC or any other metric), they don't care how well it's written (comments, tests, any other metric), they don't care how hard a problem it is to solve, they don't care about features.
Their only requirement is that it will save them time / effort / money. You know that how hard you've worked to solve the problem, and solve it well, is key to their requirement, but it's secondary. You need to make it perfectly clear why them buying their stuff will mean they'll get promoted.
For COCOMO - Project Cost Estimation
I found this website, it's kind of a manual process but it'll do.
http://www.cms4site.ru/utility.php?utility=cocomoii

Resources