The only reason I can see for private playgrounds is that from time to time people say they cannot repro their problem code because of confidentiality. However the problem of then allowing private playgrounds for this case is that people would dump their whole code instead of isolating the problem area and focusing on a simpler and more general repro that reflects that area of coding using public objects.
From time to time I do think it might be beneficial to have a login so I can track any PG I do but then it is easy enough as a substitute to add my initials or other id to the tag section of the metadata or bookmark the PGs I want to ref.
Overall I think login and private use might encourage people to believe they could use the playground as an IDE or server which could then lead to disappointment in performance and more questions about the workings of the playground on the forum.
For the record, totally agree that Babylon is public! Any code that would be applicable to others, we will try to contribute. =) That includes graph editor (visual scripting) nodes if there’s a path to contributing those as well.
Here’s what I think @Pryme8: if @Deltakosh views it as an abuse of the Playground to spin up a private instance for internal company use, we won’t do it even if there’s nothing disallowing it.
BUT, I would hope that the Babylon developers would recognize that users are often trying to commercialize products built using Babylon, and that private (or privately-hosted) PGs are useful to that goal. I would argue that the Babylon ecosystem still benefits; I am working with Babylon on behalf of an employer but I still try to share my findings with the community!
So, insofar as it is up to me (it isn’t ) I leave the idea of standing up our own PG environment to @Deltakosh: is this a valid (business) use case, or should we leave it alone and stick to using public playgrounds that can be shared with all?
Not sure how PGs would be useful other than internally to the commercial developers. I can understand how a private system could be useful for sharing runnable code between developers and it might be easier to clone, modify and use the existing PG system rather than building one from scratch. In terms of the license I see no reason why this cannot be a legitimate use.
In terms of the whole community I do not see how having a private PG would be that useful. How would you determine who in the community you could release the PG to. Those who say they can help? Those in the core team maybe, but then you would be getting specialist help in developing a commercial system for free? Perhaps you would advertise for paid helpers to solve specific issues who would sign a non disclosures agreement. Though I would think any company developing an app would already have a way of sharing source code and live examples, even if it was a modified version of the playground.
My thought is that an internal, company developer-only Playground would never be shared externally So we would never ask for support, or input, on a private playground example. If we wanted external support, we would move the “minimum reproducible example” to a public playground for debugging and future community usage.
If I was a member of the Babylon team, I would refuse to help on any private system. If help is required the assets required to provide the help should be public. I totally agree with this mindset.
Though I would think any company developing an app would already have a way of sharing source code and live examples, even if it was a modified version of the playground.
Hence my question! We don’t want to develop internal tooling, of course. We want to develop high quality Babylon scenes and applications =)
@Deltakosh I would have to negotiate internally to accomplish this, but if we choose this route, would it be welcome to provide a starter repository (like create-react-app for React applications) with a relevant README to provide instructions for cloning and configuring backends?
The FOSS-lover in me wants to provide instructions on how to create a private PG, the pragmatist in me recognizes this might counter-intuitively run contrary to the mission of FOSS. I don’t want to create an ecosystem of a million private PGs and no-one contributing to the public PG because someone made it too easy to bootstrap a private instance.