Skip to content
This repository has been archived by the owner on Jan 10, 2024. It is now read-only.

Feedback: this should be an internal tool for GitHub to develop its own supported products #59

Open
fulldecent opened this issue Mar 16, 2023 · 1 comment

Comments

@fulldecent
Copy link

GitHub Blocks allows people to add all kinds of JavaScript and HTML to MySpacify their page at http://github.com/user/repo

Here's why I don't support releasing this product for general availability.


Safety

If you can inject interactive elements into a page there is more risk of injecting bad elements. When I visit a github.com/... page, I am expecting that GitHub controls at least the formatting of that page. That is why GitHub hosts customer-generated webpages on github.io.

Portability

Any kind of github.com–myspace-app is only runnable on GitHub.com. Even if GitHub open sourced its full vocabulary like Slack Blocks did, GitLab and others are not going to implement it. And even if they did implement it, GitHub would keep incrementing it, breaking compatibilty.

I have a lot of respect for Microsoft nowadays because it delivers great tools and they are portable. GitHub Blocks is a deviation from this path.

These blocks should be built-in and maintained by GitHub

The first selling point on the marketing page for "kinds of blocks you can create" is a 3D model viewer.

If GitHub wants to support 3D models, that's great! It does a pretty good with CSV files already. This should be done at the GitHub level, not at the customers level. I can't think of anybody using GitHub that can or should be able to come up with a 3D viewer. Do you really want to browse GitHub repos and some of them have 3D viewers and some of them don't?

A P5 viewer? Just update GitHub Flavored Markdown to render every [...p5.js](some P5) link and in the READMEs shown on http://github.com/... show it that way every time.

Zero people complained when GitHub changed how CSV files render for everybody. Be fearless and deploy more of these good updates that are already built and demonstrated here as Blocks—but do it for everybody just like the CSV updates.

We already have great way do all these things... the GitHub Pages

Do you want a quick way to allow people visiting your project to edit a webpage, contribute their first commit, or consume some content in your repository?

Well I've got the solution for you, it's GitHub Pages! With GitHub Pages and some great GitHub APIs, you can access all repository content and history, render it however you want, and make it better! All of that lives on a webpage hosted for free by GitHub, updated every commit, and you can even host it on your own domain if you want to!

Some off-the-shelf projects exist like prose. But also remember... anything you could do with GitHub Blocks can be done with GitHub Pages. You can probably even translate from the former to the latter just using VS Code, adding a comment // translate this to an HTML widget and pressing enter.* (*Fees apply for using GitHub Copilot.)

Blocks is still great, but it should live as a debugging tool rather than a product candidate

But again, blocks is really cool as an internal GitHub tool. Maybe some non-GitHub-employees can recommend improvements to the GitHub CSV viewer. Great! And I welcome this community involvement. I already CMD-OPT-I all kinds of websites I don't own to add features (Google Docs dark mode anyone?) . Having a first-party, first-rate tinkering experience with GitHub's interface is really cool.

But let's say I build a better way to render CSV files (maybe a way to add a row, which generates a PR). It might be cool to deploy that on my on GitHub repo page. But how much cooler would it be if GitHub accepted that change and deployed it for the billions of GitHub visitors on the millions of GitHub repos across the GitHub universe?


Please don't pick one of these points, refute it, and say this issue is dead. These are four independent points, each of which individually should be good enough to stop Blocks from reaching general availability.


I didn't see a discussions tab or anywhere mentioned to give durable, discussable feedback (i.e. not Discord) so I hope this post is welcome here.

@dtedesco1
Copy link

dtedesco1 commented Mar 16, 2023

I tend to agree. Part of what makes GitHub special is precisely that it's not very customizable. It's all about the code.

If GitHub lets users add lots of visual bells and whistles, it risks turning the platform into a social media popularity contest-type network. Such a move would be good for short-term engagement metrics and probably get the product team members who worked on it a promotion or two, but I doubt it'd be good for the overall user experience or long-term development of the platform.

There are a lot of great things about Blocks, and I'm glad the team is experimenting with features like this. Just please don't let this become--to steal @fulldecent's analogy--a MySpacification.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants