rchain / bounties

RChain Bounty Program
MIT License
90 stars 62 forks source link

Walkthrough video of the nthCaller game #994

Open JoshOrndorff opened 5 years ago

JoshOrndorff commented 5 years ago

Benefit to RChain

Learners who prefer video tutorials over reading text will have a practical hands-on way to start developing dapps on the platform. Video-makers completing the tutorial will also become more skilled rholang developers and more valuable in the ecosystem.

Budget and Objective

Create a tutorial video that takes a new learner through setting up their developer environment, installing npm, writing the code, testing along the way, making incremental progress, and ending at the desired product. Target either linux or osx and point out when things may be different between the two.

The person or people doing the teaching should expect to run through the tutorial 4 or more times throughout the process to get fully comfortable with it and record a few takes.

The video should be in a style similar to https://www.youtube.com/watch?v=Oive66jrwBs https://www.youtube.com/watch?v=gnsO8-xJ8rs . The production value need not be quite as professional, but should be clear and not at all distracting.

Good check-in points are after the first install, after the rough draft video and at the end.

Estimated Budget of Task: $2500 Estimated Timeline Required to Complete the Task: 2-3 weeks How will we measure completion? 15-30 min video revised draft submitted to youtube and publicized on discord

Legal

Task Submitter shall not submit Tasks that will involve RHOC being transacted in any manner that (i) jeopardizes RHOC’s status as a software access token or other relevant and applicable description of the RHOC as an “asset”—not a security— or (2) violates, in any manner, applicable U.S. Securities laws.

David405 commented 5 years ago

@JoshOrndorff do you intend to work on this yourself or is it open to someone else?

JoshOrndorff commented 5 years ago

It's open. I'm on SOW, so if I propose it, it's for you guys to grab. I will help and give feedback along the way as well as do the check-ins I mentioned. Looking forward to seeing the results.

Valentine-Mario commented 5 years ago

To create a this kind of video, an elaborate transcript needs to be created. I can also assist in doing that.

JoshOrndorff commented 5 years ago

I agree with @Valentine-Mario. I'd say build the dApp once or twice first (preferably as a team) then write a script. Once that's ready, build it again following the scirpt and recording. Finally build it one last time to re-take any rough spots in the original recording.

owans commented 5 years ago

I would like to contribute, possibly in building of the transcript.

motionfactory-digital commented 5 years ago

@David405 Once the "screen recording" is done please send to me and @JoshOrndorff to check @Valentine-Mario if you develop a script, please send to @JoshOrndorff and myself to proof read and try to ensure it lines up with what @David405 may record etc. Thereafter ill do the overall production / Voice over and branding etc etc

JoshOrndorff commented 5 years ago

Just to clarify, a script should be written before a video is recorded. I recommend the following process.

  1. Build the project once to get familiar
  2. Build the project again while writing the script
  3. Revise the script with my feedback
  4. Build again while recording
  5. Reshoot necessary parts with my feedback.
Valentine-Mario commented 5 years ago

The script is ready. I followed the steps u suggested by building and getting familiar with it while writing the script.

JoshOrndorff commented 5 years ago

So where is the script?

Valentine-Mario commented 5 years ago

I've sent it over to @david405

JoshOrndorff commented 5 years ago

Please post it here so we can all give feedback.

Valentine-Mario commented 5 years ago

The doc can be found here

Ojimadu commented 5 years ago

@Valentine-Mario and others, I reviewed the document and made some edits as suggestion please go through them and accept, reject or discuss.

Valentine-Mario commented 5 years ago

I've gone through them @Ojimadu thanks

motionfactory-digital commented 5 years ago

@JoshOrndorff please read and approve / or edit the script and let me know when you are satisfied?

JoshOrndorff commented 5 years ago

Thank you for posting the script. I'm excited that we're rolling here! However, I don't have permissions to edit or suggest changes on that doc. Here is my feedback on the first few paragraphs. It should give you a sense of the updates to be made throughout the document.

The opening sentence should be welcoming and explain the exciting things the user can look forward to learning/experiencing during the video. How about something like "Over the next 30 minutes we'll learn how to create a full-stack decentralized application or "dApp" on the RChain platform and deploy it to our own personal testnet." Then you can mention the tools that will be used and show them where they can download and install those tools. It's up to you whether you actually show the process of installing npm, but you need to show how to install RNode, rchain-api, etc because it isn't trivial or documented elsewhere. You might want to say, "If you already have RNode installed skip ahead to 4:35 (or whatever it ends up being).

The second paragraph is pretty good! The game should be demonstrated on screen while reading that paragraph. It may be helpful to actually note in the script (maybe a different color or bold or something) what you're expecting on the screen while reading the script.

You're off to a good start, and I look forward to a few iterations and recording.

Please don't reply by merely saying I have suggest access now. I do need suggest access, but I've also given actionable feedback that is applicable more generally than the first paragraph. Please revise and then I'll give feedback again. Can @jeremybeal11 or someone else with some editorial skills also help revise the copy?

Valentine-Mario commented 5 years ago

Thanks for the feedback. I've added the extra items you suggested which includes installing rnode on linux and you can now add comments to the doc

motionfactory-digital commented 5 years ago

Right - where are we with this @Valentine-Mario @David405 @JoshOrndorff ?

JoshOrndorff commented 5 years ago

