ton-society / grants-and-bounties

TON Foundation invites talent to imagine and realize projects that have the potential to integrate with the daily lives of users.

Home Page:https://ton.org/grants

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Improve onboarding experience for new smart contract developers

SwiftAdviser opened this issue Β· comments

commented

Summary

Survivorship bias problem

Right now, we have a big problem with newcomers that wants to start developing on TON.

I surveyed the community of ~5000 devs in four chats in June. And I got around 40 responses. But every one of those responses is from someone who has passed a series of hurdles and becomes a developer in the ecosystem. Even from these heroes, the most common problem I've heard of was "documentation."

Feel free to read the answers here:

And how many of these unfortunate souls didn't pass and settle in as dead listeners in dev chats? We don't know.

All who came from the development fields said where they have pain and what they need to fix. And how many of those people didn't come and were swept away by the complexity of the current TON ecosystem?

Pasted image 20220726111924

If we imagine that every newbie is Mario, then the lack of a clever way to learn blockchain is a hole that 99% of little Mario falls into.

When I want to START, on ton.org or in the current documentation, even "DOWNLOAD" a TON binaries is already a quest! It's a hole. Many tired after-work developers are buried here, and no one remembers their names.

Context

The first thing I want to bring to the ecosystem is a GETTING STARTED project for anyone who wants to play with TON over the weekend.

Pasted image 20220726112339

I want to start tiny and put a "Download" button for the most tired, where Kahneman's "System 1" will carry a person on waves of automatisms to the "Wow, I get it! How cool is that? Where's that complicated blockchain?"

This is the pain that worries me personally. The lack of a competent, unfocused path that even a tired after-work developer will follow. The ideal result looks like that:

Pasted image 20220726112028

I want to be sure that the person won't get blown away, distracted, have 3 links to 5 repositories, 8 versions of binary that are all out of date, and that the guy won't fall into some whitepaper along the way, where he will die. This is what I want to do.

Goals

  • Build a straight way for anyone who wants to start developing in TON
  • Build a user-friendly and scalable interface for new developers instead of old-school documentation for hardcore engineers
  • Build a Knowledge Hub that developers will love so that they will improve it over time because of its value

Deliverables

Plan Minimum

  • Created Getting Started in accessible language and step-by-step action, where TON binaries are downloaded, the first project is created, a wallet is tied up, and NFT is obtained from the blockchain.
  • Obtained a development environment for TON-func-fift on output, where documentation is the point of departure to any problem.

Plan Maximum

  • Getting Started.
  • Environment set up.
  • Collected links to critical resources and tutorials on:
    • Web Usage Examples
    • Smart-Contracts Development
    • Debug & Testing

Definition of Done

  • create an open-source repository
  • choose documentation engine
  • improve styles of documentation pages to become user-friendly even for my mom
  • create hypothesis journeys for different types of developers (zero, regular, advanced, etc.)
  • create visually new documentation experience with all the stuff from old documentation but user-friendly
  • host on test domain as MVP to make closed beta
  • improve with feedback after 10+ live interviews with devs from the community
  • clarify a structure and journeys with interviews experience and experts from the community
  • build the final version with an understanding of the actual needs of different kinds of developers the

Reward

  • Standard TON Footstep NFT
  • 6000 TON
  • New Generation of Happy Developers :)

Total: $10800

commented

Here is a repository with hosted documentation:

commented

Here is a website used as MVP for the documentation:

commented

Here is a working document with notes from the interviews

DOCS β€” interviews.pdf

commented

Also, here is a result of the prioritization of most of the tasks and problems from the interviews:

  • Nobody vs Every developer (left-to-right)
  • Delightful vs Not (up-to-down)

image

commented

After a bunch of talks with Tal Kol, we could provide this document as an ideal plan for future improvements together:

Docs Table of Contents.pdf

thank you very much @talkol! πŸ™‚

You've been doing some work πŸ˜„πŸ‘

commented

You've been doing some work πŸ˜„πŸ‘

Seems you became one of the beta-testers of new documentation :)
Feel free to write to me in TG: @SwiftAdviser. I will be happy to have feedback, especially on what was hard for you.

The current version of the documentation, although it looks nice, completely omits everything related to toncli, which is a pity.

Because toncli is quite an important part of TON development and is used by a lot of developers, as well as being a project in which other participants are actively contributing.

For example, new tests, running through docker, and so on.

The toncli also has extensive documentation and tutorials. It would be cool if the developers of the new documentation took this point into account.

commented

The current version of the documentation, although it looks nice, completely omits everything related to toncli, which is a pity.

Because toncli is quite an important part of TON development and is used by a lot of developers, as well as being a project in which other participants are actively contributing.

For example, new tests, running through docker, and so on.

The toncli also has extensive documentation and tutorials. It would be cool if the developers of the new documentation took this point into account.

Thank you for your comment. I've noted that in a new iteration of documentation. Because toncli is one of the most popular "schools for smart contract developers," it has its own page in the "Choose Your SDK" section:

image

I would be happy to approve Pull Requests from you or anyone related to toncli project so more new devs could use it.

More information about how to contribute: