Live data from Hacker News

Tenets

github.com

91–100 of 162 posts

Re: Tenets

#91
post #7

Now I know why I dislike Svelte so much, I don't believe in its principles. Which is perfectly fine, a framework can't please everyone. HTML is not the mother language - It's actually pretty terrible for describing dynamic user interfaces. This is why JS solutions are so appealing. If HTML is so magical why do they need a fancy template language? Magical, not magic - I really don't want it to feel magical either. I l…

> describing dynamic user interfaces

GUIs are essentially 2d scene graphs. Basically you need to describe a tree of hierarchical relationships.

I agree HTML is not great for the dynamic part and the reacitivity but it's the lingua franca of the web. Why reinvent some new DSL when you already have one that was already designed to represent a scene graph.

Re: Tenets

#92
post #14

> Instead of striving to be the fastest or smallest or whateverest, we explicitly aim to be the framework with the best vibes. Except that svelte advertises itself constantly as being faster and with smaller bundle sizes. Which is a good thing. I don't buy that it priortizes 'good vibes' at the cost of those other things. If it's saying it prioritizes 'good vibes' and everything else, then that's pretty meaningless -…

Svelte is better than Vue IMO

Re: Tenets

#93
post #33

Earlier quoted context omitted.

> HTML is the native language for describing UI in the browser In the same way that assembler is the native language for giving instructions to the CPU. In practice, it is of zero importance, because there are powerful abstractions built on top of it, with wonderful benefits once you’re building anything more complicated than one-page documents.

Open the browsers dev tools and you see HTML. Read MDN and you see HTML. Constantly translating back and forth between that and another language isn't worth it.

Though if there was a better language to describe the UI which is as performant, widely supported and documented as HTML, I can easily see people using it. Maybe someone will start that project today based on my comment, and a decade later browsers will integrate it natively because it's such a success and everyone is using it :).

Re: Tenets

#94
post #92
post #14

> Instead of striving to be the fastest or smallest or whateverest, we explicitly aim to be the framework with the best vibes. Except that svelte advertises itself constantly as being faster and with smaller bundle sizes. Which is a good thing. I don't buy that it priortizes 'good vibes' at the cost of those other things. If it's saying it prioritizes 'good vibes' and everything else, then that's pretty meaningless -…

Svelte is better than Vue IMO

I love Svelte, but please make substantial comments on HN. Flagged.

Re: Tenets

#95
post #14

> Instead of striving to be the fastest or smallest or whateverest, we explicitly aim to be the framework with the best vibes. Except that svelte advertises itself constantly as being faster and with smaller bundle sizes. Which is a good thing. I don't buy that it priortizes 'good vibes' at the cost of those other things. If it's saying it prioritizes 'good vibes' and everything else, then that's pretty meaningless -…

I agree but there's a difference between the DX vs the execution (how the thing runs internally).

I believe the vibes thing refers to the DX, not the engine itself.

Re: Tenets

#96
post #60

Earlier quoted context omitted.

I was responding to this: "There's literally nothing better than HTML for UI." In general that is false statement. In particular, when it relates to browsers, HTML is the local minimum of what can be done to describe the "UI". Because HTML (well, DOM) is the only thing to describe the UI in the browser, and it's abhorrently awful. It can barely describe a page with static text and some images (and even then tools lik…

Even after all that, you still haven't made explicit the thing that needs to be explicit for any of this to make any sense: ".... for UI *IN A BROWSER*" I know it's convenient to forget the millions of us who spent years and continue to spend hours implementing UIs outside of a browser context, but it certainly doesn't feel very polite.

I don't think anyone's trying to be impolite or diminish What Came Before, but HTML is used for lots more than websites and browsers. (Examples that come to mind are email, desktop and mobile apps, ebooks, and digital signage.)

Re: Tenets

#97
Anyone know why these principales are called tenets? I believe it’s a concept that originates from amazon.

Re: Tenets

#98
post #7

Now I know why I dislike Svelte so much, I don't believe in its principles. Which is perfectly fine, a framework can't please everyone. HTML is not the mother language - It's actually pretty terrible for describing dynamic user interfaces. This is why JS solutions are so appealing. If HTML is so magical why do they need a fancy template language? Magical, not magic - I really don't want it to feel magical either. I l…

> HTML is not the mother language

Personally I just don't like when people go too much into " in " mentality. HTML is decent at describing what's there. CSS is sort of fine at describing how it looks. And JS is ok for describing what should happen.

My second guiding principle is that everything should be split into composable components, without anything being privileged. So I don't like page components being special in any way.

I can excuse some violations of the first principle in the service of the second one like putting a bit of HTML into JS file instead of keeping separate HTML template file for each component. But I don't really like any CSS in JS. The only connection surface between CSS and JS (and HTML) should be selectors that say what is addressed. CSS classes should identify elements. If you want some classes that describe groups of styles (like tailwind) you can have them but don't cram them directly into HTML. Include them in styles for given element using SASS (or LESS) include functionality. HTML (or JS) shouldn't describe how things look.

Also all the frameworks that claim to be almost pure HTML but they cram the adhoc behavior description into fake HTML attributes rub me the wrong way. They remind me of what was there 20 years ago.

And any reactive bindings between arbitrary stuff is just ordering whole bowl of old time spaghetti, after Redux (and React) shown that it doesn't have to be like that anymore.

I agree that additional challenge of keeping the flow of state centralized and unidirectional might feel unnecessary for simple projects, but it's worth it if the project survives more than few years and grows.

Re: Tenets

#99

Earlier quoted context omitted.

I hear you, but at the end of the day it isn't really targeting HTML. Not when it looks like this - {#if answer === 42} what was the question? {/if}

Sure it is, all the rest of the markup is HTML. Just because it's an extension of HTML doesn't mean it's still not very HTML.

It's html plus adhoc behavior description language. Behavior does not belong in HTML. You shouldn't have full programming language in HTML. And if you do, at least use existing language not make your own.

Since all of this is client side (and display: none; is the best you can do in terms of not revealing everything to the user anyways) you don't even need any behavior language in HTML. Just set classes to elements and manipulate them with the framework from outside.

Re: Tenets

#100
post #22

Earlier quoted context omitted.

Vue is a unified ecosystem of tools written by the same authors and designed to work with one another. React gives you way more rope to hang yourself. Good luck figuring out what the routing and state management flavor of the minute is.

Then you're looking for Next. It's a unified ecosystem of tools written by people closely related and désigned to work with one another.

I'm not looking for Next. I'm quite happy with Vue or Sveltekit.
Post reply on HN