Hacker News new | ask | show | jobs
by shopkins 2724 days ago
Just a little feedback: as someone not deep in the blockchain world, I have no idea what Blockstack is, or why nothing happens when I click "sign in" or "start writing now". The page does a good job of describing the product benefits, but it doesn't cover square 1 and describe what I need in order to actually start using the product.

Otherwise I know this was a fun project, but it always helps to hone in on your audience on the landing page. Answer, Who's going to appreciate this the most?

2 comments

Thanks! This is really helpful. I'll make sure to get the landing page updated.

Just so it's covered here, Blockstack is a decentralized application platform. It provides an authentication strategy that anchors your username/ID to the bitcoin blockchain. The benefit of this is not having to rely on a central authority for your username. Example: Google could terminate your access to your gmail account anytime they want. Graphite/Graphite Publishing can't do that with your Blockstack username.

As for your question about who would appreciate this most, I think Graphite Publishing is probably going to benefit people already interested in decentralization the most initially. However, it really does provide a more secure solution than using something like Squarespace, for example. If we stick with the Squarespace example, your content (design and words) are stored in Squarespace's database. The content can be accessed and changed (or deleted) by Squarespace at any time. With Graphite Publishing, your content is stored either in the default storage hub provided by Blockstack and encrypted, or it's stored in your own custom storage hub if you so choose. In either case, the content can't be accessed by anyone other than the user creating that content.

Again, thanks so much for the feedback! I really appreciate it.

That clarifies some questions for me: I didn't know that Blockstack stores the content. The Graphite site looks like it's a hosting platform. The marketing angle might rely on getting the platform to look like something different or new, that seems less centralized. I don't know what that is.
The idea is that gaia hubs are owned by the users.

There are two aspects of this implementation:

1. The Blockstack naming system is used to associate an immutable user identity with the routing path to their storage, for reads and writes.

For an application to store data in the gaia hub, they must sign a challenge text proving they have been whitelisted to write that data, but the data is associated with the users gaia hub.

If the user leaves the platform, all of their data is with them in their gaia hub, which can be used by another app (maybe a competing blogging app for example?).

2. Users host their own gaia hubs.

Right now, the barrier is high for people hosting their own gaia hubs, so Blockstack provides a default one that is associated with their identity, so the average user can focus on using the applications on Blockstack and less on the system administration like overhead in setting up a gaia hub.

However, this user onboarding default does not override the ownership the user has in that their id is the one whitelisting applications and allowing applications to store data, which they can then own and use in other places, or disconnect their gaia hub and simply keep the data as their own personal HD with user addressable content even if they did not want to use it anywhere else, with other apps, etc.

Users can host their own gaia hubs. We are working on migrations, images available on platforms and publishing instructions for how to utilise DO spaces and S3 in addition to the driver functionality that exists now for things like Azure blob storage and S3 buckets.

The newer development is focused around automating the driver with local disk so the same set up can be ported to images on the cloud as well as users hosting their own gaia hubs on a server somewhere. For example, many of our enthusiasts are asking how to host them on a rasberry pi.

Let me know if this answers your question. I would also love feedback or ideas in general.

"Blockstack stores the content" -- today this is true in that you are provided with a default storage bucket by Blockstack that amounts to Microsoft Azure space. It's been Blockstack's vision that you could select your own cloud storage upon account configuration (i.e. your own S3/Dropbox/IPFS storage), thus decentralizing your data storage away from the App developer. If you're willing to get your hands dirty, you can theoretically spin up your own Blockstack GAIA node and store your data there instead of the provided defaults. More info here: https://github.com/blockstack/gaia
By the end of this month we will have instructions on how to host your own gaia hub in DO spaces (on Digital Ocean) using the develop branch of gaia in our Blockstack docs located here:

https://docs.blockstack.org/

So stay tuned.

I personally find Digital Ocean to be the most user friendly, so we are trying to lower barriers to make it as easy as possible to roll out gaia hubs by providing instructions for these kind of platforms.

We are also rolling out instructions and images for the major cloud hosting platforms. If you have any preferences for a particular platform you would like supported or any other feedback, let me know.

Currently on master branch, gaia supports the following drivers:

Amazon S3, Azure Blob Storage, Local disk (you must set up static web-hosting to point at this driver), and Google Cloud Storage

You can learn more about how to set up your own gaia hub here: https://github.com/blockstack/gaia/blob/master/hub/README.md

Graphite never touches nor has access to any of the data you store. Choosing your own storage provider so you don't have to rely on Blockstack storing your data is quickly becoming much easier than it used to be. In fact, Graphite (the core product) and soon to be followed by Graphite Publishing will likely be one of, if not the, first apps to offer a simple option to plug in the storage provider of your choice.
So Graphite is just kind of like a headless CMS/front-end for drafting your blog content that is hosted/served by Blockstack (or the other storage options that you and others have detailed) ? If that description is close to what this then that sounds pretty darn cool to me..
Blockstack is an architecture which supports gaia storage, wherein the blockstack api supports routing the Blockstack identity via the BNS naming system to the users gaia hub, where they own and store their own data.

Gaia is not necessarily dependent on Blockstack, but it was designed to be modularized within this design, so users can control where their data is stored, which is not necessarily the case with IPFS.

It is pretty darn cool :)

Let us know if you have any more questions.

This is why we chose Blockstack for the core product (Graphite) and for this project!
What advantage does this provide over hosting your own blog using something like WordPress or Hugo?
I would say there are two main advantages:

1) Encryption. Your content is encrypted with keys that you and you alone control. If there was ever a breach of your self-hosted WordPress server, all of your content (in progress or not) would be freely readable. With Graphite Publishing, your in progress posts are encrypted and in the unlikely event of a breach of the storage provider of your choice, your private, in progress posts would not be readable.

2) The application is managed for you. No downloading. No deployment. No choosing hosting providers. Some people like all that. A lot of people don't.

This is not to say Graphite Publishing is better than WordPress. WordPress has significantly more features at this stage, but I consider this the groundwork to creating something far better.

TL;DR

Block-chain: Solving imaginary problems that nobody has -- and doing a terrible job at it

The only use of blockchain in this app is the username creation. And that is pretty much hidden from the user experience.
Is the system able to be used privately on networks without Internet access? I think offline use is mandatory (think: RasPi LAN party in Kenya).

I’m approaching this space in another way (search: “iSpooge Live”). I have an RSS/ActivityPub-like feed and reader pair, with network address as identity, generated statically and exposed via CDN w/ long cache TTLs. Sovereignty is the m.o. of the stack.

Graphite Publishing supports offline storage (not yet implemented but will be soon). But some level of network connectivity is required to at least create your username and sign in for the first time. After that, network connectivity is not necessary (after the offline storage feature is released.

Great question!

Oh! And as for the sign in issue, my guess is you're using Firefox or Safari on the desktop, is that right?

Unfortunately, the Blockstack Browser (which is necessary for authentication) only works on those browsers if you download the local version here:

https://blockstack.org/install

That should be resolved very soon. All other browsers should not require that extra step.

Seems to work on Chrome. I've grown quite accustomed to having to rely on Chrome quite a lot because a lot of websites nowadays are not optimized for any other browser.
I know Blockstack is working hard on a solution to make sure all browsers support authentication without having to download a local instance of the Blockstack Browser. But Chrome and any other browser based on Chrome's underlying technology (chromium) should work great!