why vTiger sucks
September 17th, 2007 • php, vtiger
Inspired by Peter Goodman’s 12 Things You Should Dislike About PHP and15 Cool Things About PHP That Most People Overlook I’ve created a list of reason that make me dislike vTiger .
- Total lack of coding documentation. External and in-line! vTiger is a very complicated system and finding out how a simple module works can be quite a challenge.
- The coding standard comes close to “Just throw it in and pray noone will ever need to edit it”.
- User privileges are stored in a file. Can anyone tell me why?
- The main and sub tabs are defined in the database as well as in 2 files… and also the language files. which makes it tricky to add a tab.
- Too many duplicate SQL queries.
- Mixing of PHP & HTML. The vTiger team did their best separating PHP & HTML by using Smarty but they didn’t always feel like it. Examples given: The login page & the footer containing version information & copyright.
- Something goes wrong and the system will still smile at you and tell you everything has worked a-OK. For example, you try to import invoices and it crashes somewhere because of an SQL error, it will still tell you everything has been imported. Same story when using the CRMentity class to insert data.
- When I wrote my import invoices script, I checked the database for the correct date format… YYYY-MM-DD . It would be logical to pass the same date format to the CRMentity class? Right? WRONG! vTiger flips the date around and makes it DD-MM-YYYY . Resulting in having to provide the date in DD-MM-YYYY format so it’ll convert to YYYY-MM-DD. I’m guessing this is an old quick-and-dirty fix?
- (not really a vTiger issue) Lack of (good) themes. I can only hope someone will start creating vTiger themes in the near future. Should you be looking for a nice theme, I’d recommend “Softed theme“.
- All of the list views’ (eg: account list) data is fetched using AJAX. This results in not being able to use your back button, impossible to bookmark your current view and takes a long time to load.
- Overall, it doesn’t perform when handling a lot of data. E.g.: It takes a hell-a long time to load the calendar if you’re an admin and everyone has synced their calendar.
- vTiger has several quickfixes and most of them break other functionality, I quote: “modified by Richie as raju’s implementation broke the feature for addition of webmail to vtiger_crmentity.need to be more careful in future while integrating code“. Well Richie, thanks for fixing that but you broke something else!
You might also want to look at these posts
35 Responses (Add Your Comment)
-
-
I agree. vtiger kind of sucks. It took us forever to figure out some issues. Like the AD authentication, all the documentation (really just forum posts) keep talking about a patch. It is not until you find out for yourself, that the AD authentication functionality is actually built-into the latest version. But the vtiger team failed to make this easily available as a feature, or spec.
you are 120% right, their documentation sucks.With that said, the system is a powerful system, I’m just concerned with its enterprise-ready status…
-
Thanks for mentioned Softed theme.
Backlink added
Lukas N
-
Just want to thank the vtiger team for all their work in maintaining a 100% open-source project.
Does it have rough edges? Yes. But it is by far the best open source CRM tool available. Perhaps if we contributed to documentation as a community it would get better, no?
-
Thanks for the article, I am checking out vTiger as a solution for my web development customers. The article points out a few good issues. I’m also working on a few new themes for vTiger so will keep you posted.
-
Cornelius August 16, 2008at 12:56 am
I’m attempting to hack version 5.0.4, and the coding standards are very poor.
There’s a separate language file PER MODULE. Simply searching and adding new phrases is a pain in the arse.
The database design is nasty. 312 tables? With mixed naming conventions? And cascading deletes? Seriously? I’ve gone cross eyed.
The app does its job – but is very slow even with a minimal amount of records.
I love open source and do appreciate the work that went into this app. I’m just saying it ain’t easy to work with this app.
-
Cornelius August 21, 2008at 10:02 pm
Thanks for the tip regarding speeding things up.
Using some bash scripting and the search/replace power of vim, I was able to get all the separate english language files concatenated into 1 “more manageable” language file.
But now that I have dug deeply into their PHP code, I am absolutely astounded. I am absolutely astounded human beings maintain this code. The cascading if/else statements go deeper than a hole to China. Single lines of code word wrap in my vim editor 7 TIMES. These developers should never be allowed to touch a keyboard again.
Had to vent. There’s a good chance I’m gonna scrap this thing.
-
Invoice September 10, 2008at 11:11 am
Hi, is anyone able to import Invoice successfully to vtiger?
I’d imported the invoice in csv into the database. But it does not get displayed in the Invoice module.
Help is appreciated.
Thank you.
-
I’ve imported invoices, you need to make records for all of the invoice tables. You need to make entries for them in vtiger_crmentity, then make sure to put something in all of the invoice tables.
The tables used (in 5.0.4) are:
vtiger_invoice
vtiger_invoicebillads
vtiger_invoiceshipads
vtiger_invoicecf
vtiger_inventoryproductrel(I think that’s all of them) The one that threw me was the customfields table, you’d think it was arbitrary, and that if you’ve no custom field data you wouldn’t need them, but that’s not the case
-
Your mom March 4, 2009at 11:18 am
Either the author of this article works for vTiger (negative publicity turns into good publicity) or plain stupid. How can you criticize something that is open source? Do you open Christmas gifts and say “this sucks”? Open source my friend…. the software grows with collaboration from others. An open-source tool is as good as the people who use it. Instead of writing negative entries about it, spend sometime giving constructive criticism or maybe solutions. vTiger is almost perfect for its use. I installed it, configured it, loaded it, imported data into it, and it works like a charm. 6 months of use and not a single major problem.
-
Joe Public March 4, 2009at 1:25 pm
I use vTiger and I have to admit that its very slow. I’m not interested in hacking its underlying PHP code but I’m guessing that its lack of speed is down to sloppy work. Every component it uses runs perfectly well in other applications. And yeah, some decent themes wouldn’t go amiss.
-
VTiger is a programming train-wreck, I would not have coded that poorly straight out of college, let alone after some experience. It seems almost every design/architecture/coding decision made was the wrong one. VTiger is OK if you’re a customer, but it’s absolutely horrible if you ever have to delve into it to fix/improve upon it. Common logic is riddled throughout the php/html/javascript/smarty templates, changing one thing usually requires hacking seemingly un-related files all over the shop. The whole project needs to be re-thought from the ground up.
-
guido May 15, 2009at 2:30 pm
@me and everyone else — I’d really like to hear people differentiate between SugarCRM (which I personally hate), and the additions that the vTiger team have added or done to the original code. If I am not mistaken, vTiger is actually based on SugarCRM Version 4.0. So when you say X and Y sucks, are you saying that this is a hold over from the original code base, or is something that the vTiger team has implemented and you feel needs to improve. Overall I really like vTiger, after spending a few months of trying to implement (unsuccessfuly) SugarCRM.
-=g
-
DeveloperChris June 23, 2009at 2:25 am
It must be remembered Vtiger is built upon SugarCRM. if you want to see bad code just take a look at sugar.
Sadly the vtiger team decided to buid up from sugar, (they actually lag a fair way behind on features, but I digress) If they had started from scratch I am sure they would have done far better.
I love the argument “it’s Open source so don’t complain” Sorry that just doesnt cut it! Open source should be the leader in showing good design and forward thinking.
Bad open source and there is a lot of it, does not do justice to the wider open source community.
Having said that a CRM is an enormously complicated piece of software. It tries to be everything to everyone.
But a few simple requirements would assist a lot. like how about a simple explanation of what each files main purpose is directly below the copyright notice?
Also smarty is the dumbest piece of software I know!
It’s another language unto itself so code and presentation seperation automatically becomes redundant/impossible.
You might as well include php code in the templates. At least it will outperform smarty 10:1 in the speed stakes.
Also smarty makes things like detailview.tpl possible… Why have one tpl that does everything for everyone. seperate them out into different modules FGS! so that if you want to edit the tpl for say accounts you don’t break the one for say Quotes. I mean FFS they are totally seperate modules!
And dont start me on security? Where do you start to audit something like vtiger/sugarCRM. best to keep it inside a safe intranet.
DC
-
I wanted to comment on point number 9 in this list. Our product, employs a custom theme that we have created. It is Web 2.0 friendly having larger fonts and less images for performance. It also utilizes screen real estate more effectively reducing whitespace.
You can see it here: demo.aimtheorycrm.com
-
AngryVtigerModifier September 24, 2009at 9:10 am
2 years on, this conversation continues with frustrated developers stuck with vtiger (not their fault). Even for an open source application, vtiger is unacceptable in every aspect. I can outnumber all the issues gathered by all the developers working with this with mine…seriously! There are loads of other open source applications that are exceptionally good. The only thing I don’t understand is how people are still considering it, cause I am sure none uses it in the end (they buy something better, a million times better)! CRMs really don’t work as standalone, and especially not these kind of CRMs, like vtiger and sugar crm. Almost 30 years of OO programming, and none of the developers building these crap (I am including sugarcrm) have heard it… I am quite young but I already have white hair cause I have gone through the vtiger source code!
I can go on and throw at vtiger for days….I am really disappointed such software even exists in the 21st century…I have improved vtiger 5.0.4 and made in a month modifications that leave version 5.1.0 miles behind…but I would never store my company data in it….I would never let people manipulate my company data with it…I will slap in the face and poke his eyes anyone that even considers it…I will shoot in the eyeball anyone considering modifying it…I don’t thing that anyone can find a good reason for using vtiger, or even modifying it.
It is so sad having to do with such applications!
-
ok, i must be one of the few people that finds really respects vtiger, sure every now and then something does not work.. but nothing that cant be fixed in a few hrs. as for the documentation, omg if you rely on documentation you shouldn’t be programming, code is far more literal than any comment will ever be.
Most of the things that Thomas is sooking about are features. i think this post should be in most part ignored.
-
AngryVtigerModifier October 12, 2009at 9:43 am
@drgrab Did you read the post? Have you read all the other posts? You must understand that because of the lack of features most of the developers need to extend it, and the freaking code is not extensible at all. The problem is that non-developers mostly use PHP and have built this crap. And the annoying thing is that non-developers respect it…at least until they hit a dead end and their developer says “This new feature suggested can be done by rewriting the whole thing”. Also, naming a variable “result” IS NOT LITERAL ENOUGH!!!
@Thomas Hambach I am reminiscing the days I was working on my own crap, at least I comment and document the crap I make! In a lot less than 2 years, others have developed far better web based applications like the opengoo (Ok its not a crm, it is project oriented, but it shares most of stuff with current open-source crms, and it IS miles ahead!!! This is a respectful open-source project, object oriented and commented on almost every line of code!)
-
Dudes, thanks for the heads up on vTiger. I’m still thinking of implementing it down here for my clients in East Africa…well, I was thinking of doing that.
@Thomas, AngryVtigerModifier:
Can you recommend some other alternative open source CRMs that are either PHP or Python based?? I’m looking for solutions that would fit in well with call centres and other customer focused industries.Cheers!
- Max (aka MaxTheITpro)
-
AngryVtigerModifier November 19, 2009at 1:30 pm
@MaxThelTpro You ended posting in this blog by searching…this means that none of the present open source “CRM”s stands out. The point of a crm is to fit ALL the needs of any company, but they don’t…hence the large fight of which one is best…resulting that they are all crap. A crm must be a framework not an out of the box product. You should be able to built your own to fit your client’s needs. As a code-base of a crm I would recommend NONE of the current open source crm’s, because…just have a look at my previous post. Even if you don’t agree with my, I am 100% sure that you will realise that I was infact right after a couple of months of trying to built something on vtiger or sugarcrm because a client NEEDS it.
Save yourself a lot of time and frustrution by implementing something tailor made for your clients. Also making a crap out of a crap wont improve any of your skills or your professional qualities.
Just, STAY AWAY FROM OPEN SOURCE CRMS THEY DONT GUARANTEE ANYTHING. -
AngryVtigerModifier November 26, 2009at 3:04 pm
@Thomas Hambach Of course I keep checking, every time I use the word vtiger in Google…so your blog comes pretty close to the top results. To answer your question, and give a reason why I am checking in today, is that I am still working with it….cause I dont have another choice, the @%$#%* guys in my comp gave it to customers….before I had an honest opinion. So I am stuck on my stupid vtiger with all the crap modifications I made because of our @(#$$# sales men and for the @$#($% argument “Come on…who hard can it be…!” that they use to customers. I am talking little beaks from it cause untill now I was living on the edge…of having a stroke…so the new stroke will come when someone will say “Ahaa, lets give him our vtiger, it fits and if it doesn’t we’ll make it fit, it’s open source, HOW HARD CAN IT BE!”
-
HateComplainers November 29, 2009at 4:52 am
@AngryVtigerModifier If vtiger is so bad why are you keeping working on it? A powerful developer as you claim to be should notice the poor quality from the beginig and avoid the pain. Making a real CRM from scratch by yourself… mmmm let’s talk some decades from now.
-
AngryVtigerModifier December 9, 2009at 10:46 am
@HateComplainers It does not take decades to build a CRM for a company, but it will if you try to build one for ALL the companies in the world…none of them operates the same way. And that another reason vtiger fails, too young and too crapy from the start. I am not claiming anything, my only choice to skip vtiger is to change job…which I am thinking of. If you work in a company, you don’t get easily to choose on what you will be working on.
@Thomas Hambach They won’t listen to any complaints. Cause if they do, they should start everything from scratch! And for your information this blog came 5th while searching for any kind of help from Google.
-
SalesMan December 13, 2009at 11:02 am
@Thomas Hambach, Your post was written 2 years ago? Any updates on what your complaints?
@ AngryVtigerModifier, vtiger is a superb system, in terms of what its for, and yes it is complicated, but any decent programmer (Like my team) are able to easily modify it accordingly. Opensource will only take you 70-80% of the way, unfortuantely you have to work to achieve the remaining 20%, something that you clearly don’t enjoy doing.
-
vtiger? December 13, 2009at 10:46 pm
Hello,
Im thinkingof implementing vtiger in the company.
@Salesman: how long and how easy would it be to create a new module for example which is exactly the same as module”contacts” and rename it partners ? -
vtiger? December 13, 2009at 10:47 pm
Im trying to figure out how complicated
and how much effort is needed for simple changes. -
vFrustrated February 2, 2010at 11:30 pm
I have been implemented vTiger for a client, and what a mess. I haven’t seen code this bad since 1996. I’ve already fixed a few, critical, show-stopping, “system won’t f-ing work” bugs that the vTiger team has had on their docket and left unresolved. Now I’m trying to figure out how to modify the workflow module so that, logically, you can pre-assign tasks to specific users and groups rather than have to resign to having all the tasks in a workflow being assigned to whomever owns the related module (useless). Impossible getting through the code to figure out what is going on. Documentation is sparse, inconsistent, and nonexistent in most cases. The nesting and extensive cross referencing of files and variables have left me dizzy. These guys should launder money for the drug cartels. Excellent at obfuscation.
-
vTiger might not be perfect.. but it works fine.
The new vlib classes help actually a lot to create new modules.
its interesting that not only vtiger but also used external code has no documentation and code style etc. thats a common issue with open source.
it would be best if someone can help
Thomas, thanks for the valuable feedback. We agree that the documentation and coding are not upto the standard and are making efforts to improve on it. We’ll be attending to some of the other issues as well in the upcoming releases.
thanks,
Sreenivas Kanumuru
vtiger Team