Open besiwims opened 2 months ago
@zliu41 Hi! I see you've been active on this repo lately, thanks a lot!
The comment above seems to potentially be malicious and I am unable to report it. Who can, do you know? Thanks!
@aleeusgr People with write access can report them, I think. The comment has now been deleted and I didn't see what it was.
This issue needs to be triaged again, because
status: triaged
and status: needs action from the team
are mutually exclusive, there can be only one status
labelstatus: needs action from the team
must be assigned to a member of the team, most likely the person who triaged the issue (this does not mean that said person must work on fixing the issue, only that they should make sure that we're making progress on it)status: needs action from the team
, which appropriately communicates the urgencyThank you all for your information, will wait patiently.
Sorry @ramsay-t, but it's still not triaged well. There's still this issue:
status: triaged
andstatus: needs action from the team
are mutually exclusive, there can be only one status label
but also now two additional ones:
as per the guide, the Low priority
label needs to be explained: "do write a comment making it clear why the issue is considered low-priority"
the guide does not prohibit using Low priority
and status: needs action from the team
together, but it's a weird mix. Why do we have that red label saying something is needed from the team while considering it a low-priority task?
the guide doesn't seem to tell the reader that an issue labelled as status: needs action from the team
should ideally have an explanation of what action is needed, but in practice it's a very reasonable thing to have and the guide does have "In general, explain your actions in the issue"
The job of the triage person isn't to just assign labels, it's to actually understand what bucket the issue fails into, categorize it as such and explain in the issue how it was categorized and why so. If you don't have an educated guess yourself, you are most welcome to ask other team members for advice.
We lift some of that for our internal issues, but for ones reported by the community we really should invest some effort in understanding the issue, categorizing it and elaborating our reasoning.
As for the issue itself, I was going to talk about this stuff within our team and with the Education folks anyway, so I guess I'll just triage the issue myself and assign it to myself.
@besiwims Thanks - I'll forward it to our product managers.
Regarding the features desired of a "proper Plutus Playground", it seems you are asking for (1) a web-based IDE for Plutus Tx, where one can write, compile and run Plutus Tx; (2) the ability to produce CBor from a script: (3) some examples. The ability to interact with node/ledger (e.g., build/submit transactions) is not included. Does that sound correct?
I personally think this is definitely useful and a nice addition. However note that both Helois and Aiken are entirely new languages while Plutus Tx is a subset of Haskell. So other than the examples, this would basically be just a regular Haskell playground. The only difference between setting up a Plutus Tx project vs. a standard Haskell project is the requirement to use a specific GHC version, and installing some C libraries, and for those we have the plutus-tx-template repository to simplify the process for users.
Describe the feature you'd like
Here's the corrected text with spelling and grammar improvements, while keeping the original meaning intact:
1. Background:
Plutus was introduced with an emulator playground to help beginners grasp the concept. However, this approach had its drawbacks because one could not compile a created validator to cBor, unlike Marlowe (https://playground.marlowe-lang.org/#/), Helios (https://www.hyperion-bt.org/helios-playground/), or Aiken (https://play.aiken-lang.org/). Despite these limitations, it was better than nothing. We used it during the Plutus Pioneer Programs (PPP1, PPP2, etc.).
2. Problem We Are Facing Now:
a) As one developer stated, "I want to deploy a Haskell smart contract, but it seems impossible to find a 2024 guide to deploy a smart contract using the command line. Plutus Playground is down, and I don’t really know what to do. Any help out there?" (source: https://www.reddit.com/r/CardanoDevelopers/comments/1ciskx1/plutus_playground/).
b) The results of the August 2024 developer survey (https://cardanodeveloperadvocate.com/Developer%20Advocate%20Survey%20August%202024v1-Bernard%20Sibanda.pdf), page 6, show that 44.4% of respondents like Plutus Playground.
c) Developers from Ethereum, who are accustomed to the web-based IDE Remix (https://remix.ethereum.org/), find it difficult to work quickly with Plutus.
3. Existing Commercial Alternatives:
We have limited free and commercial starter kits available, such as https://demeter.run/ports. Examples include Gimbalabs (https://plutuspbl.io/live-examples) and audited smart contract services from Maestro (https://www.gomaestro.org/smart-contracts). However, it would be beneficial to have a Plutus web-based IDE.
4. Communication - Documentation Improvement:
The traditional official Plutus documentation (https://developers.cardano.org/), which remains popular, needs to redirect users to the intersectMBO maintainers. This will help address issues more effectively rather than allowing new users to encounter this dead end (https://github.com/input-output-hk/plutus-starter).
5. Feature Request:
There is a significant need for a proper Plutus Playground with examples to help developers get started easily. If it is already in development, clear communication about its expected release would be appreciated. If not, this issue is a request to either get it built or help assemble a team to build one.
Describe alternatives you've considered
Marlowe (https://playground.marlowe-lang.org/#/), Helios (https://www.hyperion-bt.org/helios-playground/), or Aiken (https://play.aiken-lang.org/)