Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I think the web is mostly good the way it is and I don't want to see it re-invented. In fact, I hate Flutter because it's not "webby". It renderers all content and controls using Canvas which means all there is on the page is pixels which means no accessibility since there is no standard structure (the DOM) to dig through to find the content.

You might say there will be solutions like ideas to augment the canvas with meta data about what's in it but that IMO misses the point.

As a user I want to be in control of the data that's on my machine. With a standard like HTML, it allows me, as a user, far FAR more control then a native app. I can use userstyle sheets. I can write and/or install extensions that look through or manipulate the content. None of this is possible if all I get is a rectangle of pixels.

Translation and/or Language learning extensions would never have happened on native platforms because it's effectively impossible to peer into the app. Whereas it's super easy to peer into HTML based apps.

So, I like that most webapps work via HTML. I also like, that unlike most native UI frameworks, HTML has tons of relatively easy solutions for handling the differences between mobile and desktop. I've made several sites and web apps and while there may be a learning curve it's 2-3 orders of magnitude less work to get something working everywhere (desktop/tablet/mobile) with HTML than any other way of doing it.

Change to 2 modes, document mode, and app mode doesn't make sense to me. It'd be a net negative. People who want this I think want to take control away from the user. That's clearly Flutter's goal. All that canvas rendering means it's harder to select text, harder to copy and paste, impossible to augment via extension. It puts all the control in the app dev's hands and none in the user's.

So no, I don't want the web to be reinvented. Its provides something amazing that pretty much all attempts to replace it seems to missing. Its structure is a plus not a minus.



I have yet to see a suggestion to "reinvent" the web that expands on publisher or end-user capabilities, rather than taking them away. The end user doesn't want Geminispace, they don't hate that web publishers get to control layout and design, or that sites can be more complex than even the early web allowed. They don't want to write their own clients or stylesheets, they don't want the web to only be strictly static documents, with "apps" quarantined elsewhere. They don't want a different markup language. They don't want to destroy social media and force services not to use algorithmic feeds or discovery because it's "mind control." They don't want to kill all advertising and commerce on the web in the belief that content creators should be forced to work for love instead of money.

I mean if modern tech people had their way, the web would have never been anything but a bare data API on a blockchain, and no one without at least a bachelors' degree in CS or engineering would even know about it. And oh yeah, you'd need a license to publish anything.


> I mean if modern tech people had their way, the web would have never been anything but a bare data API on a blockchain, and no one without at least a bachelors' degree in CS or engineering would even know about it. And oh yeah, you'd need a license to publish anything.

They're looking for a technical solution to a social problem. They miss the Web as a space for people only like themselves. Having to share the web with normies who don't create out of _love_ or don't spend hours researching a small change like they want everyone to means folks different from them end up inhabiting the web. It's thinly veiled gatekeeping, a desire to make the web a space where only folks like them would inhabit.


No its not. I just want to read text based content without downloading google analytics + 20 other trackers, 5 java script libraries, 7 frameworks of some kind and 20 ads. It's inefficient. It drives obsolescence of hardware long before it is unusable (second only to gaming, but at least gaming has a user driven motivation, not abuse by tech megacorps).

Assigning a gatekeeping motivation to it is a nice strawman, but luckily not based in reality


> I just want to read text based content without downloading google analytics + 20 other trackers, 5 java script libraries, 7 frameworks of some kind and 20 ads. It's inefficient.

I agree. I have JavaScripts disabled, but it may still try to download CSS, pictures, and other stuff, and might try to hide the document, etc.


Then don't? If you want to recreate Gemini on the web, just use curl to download assets and consume them that way. This doesn't seem to be about you or the GP specifically consuming the Web this way, this seems like people who want to create a _network_ of other people who consume the Web this way, which is essentially the same as gatekeeping.


Not sure if either or both of you are lumping the article author in as “modern tech people.”

From the article:

> I think this combination would bring speed back, in a huge way. You could get a page on the screen in a fraction of the time of the web. The memory consumption could be tiny. It would be incredibly accessible, by default. You could make great-looking default stylesheets and share alternative user stylesheets. With dramatically limited scope, you could port it to all kinds of devices.

