I come in peace lol -
very interesting thread, and also in context of my big complaints with the shipping features being completely left out (compared via VM 1) to be fulfilled by 3rd party developers. I think this is a very simple solution: set expectations, and then meet them. I am currently at the tail end of a project (a 2.0) of a site that was running joomla 1.5 vm 1.xx and i (stupidly) figured that VM 2 would be bigger and better than before!!!! (echo echo echo).. and then i was shoved into the cold water and made to realize that since i was already neck deep in this project, and at the point of configuring shipping options, i have no choice but to be raped or gouged until it was over. Which has been my life for the last six months.
For example, i thought to myself... hmmm... where did the shipping go (this after investing a lot of time and resources in getting VM2 core up to speed with our site)... A little bit of research later i found that it is all now all held in the hands of 3rd party developers (eh hem.. mostly istraxx == virtuemart team) and that i would have to pay close to $200 for just emulating the previous shipping setup i had in VM 1.xx. That was a huge disappointment. Not to mention i am on this thread because we also sell downloadable products that i also have to dish more and more money out for. I have always supported the VM and Joomla efforts, and do not expect anyone to work for free. A man is worth his wages. But i do have a problem with underhandedness - there should be blatant warnings for VM2 developers to understand the new model. That to a developer, we should be able to understand that this project is no longer really open source, but half open source and half commercial. Which in context of the other Joomla options, i would have gone with a commercial product rather than dealing with this nightmare that is VM 2 (e.g. the core is great! but requires a /lot/ of work, studying, understanding and time to "upgrade" - which is a completely wrong word - from the previous version).
With commercial options i would get full, great support with all the functionality i needed already built in for one price. Which is actually lower (in some cases, much lower) than what i have in the end, paid for VM2. I wouldn't have to chase down a million different 3rd parties, read peer reviews, study some more, and then hope my educated decision pays off, only to realize i need to fix code myself (which i shouldn't have to for paid solutions) to make things work correctly due to bad support. I am a very experienced developer in many different languages, and can't even imagine the mountain of fear this thing would pose to a person/company with limited talent. In short, i understand everything the developers are saying, as well as the community. Rarely is one side 100% right and the other 100% wrong. The devil in this case, is hiding under the fact that the appearance of things, is greed driven. Though i hardly think that is the reality, but that is what it looks like.
I also feel for Max M.. I read through his code constantly and view him as a very intelligent and talented developer. It's sad that it has kind of come to this, as i believe the real problem exists in the fact that VM2 is really just straddling the fence of open source and commercial software. I love the idea of making the core more suited for 3rd party plugins, and that the previous version almost made it harder to expand functionality than VM2 did, but it at least lived up to the name. I think what is happening is that developers like me, that love(d) virtuemart, pushed upgrades for future projects, only to find out that i had to breach several new and uncomfortable discussions with the client to let them know they need to add another $300+ to the budget to simply get the cart back to it's original state (all while trying to convince them that the upgrade was a good business decision) and that me and my team are not complete morons because we (ignorantly) assumed VM2 would at the very least be equivalent to VM1. It has nothing to do with the money.. it has everything to do with the approach. To the client, they could care less about the code base. They do care about the fact this project has gone well over it's mark and and budget. It's not just buying and adding a 3rd party plugin.. it's my time (which is expensive) to configure, integrate, modify, regression test against everything and repeat for the duration of the project.
Go open source (at least provide stripped down basic options across the board allowing the person to upgrade if needed) or go commercial and straight up set the expectation that the person is going to pay $200 for a fully functional bad ass shopping cart that includes all plugins and support the person will most likely ever encounter. All the while, the developers can make a living, and everyone can operate off of very clear expectations.
Broken or unmanaged expectations always lead to disastrous endings. Especially to the VM audience.. contractors. Mostly small fish trying to grow in a world full of sharks. Badly communicated/handled expectations will guarantee a project will go down in flames. I have yet to be a part of one that hasn't.