12 ms·
Tenets
- TehShrike 3y agoI like using Rich Harris's tools because he cares about actually getting stuff done and he's allergic to bullshit
- TehShrike 3y agoI wasn't ever very tempted by React when it started getting hot because I had started using Rich's component library Ractive and it was so obviously better than React
- gedy 3y agoRactive was great, like Knockout++ Svelte was then like Ractive++ as well
- sdwvit 3y agooh the irony one of the upvoted comments says 'Rich for president'
- carlossouza 3y agoHow old is he?
- jkestner 3y agoBritish.
- deleted 3y ago[deleted]
- c0brac0bra 3y ago> "we explicitly aim to be the framework with the best vibes." I quite love this.
- jmull 3y agoOn its own it sounds like hand-wavy marketing bs to me... Then again, svelte has a great developer experience, so I would say he's delivering on this.
- nonethewiser 3y agoIt’s meaningless.
- razemio 3y agoIt's absolutely not. It works wonders for the community. Sorry for saying, but I am quite certain such a comment as yours is a rare sight in the svelte community. Everything in svelte is around showing others how to do it. Most questions in the forum are solved with concrete examples despite its awesome documentation. People help each other. Good vibes ;).
- nonethewiser 3y agoThat’s all great but “Goob vibes” is thoroughly vague. It doesnt mean anything in particular.
- mhh__ 3y agoThat's a good thing, we should embrace it more — we should be more driven by gut feelings than "objective" bullshit, that's how you end up with nonsense like megabytes of JS going down the wire in the first place.
- noahtallen 3y agoI halfway agree with the first part, and I like the statement by the maintainers. But, I think other libraries have done this too. React is a great example. It prioritized making the reactivity model really strong, and everything else is less important. (Like performance or bundle size.) To the extent that the official solution to performance issues is writing a compiler for the library to auto-optimize everything, because they don’t want to compromise on the reactivity model itself. To me, that feels like a subjective choice, going more off vibes than certain metrics. (Not making a value judgement, just explaining what I’ve heard at conferences.) In other words, I don’t think “objective BS” got us into this place. Shops which care a lot about performance will have “performance budgets” for things like TTFB or time to reactive. It’s a more objective approach that tries to minimize lots of MB going over the wire.
- arxpoetica 3y ago> The web matters nuff said
- nightski 3y agoNow 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 like explicit behavior and I think that is my problem with the whole wrap everything in observables approach. It's too magical. No one cares - The countless blogs, posts, and communication around frameworks implies that yes, developers do indeed care. Details are important. You can't waive away concepts like memoization because they need to be used in the right context. There's no one size fits all solution to caching.
- deleted 3y ago[deleted]
- ramesh31 3y ago>HTML is not the mother language - It's actually pretty terrible for describing dynamic user interfaces. Compared to... what? XML? QML? XIB? There's literally nothing better than HTML for UI. Anything else is either buried in a mountain of proprietary nonsense, is platform specific, or is far inferior technically.
- bbkane 3y agoFlutter has been a lot of fun in my few experiments with it, but it's not nearly as proven as HTML
- troupo 3y ago> There's literally nothing better than HTML for UI. Except... Literally everything else. Imperative Delphi code from early 2000s or indeed Turbo Pascal code from 1995 will run circles around HTML any day of the week and twice on Sundays.
- hpeter 3y agoMy browser can't run Delphi or Turbo Pascal.
- ramesh31 3y ago> We want Svelte to feel magical — we want you to feel like a wizard when you're writing Svelte code... So when we design things we need to think about the people who haven't read the docs in a while, if at all, and don't care about things like that. This means that things need to be intuitive, that we shouldn't need to worry about manual optimisations like memoisation, that we should have as few APIs as possible, and that things need to be discoverable Amen. After being forced into working on a large Vue project as a React dev who had sworn it off, I've slowly come around to falling in love with it. Once you get over the "black magic" of it all, the productivity is insane. For people who just need to get things done, and couldn't care less about millisecond level rendering benchmarks, I would easily suggest it over React at this point.
- maelito 3y agoWhat makes Vue "insanely" more productive than React ?
- ForHackernews 3y agoVue 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.
- maelito 3y agoThen 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.
- ForHackernews 3y agoI'm not looking for Next. I'm quite happy with Vue or Sveltekit.
- ramesh31 3y ago>What makes Vue "insanely" more productive than React ? React is a fantastic rendering library but there are no great React frameworks. Next is ok, but it's a beast that most people don't need. The beauty of something like Vue is having your batteries included in a standardized way that you don't have to worry about when upgrading, while also still being fairly lightweight. The average React app becomes a hodgepodge of dependencies that get frozen in time due to the fragile nature of NPM. Versus having a known and documented upgrade path for your router, state, styling, etc.
- preommr 3y ago> 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 - they might as well say they're good at everything. Would also help to actually define what 'good vibes' are because I think every tool tries to make DX as nice as possible. I honestly dislike fluff like this because it conveys nothing and gives fodder for people to ignore practical evidence in favor of biased advertising i.e. someone's going to make a bullet point list about things they dislike, and someone will just point to this and say "nuh uh, you're wrong, they care about being user-friendly, it says so right here". Since we're talking about front-end frameworks, I still maintain that vue has some of the best documentation. I fell in love with vue 2 because the documentation did a great balancing act between being brief, simple, and somehow dense at the same time. In particular, I remember a page about it's comparisons to other frameworks that in a few paragraphs, gave a history lesson, simplified differences to barebones, explained the practical implications all in a way that put vue in a good light. It was much better than the angular and react docs at the time.
- gmaster1440 3y ago> Except that svelte advertises itself constantly as being faster and with smaller bundle sizes. Maybe this is a subtle difference, but I understood it as Svelte still caring about and prioritizing speed and bundle size, but not necessarily as the primary focus with the goal of being the smallest or the fastest.
- shdh 3y agoSvelte is better than Vue IMO
- Aerbil313 3y agoI love Svelte, but please make substantial comments on HN. Flagged.
- 3y ago
- nathias 3y agoSvelte to me is how objective progress in building the web looks like, much like React was just much better than Angular 10 years ago, Svelte just makes sense.
- rykuno 3y agoThe direction React/NextJS has taken modern web development is a modern day abomination. I say this as a passionate fullstack developer whos worked for YC startups and a fortune 10 company within the past decade. I appreciate Vercel as a company too; I have no hate towards them but the NextJS 13 release almost made me quit web development. Svelte is an absolute love language to the web and a direction for healing the damage caused by modern "web frameworks". It's the absolute direction we need to head in. Here's something beautiful. I'm teaching my brother-in-law programming to get a job when he's out of the military. He's learning JS/CSS/HTML and doing quite well. With about a 2 minute tutorial of how Svelte works; he was able to start creating some pretty impressive projects. A day later because he already knew the basics of how the web works, he was in Sveltekit building fullstack apps -_-.
- nonethewiser 3y agoAstro is a pretty cool alternative too
- pcthrowaway 3y agoI've been enjoying Astro+Svelte. I tried using Sveltekit and couldn't really get into it; I'm sure there are situations where it would be better than Astro + Svelte, but I don't know what they would be.
- throwaway77384 3y agoSo glad to see someone else say this. NextJS 13 was (is) a complete an utter disaster. I took on a reasonable-size project around that time and the documentation was incomplete, no library worked on it. Mystery caching and fetch-call deduplication all over the place. It was horrific. I wonder if things have improved since.
- addandsubtract 3y agoThe trick is to just stick to the Pages Router in Next. The app router and RSC is still too early to use, imo, and needs at least another version or two to gain some support.
- rich_harris 3y agoHa, did not expect this to be on the front page of HN today! Some quick context: in January I was in London for a few days, and while I was there we had a Svelte Society London event. This document is a text version of a talk I gave there, which expands on some of these ideas: https://www.youtube.com/watch?v=eswNQiq4T2w&t=5211s https://www.youtube.com/watch?v=eswNQiq4T2w&t=5211s It's deliberately brief and vague in parts, because it's designed to spur conversation. It's not set in stone, nor is it an Official Statement on behalf of the Svelte team — it's an attempt to articulate the way that the maintainers tend to find ourselves thinking about some of these topics, as viewed through my personal lens. If it helps explain why you like Svelte, great! If it helps explain why you hate it, that's great too — that's the whole point. Have fun with it, and if there are parts you disagree with then your homework is to think through what kind of tenets would describe your ideal framework. Also, it's Saturday — get off Hacker News :)
- monero-xmr 3y agoSvelte rekindled my love for frontend development - thanks for your efforts!
- SandraBucky 3y agoHey rich, we love your work at my team mahn. Keep doing what you are doing.
- rykuno 3y agoAwesome efforts on Svelte Rich; have a good weekend!
- iamcreasy 3y agoThank you for creating Svelte. I have basic web dev experience using no-framework. Is there any high level overview article explaining how Svelte compiler transpiles Svelte file into a series of html,css and javascript and wires them up together?
- k__ 3y agoThat whole text sounds like he gave up. Like, Svelte isn't better than any alternative in a meaningful way, he's just doing it because he wants to.
- deleted 3y ago[deleted]
- DotaFan 3y agoChose Svelte for a client project 5 months ago, client loves the speed, I love developing with it. In general it's quite a nice tool, fast development, feels easy to learn. I do dislike server-less functions, which comes in pair with Svelte ability to do SSR, which doesn't have to do anything with Svelte tho.
- throwawaytodey 3y ago[flagged]
- pm 3y agoSvelte and SvelteKit have earnt a place in my heart. They've allowed me to enjoy learning reactive- and component-based development. In comparison, React has always felt like a chore, and I avoid it as much as possible, despite it being the most popular framework. (Side note: I rate Vue as well, though I prefer SvelteKit over it these days) Rich Harris and the Svelte family have always been pragmatically minded, and there's value in expounding one's development philosophy, but I've gained no insights with this list. Perhaps it's the language used, rather than the tenets themselves.
- SandraBucky 3y agoI am doing UI in svelte for few months now, I worked on React before, It feels like some weight has been lifted off my shoulder.
- levmiseri 3y agoAs someone used to doing everything with vanilla JS and having troubles with getting deep into any web frameworks (especially React), Svelte has been a godsend. I'm in love with the philosophy and approach and its natural combination of JS/CSS/HTML is, in my personal bubble, second to none. Most recent experiment was https://meoweler.com https://meoweler.com, but I'm now trying more complex projects and can't sing high enough praises. I sincerely hope the future of Svelte is bright.
- csswizardry 3y agoOff-topic, but Meoweler is a goldmine—thank you!
- doctor_eval 3y agoMeowler is really cool. Like, I don’t get it. But I love it.
- dayjah 3y agoCan anyone fill me in on the backstory about lighthouse? What is it? Why is it a bad measure?
- noSyncCloud 3y agoIt's a set of performance tests built into the Chrome dev tools. It profiles your site on a variety of metrics and gives you a report. I'm not exactly sure what's wrong with it in the context of this post.
- saila 3y agoI've recently started using Lighthouse to test sites for accessibility compliance, and you can easily get a score of 100 without actually addressing all the accessibility issues a site might have. So, if you're not conscientious, you can just point at the score and say "all good" while your site might still have major issues. I assume the same is true of the other checks Lighthouse does for performance, best practices, etc. Lighthouse and other such tools are a good starting point, and using them is better than doing nothing, but a thorough understanding of accessibility etc is necessary to create truly accessible and performant sites.
- bowsamic 3y agoWhenever I've tried Svelte I've honestly had a horrible experience, which surprises me somehow. It definitely failed on the "magical, not magic" thing. The exact workings of $ is still extremely confusing It's funny, a lot of the Svelte fans made me think that it would be very simple and nice, and that React was much clunkier, confusing, and implicit, but my experience was the total opposite
- tpict 3y agoI feel insane whenever the Svelte reactivity thing is touted to me as an improvement over React state. Surely it’s not so hard to internalise JS equality rules that such a huge break from convention is necessary? PS. I looked up the reactivity token docs on the Svelte website to make sure I was remembering correctly, but it repeatedly crashes the latest version of Safari on iOS. Oops!
- chronofar 3y agoI believe this was likely referencing your topic of confusion there to at least some degree: > Historically I think Svelte went too far into magic territory, where it's not 100% clear why things work a certain way, and that's something that we're rectifying with Svelte 5. Svelte 5 uses a different approach to reactivity using runes: https://svelte.dev/blog/runes https://svelte.dev/blog/runes
- pier25 3y agoI started using Svelte a couple of years ago and I love it. Very quickly it became the only client side solution I want to use. Can't say the same about SvelteKit though. I've tried it a couple of times and it's just not fot me. It's really a tool built around a client side library and it shows (instead of being a backend framework).
- Hugsun 3y agoI've been using it professionally for some time and find it pretty nice. What are your frustrations with it?
- pier25 3y agoIt's severely lacking in the backend but I guess this is more of a general issue with all so called full stack JS frameworks. Specifically with SvelteKit the big deal breaker is routing. I also find the whole +page.svelte stuff to be a usability nightmare since I barely use the file explorer to move around a project and instead use fuzzy search. Unfortunately SvelteKit is pretty unflexible so you either love it or hate it. It's really weird that I agree 100% with all the decisions regarding Svelte itself and how it's evolving (runes etc) but SvelteKit is just a big nope from me.
- robwg 3y agoI wouldn't judge any JS framework like SvelteKit or Next.js on its lacking in the backend. They have a server to handle frontend problems, not solve your backend problems.
- efilife 3y agoPrevious versions of SvelteKit didn't have this +page handicap. Try older versions if it's still possible and you will love it
- pier25 3y agoWouldn't make much sense to invest time into an abandoned and unfinished version of SvelteKit.
- xk_id 3y agoI think it’s wonderful that their official website doesn’t even work in iOS 14.3 Safari, which is only 3 years old (it crashes completely with “500 internal server error”). I encourage everyone who genuinely cares about the web to stop updating compulsively and just allow themselves to be gracefully excluded from this foolishness.
- deleted 3y ago[deleted]
- moffkalast 3y ago> Instead of striving to be the fastest or smallest or whateverest, we explicitly aim to be the framework with the best vibes. Wat.
- baxtr 3y agoAnyone know why these principales are called tenets? I believe it’s a concept that originates from amazon.
- mpalmer 3y agoTenet has a dictionary definition; as far as I can tell there's nothing to suggest that it's specific to some industry-speak concept. If one is being super pedantic, tenets and principles aren't the same thing, but they're very close in meaning to each other. The linked page contains examples of both tenets and principles, and uses the terms interchangeably in the title/intro. Tenets are positions/beliefs/qualitative statements presented without proof. "The web matters", "No one cares" are examples from the OP. Principles are related, but more like guidelines or instructions. "Optimise for vibes" is an example.
- patrickmay 3y agoNot sure why you're getting downvoted. I worked at Amazon for a few years and a Tenets section was common in our documentation. I still use them. Defining the DNA of your project in this way aids in decision making.
- deleted 3y ago[deleted]
- laurels-marts 3y agoSvelte 5 moves closer to React in quite a few ways. The single component per file is still a dealbreaker for me. React got it right with composition and being able to break a component out into its sub-components.
- duckman1 3y ago[dead]
- xwowsersx 3y agoOne of the comments on GitHub says: > the first time I use Svelte & Kit I feel the same joy as I feel when the first time learning web development in 2015 That sounds pretty awesome. If you have experience with Svelte and this resonates with you, could you explain why?
- xigoi 3y agoI like the general idea of Svelte, but last time I tried it, it required a lot of bloat (tens of files) for just a simple “hello world” project, which put me off.
- bohlenlabs 3y agoAfter several React projects, I recently went “back to the roots” and created an app with server-generated HTML using the ages-old Mustache templates. For interactivity, I added a bit of HTMX, and to have beautiful forms, I added the web components from Shoelace, all wrapped up in a Vite build. And I must say that this was a relaxing experience: No complicated React stuff anymore, and the Typescript-based server components on AWS Lambda render the pages within 30 msecs each. AWS DynamoDB powers the data layer. Feels like 1997 again, but I am Happy with the new stack!