
Videos about JavaScript - bolshchikov
https://github.com/bolshchikov/js-must-watch
======
program
Addendum: WAT, it's very funny

[https://www.destroyallsoftware.com/talks/wat](https://www.destroyallsoftware.com/talks/wat)

~~~
keeperofdakeys
And another by the same guy, in a similar vein:
[https://www.destroyallsoftware.com/talks/the-birth-and-
death...](https://www.destroyallsoftware.com/talks/the-birth-and-death-of-
javascript)

------
hueyp
I would add:

'Hey Underscore, You're Doing It Wrong' \--
[http://www.youtube.com/watch?v=m3svKOdZijA](http://www.youtube.com/watch?v=m3svKOdZijA)

It is much better than the title would suggest :)

~~~
chdir
Any summary/writeup for this talk. 36 minute is a long time to find out
whether it matters to you, even a quarter of that is too long. There should be
some summary.

~~~
findjashua
Underscore makes iterable the first argument, and function the second. The
speaker thinks this is backward, since making function the first argument and
iterable the second gives you automatic currying. This is the order followed
by Ramda
([https://github.com/CrossEye/ramda](https://github.com/CrossEye/ramda)), as
well as Python's standard library
([https://docs.python.org/2/library/functions.html#filter](https://docs.python.org/2/library/functions.html#filter))

------
drsintoma
Crockford's videos can not be recommended enough. Specially the first ones
about the origins of everything I found really enlightening.

~~~
acomjean
He wrote a good book too

crockford's: javascript the good parts

Not for beginners but a good intro to javascript and some its oddities. Its
thin too which I like in books.

~~~
mtdewcmu
I learned Javascript from that book with around zero prior knowledge of
Javascript as a programming language. So, to be more specific, I'd throw in
that it's a perfectly fine book for a beginner to Javascript per se. It will
probably confuse you, though, if you are not merely desiring to learn
Javascript, but you are a beginner to programming in general and learning a
programming language is a novelty to you in and of itself -- by the time I
picked up the Crockford book, I was proficient in a variety of other
programming languages and had a computer science degree.

If there is anything I could complain about, it would be at the other end of
the spectrum: it ends after covering just the basics of the language itself; I
don't even think it covers the browser DOM. But if you buy it at a physical
bookstore, the thickness of it should tip you off as to what you're getting.
As far as it goes, it's a great book.

------
spiralganglion
The talks at FutureJS were consistently fantastic. I highly recommend all of
them.

A good starting place would be A Conceptual Future For The Multi-Device Web,
which covered a plethora of new APIs like WebRTC, Geolocation, and
Orientation, combining them in rather novel ways.

Also excellent was Invent The Future, Don't Recreate The Past, which looked at
the evolution of JS and possible future consequences of the decisions being
made in ES6 and ES7.

Overall, fantastic conf with excellent speakers (Jeremy Ashkenas, Reginald
Braithwaite, and David Nolen, to name a few personal heroes).

[http://futurejs.org](http://futurejs.org)

------
jarek-foksa
I have a question about the talk by Philip Roberts ("Help, I'm stuck in an
event-loop").

In the following code, assuming that there are no read errors, is the load
callback guaranteed to be always executed? I.e. are DOM events dispatched only
after the call stack is cleared?

    
    
      let main = () => {
        let reader = new FileReader();
        reader.readAsText(file);
        reader.addEventListener("load", callback = (event) => console.log(event.target.result));
      };

~~~
philip_roberts
Great question, and one i am not totally sure of myself. I guess the question
is: if an event doesn't have any handlers listening for it, does it get queued
and processed regardless? This is something I've often wondered about myself
but never properly tested/been sure about.

My _guess_ would be yes, this would work. Regardless of how fast the file
loaded. One way to test it would be to stick a large while loop between
readastext and addeventlistener to block the stack for a few seconds and
guarantee that the file is read before the handler is bound.

I'll try and take a look when I am back at a computer if nobody else responds
either way :)

~~~
philip_roberts
I'll add, most of my understanding was done this way: somewhat experimentally.
Come up with a hypothesis of how things might work, figure out a way to prove
it, and see if I was right.

------
wildpeaks
This JSConf.Asia 2013 talk about _NodeJS in Photoshop_ [1] is very good as
well, e.g. "Generate > Image Assets" is a Node script that automatically
extracts PNG & JPEG when the PSD is saved, so combine it with gulp watching
the output folder to livereload images of the site you're testing by editing a
PSD: imho that will sure help designers work with programmers.

The _" OK Photoshop"_ demo is just hilarious :)

[1]:
[https://www.youtube.com/watch?v=wqmMqB91zdI](https://www.youtube.com/watch?v=wqmMqB91zdI)

------
krivx
Are there similar list for other languages? Python, maybe?

~~~
Sharma
For python: [http://pyvideo.org/](http://pyvideo.org/)

~~~
krivx
pvideo is great but there is an overwhelming amount of material. I was just
hoping for a "curated" list.

e: a couple of my favourites by Raymond Hettinger

[http://pyvideo.org/video/1780/transforming-code-into-
beautif...](http://pyvideo.org/video/1780/transforming-code-into-beautiful-
idiomatic-pytho)
[http://pyvideo.org/video/1669/keynote-3](http://pyvideo.org/video/1669/keynote-3)

------
stickperson
I'm about halfway through Crockford's second video which is pretty damn good.
I'd say it's a good overview and introduction to JS, but if you really want to
learn books are the way to go. That's how my brain operates, at least.

I'm still relatively new to JS and have really enjoyed Secrets of the
Javascript Ninja.

------
cwbrandsma
Warning: this comment is marketing.

I reassembled the videos into a product called Framework that I am working on.

[https://fw.unitymg.com/rdr/D:2238](https://fw.unitymg.com/rdr/D:2238)

~~~
philip_roberts
Curious: is this intended to be a paid product or just a free catalog of
videos?

~~~
cwbrandsma
Payed product. The intent is to help with training (employee, customer,
patient, student, etc), and information distribution.

~~~
latentflip
That's interesting given there's no licensing certainly on my video :) I will
be asking scotlandjs to update the Vimeo page to ensure there's a Creative
Commons non-commercial license specified as I'm not _super_ excited about
people charging for access to my work.

~~~
cwbrandsma
That is certainly not our intent either (and I'm certainly not charging for
this page). What we change people for is the ability to upload content (we can
do that, just not done in this case), group the content (uploaded and
elsewhere), and distribute (link a web page or send email). All the videos are
still hosted from their original location (vimeo and youtube in this base).

If you want me to remove something, email me at chrisb(AT)unitymg.com and I'll
get rid of them.

------
DarkTree
Would you recommend these videos for beginners or are they tuned for the more
experienced programmers?

~~~
cjslep
The Douglas Crockford videos were suggested to me when I was interning at
Cisco and had never touched Javascript before. While it didn't exactly teach
me how to program the solution for my particular problems in Javascript, it
provided excellent context for why things are the way they are and gave me an
overall familiarity with the language.

------
industriousthou
Did not expect Crockford on JavaScript - Volume 1: The Early Years to start
with Babbage :)

Great stuff though.

------
TazeTSchnitzel
Why a repo and not a gist? The latter would seem more appropriate.

~~~
stanzheng
Gists don't have a friendly interface to merge up and down request. I assume
the OP wants other people to share and contribute to his list.

Also Its been the meta to use a Github repository.

ex: [https://github.com/papers-we-love/papers-we-
love](https://github.com/papers-we-love/papers-we-love)

ex: [https://github.com/avelino/awesome-
go](https://github.com/avelino/awesome-go)

~~~
jacobolus
Note, your use of “meta” here is not standard usage in the programming
community at large, and is therefore probably confusing to many readers (I’d
avoid it in this context).

The sense you mean is a shortening of “metagame”, a term used since the early
2000s or maybe before by Starcraft I players to describe the broad trends in
overall strategy and play-style evolving over time as the whole community of
players adapt to each-other’s games. The term may have been used in other
similar contexts before that time, but as far as I can tell that’s mainly
where it was popularized.

~~~
noir_lord
His intended use of meta is wrong.

So is your description, Meta is an ancient greek preposition that in English
roughly means a concept that is an abstraction from another concept (though
originally in Greek meant "after").

It is also used commonly to mean something that is knowingly circular or self-
referential "That film director doing a movie about film directors was so
meta", I don't like this usage but it is common.

In either case your usage is considerably narrower and not at all the standard
usage.

~~~
euid
I think that's what he was pointing out.

He's saying "oh, this person just used meta like it means 'something that is
all the rage', which is some strange emergent usage from a gaming subculture.
I'd better explain that so it makes any sense at all."

I would imagine _most_ people here know what the word meta actually means, so
just saying "this isn't standard usage" is sufficient.

~~~
pconner
Is this a meta-meta argument?

------
tarzan9
I really enjoyed the DSL talk. Such a great concept.

------
shire
would be nice if there were something similar for PHP :P

------
tom_scrace
Why must JavaScript watch videos?

~~~
ecocentrik
I'm picturing JavaScript strapped to a chair with its eyelids forced open
undergoing aversion therapy as it undergoes multitudes of revisions to
eliminate all those pesky bad parts.

~~~
angersock
Don't be a tease. :(

------
runn1ng
It took me a minute to parse the headline correctly.

~~~
unwind
I agree: [https://github.com/bolshchikov/js-must-
watch/issues/2](https://github.com/bolshchikov/js-must-watch/issues/2). :)

------
spountzy
really helpful. thx

------
dbpokorny
Control-F "asm.js", found nothing, Control-F "emscripten", found nothing,
closed window.

Dude, JavaScript is the new assembler. Forget about JavaScript. It's
irrelevant. Cat's out of the bag, IE+Safari are going to have to step up, and
when that happens, it's game over. I, for one, welcome our new compiler
overlords.

[https://www.scirra.com/blog/132/more-about-asmjs-powered-
phy...](https://www.scirra.com/blog/132/more-about-asmjs-powered-physics)

~~~
k__
Yeah this seems obvious, but...!

The Java/Python/C people aren't those who startend learning JS in the first
place. Many came Form Ruby and PHP, I Guss. They don't need this kind of la
er.

