Never seen someone explain the way you do. So clear and smooth. Thank you so much for all the learnings! :) Hope you will keep spreading knowledge this way.
I just watched your previous threading videos, now all of a sudden this makes so much sense to me now. I had seen this video earlier also, but I wasn't getting that much of a crux which I am getting now. Thanks a lot for defogging the tech for us.
you are a GEM man. hats off you.. serioulsy i PRAY to almighty thata u acheive whatever u want in life... u f**ked everyone else on u-tube, no-one explains so well.. hats off.
Your explanation of asynchronous non-blocking event driven architecture is better than every single tutorial Ive ever seen on the subject. Ive watched about 200-300 different videos related to rasynchronous non blocking event architecture(mostly rxjava and reactive extensions) trying to better learn how and why this architecture is worth using and not one other tutorial explains it as well as you do in this tutorial. Not one rxjava tutorial explains that the main reason to use rxjava is when using or interacting with 1 or more apis so the push event design architecture can be utilized. I never fully understood the 'push' 'pull' ideas because I always associated Observables with push and Iterables with pulls because thats what all those tutorials I watched would say. Your explanition completely erases those inadequate explanations. I can now grasp it perfectly because you explained it in the way push and pull are actually used. Any chance you will ever do a reactive extensions (rxJava) tutorial? That library has very small amount of people who truly understand it and post youtube videos on it, your style of tutorials tutorials might be able to help people get past inital confusion imo its caused by the horrid naming convention of rxJava. The bad naming, like Observable, Observer, .flatMap, .compose, etc causes new users to think of many different concepts all of which operate differently then than what the methods and classes actually do. Your 'explains' skills would be of great help for reactive ext. Also your other vids like the ones that explain threads, parrallelism, concurrency, threadLocal, violatile, atomicints, synchronized, conditions, locks, etc better than any other video or channel on the entirety of youtube imho. The videos Ive watched so far on your channel are pure gold and I expect the rest are just as good. Thanks for the best java tutorials on the net.
Thank you so much for the kind words Dan! I definitely plan to add RxJava videos, though I would recommend looking at coroutines (already there in kotlin, and coming soon in java as project loom). In my personal opinion, coroutines will eliminate the need to learn all those RxJava operators. It makes the code easy to read and still be concurrent and light weight. I have a video on basic concept of coroutines. Let me know if it helps
@@DefogTech I watched it today. Basically fiber/coroutines abstracts all blocking code? How does java (or kotlin) recognize that something is blocking? Or is that something the user has to handle? I assume java and kotlin use fibers/coroutines on for loops, iterating sequences, io calls, web requests, but what about complicated math computation or large data structures. I guess what im asking is how does java fiber (and kotlin, python, and go) determine if something is blocking. Is it when the thread task blocking queue is full? Is it when a single part of the code is running and something is called before it finishes? Or is something blocking when it does not complete its code within a single 'tick' of the scheduler (1 micro second, or however fast your cpu processor is) ? Excellent video, i also scoured many videos trying to get a good explanation of rxjava vs coroutines. Your vid was best explanation and you dont even have to mention rx lol.
Really...Indepth and fantastic explanation. Please do upload more such very informative videos and please let me know if you have any teaching any paid course. I paused my video in between as not able to hold myself to comment on this.