> And, maybe most importantly, what would website editing tools look like? They could be way simpler.

And:

> There are a lot of other ways to look at and solve this problem. I think it is a problem, for everyone except Google. The idea of a web browser being something we can comprehend, of a web page being something that more people can make, feels exciting to me.


On the other hand one should see, how the masses of normies, uneducated about how even a single web page works, keep consuming the wrong stuff, creating huge incentive for companies to ruin the web we have/had for the for the people, who value consent and freedom. Normies just keep consuming and enjoying away their own freedom and the freedom of others, by giving power in terms of money to the wrong people. We have seen it again and again with companies like FB, Netflix, Google and so on, which create a dystopia of not being in control, what is done with your data and spying on us everywhere we go on the Internet. The normies, who consume without worrying are empowering them.

So yes, it is some gate keeping, but maybe that gate keeping is justified, in order to protect our freedom.


> They don't want to kill all advertising and commerce on the web in the belief that content creators should be forced to work for love instead of money.

In the heyday of the web, people weren't doing anything for money and it created good content. Where is the good content now? A billion useless "Best $product to buy in $current_year" articles with 20 affiliate links to drown the web in SEO spam. Commercialization is a race to the bottom. Good art and literature was created by people who had an urge to create and not by people who had bills to pay.


The good places of the web still exist. Nobody is stopping anyone to participate and enjoy them.


If you pour one drop off piss into a pool of water, it becomes piss. If you pour one drop of water into a pool of piss, it does not become water.


> They don't want to kill all advertising and commerce on the web in the belief that content creators should be forced to work for love instead of money.

Real artists have day jobs.


> end users don't want to write their own stylesheets

They probably do, but not at today's complexity of CSS and not in constant defense of every website with atrocious over-design.


> The end user doesn't want Geminispace, they don't hate that web publishers get to control layout and design, or that sites can be more complex than even the early web allowed. They don't want to write their own clients or stylesheets, they don't want the web to only be strictly static documents, with "apps" quarantined elsewhere.

I do not agree. Many users do want it. The problem is that web browsers are not written for advanced users.

(Furthermore, there are other protocols for other things, such as IRC, NNTP, etc.)

> They don't want a different markup language.

The actual problem is that even if you use a different markup language, you cannot easily serve it and allow end user customizations to decide how to display it (possibly using a more efficient implementation than the HTML-based one), and you will be forced to serve HTML instead, making it more difficult to write an implementation that does support the other formats.

You could use <link rel="alternate"> to link to the source document, or you could have my idea of the "Interpreter" header, which also allows to polyfill picture/audio/video formats in addition to document formats.


>I do not agree. Many users do want it. The problem is that web browsers are not written for advanced users.

How many are 'many?' I'm not aware of anyone not a programmer or web developer who even cares about any of those things. Perhaps I should have been more precise and said "the average end user." I mean, even most people on HN who talk about Geminispace just complain about how restrictive it is. It's a niche within a niche within a niche.

And I think you're just proving my point here - all of these are problems that only a subset of tech people even have.


> And I think you're just proving my point here - all of these are problems that only a subset of tech people even have.

Yes, but can't you have many possible computer programs, that different users may prefer? Shouldn't you be able to make multiple kinds, whether a lot of users want it or only a few users? Unfortunately, the existing complexity and mess of WWW makes it difficult.


> As a user I want to be in control of the data that's on my machine. With a standard like HTML, it allows me, as a user, far FAR more control then a native app. I can use userstyle sheets. I can write and/or install extensions that look through or manipulate the content. None of this is possible if all I get is a rectangle of pixels.

Not only are you in a tiny minority of users who wish to do things like this, but most web applications out there go out of their way to stop you from doing those things and creators would almost certainly rather have a UI platform that did not allow you to do those things.


> Not only are you in a tiny minority of users who wish to do things like this, but most web applications out there go out of their way to stop you from doing those things and creators would almost certainly rather have a UI platform that did not allow you to do those things.

I am also one who wants to do things like this. Web browsers must be designed for advanced users who are assumed to know what they are doing better than the web page author.