I've made a lot of suggestions on the script. We've still got some writing work to do before this can go to production. Remember the video isn't just someone reading what I wrote in the readme. This should actually show the learner how to build the project. You need to be coding in real-time. We're nearly two weeks into this project that I budgeted 2-3 weeks for. Can anyone help Valentine with this transcript? Who plans to make the recordings? Have you gone through a build or two yet? @David405 @owans

@jimscarver You were asking me what colab could work on. Could you help advise this team on how to write higher quality materials. @ddayan Anything to add?

I really want the bounty system to work and I've argued long and hard with the marketing team that it can work. But we need high quality work. This is your chance to show that you can do good work through the bounty system.

jeremybeal11 commented 5 years ago

i just saw this. I'm in the the now making some edits and suggestions. To everyone involved, can we get this doc done so @JoshOrndorff can finalize it by EOD?

David405 commented 5 years ago

I am done with the video, @sypha999 did the editing, here is the video https://www.youtube.com/watch?v=rEKheMLlNHo&feature=youtu.be, please everyone should watch and give feedback so changes can be made if necessary.

By the way, it is difficult to do a walkthrough tutorial in 15-30 mins, except I wont have to explain the concepts on the way which will defeat the purpose of a tutorial

motionfactory-digital commented 5 years ago

great work @David405 , - @JoshOrndorff what do you feel about this?

motionfactory-digital commented 5 years ago

@JoshOrndorff should this be sufficiant - ill proceed to complete the editing etc as per me suggestions to you - keep me posted -

JoshOrndorff commented 5 years ago

:clap: @David405 This is overall a wonderful video. Great work! I think @Cryptovideos will be able to cut out silences and maybe just speed the whole thing up 10% or something. I agree that it isn't realistic to have this be 15min. But let's aim to get it under 1 hour at least. Then we can promote is as "Write a Full Stack RChain dApp in Under an Hour".

I do have some detailed feedback and improvement suggestions. Some of them are more important than others. Please let me know what help I can provide moving forward.

motionfactory-digital commented 5 years ago

@sypha999 @David405 please sort out the above and submit the new version for consideration for us to proceed

JoshOrndorff commented 5 years ago

@Cryptovideos Some of those bullets are questions for you.

Can you put a notice when a typo first occurred? Can you make cuts at the 9:00 minute mark?

@David405 What are your preliminary thoughts on fixing some of those things. The code definitely runs on 0.6.4, so maybe you can just say you used that version.

To help prioritize, the most important issues are:

sypha999 commented 5 years ago

@joshOrndorff I have made the corrections you pointed out in the bullets and sent to @David405

JoshOrndorff commented 5 years ago

@sypha999 You mean you re-recorded some content? Did you use a newer node? Looking forward to seeing something.

David405 commented 5 years ago

@joshorndorff changing the node version in the video would not be that easy since it will require redoing so many parts

motionfactory-digital commented 5 years ago

The end product needs to meet the requirements set about by the issue created or it is pointless. i suggest you create the video / record the new parts etc as per @JoshOrndorff suggestions

sypha999 commented 5 years ago

https://youtu.be/LYkEB-TPGFo

@JoshOrndorff thats the link to the end product. We stuck to 0.6.3 for compatibility reasons. @David405 actually said he made those errors purposely because they were common errors. And I believe pointing it out during the video beats the purpose of the errors. I cut out all irrelevant point ti reduce the video length too.

JoshOrndorff commented 5 years ago

Okay, thank you @sypha999. I think the video adds a decent amount of the planned value. Good point about making the common mistakes in the video. I do think we should show how to start a node that runs casper though. Not everyone will be able to deploy javascript code to colab.

Let's leave this open until Friday October 26th to see if anyone else wants to add value by adding demos updating node version, or speeding it up a bit. Otherwise we'll close this one and spin off a new issue to update both the project and the video to node 0.7

JoshOrndorff commented 5 years ago

I love the debugging David does around the 42-43 minute mark. That's great. I just wish we had instructions to starting a standalone node that will work here. You just need to make sure that you specify a private key from your .rnode/genesis directory.

rnode run --standalone --no-upnp --validator-private-key <whatever>

David405 commented 5 years ago

@JoshOrndorff I actually did try updating the version to 0.6.4 but kept having different errors on each occasion so I had to leave that out.

As regarding a working standalone node instance, I really can't explain why I keep getting an invalid unslashable block error when I added the public key of my validator private key to my bonds.txt file.

I did the video in short clips and I had to redo each clip an average of two/three times to eliminate errors/mistakes so as to get the best possible outcome (This explains why making an update takes a while), each error that occurred in the video was intentionally added so the video feels more natural and also guide end users on how to debug similar errors.

As regarding the speed, I use Brad Traversy videos a lot in learning several technologies since I like his teaching style (I believe you also want this video to have a similar style), @sypha999 actually did increase the speed of the video to x1.5 but I didn't want it to be so fast that end users will find it hard to follow, like Brad does, I wanted end users to be able to write their own code alongside me rather than pausing to type their code.

David405 commented 5 years ago

@joshorndorff I added instructions on starting a standalone node that works, check it out https://youtu.be/-9UY5J216cI

I believe this is done.

JoshOrndorff commented 5 years ago

@David405 That's really wonderful and makes a big difference in the value of this video. Could you please link to the part of the video where that is discussed?

David405 commented 5 years ago

You can see this at https://youtu.be/-9UY5J216cI?t=3979

David405 commented 5 years ago

@JoshOrndorff I believe this is now complete, can you kindly vote on it and possibly @dckc also?