Playground public private snippets

It would be a great addition to introduce playground login system, this way user can save their snippets in their account, and also public/private PG would be a huge help.

You can easily integrate with SSO using discourse ( forum software being used here), more info here : Using Discourse as a SSO provider - developers - Discourse Meta

@Deltakosh if you needs hands in integrating this, I can help.

2 Likes

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.

2 Likes

I will not allow it for a really good reason: I do not want to deal with back end services, storing user info, password, etc…

Babylon.js is public :slight_smile:

2 Likes

You could do your own deploy of the PG, and point it to a different server then write your own login stuff on top of it.

Hi @Pryme8, I couldn’t find a repository for the Playground. If we wanted to standup our own PG server what would the steps be?

You will have to change all the database pointers though I assume.

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 :smiley: ) 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?

Pinging coworkers @sguerrero @tbunker for their thoughts.

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.

1 Like

No please I’m totally fine with that. I just said that the public playground cannot handle private data :slight_smile:

So ALL GREEN for privately hosted PGs for sure!

3 Likes

My thought is that an internal, company developer-only Playground would never be shared externally :smiley: 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! :stuck_out_tongue: We don’t want to develop internal tooling, of course. We want to develop high quality Babylon scenes and applications =)

1 Like

This is what we do :wink:

1 Like

Love it!

1 Like

Thank you!

@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.

1 Like

Yeah that’s the main point actually. I would always try to get people to contribute to the main PG but as I said it is ok to clone the repro and private host your version

1 Like

Got it, will not do that. Thank you for all the input!!

I’ve done it before its really not to hard. You should have a fairly simple time doing it!

Way back in the day before it was public I started doing playground injections (WUKONG Playground Plugin - Demos and Projects - HTML5 Game Devs Forum) and a bunch of stuff I “was not supposed to do”. Next thing you know the playground code was public and we could do anything with it ^_^.

Ha, do you remember when I did the PG deploy from reversing the code before it was public @Deltakosh


^blast from the past

1 Like

lol long time ago :smiley: