Skip to content

Instantly share code, notes, and snippets.

@chadoh
Last active June 25, 2020 04:09
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save chadoh/2c29ee400d84e53e268f3e52a497936c to your computer and use it in GitHub Desktop.
Save chadoh/2c29ee400d84e53e268f3e52a497936c to your computer and use it in GitHub Desktop.
Chad's proposal for the near.org home page

Below is my proposal for the near.org home page. Each main heading corresponds to a section of the site.

The first section, as I explain it below, requires significant legwork:

  • A refactor of near-shell & near-api-js
  • The creation of conventions & suggested patterns that don't exist yet, so we can extract them to a new tool I'm calling near generate

While I think this legwork will pay significant dividends, I want the rest of these suggestions urgently enough that I don't think it's worth waiting all that time to start implementing. The second and third sections outlined below could be implemented much more quickly; let's start there.

And maybe there's some version of the first section that we could implement more quickly. I'm open to suggestions.

Without further ado, here's my suggestion:


Add certifiable fairness to your app

The top section of the page leads with a tagline like the one above, cycling through different things you can add to your app with NEAR:

  1. certifiable fairness
  2. verifiable ownership
  3. user-controlled data
  4. user-controlled identity
  5. bespoke financial instruments
  6. malleable governance
  7. incentivized marketplaces
  8. a community-run commons
  9. open-state, composable modules

Then, below this headline:

See how in 5 minutes

This "See how" Call To Action will by default open a video, with a subtler link to read the content of the video as a blog post / text-based tutorial.

(Design note: as the messages cycle through, the background & a prominent illustration change accordingly.)

These videos will have titles that correspond to the concepts they illustrate, which may be visible on the embedded YouTube video once you click to watch it:

  1. Build a trustworthy gaming website in 5 minutes with NEAR
  2. Add user-owned assets to your game in 5 minutes with NEAR
  3. Give your users control of their own data in 5 minutes with NEAR
  4. Don't spin your own auth; use NEAR to let your users bring their own identity
  5. Create a custom financial product in 5 minutes with NEAR
  6. WYSIWYG governance: build a point-and-click customizable voting system in 5 minutes with NEAR
  7. Add tailored game-theory mechanics to your app in 5 minutes with NEAR
  8. Augment or obsolesce data monopolies with a community-governed commons in 5 minutes with NEAR
  9. Compose a complex app from a fleet of self-contained building-block apps in 5 minutes with NEAR

These videos will each open by explaining the "why" of the use-case a little bit more, such as "Suppose you want to build a poker app; why should your users trust that you're not manipulating the cards? With the NEAR blockchain, you can blah blah blah. Let's see how." Note that this is the first time "blockchain" is mentioned.

Then they will walk through:

  1. Using npx create-near-app to create a new app (mention the "need nodejs" prereq)

  2. Using near generate (does not yet exist!) to quickly add common architectural patterns to the new app

    Such a near generate command is the only way I see us being able to walk someone from having no project at all to building a truly useful version of the above examples in about 5 minutes. Today we accomplish a similar goal by having a bunch of self-contained, minimal demo apps, but this leaves giant architectural conundrums unanswered: how do I add multiple contracts to my app? Where can I find an app that demonstrates X? near generate will use our suggested conventions to organize apps with multiple contracts and suggested patterns (such as pagination and upgradability) by default, and will be an easy place to look for all the different kinds of "X" that you can do with NEAR. Just run near help generate to see the list of possibilities.

  3. Explain other core NEAR concepts along the way, illustrating via improved near-shell & near-api-js interfaces

    I see NEP-31 as a prerequisite of all of this work; both near-shell and near-api-js clutter people's mental models and will get in the way of an understandable 5-minute tutorial. NEP-31 will allow us to use these tools as teaching devices, rather than needing to spend extra time in the video explaining & apologizing for the way they work.

  4. Mention throughout that, though this example (and maybe current tooling) creates a web app, NEAR can be used to build many other kinds of apps, too

  5. End with link to docs.near.org

We can survey our current community and/or use smoke-tests (a minimal landing page with the message & an email sign-up form) to figure out which of these examples generates the most hype, where to start, and how to nail the exact messaging.

These Awesome Apps Use NEAR

The next section of the page lists a few apps with 5-word blurbs about what NEAR enables for them. Clicking them opens up a case-study explaining how NEAR made this app possible. There is a subtle link to try out the app, but the main CTA pushes people toward a related tutorial.

  • TessaB: a trustworthy marketplace
  • Flux: certifiably fair
  • Stardust: user-owned game assets

Launch Your Next Venture on NEAR

This section of the home page lists app ideas, each linking to an in-depth proposal/request-for-project on the Open Web Collective website.

  • Empower restaurant cooperatives to own their deliveries and offer novel products
  • Create a free-to-use, pay-to-upgrade database & marketplace for simple translation phrases
  • Bring back the Guild: artist-owned finance & governance to supersede record labels & Patreon

End this section with a statement like:

Or bring your own idea! We'll help you chart a business plan and launch a product with the Open Web Collective.

What is NEAR?

This part of the page exists already. The page can remain unchanged from this section onward.

@vgrichina
Copy link

I like general structure, I agree 100% we need to:

  • have social proof on home page (i.e. "These Awesome Apps Use NEAR")
  • have ready to use starters for specific use cases

I want the rest of these suggestions urgently enough that I don't think it's worth waiting all that time to start implementing.

Yeah, I think these should be mostly orthogonal. Demos of specific use cases can be packaged as sample projects on https://near.dev

Add certifiable fairness to your app

This is a bit of a tough sell. "Certifiable fairness" is something blockchain enthusiasts will dig, but too abstract otherwise IMO. And we don't really need to sell blockchain enthusiasts on blockchain. At least it needs some different spin, like "Can't be evil" by Blockstack.

See how in 5 minutes

Feel like only these are more or less straightforward on NEAR so far:

  • Add user-owned assets to your game in 5 minutes with NEAR
  • Don't spin your own auth; use NEAR to let your users bring their own identity
  • WYSIWYG governance: build a point-and-click customizable voting system in 5 minutes with NEAR (assuming public votes)

I see NEP-31 as a prerequisite of all of this work; both near-shell and near-api-js clutter people's mental models and will get in the way of an understandable 5-minute tutorial. NEP-31 will allow us to use these tools as teaching devices, rather than needing to spend extra time in the video explaining & apologizing for the way they work.

I disagree this is a main blocker for 5 minute tutorial. NEP-31 is incremental improvement, it won't make stuff 10x easier to understand, more like 20-50% easier. Hardest part is wrapping your mind around either:

  • how blockchain works
  • how NEAR works compared to other blockchains

As for tools not being ideal – not sure why we even need to bring them much into equation for the demos. Let's assume we want to do a demo on "Don't spin your own auth; use NEAR to let your users bring their own identity". As web developer I just want to see copy-passable snippets I can use to bring it into my app, kind of like https://firebase.google.com/docs/auth/web/start. I don't really care how it works, how to use near-api-js for anything else and especially about near-shell.

@AnaisUrlichs
Copy link

As web developer I just want to see copy-passable snippets I can use to bring it into my app

Similar to what Ethereum devs use 3Box for, no? https://3box.io/

@yu1ian
Copy link

yu1ian commented Jun 23, 2020

I like this; however, I think this is a bit overwhelming for a front page. I also think this content is only relevant to developer persona and we have a lot of other personas that are interested in NEAR. I think home page should address needs of all those people. This would make front page less overwhelming - something like if you're a developer - go here, entrepreneur - go here, trader - go here, just a curious non-technical person - go here, want to migrate your project to NEAR - go here.

@vgrichina
Copy link

@yulian-near I think we still need to focus on one main persona, unfocused experience usually is less effective. Developer persona is most important, because developers are our direct customers. You go to Firebase website – it doesn’t focus on GOOG investors or entrepreneurs. I agree however that we need to provide separate pages more focused on other personas as well and make them easy to find.

@yu1ian
Copy link

yu1ian commented Jun 23, 2020

@vgrichina - I agree with all your points. Focus on developers sounds like a right approach as long as we provide an easy way to find a relevant info for other personas

@vgrichina
Copy link

Similar to what Ethereum devs use 3Box for, no? https://3box.io/

@AnaisUrlichs yeah, I think https://3box.io/products/storage is solid example

@eriktrautman
Copy link

The site will have to be updated soon to reflect the emerging new positioning for defi and not all of this would make the front page in that case. There are a number of good ideas to unpackage regardless:

  1. Bite-sized value-prop pieces. We've needed this forever. If you're confident enough in what we have to do this, I'm 100% down. We don't need a website update for it -- each should be its own blog post + whatever other content (video + code snippet) which gets recycled everywhere. For the record, I agree that only a few of them strike me as compelling sells for an above-the-fold site.

  2. Social proof of actual apps being built -- again, we've needed this forever. Good thing we actually have them now! Case studies -- again, can and should be separate content that gets pulled in. Easier to start bite-sized with each piece separately and then assemble into the main site.

  3. Leading with value prop not blockchain. It seems like we finally (almost?) have enough stuff to actually sell benefits rather than technology.

@vgrichina
Copy link

I agree that only a few of them strike me as compelling sells for an above-the-fold site.

I think we need to show case few and then have "See All" link leading to specific tag on a blog or something like that.

Case studies -- again, can and should be separate content that gets pulled in. Easier to start bite-sized with each piece separately and then assemble into the main site.

Note that for something like blog post we actually need a lot of content. While on the main page we can generally have a small blurb with logo / face and link to their website. So potentially less work to do actual blurbs for home page vs blog posts. I agree that for SEO/marketing purposes best to have blog post for each of these as well though.

+100 for having blogs/videos/distributing into every feed we post to in general though

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment