5 ms·
Tailwind is such a terrible option to teach newcomers. It’s basically a vast CSS dialect, at this point it would be much more valuable to learn CSS itself.
by ricardobeat 4y ago
Tailwind is such a terrible option to teach newcomers. It’s basically a vast CSS dialect, at this point it would be much more valuable to learn CSS itself.
- Eric_WVGG 4y agoIt’s like teaching someone to read with emoji before getting them started on the alphabet.
- treis 4y agoI'm not sure if you think that's a good thing or bad thing.
- Eric_WVGG 4y ago:) bad I'm a hardliner against CSS frameworks. Any time you learn a CSS framework, you're picking up a tool that is going to break or be made obsolete in a couple years. Just learn CSS right the first time and you're good forever.
- treis 4y agoThe problem with that is it takes a long time to learn CSS well enough to make something that doesn't suck. That's why CSS frameworks are so popular. I can install bootstrap and make something not terrible pretty quickly. As someone new to programming to do the same in raw HTML and CSS is much much harder.
- Eric_WVGG 4y agoI understand how that was the case back in the 2k's before we had flexbox and CSS grid. It got better. Raw CSS is better, more logical, and easier than it's ever been. And raw HTML, of course, is a fundamental skill.
- kaba0 4y agoYes, CSS layouting no longer sucks. But there are still endless foot guns which will cause a completely independent page of yours to change unexpectedly/fail to render correctly, and you won’t catch that for a long time. CSS is like global mutable state — it is too flexible to properly work when multiple people work together on it. Sure, I’m never against learning something from fundamentals, but I am on the opinion that it is increasingly the wrong default.
- tifadg1 4y agoYour comment made me reconsider tailwind and give plain CSS a try - indeed learn once use forever is a good value proposition.
- Eric_WVGG 4y agohttps://flexboxfroggy.com/ https://flexboxfroggy.com/ https://codepip.com/games/grid-garden/ https://codepip.com/games/grid-garden/ < more in footer
- phphphphp 4y agoTailwind is less dialect, more subset. If someone has zero pre-existing knowledge of HTML/CSS then something like Tailwind is, in my opinion, a much better introduction to styling web pages because it focuses on one dimension: determining which rules you'd like to apply to which elements. With Tailwind, you're not caught up in understanding the relationship between CSS and HTML which includes challenges like inheritance. Another benefit of Tailwind for new learners is the exhaustive documentation which captures all of the rules and their relationship in one place: it's hard to overstate the value of being able to look at a single page to fully understand how you can pad an element. Certainly, there's limits to what you can achieve with Tailwind, but given it does expose a learner to the key principles of styling, it can then lead into an expanded learning of CSS if a user is interested in learning more -- you don't have to unlearn anything from Tailwind. I can absolutely understand why someone would dislike Tailwind, especially those with pre-existing knowledge of CSS for whom this is a totally different way of styling, but to describe it as problematic for newcomers seems ignorant of where the real challenges of learning CSS are.
- DocSavage 4y agoI was trying Tailwind out a few weeks ago for a very simple static web page. I'm close to beginner with slight knowledge of CSS and HTML. It was surprising to me that all the styling disappeared from <a> tags, and it took some Googling just to see how to work around that. I wound up just going with Spectre to get an acceptable solution. The Tailwind docs seem more for its target audience and not pure beginners. Is there some resource to learn Tailwind in the manner you are suggesting?
- phphphphp 4y agoI'm unsure what you mean by "...all the styling disappeared from <a> tags..." so I can't confidently provide insight. My first thought was perhaps you're referring to the special `visited` state of an `a` element. However, a `visited` link should not lose styling that it is applied to the element explicitly, so it's unlikely to be that -- part of the value of Tailwind is that it prevents this class of issue. Can you provide more insight into the specifics of the issue? I am happy to try and diagnose the issue -- even if you've moved on from Tailwind, you might get value out of understanding the issue! A GitHub repository link would be ideal, or some code in a Gist :) My gut feeling is that the issue you're describing has nothing to do with Tailwind. One of the challenges of learning any library or technology: you can experience an issue outside of the bounds of your understanding and misattribute the issue to the tool in question, even after decade(s) of experience, this'll still happen!
- deleted 4y ago[deleted]
- Terretta 4y ago> This is same as saying teach everyone how to code in C first. Why stop there? Just teach assembly. See my point? -- lvl102 reply to ricardobeat* I would argue there's something to that. Maybe hello world level Basic or Pascal or beginner Python first, but then assembly before C or Rust or even JavaScript. Something's been lost for the set of devs who don't know what higher languages are doing for them under the hood. I'd similarly agree with ricardobeat that CSS frameworks should come after CSS, and JS frameworks after JS. Rapidly ascending abstractions is great, if you take long enough to understand what they're built with, and some things will always be solved more simply by dropping back down a layer or three. * lvl102's comment was deleted: https://news.ycombinator.com/item?id=34764573 https://news.ycombinator.com/item?id=34764573
- Dudeman112 4y agoJust to add to your point, I would like to say that I was, in fact, taught C and assembly and I wouldn't have had it any other way People that never go low level usually don't feel it in their guts how computers work. Which is OK most of the time, but it bites you back often enough that it's annoying having to explain the actual fundamentals when your colleagues haven't had that experience
- kaba0 4y agoC programmers usually don’t feel it in their guts either how computers work. The amount of code transformations modern compilers do to make C performant is really mind-boggling. Though to add a more relevant point, I read a great saying on HN that a good developer knows their stack. A great one knows a layer beneath as well. (I usually butcher up quotes, sorry. It may have been more layers actually)
- mirthflat83 4y agoI do not agree with sentiments like these. It's almost as if saying Rust is a C dialect, so it would be much more valuable to learn C itself.