3 ms·
I'll be bold and say it: it's stupid that the web has 3 main front-end technologies (HTML, CSS, and JS) There's state, visual representation, and behavior. Why
by panphora 4y ago
I'll be bold and say it: it's stupid that the web has 3 main front-end technologies (HTML, CSS, and JS)
There's state, visual representation, and behavior. Why can't all of those be contained in one language?
Sure, let proficient programmers override defaults and break out of the 1 language model, but 99% of apps/website look & behave the same anyways, why can't we have nice defaults?
I'm concerned because I have a 1.5 year old son and I plan to introduce him to the internet (this wonderful, globally distributed, infinite potential platform that anyone can contribute to) as soon as I can.
But it's absurd to me that computers haven't been optimized well for his mind yet, but instead he'll have to spend years of his life optimizing his mind to understand and work with them.
I wish I could show him the magic & power of putting something app-like on the internet faster than that.
This project helps move in the direction of optimizing computers for human minds and I'm 100% excited about that.
- rglover 4y ago> Why can't all of those be contained in one language? Because they all serve a distinct purpose. I don't need CSS or JS to have HTML, nor do I need JS to have HTML or CSS. This keeps things fairly lightweight and removes a lot of overhead in the form of compilers and other tooling just to put a document online. I've never understood the freak out around these technologies. They're simple, relatively pure, and easy to pick up. And for all intents and purposes, quite enduring as they've powered the greatest advancement in human communication ever. Most of the failure around these technologies comes in relation to the foolishness and shortsightedness of browser vendors (cough Microsoft) and the hubris of tool builders building on top of these technologies.
- inopinatus 4y ago> There's state, visual representation, and behavior. Why can't all of those be contained in one language? They are. It’s called HTML. The other two are for extending it. The fundamental principles of HTML have never included a separation of concerns. > 99% of apps/website look & behave the same anyways, why can't we have nice defaults? We do. See above.
- ducharmdev 4y agoI'm not sure I'd agree that having one language would be 'optimized' for the human mind. People often create DSLs due to the limitations of general-purpose languages that are constrained by the large number of use-cases they must support; sometimes a DSL actually makes things less ambiguous, and therefore easier on our minds. To give a more concrete example: in Xamarin apps, you can technically do all UI in nothing but C#, just writing in the code-behind rather than in XAML. But as any Xamarin developer will tell you, this is a nightmare to work with. It becomes less clear what code is responsible for structure vs logic, and can be a real pain to test. Now that's not to say I completely disagree. For example, I think Tailwind gives you a sense of what it would be like if HTML & CSS were one and the same; keeping structure and style together makes a lot of sense to me. But I'd be wary of a one language to rule them all.
- pgt 4y agoI suspect you are yearning for a shared syntax that supports distinct constructs for declarative structure (layout), composable functions for inheriting/overriding style and imperative/functional glue for behaviour. For me, Reagent still reigns supreme because it is ClojureScript on top of React which compiles to JavaScript, renders to HTML & CSS but with the full power of a high-level programming language that hasn't changed since it was designed 15 years ago: https://reagent-project.github.io/ https://reagent-project.github.io/
- detritus 4y agoI suspect you might be overthinking it. I will never forget the first times I uploaded content to the internet, as a student; as a worker. There's a world of creativity to be had before complex interactivity.