> HTML is actually one of the most powerful layout engines out there
But it's terribly verbose and isn't extensible. XML was extensible, but even more verbose.
Also, I wouldn't say that HTML is a layout engine; CSS is the layout engine while HTML denotes the structure to be laid out.
> Javascript is as versatile and powerful a language as you might want to ask for in 90% of the cases
Erm, no. It's a terrible little language with some horrible misfeatures (==/===, {} &c.) which has one virtue: near-universal deployment.
> DOM is just a very easy to understand albeit crude way to handle objects
I've never really thought the DOM was all that easy to understand. Attributes vs. nodes, text nodes in unexpected places — it's a mess compared to a nice tree of strings and trees would be.
> It's a conceptual framework thats closest to what we as humans understand.
No, it's the conceptual framework we ended up with, so we all have taught ourselves and been taught to understand it.
> Pythons problem like most other programming languages including Objective-C and Ruby is that while they are elegant and powerful computationally they are horrible for most people to get started with because just setting it up in itself is a big task.
sudo apt-get install python
python
Python 2.7.9 (default, Mar 1 2015, 12:57:24)
[GCC 4.9.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> "hello world"
'hello world'
>>>
I kind of agree with both of your points regarding python. It is easy to set up for technologically literate people. But just using a web browser is orders of magnitude simpler for the majority. But really they're two different beasts and I don't think it's fair to compare python with a web browser in terms of "ease of set up".
Simpler for which majority? Aren't we talking about developers here, not the technically illiterate?
Learning 1 single (and relatively simple) language vs HTML/CSS for presentation (and all its headaches) and JS for logic/interaction? The browser is a stack, not a single piece of tech.
I'm not classifying people who use web stack as illiterates. Where did that idea come from? The discussion is about developers and the tools they use. We aren't talking about those who are technically illiterate. Nor are we talking about certain technologies being responsible for a project's success. And there are very few instances where one could convincingly point to a language as the reason for success. Making such assertions are usually immature at best.
We are talking about choosing a language like Python normally considered a serious language vs. HTML/CSS/JS/DOM (PHP?) which is often considered less serious development frameworks.
If you go back and see what I originally responded to, perhaps the context becomes a little clearer.
Except that's not the context for this thread at all. What you originally responded to was a comment about the webification of everything, and the lack of MIT-licensed GUI libraries. Several people other than me all responded to your contentions about web-stack being great, easy, conceptually sound, etc.
There was nothing in the OP this thread devolved from about Python itself, other than it having a great QT library. And as far as context is concerned, this particular comment trail was a response to the ease of using Python, not anything at all related to it being "serious" compared to web-stack.
How are we so far apart regarding what is actually being discussed in context? We can both read the comment thread we each keep replying to. Your context (and points) keeps changing.
That is exactly the context of this thread. It might not be your context but it is mine and since I started it seems like you are the one who is changing the context.
You focus on the wrong things. None of your distinctions or interpretations of what I say are wrong per-se, they are just not important distinctions.
The fact is that people can quickly build a webpage with all the bells and whistles in an environment they undertand without having to install anything or rely on dependencies to get started.
They can fiddle around, experiment with it in real time etc. they can play around with it so to speak.
It doesn't take itself too serious. It doesn't have a "guardians of the right way" saying how it can and can't be used.
You can still go to town and go crazy in making perfectly optimized code but it's not demanding that from you.
These are the important bricks in creating something that is powerful. It's ability to function as a toy for the very novice people. To easily provide them with visual feedback with assets they can relate to (cat pictures, video they saw somewhere) etc.
This is what VB had this is what HTML/CSS/JS/DOM/(PHP) has in spades. The non-judgement of the experts.
A lot of unbelievable crap was produced by novices hacking away at Basic in an earlier era as well. The difference was you could move on to better things - Pascal, C/C++, Lisp, etc.
We're stuck with this cobbled together mess of mostly broken shit in browser-land, and there is no bigger-and-better thing we can graduate to.
But it's terribly verbose and isn't extensible. XML was extensible, but even more verbose.
Also, I wouldn't say that HTML is a layout engine; CSS is the layout engine while HTML denotes the structure to be laid out.
> Javascript is as versatile and powerful a language as you might want to ask for in 90% of the cases
Erm, no. It's a terrible little language with some horrible misfeatures (==/===, {} &c.) which has one virtue: near-universal deployment.
> DOM is just a very easy to understand albeit crude way to handle objects
I've never really thought the DOM was all that easy to understand. Attributes vs. nodes, text nodes in unexpected places — it's a mess compared to a nice tree of strings and trees would be.
> It's a conceptual framework thats closest to what we as humans understand.
No, it's the conceptual framework we ended up with, so we all have taught ourselves and been taught to understand it.
> Pythons problem like most other programming languages including Objective-C and Ruby is that while they are elegant and powerful computationally they are horrible for most people to get started with because just setting it up in itself is a big task.
That seems pretty simple to me.