I really like that you don't edit out your mistakes, these are the same mistakes I make and it's cool to see someone else going through the process. Makes your tutorials much more relatable.
@WistrelChianti2 жыл бұрын
I suspect the ones here were deliberate but for purpose as he's aiming to illustrate the gotchas and their fixes
@lesliehui Жыл бұрын
@Dragon arrow functions are always anonymous regardless whether you assign them to a variable a not
@flieranonymous45887 жыл бұрын
Best programming teacher on internet..........
@haideralipunjabi7 жыл бұрын
Flier Anonymous Agreed. Your opinion might change after watching the steams
@mohsinshaikh89447 жыл бұрын
Haider Ali Punjabi who cares the steam when you have coding train with you.... At least my opinions Will not..
@haideralipunjabi7 жыл бұрын
mohsin shaikh My opinion, you learn things like debugging, mistakes, etc from the stream only
@bastifmbh7 жыл бұрын
i find it very interesting how other programmers approach a problem.. and just watching the progress and the thinking of someone like daniel really helps a lot imho.. unless you're an expereinced professional yet i guess..
@BonefxInaxclan1236 жыл бұрын
Urmmmmm travesy media check him out you will thank me later
@LandonHughes26 жыл бұрын
Daniel, I literally CANNOT thank you enough! You are an UNBELIEVABLY amazing teacher!! Thank you SO much! I've wanted to understand how a computer thinks since I was exposed to them at the age of 5 (I got my first Gameboy with Yoshi's Island). I wanted to learn how to make games. The first time I was ever exposed to programming was my Junior year of high school (had a Java class). I hated it for the fact that my teacher was horrible! Nothing made sense. I wanted to like programming so much! Fast forward a few years later (2015), I took some Python courses, Swift courses, and C# courses on Udemy. All of them were incredibly basic and the instructors were very boring. I picked up all the basic things such as if/else logic, different data types, for loops/while loops, etc. All of them ended the same way; once they got to classes and objects, I gave up. Fast forward another year (2016) I picked up GameMaker, which is easy to understand for beginners. Everything that I learned in those courses transferred over nicely, but when it got time to debug, I gave up again :/ Now fast forward into 2018, I found you! I remember you showed up in my Suggested Videos with your "Coding Challenge: Flappy Bird video". I subbed instantly! It was until this past week I watched your P5.js and Node Tutorials. I am SOOO glad I did. Like I said, computers have always fascinated me at young age. Thank you for teaching me the gift of programming! Thank you, thank you, thank you! I love that everything is starting to click now, which is what I wanted from the start. I'm pretty sure your style of teaching is how I'm able learn. Like I said in this comment and in previous comments, you are an unbelievably AMAZING teacher! Reading debugging errors is making SO much more sense now. Thank you so much times 1000 and keep up these awesome videos :)
@llegenda-r3c Жыл бұрын
What are doing now it's been half decade.
@pbznt3 жыл бұрын
I begin programming on Codecademy, and in 1 month I will begin an official coding course in college. I needed a channel like yours to get motivated and the way you explain everything is very fun and simple. Very entertaining and motivating!:) (From Quebec, Canada)
@piczel96317 жыл бұрын
Please don't stop do what you do. You are so funny and entertaining while still being extremely helpful => crucial things for an amazing teacher!
@vincej1514 жыл бұрын
You are truly gifted! I have watched hundreds of tutorials. I build complex software. And you are the best I have seen.
@KurtSchwind7 жыл бұрын
I've been using arrow functions for a while. It took a bit of time to wrap my head around some of the advantages but now it's nearly second nature. Good video. Keep up the good work.
@samhero4794 жыл бұрын
This guy is so friendly and full of life. Kudos to your contagious enthusiasm! Much love.
@phil59925 жыл бұрын
this guy is a total goober and good lord do i love it. i had a college math professor EXACTLY like this, and you sir, captivate my attention. you got yourself another avid viewer!
@benmoren58287 жыл бұрын
This video @ 5:46 totally saved me recently from so many `var that = this` statements in a recent project. I'm totally hooked on the arrow functions now!
@TheCodingTrain7 жыл бұрын
I'm so glad to hear this!
@benmoren58287 жыл бұрын
Heres what I was working on, it's not a sketch, but it is p5 related :) : atom.io/packages/p5js-toolbar
@mrss6494 жыл бұрын
@@benmoren5828 Im going to download that tommorow. Kepp developing!
@mrss6494 жыл бұрын
@@benmoren5828 oh and also, 1: Can you share the source code for that because that would be cool 2:Where did you learn to make stuff like that
@BenMoren4 жыл бұрын
@@mrss649 Source is available in the github repository here: github.com/bmoren/p5js-toolbar.
@judeaf.43932 жыл бұрын
You're so quirky, I love it!!! Awesome, clear explanation. I needed this clarification before I read any more reference articles... sometimes they can become confusing or simply do not explain enough and I am left with questions. Awesome, awesome explanation- thanks!
@blargflarg5 жыл бұрын
Holy crap. I absolutely love watching your videos on JS. JS has been one of the toughest languages I've come across, and you make it understandable and easy. Thank you!
@shivam_00025 жыл бұрын
11:43 You are making the World a Happy Place by the way you teach.
@KayinAngel5 жыл бұрын
Been watching a bunch of your videos lately, and am unsure if your "mistakes" actually are genuine mistakes or planned examples of mistakes, but for some reason it seems to help me learn and retain better than someone whipping through it without explaining why something fails if done wrong. I dig.
@jaldipupadhyay49106 жыл бұрын
It was so helpful and you are truly humble. I laughed at 8:22 when you said, if you are still watching this video you are really nice person LOL. I don't know how can we payback to people like you. Cheers
@caio-jl6qw6 жыл бұрын
I love this channel. I've learnt so much about JS since I started watching you.
@surajkawale27635 жыл бұрын
Never ever stop teaching programming.I wish i could like this video 3000 times
@SayanChakraborty103974 жыл бұрын
Every time I forget any concept, this is the first (and sometimes the only) place I refer to. Thanks a lot!
@davidpark90205 жыл бұрын
Days of reading articles, blogs, books and still can't get it. This guy made me understand this within 20 min. Thumbs up high.
@TheWWWyrm7 жыл бұрын
What helps me to use const more often is using a linter set to highlight all variables that are never assigned and not const. Really helps in keeping code clean and understandable!
@phafid5 жыл бұрын
Hi Dan, As a beginner, I just want to let you know that your error is more valuable than the actual code that works. It saves me hours of time to figure out what's wrong with my code. That is why I always following your channel and reproducing the code that you made. Thanks for the information sharing.
@christopherLife5 жыл бұрын
This is what a man who loves coding and teaching looks like!
@presshun2 жыл бұрын
Watching 5 years later to the day, so spooky was relatable! :D Thanks for the great vid!
@newesttechdesigninnovation81212 жыл бұрын
Might be the best teacher i came across and i usually dont even comment on peoples videos
@tonyp31736 жыл бұрын
This is probably the single best video you've ever did let alone the internet.
@roltthehunter7 жыл бұрын
I just started coding with js a month ago i studied for 130 hours and i personally love arrow functions i feel like using them makes my code look more professional
@tekoreypy5 жыл бұрын
I agree, to try new thing in programming is also interesting/exiting/spooky/terrifying/and whatevea, I used to avoid these things, but even if you say there is no reason to be afraid of them, you will always find something you don't want to start using, thanks Theacher Shiffman for encouraging us to try new things
@rubenjwz3 жыл бұрын
You're always able to humanize programming for me, and I thank you for it :)
@GraceandWisdom4 жыл бұрын
Daniel Schiffman, you are an awesome teacher and I understand most of what I don't know after you have shown me!!
@boultifnidhal26003 жыл бұрын
You're the best teacher on earth, I love your intros so much.
@arshadjaveed78777 жыл бұрын
Arrow function => Lambda expressions ;)
@ruffianeo34186 жыл бұрын
Wait for his video once Haskell Arrows make it into ES 42 ;)
@protondecay46074 жыл бұрын
It's a bit different from regular functions in that the current execution context(this) refers to the Global (or undefined, if you're in strict mode) instead of the function itself for regular functions
@ShootFirstNSАй бұрын
It's crazy I'm watching this around Halloween and it makes perfect sense
@ThinkerHigh5 жыл бұрын
I wish every teacher should be like you.
@ZZZZZZZaaaart5 жыл бұрын
You are amazing. It didn't solve my question but... I learned new amazing things and also discovered you. From a begginer in programming in Spain, thank you and keep it up!
@PaulMcCannWebBuilder5 жыл бұрын
Your mess up at 14:34 is the perfect learning opportunity to understand const! The fact that you don't edit those kinds of things out sets you apart from most teacher and tutorials. I'm going to pretend to make this mistake in my own classes!
@konkenbonken4 жыл бұрын
I just realised that you make really great tutorials as well as your coding challenges. I've just watched those(and I love them❤).
@AdamMalesevic Жыл бұрын
The best explanation of Arrow function on KZbin 🎉😊
@trollanddrump53265 жыл бұрын
Never in my entire life have I ever felt so much discomfort and anxiety over something as trivial as 2 bytes of tormenting equality symbols! Some nights when I don't get some sleep, I think it's because of the => like it's some kind of evil emoji jeering at me.
@Bigsupreme20003 жыл бұрын
Some gusta who introed it did not realize a lot of amateurs gonna get lost at it 😂
@MrT2460077 жыл бұрын
Your vids help me so much. I'm new to programming and you dumb things down really well. Thank you for what you do.
@wendusyaputra7 жыл бұрын
This guy is so funny. But honestly i would say that he is the best teacher on the internet
@2ru2pacFan2 жыл бұрын
You and AutomationCat are the best coding teachers on the internet
@robocop303016 жыл бұрын
So happy that I found this channel! Thanks for all the help!
@jobayerrifad5444 жыл бұрын
I've never smiled while watching a tutorial unitl 8:15
@ArnoldsKtm7 жыл бұрын
Recently learned about arrow fns while messing with node. It was confusing at first but it's basically just a shorthand function which ends up being much cleaner. Now I try to use it whenever.
@iskariotas7 жыл бұрын
ArnoldsK there are catches with it tho. The scope is different than normal foos.
@dvorapat7 жыл бұрын
@Nikolajus Exactly! It is not just "shorthand function". It could be clearly seen in the video with the Counter class example that it is not the same, because arrow functions use lexical scoping. I found this article helpful to tell a difference between "standard" function and arrow functions: derickbailey.com/2015/09/28/do-es6-arrow-functions-really-solve-this-in-javascript/
@AliveNotDeadmund3 жыл бұрын
Oh my god, that was hilarious! THANK YOU for unpacking The Spooky Arrow into a much more friendly concept.
@someenglishgames7 жыл бұрын
Was very helpful in node.js to get a simple declaration for a function for a callback
@leinf44647 жыл бұрын
The arrow functions seem like a part of kinda functional programming in Javascript and seem to be similair to the lambda expresions notation in Java to me. Great tutorial video as always :D
@sanishchirayath41493 жыл бұрын
I love this...Especially the 'CONST conter1'.., Thanks for making learning code fun
@brutalbutler5 жыл бұрын
my fav teacher, wish i had you as a lecturer
@fracasj4 жыл бұрын
You might have changed your opinion of the arrow function three years later (or not haha), but it's extremely vindicating as a new coder working their way to ES6 how frustrated you are by it! It's stumped me so many times and I'd much rather write out the function in total! But this helps a lot and maybe I'll learn to embrace it. Thank you again for another helpful tutorial!
@akosbarabas225 жыл бұрын
Best explanation i could imagine, all i can say is thank you!
@jorgedavalos56634 жыл бұрын
the good old blackboard!! def works great for explaining things ! nobody uses it though! hope some other guys that teach coding learn from you. cheers!
@cprogramming56407 жыл бұрын
That is spooky. Code used to be cryptic and the emphasis has been on making programs more readable. Now we are headed back to more cryptic. Spooky “crypt”ic
@youngcitybandit5 жыл бұрын
No it isnt... it is as readable as ever if you know what youre doing you can make anything readable.
@momahdy4 жыл бұрын
you gotta learn the language so you can read it
@0xssff4 жыл бұрын
From low level to high level to low level "syntax"..
@ohiriboi18727 жыл бұрын
It’s my first time to watch JS but am impressed 1000000%
@NatetheAceOfficial7 жыл бұрын
I just need an excuse to apply the UnicornFluffyTimes function to make my project particularly magical.
@PirateCaptain_ThunderHook2 жыл бұрын
this is really helpful, thanks for having this video on the internet.
@dinoXman5 жыл бұрын
Wow.. he's very good at drawing horizontal straight line.. amazing
@vibsh6255 жыл бұрын
7:00 It makes perfect sense, thanks you cleared the doubts i had on react event binding.
@mephesh5 жыл бұрын
18:15 *mindblown* great demonstration of how function() {} and () => {} have different this behaviour
@Engineer97366 жыл бұрын
These videos really update my Javascript knowledge properly. To stay uptodate one needs input from somewhere.. could be a forum community or official documents, but these videos are just easy. Just press play and follow along 🙂
@jorgel90415 жыл бұрын
The spooky intro music is ok even in summer. They're spooky dude
@MikahFSMusic4 жыл бұрын
This man is a fantastic teacher
@UweEichel7 жыл бұрын
There is a way to use arrow notation outside of IEFEs. You could write something like var fun = (args) => { /* Your code here */ }. Honestly, as somebody with a mathematical background, this way of writing functions seems very natural to me. When you (properly) define a function in mathematics, you also write f: Domain -> Image x => x^2. The new arrow notation could only be closer to that notation if you actually had to define the type of the arguments and the return value. I love the arrow notation
@RedsBoneStuff7 жыл бұрын
You sound like a fan of Lisp ;)
@matthewrice75907 жыл бұрын
This would work but you would always want to use “const” when declaring a function and not “var”, as you would never want to reassign a function’s functionality(there’s probably a better way of putting this :) ) within a program. Just nit picky stuff but a programming standard nonetheless.
@UweEichel7 жыл бұрын
I have never thought of that. You are probably absolutely correct.
@kingmonger44564 жыл бұрын
I LOVE this mans videos so much, he makes it enjoyable while learning. so much personality.
@entalpa7 жыл бұрын
An anonomous function is hard to debug, because afterparty a error you dont get the name of the function where the error is if its a Callback function. Always try to name your functions
@tacarson7 жыл бұрын
Wouldn't you still get a line number?
@ThatsEli7 жыл бұрын
Tate Carson Depens on if you are transpiring and are/aren't using source maps :/
@syedbaryalay58496 жыл бұрын
Watching this video was the most fun part of my day
@muhammadaadil35465 жыл бұрын
This video is better than the udmey courses for learning javascript
@barszrhl4452 жыл бұрын
You are funny guy, I watched without cutting whole this video in normally always used to skipped,anyway thanks for helping.
@willful7596 жыл бұрын
Funny how the solution you came up with is more elegant than the original solution, also lambdas are the best
@krushna74673 жыл бұрын
The way u simply all the concepts is just awesome 💜 Thanks a lot!!!
@mrshurukan7 жыл бұрын
Awesome explanation! I resent this to my friend who didn't know the whole thing about those arrow functions! Thank you so much
@TheCodingTrain7 жыл бұрын
Glad to hear, thank you!
@mohsinshaikh89447 жыл бұрын
He is nice guy
@sol0matrix7 жыл бұрын
Escaping this video for now until my next app version rewrite
@杜娟-v7l Жыл бұрын
I really like your style of lecturing
@therobot47795 жыл бұрын
watching in the future on a micro binge, that was such a weird intro and i loved it
@waterbottlexd12983 жыл бұрын
What an interesting person. Really makes it easier to learn.
@scottibr26 жыл бұрын
thx, you just got my like by making me giggle about "unicorn fluffy times"
@placidchat75325 жыл бұрын
@18:10 The reason this happens is javascript object orientedness is a kludge, so all functions don't know if they're functioning within the context of a class, which is why there are binds, something that doesn't exist in any other language, where every instantiation knows if instance methods are referring to itself and not a global function. You can see this happening because of javascript's use of a prototype hash keyword is to attach functions to an object. i.e. an object is a hash. Same thing was happening in perl for the longest time
@roy41735 жыл бұрын
I legitimately can't tell which of the errors were intentional and planned and which were surprise errors that he expected to work. Fascinating to see him troubleshoot live though. Also Happy Halloween!
@TheCodingTrain5 жыл бұрын
waiting for someone to finally watch this today! (I would have to watch back to be sure but my guess is that the errors were not planned. very little planning, for better or worse, goes into any of these!)
@roy41735 жыл бұрын
@@TheCodingTrain and I love your videos more for it. Thank you so much for making them.
@adaliadasilva42002 жыл бұрын
Lemme tell you, you are great at explaining. (Y) Love your euphoric energy. Super pure! :)
@akhtar75743 жыл бұрын
I'm a nice person!! You just made my day. I waited for you to tell me that before stopping the video. Just kidding. I watched the whole video.
@yharuhi397 жыл бұрын
I now know is the thing that ordinary function is DAN, and we love dan. This concludes that we love ordinary function! hey, job done.
@stanleyjaxen5043 Жыл бұрын
thanks so much the world is a better place most my teachers taught this like "nu nu nurr and an arrow!... next topic"
@MrJatinpatodi5 жыл бұрын
Very nice. A funny and easy way to learn complex stuff...great teaching skills
@SwapnilMhaske15 жыл бұрын
I like the way u make mistakes and don't deny it... Good to see u did not cut it off from video. Very comprehensive and nice video. You covered all aspects I know about arrows. One suggestion, instead of scoping tutorials to sketch.js library, why don't you keep it general. That will be less confusing for newbies.
@TheCodingTrain5 жыл бұрын
Thanks for the feedback!
@ganstabreakincity7 жыл бұрын
8:14 deserved like
@DuyNguyen-ku9hg6 жыл бұрын
Accidentally watched this video on 30th October 2018
@anuj72866 жыл бұрын
same here bro :)
@18bovende5 жыл бұрын
Is that a problem?
@konkenbonken4 жыл бұрын
I watched it on Pi-day 2020. 14th of Mars
@jl-dq5ch5 жыл бұрын
0:49 dude, you nailed that sentence 👍
@CloudiaNgaming6 жыл бұрын
You can name arrow functions by doing: example = (args) => { }
@error53ish5 жыл бұрын
I mean... but at that point aren't you pretty much just needlessly creating an anonymous function... and then giving it a name? I mean... I know it will help with the correcting the definition of "this" but other than that.
@probE4665 жыл бұрын
@@error53ish correcting this is extremly important...
@amadexi5 жыл бұрын
This is an expression not a statement and it already exists for old style functions: function foo() {}; is not technically the same as var foo = function () {} (and its equivalent as arrow function); for example an IIFE uses expressions (it's in the name) hence why you have to wrap your statement in parenthesis (so it can resolve to a value) A more technical difference is that a function declaration (statement with name) is loaded before code execution while expression is only loaded when the interpreter reaches the line. so you can do: fun(); function fun () {}; but not: fun(); var fun = function () {}; nor: fun(); var fun = () => {};
@tokunboayomide54402 жыл бұрын
Guy you're wonderful, I just had to subscribe and clicked the like button.
@lofofojb3 жыл бұрын
This channel is so cool ! Thanks you Coding Train !
@warrenwong45184 жыл бұрын
You have a gift for teaching!
@Azeem3824 жыл бұрын
I really Enjoyed your tutorial you are the first man maked me laugh in coding videos very nice man you should get an award from youtube *KEEP IT UP Brother* I really really enjoyed i am subscribing :) Make more tutorials like this
@craigburton44473 жыл бұрын
14:01 love the sound board
@lucyvrxo6 жыл бұрын
NEW SUBSCRIBER ~ your teaching style is so great! love your energy. can't wait to see more videos from you.
@mehdiwadoud80986 жыл бұрын
Hey man you almost killed me at 8:10 lol, i really admire the way you are making your lesson one of my best teachers
@rimora.2 жыл бұрын
thx for understanding how confusing arrow functions are for beginners
@cimmik2 жыл бұрын
I watch it in the future, but because it's 29th of October, the Halloween reference is still relevant :)
@danilo27357 жыл бұрын
i want to be like you when i grow up
@DavidWoodMusic5 жыл бұрын
Danilo Marques So be like him now. Then grow up. :)
@kennypeere91465 жыл бұрын
Just start laughing at completely random non-funny things and consider yourself a comedian.
@cats4president4 жыл бұрын
grace and frankie quote?
@d74g0n6 жыл бұрын
Watching this today ... just before Halloween 2018... and thought it was a new post I missed.