It is worse. Even if I am a author I cannot easily use a format to allow end users better customization if they provide their own software to do so; they want to insist you to do it by yourself, regardless of what the end user wants.

However, it is possible to use mainly the existing HTML standard, to make something that would allow more user control.

Some possibilities include:

- ARIA mode. Use HTML and ARIA to display the document, using user-specified styles and behaviours, instead of using the CSS included in the document (with some exceptions, e.g. if it specifies a fix pitch font, then it can use a fix pitch font).

- Interpreter header. If it were implemented even in common web browsers (without requiring TLS), then it can allow to serve any file format and if the client software does not understand it, it can polyfill the implementation.

- Use of new HTML attributes, e.g. feature="usercss", feature="uploadname", rel="data", <html application>, etc. Existing implementations would ignore them, so it does not break compatibility.

- Use of existing HTML features, e.g. <link rel="alternate"> (to make available alternative file formats), etc. Clients that do not implement them can ignore them.

- Design web browsers for advanced users. Many Web APIs will be implemented differently (or not at all), e.g: when asking for a file to upload, also allow the user to override the remote file name, and may allow a system command line pipe (like popen) specified; when requesting microphone or camera access, the user specifies the source (again using popen, which may be used even if the user does not have a microphone/camera); etc.

- Other features in an improved web browser, e.g. key/mouse quoting mode, manual/auto recalculate mode (manual mode also prevents spying from unsubmitted forms and stops autocomplete from working), save/recall form data on local files (as a user command), HTTP basic/digest auth management (also as a user command), script overriding (also mentioned in a article written by FSF), etc.

- Request/response header overriding option for user setting. This makes many other options unnecessary, because you can use this option instead, e.g. language setting (Accept-Language), tracking (DNT), JavaScripts and other features (Content-Security-Policy), cookies (Cookie, Set-Cookie), HTTPS-Everywhere (Strict-Transport-Security), etc.

- Meta-CSS, only available to the end user, which can make CSS selectors that select CSS selectors and properties and modify their behaviour.

- Improved error messages. Display all details of the error; do not hide things.

- Some properties may work differently, e.g. if you try to access the height of the view, to return Infinity instead of the correct number (or define a getter on that property which throws an exception instead of returning a number).

- The structure of the design of the web browser in the backward way from usual: I think that a better way will be, that the components (HTML, individual commands within HTML, CSS, HTTP, TLS, JavaScript, etc) are separate .so files (extensions) that are then tied together using a C code, that a user may modify and recompile, or rewrite (and changing the components too if wanted) to make the web browser in the way that you want to do.

- External services which provide information and APIs for accessing APIs of other services including using command-line programs, that users may access to use them.


This is coming down to vendor control. My industry uses adobe more than I like and adobe knows photoshop is something people will try to pirate as long as it is a distributable application. Big business wants the next web so they get to say who loads their proprietary tools. Coming soon, you will be signing into all 'your' applications.


The only reason you can dig through the data now is because the browser gives you tools to do that. The primitive view source or the more advanced dev tools. A web where everything is rendered to canvas would still need to get some data and there is no reason why the browser would not give you the tools to inspect that data.


I think the point is that if the only API that's built into the browser is the canvas, then the browser itself can't know how you're actually structuring your data at all. So the most debugging you can get built in directly is telling you which lines and shapes are currently being rendered. Whereas currently, if you use the DOM, the browser can show you the full rendered tree, show you which elements have events attached, allow you to manipulate elements by putting them in specific states, or just let you delete and modify them in place. The same goes for CSS.

In practice, I suspect if this route were to become more common, then frameworks would provide these sorts of tools directly. The browser still couldn't directly see the component structure of your code, but a framework might provide a browser extension that it itself can hook into, so that you can inspect it as its running. The problem then is that each framework would have to do this separately, because there would be no single base component structure that the browser recognises.

Essentially, you'd go back to developing as it's done for desktop environments - Qt or GTK might provide their own debugging environments, but the operating system itself is generally running at a much lower level, and so can't help you much if you want to know why "foo" is being rendered instead of "bar".




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: