100 x 100 works too, although was noticeably slower.
855 karma · joined May 20, 2013
100 x 100 works too, although was noticeably slower.
But...
> To say it another way: If you need to make a breaking change to your API, it means you screwed up. Don’t screw up.
I'm skeptical that we can always predict the future well enough to get an API perfect from the beginning.
Sometimes the best we can do is do the best we can, learn, and do better.
It's also nice that people in the JS community can easily contribute to tools written in JS (including writing custom eslint rules).
This is one thing I’m loving about Remix. It’s how the framework works, so there’s no need to enforce this pattern or educate folks about it.
AND Remix’s nested routing still has you break down the data loading into a couple different parts (1 per route segment).
So it feels like you’re not loading everything in one place, and may be less likely to make people feel like they’re doing something “different” or “wrong”. It’s
What kind of stuff do you work on?
However...
> You’ll never get fired for picking it, but it’s going to be expensive, bloated, difficult to get right, and it’s going to be joyless implementing it every step of the way
Doesn't jive with my experience (at small and large companies).
I didn’t talk about this in the article, but (right, wrong, or indifferent) I find it helpful to think about how to help my manager help me.
All good!
While TypeScript is great for the tradeoffs I deal with, there are certainly others where it's not.
Good call out.
Also, I didn't mean to misinterpret what you said. Sorry about that.
Surely preventing 99% of issues (or 90%, or 80%) is good?
I'm also not aware of too many real-world instances of unsoundness in TS that has caused problems. Obviously I don't know your specific scenario, but it's possible there are ways to work with TS (instead of against it) to get a good level of type safety.
Not sure that all, most, or even many JS folks are addicted to bundling everything into one file.
[number, number, number]
Better one might be the GitHub issue discussing it: https://github.com/faisalman/ua-parser-js/issues/536
This seems to be the hard part. Any tips for maintaining speed and strict curation, especially at scale (in terms of developers)?
At the very least, it seems that E2E tests are a tool that's easy to misuse. Not sure of the best way to mistake-proof it.
And I used React as a convenient way to display and manipulate the DOM, but of course it's not strictly necessary.
Overall this was a fun project that stretched the limits of my math knowledge (haven't done any trigonometry since high school). Was really satisfying when it finally started working right!
When viewed that way, it could be good advice for anyone.
It's not, because there's a system to it. With Tailwind you pick specific values. Inline styles let you specify any value.
> It should not be ".text-gray-500" (like Tailwind does)
This is fair. I'd never considered that specifying the actual color in the class name would be problematic, but another thread pointed out that it makes theming (such as dark mode) difficult.
> 1. Select based on cascaded semantic HTML elements; 2. Don't repeat yourself; 3. No unnecessary classnames; 4. No style-descriptions in classnames.
I'm sure this works great when there are a small number of people working on styles. When there are many, however, I've found that the cascade often results in styles overriding one another, and needing to introduce more specificity to fight it, in an endless cycle.
Obviously people should write better CSS to avoid that. Which is actually what Tailwind is, I think.
Having IDE autocompletion (or even TypeScript integration) would be really nice. I'm sure there's plugins for many IDEs or editors that can do that, though.
Tailwind is a tool that's absolutely for skilled CSS people (you still have to know what everything is doing). And it is much more maintainable for a large number of people working on styling.
Also, I'm pretty sure there are many websites out there pushing around way more divs than this is.
But you're right, vanilla JS would easily do the job.