Live data from Hacker News

Rich Harris joins Vercel to work on Svelte full time

twitter.com

551–560 of 571 posts

Re: Rich Harris joins Vercel to work on Svelte full time

#551
post #540

Earlier quoted context omitted.

Hey Lee, just listened to your chat with swyx the other day. It was great hearing how Vercel positions itself and your thoughts on devrel! I know Vercel has a great developer relations team already— what would the appetite be for more Svelte DevRels in future? I've been working as a developer advocate and love Svelte enough to have even given talks on it. Would be an opportunity I could see myself in for years :)

We'll likely be hiring more DevRel folks focused on Svelte in the future! We have one currently (Steph) and she's great :)

That's awesome and yeah Steph sounded great from your podcast chat! Thanks Lee :)

Re: Rich Harris joins Vercel to work on Svelte full time

#552

Earlier quoted context omitted.

Decorators are a stage two proposal. This means that they are not yet JavaScript, but are expected to be soon.

The point of all of this is it's a JS feature, not a system written on top of JS. A few syntax changes unlocks the rest of JS instead of having to reinvent the wheel, making your own loop and conditional systems. I don't see why the semantics of it not being included yet doesn't make it JS. When the feature isn't in all browsers and only Babel doesn't make it not JS, similar to how async functions were JS before bein…

> I don't see why the semantics of it not being included yet doesn't make it JS.

You don’t see why something not being included in JavaScript doesn’t make it JavaScript? Really?

> I'll concede that it's not "JS" it's an "experimental JS feature"

JSX is not an experimental JS feature. You’re trying to draw an equivalence between decorators and JSX, but they aren’t equivalent at all.

Decorators were submitted for inclusion into JavaScript. They have undergone a lot of review to determine whether they belong in JavaScript, and people agreed they did. The specification has been refined to make them suitable for inclusion into JavaScript. Everybody plans on decorators becoming part of JavaScript. Browsers will implement decorators.

JSX, on the other hand, is explicitly not proposed for inclusion into JavaScript. The second and third sentences of the JSX specification read:

> It's NOT intended to be implemented by engines or browsers. It's NOT a proposal to incorporate JSX into the ECMAScript spec itself.

The second sentence is even bolded in the specification. They wanted to be 100% clear about it.

The standards committee isn’t reviewing JSX for suitability for inclusion into JavaScript. Nobody is planning on JSX becoming part of JavaScript. No browsers are planning on implementing JSX.

These are two entirely different situations. Decorators being on the cusp of becoming JavaScript does not mean that JSX is JavaScript.

Re: Rich Harris joins Vercel to work on Svelte full time

#553

Earlier quoted context omitted.

Not just most of the time — all of the time! JSX is converted to plain JS (react.createElement) before it gets to the browser.

Isn't it actually the opposite? Svelte code is compiled to plain JS whereas React has a large runtime.

Nah, JSX also gets converted to Javascript. The difference is in that the React runtime re-renders whole components every time something changes, and Svelte is more granular about it even during the compilation step.

Re: Rich Harris joins Vercel to work on Svelte full time

#554

Earlier quoted context omitted.

If I hadn't been using React for many years before they introduced useEffect and various other hooks, they would have all been incredibly confusing. They still are really confusing when used in "clever" ways, especially with developers being allergic to writing comments. Even something as simple as `// this will do X when the component unmounts` make reading usages of useEffect 10x easier (vs. having to remember what…

It's very easy to convert a hook to a HoC, purely wrapping that functionality in a class component.

Also true. It just seems like `class` has become a bit of a dirty word, at least the last two places that I've worked on React codebases.

Re: Rich Harris joins Vercel to work on Svelte full time

#555

Earlier quoted context omitted.

The reason you're going around in circles is because you keep insisting on repeating something that's not true. Again, at the risk of repeating the truth: "Repeating it over and over again does not make it true." There's no need to "drill down" or infinitely recurse on yourself: simply execute a "break;" and stop repeating things that aren't true, and your infinite "while" loop will terminate, and your function will…

Please see the reply I posted to @JimDabell, I didn't answer you due to your rudeness, but my reply applies to your points as well, your wall of text was the same as his two sentences. edit: I'll expand for you... I'm sorry you wanted to get sucked into "is an experimental feature JS feature JS or not". That was not my intent. The entire intent was you can use JS by using the JSX extension. Instead of #for you use JS…

Anytime someone says JSX is JS, what they said means what those words mean, and what those words mean is wrong. JSX is not JS.

If you want to say something that is different than "JSX is JS" then use different words than "JSX is JS". Nobody is misunderstanding you. You're simply wrong, and insisting on saying something that's not true.

It's possible in the English Language to put together a different sentence using different words that is not incorrect, so do that, instead of saying "JSX is JS", if you want the words you say to not be wrong.

But you don't get to unilaterally redefine the meaning of the word "is", or the JavaScript language definition, and then act rude and angry and frustrated when people disagree with you and get tired of your infinite looping and mindless repetition of things that simply aren't true.

So try this: next time you feel the urge to repeat the false statement "JSX is JS", and find yourself looping infinitely picking arguments with knowledgeable people who disagree with you, instead say something completely different, that actually means what you're trying to say and is true, like "You can use JS language features instead of a custom template system", which means something totally different than "JSX is JS".

Then you won't be saying something that is wrong, and you won't feel so sad that people are misunderstanding you, and you won't get sucked into an infinite loop and keep going around in circles, because you're not simply saying what you mean, and instead inexplicably saying something that's not true instead.

Re: Rich Harris joins Vercel to work on Svelte full time

#556

Earlier quoted context omitted.

The point of all of this is it's a JS feature, not a system written on top of JS. A few syntax changes unlocks the rest of JS instead of having to reinvent the wheel, making your own loop and conditional systems. I don't see why the semantics of it not being included yet doesn't make it JS. When the feature isn't in all browsers and only Babel doesn't make it not JS, similar to how async functions were JS before bein…

> I don't see why the semantics of it not being included yet doesn't make it JS. You don’t see why something not being included in JavaScript doesn’t make it JavaScript? Really? > I'll concede that it's not "JS" it's an "experimental JS feature" JSX is not an experimental JS feature. You’re trying to draw an equivalence between decorators and JSX, but they aren’t equivalent at all. Decorators were submitted for inclu…

So far he's ignored instead of addressing all the valid points you've made, and now he's trying to derail the conversation by bringing up experimental features, which, as you say, have nothing to do with anything else.

Since he's working from his own definition of the word "is", and his own definition of the JavaScript standard, there's no way he's going to admit what he said is wrong, even though it is, and the JSX designers were 100% clear in their documentation about shooting down his mistaken idea that JSX is JavaScript.

Now that you've made that point, he's probably just going to try to derail and change the subject again, like he was just trying to do by diverting the discussion to decorators.

Re: Rich Harris joins Vercel to work on Svelte full time

#557
post #520

Earlier quoted context omitted.

No, they are JavaScript, it is array based programming wrapped in a reactive functional-declarative approach. Simply array of objects cascading with state. {#await promise} is more cryptic than any useHook function implementation.

> No, they are JavaScript, it is array based programming wrapped Javascript has no support for array-based programming. So, hooks are not Javascript: they look like regular function calls, but: - they can only be declared and called before rendering - they can't be called out of order - they cannot be called conditionally - they have to be called a specific name to be handled correctly by React runtime - some (but no…

They are definitely javascript. I can click to definition of the useEffect function and see exactly what it is doing.

I completely agree that learning them is a bit crazy, but ultimately every hook comes down to being a function execution.

Re: Rich Harris joins Vercel to work on Svelte full time

#558
post #329

Earlier quoted context omitted.

> literally just javascript Repeating it over and over again does not make it true. https://linkedlist.ch/jsx_is_not_just_javascript_39/

Repeating a blog post over and over doesn't make it true. The author is wrong. Most of his statements are about React, not JSX. It's syntactical sugar for nested function calls, that's all. Brackets are turned into function statements, attributes are turned into object props. The author conflates React properties with JSX, which is wrong. The author also confused JSX limitations, you cannot do statements because it's…

Thank you for that definitive link. Note that first boldfaced sentence in that JSX specification is as follows: "It's NOT a proposal to incorporate JSX into the ECMAScript spec itself."

That should have been the end of this discussion and fight that you picked about your incorrect statement that "JSX is JavaScript". You just unwittingly undermined and terminated your own argument by linking to the JSX spec itself, which clearly and explicitly says you are wrong, in BIG BOLD WORDS.

As JimDabel said, "They wanted to be 100% clear about it." So stop repeating something that the JSX designers so insistent is not true that they put it in bold at the top of their design specification.

You already won this argument, for the "JSX is NOT JavaScript" side. It's over.

Re: Rich Harris joins Vercel to work on Svelte full time

#559
post #435

Earlier quoted context omitted.

So is Joomla - yet I wouldn't recommend people learn it today. Might as well learn COBOL and Zend Framework too.

Ah, Zend - the only framework to out-boilerplate Spring MVC.

Naw, the Python/Zope/ZODB/CMF/Plone/TAL/MeTAL/TALES stack can out-boilerplate the yin-yang out of Zend.

Each of those Dagwood Sandwich layers has its own special purpose object system that leaks abstracts to all of the other layers, and its own domain specific languages for writing boilerplate that sprays those abstraction leaks all over the place. ;)

https://en.wikipedia.org/wiki/Dagwood_sandwich

Re: Rich Harris joins Vercel to work on Svelte full time

#560

I'm tired of having to learn yet another templating language without a very compelling reason. Why do I have to learn, what is essentially, a new programming language for each of these frameworks (Angular, Svelte, Vue, React... Do I really need to learn yet another language construct for stuff like `loops`, `if/else`, event handlers...etc. Why must all of these frameworks re-invent the wheel? At least with React it i…

I just don't get people complaining of trivial or superficial stuff such as how to do ifs, loops or binding handlers. When the most important part of these tools are the architecture, the trade offs, the state managements, the tools, the libraries and the ecosystem.

Complaining just because of the syntax is just trying to convince yourself you don't like it.

It's like when people just discard tailwind because they don't like how ugly many classes together look on the html, ignoring everything behind it which is what really matters (and that you can still like or dislike).

Post reply on HN