Question

Background: I am a Php developer with a keen interest in Enterprise Design Patterns and Architecture. I have a relative (living in a different continent and has no business dealings in the country that I am in) that has just launched a major Online Enterprise Platform that will provide an ERP solution for a certain market after investing 2 years in the platform with a dev team of around 10 developers. I assume that around $2,000,000 was invested in this platform.

I would really love to look at the source code. I want to be inspired! How did they architect the platform with modules? What design patterns did they use? Did they use 'Clean Architecture'? How did they solve problem x that crops up when trying to max the underlying framework? Last but not least, a real life large scale enterprise example of well written, OOP and tested code!

I might get so inspired that theoretically one day I might go and write my own ERP platform for a client that approached me recently (that is in a totally different market).

Of course I will not copy/paste+modify any code. I might learn a practical application of the Repository pattern, learn how to deal with SaaS, be inspired how to create a modular platform etc. and will implement my new found skills in future projects.

I had a discussion with my relative yesterday. At first he had no problem helping me, but then the implications of the NDA he wanted me to sign came up. He was implying that if learn something from his source code and use it in a project, then that would be under the enterprise license (i.e. I would have to charge the client an extra $30,000 per year and give him the money!). He says that he while he is the owner of the company, he has to report back to the board of investors and lawyers and can't just give someone access to source code that they invested so much money into.

Question: Is there a way that I can be 'inspired' by his code without him 'betraying' his investors?

I think that there is a line between domain / business logic that is the heart of application where the main business secrets lies vs the platform and technical expertise in developing a well written application that I want to get inspired by.

He trusts me not to steal his code. On the other hand, he said that the team spent 3 months laying down the architecture for the platform. So the platform has business value. I think the platform is definitely not their core business, just a means to an end. That is maybe why Google can give us Angular and Facebook gives us React,HHVM etc. as they developed technologies that were a means to power their sites but are not their core business. I would not expect Google to release their search engine code so quickly.

Était-ce utile?

La solution

The short answer: No.

The longer answer: The code of a commercial application exists for one primary reason: To make the company money.
With that in mind, it is a very bad business decision to give someone else access to your valuable code. Even if you trust that person to not copy the code itself, learning how your architecture and features work in detail would give that person a huge advantage if they ever were to create a competing product.

Even if they are currently only active in Market A and you intend to release your own platform in Market B, the ERP systems for those markets are likely to be similar enough that you will be considered a competitor.

Licencié sous: CC-BY-SA avec attribution
scroll top