DEV Community

Discussion on: Super Mario, JSX, and the destruction of the web development learning curve

Collapse
 
efpage profile image
Eckehard

So, Marko is the next attempt to bring some programming capabilities to HTML? The question is, how far this will take us, reinventing the wheel again and again?

This will mean:

a) introduce a new programming paradigm into HTML (which in fact is no programming language)
b) Intoduce a whole new syntax and a full set of keywords to make it usabe.

Iยดm not sure this will flatten the learning curve in the end.

Collapse
 
lukelavalva profile image
Luke LaValva • Edited

A lot of effort has been put into keeping Marko as close to HTML and JavaScript as possible (as if they were designed together), so my hope is that there isn't too much more to learn in order to start using Marko in a web project. My opinion is that the learning curve for Marko is flatter than that of leading frameworks like React and Angular, but that is up for debate.

Regardless of whether Marko takes off, many companies and developers have decided that the vanilla languages are insufficient as scalable solutions for large teams. My hope is that as the industry brings in frameworks, the tools they choose are ones that are friendly for beginners.

Collapse
 
efpage profile image
Eckehard • Edited

Adding an <if> tag does not make HTML a programming languange. Sooner or later people will ask, how to write nested loops or simply count from one to ten. Then you end up like React, where this most natural question will be answered with most complicated solutions.

I did not know Marko before, but if my first impression is correct, Marko uses a whole bunch of "pseudo" commands like or with a very unique syntax. It uses JS classes, so I suppose, inside a class, the full JS syntax is valid. So you end up with a language with two different "if" and "for"-elements (one from JS and one from Marko). Does not sound "simple" to me...

Thread Thread
 
lukelavalva profile image
Luke LaValva

This is a very good point, it would be great if there were only one way of accomplishing each task. Marko's promise to preserve all JavaScript functionality while allowing for an HTML-esque authoring experience has sort of backed it into a corner where it needs to have its own version of the for loop. My biases tell me that because Marko's <for> tag is so similar to JavaScript's for loop this isn't a huge source of concern, but I am certainly interested in testing my hypothesis.