Top
Best
New

Posted by subset 7 hours ago

The Birth and Death of JavaScript (2014)(www.destroyallsoftware.com)
161 points | 89 commentspage 2
Surac 6 hours ago|
My first contact with js was trying to make a button change its color on mouseover. There was no css back then. I bought a book and was so put off from the syntax that i never looked back to js from that day on. Never regretted my decision
satvikpendem 4 hours ago||
I find these sorts of comments quite strange. So one tried something over 30 years ago and was put off by syntax of all things and then decided they'd never look at it again? So weird to base opinions on 30 year old experiences that were not even in-depth experiences but cursory glances.
afavour 5 hours ago|||
There are a ton of reasons to object to JS but the syntax? It isn’t even all that unique.
notesinthefield 6 hours ago|||
I had a similar path and never came back to JS until work forced me to learn. To me, it has only gotten more readable.
julianlam 6 hours ago||
s/JS/PHP
falcor84 6 hours ago|||
The syntax? I got 99 problems with js, but syntax ain't one of them. It's just C-style syntax, no?
TheOtherHobbes 4 hours ago||
C syntax was never that great. It's basically mnemonic PDP-11 assembler with a few added data structures.

js is mutant C with dementia - hacked together over over a fortnight, full of inconsistencies and weird corners.

    console.log(1 + "2"); // "12"
    console.log(1 - "2"); // -1
    console.log(NaN === NaN); // false
    console.log(+0 === -0); // true

    const obj = {};
    console.log(obj.foo); // undefined, not an error
bryanrasmussen 4 hours ago|||
NaN is a standardized dynamic languages datatype governed by IEEE 754, this is not something to complain about as its behavior is part of the official standard and for good reason, as outlined in the standard.
SonOfLilit 3 hours ago||
Why dynamic? `NAN != NAN` is just as true in C.
bryanrasmussen 21 minutes ago||
well as I understood it, it was implemented for languages without static data typing although I suppose you could implement it in other languages.

Also I suppose my memory could be pretty foggy as I don't think I've looked at the spec since about 2014.

flufluflufluffy 1 hour ago||||
None of those examples are showing something you find wrong with the syntax
lezojeda 4 hours ago|||
[dead]
comrade1234 6 hours ago|||
I kind of like real JavaScript with prototype inheritance. It's not how we use it in browsers though.

And now with typescript and running it in the server... I'd rather just use Java.

DonHopkins 4 hours ago||
Reminds me of one of Microsoft's first Dynamic HTML demos:

There were two buttons, one labeled "Our Web Site", the other labeled "Our Competitor's Web Site".

When you moved the mouse over the "Our Competitor's Web Site" button, it would quickly slide out from under your cursor before you could click it!

Then when you stopped moving your mouse, the "Our Web Site" button would slyly slide right underneath your mouse!

Dammit Microsoft!!! ;)

arkadiytehgraet 5 hours ago||
Regardless of the content, this is one of my most favourite talks ever, especially in the delivery aspect. It served me as an inspiration for quite some time when I had to present anything to a wide audience.
jhatemyjob 3 hours ago|
Same. I think I watched this 10 times when it first came out.
jhatemyjob 3 hours ago||
Great talk. I'm glad he was wrong about this. Having js/wasm be the standard ABI would have been horrible. Obviously he could have never predicted in 2014 that Valve would pour a metric fuckton of resources into improving Wine/Proton, to the point of getting x64 binaries to run on other architectures. But here we are, past the year of the Linux desktop, well on our way to the year of the Linux handset.
roshiya 5 hours ago||
[dead]
naveen99 6 hours ago|
interpreted languages carry a lot more context than compiled ones. Sandboxed compiled languages don’t have the context baggage, but come with other parts of the brain dead.
Dwedit 5 hours ago|
I don't think Javascript is still interpreted though?
flufluflufluffy 1 hour ago|||
It is necessarily interpreted. Specific functions or code blocks can be JIT compiled to native code, but not an entire script.
naveen99 47 minutes ago||||
Sandboxed
DonHopkins 4 hours ago|||
Let's just say it's open to interpretation.