This may be long winded but I would like other peoples opinions.
A little over a year ago an old client of mine wanted me to take on a project, I declined a couple times and then he said he would come over and show me the project.
After he showed me what he was doing, I said I would do it as long as I was part of it.
We signed an agreement and I got a small percentage of the company.
This has to do with a digital wallet but has a very creative and unique twist and has never been done this way.
This was slowly developed and my code had to work with an phone app that was being created in parallel.
The creation was a day by day process and along the way more and more features and functionalities were added.
My business partner eventually brought on a financial technical advisor and I showed him how my database was structured.
I had the main users table, a table for the users credit card tokens (users could have several cards on file), a table for all of the users transactions and a table to keep track of user created content.
Here is where it starts taking a turn, the financial advisor does not like the way the users data is broken down into lookup tables (one to many relationships, as in examples from Rudy’s book) and declares my database is creating a bottleneck (I asked him why he thought that, and he said it was just a feeling he had, no real reason.) and informs my business partner of this.
My business partner starts questioning my logic and I told him that this is how it is done. He then tells my that the advisor is an expert and he knows what he is talking about. (I still maintain that this can’t be accomplished with one table and that lookup tables are absolutely required.)
My code was written procedurally with if statements and functions. with a lot of commented out unused code, It was in development after all.
About a year into development my business partner was asked by a CEO, why are you using PHP?
Another developer was brought in and said I needed an MVC framework because what I had was not scaleable (Not sure what he meant by not scaleable).
The other developer is an ASP developer and they decided that the code that I created be ported over to ASP using MVC.
This is after I created all of the functionality and was basically ready for prime time.
Now for the conclusion.
By business partner and I had a discussion and he tells me that two experts have told him that my code would have resulted in failure, one said I should not use look up tables and the other said what I created was not scalable because it was not MVC.
He then told me that the new developer was able to provide the app. developer with complete documentation based on my year of making all of this work, something that I was never able to do.
I currently have a server that gets tens of thousand hits per hour, nothing but small data strings and is very similar to what I created for the iphone app and the server has no load.
He now wants me to voluntarily relinquish half of my ownership of the company.
He has a demo based on my code and he said it worked flawlessly so he thought what I made was OK.
I stand by “its fine” for tens of thousands of users and any web app that gets to a million users has the resources to revamp and fine tune the code.
He did get what he wanted however he is not using my code and it created a long delay in the launch.
I ask for your opinion as to whether you would relinquish half of your ownership in this situation?
What would you do?