5 ms·
Utility classes which require a build step add complexity and bloat to an already complex and bloated ecosystem. Personally, I am using Bootstrap (without Sass)
by ralmidani 3y ago
Utility classes which require a build step add complexity and bloat to an already complex and bloated ecosystem. Personally, I am using Bootstrap (without Sass), but even if I wasn’t, I would rather write inline styles or a custom style.css file than have to deal with build systems and, in general, Node/NPM churn and dependency hell.
Full disclosure: I am biased toward Django, htmx, and Bootstrap, and avoiding the use of build steps completely. The DX has been amazing.
- CuriouslyC 3y agoDoes it really matter how good your DX is if your stack limits you to making virtual magazines and fancy crud apps?
- aaronbrethorst 3y agoI’m not sure what you’re responding to regarding virtual magazines or fancy CRUD apps, but I’d guess that 99%+ of all web apps built are CRUD apps—fancy or otherwise.
- austhrow743 3y agoWhy would it not?
- lelanthran 3y ago> Does it really matter how good your DX is if your stack limits you to making virtual magazines and fancy crud apps? I'm probably misunderstanding your comment and I think if you elaborate a little it might help. My understanding is that very few sites (or apps) are NOT a fancy CRUD app.
- CuriouslyC 3y agoBy volume, crud apps are the vast majority. They're also one of the least engaging type of work IMO, particularly once you've done a few. Compare writing a crud app with making an immersive game, or an application like photoshop/davinci/etc. I don't know about you but I want to do interesting, deep work and if my stack is holding me back from that, that's a problem.
- ralmidani 3y agoI’m working on a B2B app. Things get more interesting when you need background tasks, notifications, interaction with 3rd-party APIs, etc. Successful CRUD apps usually become more than “just” CRUD apps. Also, using libraries like htmx is actually more suitable for the type of work you’re describing than modern SPA frameworks with all the bloat they bring along. Non-SPA libraries play well with other libraries, rather than take over the entire rendering process. I’m old enough to remember how things were before SPAs; with libraries like jQuery the Web loaded much faster and was actually more interactive than it is with the currently dominant paradigm.
- CuriouslyC 3y agoI'm not going to fault you for using boring tools to build a typical semi-interactive CRUD website, and I agree that a lot of people make SPAs that could have been multi page apps and provided the same or better user experience while being easier to develop. That being said, having done all the job queues, API integrations and so forth you mention countless times, and having done graphics, AI/ML and symbolic stuff like compiler development, I can say confidently that at their best CRUD apps are still comparatively boring to write. I personally think it's a mistake to latch on and get religious with a stack that's going to leave you stranded on the isle of boring code.
- ralmidani 3y agoI actually want learn to build every one of the non-CRUD programs you mentioned (I actually enrolled in a Compilers course once but had to drop out last-minute). I don’t __want__ to spend the rest of my life building CRUD apps exclusively, they’re just my forte, and bread and butter, in the present. With that said, some things that seem boring to you may be interesting to others. And I don’t see how tech stack is relevant; if building CRUD-ish apps, I want the best possible DX. Of course, if/when I venture out of my comfort zone I will need to learn a new stack, but React and Vue become even less relevant for me at that point.
- lelanthran 3y ago
- KTibow 3y agoOnce you start using dedicated dev servers (like Vite) with the preprocessing happening live, the problem becomes much less of a problem.
- SPBS 3y agoA build step is absolutely my issue with Tailwind. Tailwind tries to ship with every single style you need, as a result it needs a build step to purge unused CSS. On the other hand, Tachyons CSS (which came out before Tailwind) provides 20% of the CSS for 80% of the utility and asks you to write your own CSS to cover anything else you need. As a result, it doesn't need a build step. I think that's the way. Tailwind is overengineered for what it is, and it requires buy-in into the npm ecosystem. Tachyons is a standalone collection of CSS styles.
- anon373839 3y ago> it requires buy-in into the npm ecosystem Actually, that’s not true anymore. There is the standalone tailwind-cli that can be used without npm. https://tailwindcss.com/blog/standalone-cli https://tailwindcss.com/blog/standalone-cli
- ralmidani 3y agoThat’s even worse; now you need to introduce a specialized, non-standard tool into your development and deployment cycles.