One thing the description should mention: this video is from 2010 (April). The fact that it was posted on KZbin in 2013 leads to confusion.
@margareth94738 жыл бұрын
wow, had my volume turned up really loud and that "AARR!" at the beginning scared me to death 😂😂
@edgeeffect2 жыл бұрын
Thank you Douglas for possibly the single most important software book I ever read! Not only did it teach me functional programming, it also showed me that a language (any language) can have good parts and bad parts.
@christophertown713611 жыл бұрын
I've coded for 16 years (including javascript), and this video filled-in the gaps in my understanding. Thank you!
@roblevintennis12 жыл бұрын
Who's your daddy...Crockford's your daddy! But seriously, thanks to his book and vids I "opened up" to JavaScript a few years ago and haven't looked back! Always love his presentations; nice!
@vishnutekale11 жыл бұрын
As always, very good.... Real Legand.
@tarathetechchick48408 жыл бұрын
I lol-d so hard at "Security by inconvenience" :-)
@ryasmi12 жыл бұрын
I know right. The man is a legend.
@thohangst6 ай бұрын
Well, here we are, 14ish years after this was filmed. JS is still going strong. es6 takes care of a lot of the bad parts, and TypeScript is a pretty good piece of tooling.
@jjames19779 жыл бұрын
Here is a variant of aspects to solve the mashup problem. The building block is a component, and components are composed in packages. There is a notion of A being a subcomponent of B. One package may incorporate a parameterization of another. A package may declare an equality between two components. Syntax: "A for B" A is a subcomponent of B "A is B" A is the same component as B The algorithm for mashups is: If (A for B) is (C for D), first mash B with D If (A for B) is (C for B)... If (A for B) is abstract, set (A for B) = (C for B) If (A for B) and (C for B) are both concrete, mash A with C The definition of "mash" can be different for each type of component. E.g. it could mean, "take the union of the members." Packages can also be forced to obey additional properties, which the weaver must prove in order to complete a solution to a mashup.
@clivegrant898011 жыл бұрын
Usually the msb is the sign bit. So if adding 0xx..xx to 0xx..xx overflows into the sign bit, the result.is negative unless the overflow is caught as an error.
@tomatopotato42294 жыл бұрын
I was promised sexual content, language and nudity.
@moshemalka990410 жыл бұрын
Links: On the Criteria To Be Used in Decomposing Systems into Modules www.cs.umd.edu/class/spring2003/cmsc838p/Design/criteria.pdf The Lazy Programmer's Guide to Secure Computing The Lazy Programmer's Guide to Secure Computing
@ErnestLebedev11 жыл бұрын
Loved the applause at 32nd min when Douglas predicted the death of IE6 :D
@Nikita-p8o7 жыл бұрын
The Lazy Programmer's Guide to Secure Computing (Marc Stiegler) ?v=eL5o4PFuxTY It has been referenced in the video
@Ioan19010 жыл бұрын
35:38 I don't understand, how Ajax library looks like?
@essellar9 жыл бұрын
Ioan190 Think jQuery. Back in 2009/2010, when this talk was given, there were a number of competing libraries with no clear "winner" in sight. These days, just about everybody uses jQuery (as opposed to things like YUI or raw Prototype). The selectors and searches and so forth in all of the AJAX libraries made more syntactic sense than the native versions (either MSIE, the W3C DOM interface or the old Netscape Navigator methods); the problem is that you need to force a download of something like jQuery to make a two-line call easier on a 10KiB page, and that's ridiculous. A native standard DOM API that looks something like jQuery would make pages a lot lighter. (People will tell you that cache handles it; sites all use different jQuery versions with different plugins and most users will only visit one page or a small number of pages on a site, so there really is no net download savings.)
@reyou78 жыл бұрын
He says Threads are evil. I can mostly agree. However, if I have multicore machine and cannot create new threads through tasks how I will get benefit out of it? Will javascript use only single core forever?
@scoreunder8 жыл бұрын
Mashups are nothing new - they're a lesson that Unix taught us, the lesson that mashups are good and that dumb utilities working together can be very clever indeed.
@kevincloinger332811 жыл бұрын
Where did he get the ie6 number from please?
@sabbiirr11 жыл бұрын
It was in 2010 :)
@MalteUbl11 жыл бұрын
Google for integer overflow.
@1Sentient11 жыл бұрын
I like everything he said except the one Java comment about bytecode. JVM startup time is slow, but not because of the intermediate bytecode. That's just silly.
@RashidOmar11 жыл бұрын
Douglas Crockford === javascript // true
@DanielBeecham11 жыл бұрын
Tail calls please. Soon please.
@JohnHaugeland9 жыл бұрын
i love how crockford says microsoft was blindsided by ajax after disbanding its web team after forrester's 2000 declaration, when in reality, microsoft's web team is who created ajax in 1999
@JohnHaugeland9 жыл бұрын
***** that's like making a distinction between a car and driving
@JohnHaugeland9 жыл бұрын
+popasmuerf okay, name a company that you can't name dead initiatives from, and you just named a company that never took any initiatives. ooh, anti-microsoft hate. that's novel. i'll see you on slashdot
@nateschultz89739 жыл бұрын
Microsoft was also the driving force in developing and promulgating XML. Further, it was IE's creation of a JavaScript XML document request that made AJAX possible. Other browsers adopted it before it was ever formalized as a standard, but they all copied the IE implementation. Don't mistake a marketing emphasis for their entire development. Much of what's gone wrong in the WWW is their fault, too, but give them their due. Microsoft is the single entity most responsible for AJAX. More so, even, than the W3C.
@RogerBarraud9 жыл бұрын
+Nate Schultz M$ responsible for the shittiest kludge ever? Now *that's* novel.... ;-)
@gengkev9 жыл бұрын
_new ActiveXObject("Microsoft.XMLHTTP")_ - ah, the good old days... see also: blogs.msdn.com/b/xmlteam/archive/2006/10/23/using-the-right-version-of-msxml-in-internet-explorer.aspx
@1Sentient11 жыл бұрын
It won't happen any time soon
@gadfly13211 жыл бұрын
Do you have any fucking clue how annoying that pirate opening is?
@asdqwe442710 жыл бұрын
"Javascript is good for beginners and masters" that might be true. But it does NOT suit the intermediates who do not use it very often.
@asdqwe44279 жыл бұрын
Efreitor Habibulin I learned this the hard way as meny before me :P. I was far too locked up thinking in the same way as i would if I was writing Java, C++ or C#. There is an unessesary amount of mindfucks in the language though. Getting OK att js was painfull to me, I like it a lot now but it took some time.
@Fergrus0019 жыл бұрын
+Efreitor Habibulin OOOoooHHHHHH!!! ZIN G!
@Javislaterlp7 жыл бұрын
I think that whoever is using IE as of today is disrespecting and spitting on the work of web developers. You can't do that damage to thousands of devs only because you don't give a damn fuck about installing a new browser (which actually takes one click and one minute) and be considered a nice person. Im sorry but if we don't stop supporting IE lazy people won't change browser ever. I am telling this from 2017 and IE is still lurking out there. Oh and FFS uninstall whatever windows
@RylanEdlin7 жыл бұрын
Javi Hernandez This was in 2010
@billkammermeier8 жыл бұрын
I disagree with the supporting IE6 comment Doug makes in this video. Unless you are targeting China there is no need to support that browser. And the reason so many people in China are still using IE6 is because they are also using older, more easily pirated versions of Windows. If you are selling a product it probably won't be these people purchasing it. developer.microsoft.com/en-us/microsoft-edge/ie6countdown/
@kunqian48828 жыл бұрын
Well IE is also gradually becoming obsolete. The current most popular browser in China is built based on Chrome (though many people just don't know) IE is used now usually due to legacy programs targeting the browser (and, occasionally, since it is the browser comes along with their pirated Windows XP. Seriously, XP)
@serrocsc7 жыл бұрын
no mention of the horrible security issues in java script
@JonathanRose24 Жыл бұрын
Lol did you even watch? He talked about security for like half the talk 😂
@H0H0H0Falcon10 жыл бұрын
Oh dear. I hate JavaScript because it is not type safe. It is a write-once language. Not even in his list. IE6 must die!? Well I have an old XP computer running an old version of IE. It runs fine and I'm no upgrading it so this chap can satisfy his wish list. "Like another language, then go program in it." - Well no, JavaScript has a monopoly. I cant. Java failed because the libraries were so huge. I remember trying to download an app and being told it would take 3 hours to download with the new libraries it needed. Very disconcerting that this chap is so out of touch with the real world.
@EricCote429 жыл бұрын
Freddy Falcon Even Microsoft went to the "IE6 must die" route. They even had a web page to educate people that 12% of the web using IE6 was too much. Here is that page from over 4 years ago: web.archive.org/web/20110307020932/www.ie6countdown.com/ . Today, there are less than 1% of users who -- like you -- are still using IE6: www.modern.ie/en-us/ie6countdown
@notamage1319 жыл бұрын
Freddy Falcon Enjoy not having web apps run on your shitty pc.
@JonathanRose24 Жыл бұрын
I know this comment is now 8 years old, but it’s wild seeing anyone defend IE😂😂😂. Its 2023 and IE is now FINALLY dead in all its monstrous forms