Тёмный

Prototype and Prototypal Inheritance in Javascript | Frontend Interview Question 

Akshay Saini
Подписаться 1,7 млн
Просмотров 384 тыс.
50% 1

- What is Prototype?
- What is Prototypal Inheritance?
- What is Prototype Chain?
- Why we call it _proto_ ?
- What is inhertance in Javascript?
If this video was helpful, give it a thumbs up and subscribe to my channel for more such videos. 🔔
Link to Subscribe: www.youtube.co...
If you want me to cover any specific topic, then comment down below. I would be happy to help you.
If you find my videos helpful,
then please support this channel by buying a coffee,
www.buymeacoff...
Cheers,
Akshay Saini
akshaysaini.in
Would love to Stay Connected with you ❤️
LinkedIn - / akshaymarch7
Instagram - / akshaymarch7
Twitter - / akshaymarch7
Facebook - / akshaymarch7
#Javascript #JavascriptInterviewQuestions #AkshaySaini

Опубликовано:

 

26 сен 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 465   
@zahebshamsi
@zahebshamsi 5 лет назад
First i like your video then watch it. :P
@gunam7343
@gunam7343 5 лет назад
i too
@dominicamaljoef6693
@dominicamaljoef6693 4 года назад
same here :)
@AnkitTiwari-lu2tt
@AnkitTiwari-lu2tt 4 года назад
same here
@Ghummakad_bhaya
@Ghummakad_bhaya 4 года назад
Bro, my eyes are not closing after watching this 😄.Please keep on posting these deep knowledge 🙏🏼
@abhisekpradhan9353
@abhisekpradhan9353 3 года назад
same with me :)
@shivprakashgupta2161
@shivprakashgupta2161 6 месяцев назад
Things Learned (from different resources): --> What is Inheritance of an Object in Javascript? When a new object is trying to access properties and methods of another old object, because this new object might be created from the old objects reference. Example : object1 = { city:'mumbai' }; object2 = Object.create(object1); object2.name = 'Shiv'; console.log(object2.name + 'is from' + object2.city); // here when one couldn't find city property inside object2, it goes to find this property in the inherited object1. This is called inheritance of an object in javscript. This type of inheritance is different from the classical inheitance of oops. This type of inheritance is provided by Prototype Inheritance. --> What is prototype in javascript? Statement - 'Almost everything in javascript is a object' Prototype is nothing but an object which consists of builtin properties and methods. In JavaScript, there are different types of prototypes depending on how the object is created: Object Literals and new Object(): The prototype of objects created with {} syntax or new Object() is Object.prototype. Array Literals and new Array(): The prototype of arrays created with [] syntax or new Array() is Array.prototype. Date and RegExp: The prototype of objects created with new Date() and new RegExp() are Date.prototype and RegExp.prototype respectively. In JavaScript, every function has a prototype property that refers to an object known as Function.prototype Whenever we create object/ function/ methods/ array/ variable , these all are attached with some hidden properties, which we call prototype. if you want to know what hidden properties and methods are stored in a prototype object? Array.prototype Function.prototype Object.prototype what if I want to know the hidden properties of a object declared in the code? _proto_ is reference to prototype ( or it points towards prototype ), if we want to access prototype, we do _proto_ example: let a = {}; a.__proto__; What is difference between [[Prototype]] and __proto__ and prototype? Ans : All are objects. I]///////////////////////////////////////////////////////////////////////////////////////////////////////////// [[Prototype]] is a hidden private property that all objects have in Javascript, it holds a reference to the object’s prototype ([[Prototype]] : Object.prototype). An object’s prototype is the object that an object inherits or descends from. --> Means that if an object2 is inherting properties from another object1, then inside the object2's prototype we'll find the methods and properties of object1. so lets say we have two objects --> object1 and object2. null-->Object.prototype Object.prototype-->object1 object1-->object2 null-->Object.prototype-->object1-->object2 since all objects in javascript point to the default Object.prototype, the Object.prototype points to null. To verify if its point to null or not see inside Object.prototype.__proto__ === null II]/////////////////////////////////////////////////////////////////////////////////////////////////////////// __proto__ (also called the Dunder Proto or Double Underscore Prototype) is a property of Object.prototype that exposes the hidden [[Prototype]] property of an object and allows you to access or modify it. You should not use it as it is deprecated, although you may come across it in older code. The modern way of accessing an object’s prototype is by using Object.getPrototypeOf(obj). You can also modify an object’s prototype using Object.setPrototypeOf(obj, prototype) as you can see in the following. III]////////////////////////////////////////////////////////////////////////////////////////////////////////// .prototype is a special property that almost all functions have that is only used when a function is invoked as a constructor function. I say almost all because arrow functions and methods defined using the concise syntax do not have .prototype properties and cannot be used as constructors. The .prototype property contains a reference to an object and when a constructor is used to instantiate or create a new object, .prototype is set as the prototype of the new object. CONCLUSION : .prototype is a special property that all functions have that contains a reference to an object. When a constructor is used to instantiate a new object, ConstructorName.prototype is set as the prototype of the new object. All instances of that constructor (the objects it creates) can access the properties of ConstructorName.prototype. Q1 > What will happen if we use x.__proto__ and x.prototype, here x is a object declared using object literals? x.__proto__ // this gives a object which containes hidden methods and properties defined for the prototype of varibale x, here variable x is an object, so it inherits the properties and methods of Object prototype. x.prototype // since x is a object decalred using a object literals, this gives a undefined. Q2 > What will happen if we use myfunc.__proto__ and myfunc.prototype, myfunc is a construction function? myfunc.__proto__ // this gives a object which containes two things --> custom made hidden methods and properties defined by the user + default hidden methods and properties of Function prototype; here myfunc is a function, so it inherits the properties and methods of Function prototype. myfunc.prototype // this gives the default hidden methods and properties of Function prototype; here myfunc is a function, so it inherits the properties and methods of Function prototype. Q3> What will happen if we use y.__proto__ and y.prototype, y is a object declared using new keyord on construction function myfunc? let y = new myfunc(); y.__proto__ // this gives a refernce to the object which containes hidden methods and properties of the function myfunc, since y is an object which inherits from the myfunc.prototype, also it inherits the properties and methods of Object prototype. y.prototype // since y is a object, this gives a undefined. --> What is prototype chain and prototype inheritence in javascript? So basically a datatype/dataStructure in javascript has a prototype which refernces/points to a object(prototype), and this object(prototype) references/points again to another object(prototype), at some point this referencing ends and the object finally points to null. So when does it end? It ends when the last reference is to the Object.prototype, and this object.prototype points to null. So every prototype in javscript eventually points finally to the Object.prototype , This is called Prototype chaining, and using this chaining method we can create a custom prototype inheritance between functions.
@DevilGaming-bl1og
@DevilGaming-bl1og Месяц назад
Bro 🙏
@techtube2404
@techtube2404 3 года назад
awesome explanation. First, I used to read on MDN then refer to any video/blogs/articles for a simpler and short explanation. Now firstly I'll watch your video then refer any other study material. Please never stop making such great videos.
@ashwanikumar183
@ashwanikumar183 4 года назад
I was quite confused by this topic for a long time, you make it simple and great explanation. I would genuinely request you to create the JavaScript Series for all the possible topics.
@canyouvish
@canyouvish 11 месяцев назад
and now we have Namaste Javascript ♥
@sohailmohammed4024
@sohailmohammed4024 7 месяцев назад
Interviewer asked me same question I explained it beautifully and he was surprised on my explanation and I got selected in interview too Thanks to Akshay brother for giving super content
@error04354
@error04354 6 месяцев назад
Hey can explain and advice what is the major and important interviewers are ask the question. What I do for interview
@subhanginimohapatra896
@subhanginimohapatra896 3 месяца назад
which company and for what role
@vikas.gaurav
@vikas.gaurav 3 года назад
I read it many times from MDN but never understood it completely, now it is done😍
@arghyaghosh2515
@arghyaghosh2515 3 года назад
Same bro🤣🤣🤣
@BittuKumar_Web
@BittuKumar_Web 3 года назад
what has to do in place of, object.__proto__= object2. he suggested not to do like this. what has to do in place of this.
@aashishomre1624
@aashishomre1624 2 года назад
use Object.create(object2)
@prateekgautam7398
@prateekgautam7398 5 лет назад
Honestly, Your last mybind example made me understand even more better. That was good. Keep up the good work sir.
@abhijeetyadav1647
@abhijeetyadav1647 5 лет назад
If not the best content out there on prototypal inheritance, it surely bridged the knowledge gap between __proto__ and prototype. Thanks Akshay for the video. keep up the good work. Quick tip: __proto__ is on the object instance, prototype is on the constructor function.
@dhruvthakkar4350
@dhruvthakkar4350 2 года назад
Extremely well explained. I watched from udemy paid course but couldn't understand. but this person explained me perfectly.
@rishavharsh6520
@rishavharsh6520 6 месяцев назад
I am a Namste React subscriber and have completed the complete JS tutorials and I did not find this video over there , in the interview, protypal inheritancewas asked and I could not answer is correctly, so please add this video in the Namste JS section please, so that other will not face this issue.
@adnanahad
@adnanahad 3 года назад
Aap hi ho jo itna deep padhata h aur itne ache se padhata h... Aur sab kuch smj aata h... Practice karne mai b maza aata hai really thankful to you... I love u sir...please make more videos in namaste javascript
@raviaryan6723
@raviaryan6723 4 года назад
first time i watched your video and understand what really is a prototype. Thanks for the wonderful explanation in the coding way.
@adityaagrawal4466
@adityaagrawal4466 Год назад
you know what's more beautiful than functions in javascript, it's your teaching style ❤
@gururajchadaga
@gururajchadaga 2 года назад
This channel's content gives me so much confidence. Thank you so much.
@XYZ-bz8tf
@XYZ-bz8tf 2 года назад
Yesterday I wasted my 3-4 hours on this topic with some videos on RU-vid. However, I did not fully understand the subject, there was always a missing piece. I could implement but this was just usage without understanding fully. Now, in 20 minutes, the subject has become completely clear in my head without any doubt. There is a serious amount of information pollution on the Internet. You really did a great job Akshay. I will be watching all your javascript-related videos for the next 2-3 days. Thank you so much for good and precise information.
@NuhAleph
@NuhAleph 4 года назад
I found my javascript tutor. Thank you, god bless you.
@pranshu_g
@pranshu_g 3 года назад
Can't believe I finally understand this dunderproto thing 💯🔥.. I actually liked your video in between & then continued watching.
@akshaymarch7
@akshaymarch7 3 года назад
Do watch Namaste Javascript web series on the channel, you'll love it brother. ❤️
@mohanrawat5052
@mohanrawat5052 3 года назад
the most beautiful and well organized videos that i have ever encountered to youtube. THanks myan! looking forward when the new videos are coming
@rohitkudalkar92
@rohitkudalkar92 4 года назад
i feel lucky to found your channel. Love ❤️ and Support.
@disenchanted_dove
@disenchanted_dove 5 лет назад
Awesome video Akshay! Just a side note that strings,arrays all get coerced​ into its object equivalent called as wrapper object when we try to access the built in properties. This is the reason why we use the dot(.) Operator to access them.
@abhisheksoni4254
@abhisheksoni4254 Месяц назад
No wonder why Akshay is the best when it comes to JavaScript, I have just watched half of the video, and today my this query "€verything in JS is an object" is resolved. Today I got the real answer. Thank you, Akshay ❤ ☺️
@abs542
@abs542 4 года назад
Very helpful. Easily understood otherwise a highly confusing topic. Keep up the good work.
@aparnaiyer5873
@aparnaiyer5873 3 года назад
WONDERFULLY EXPLAINED ! IT IS RIGHTLY SAID THAT IF YOU CAN NOT EXPLAIN IT SIMPLY ENOUGH THEN YOU DO NOT UNDERSTAND IT... THANK YOU VERY MUCH !
@sindhu1345
@sindhu1345 5 лет назад
Possibly the best explanation so far. Simple and easy to understand, great job man!!
@akshaymarch7
@akshaymarch7 5 лет назад
Big fan of your drawings and comics. 😍
@rishikeshsanjekar1349
@rishikeshsanjekar1349 3 года назад
I've watched many JS tutorial on RU-vid but your explanation is totally different You are JavaScript King 👑
@countmein5164
@countmein5164 2 года назад
Idk wtf I was doing 3 yrs ago but here I am. Learning js from gold contents. Thanks for Namaste JavaScript episodes🎉
@somewhere_in_bharat
@somewhere_in_bharat 3 года назад
Subscribed. Finally found someone who is teaching in a way I want to be taught or I teach someone. Thanks, dude!!
@gopalbharadva1390
@gopalbharadva1390 2 года назад
Akshay your explanation is 1 number, I watched your video of poly fill for bind but don't understand the Function.prototype but now I got it. Thanks akshay bhai.
@anitasunildesai
@anitasunildesai 7 месяцев назад
Such complex concepts taught so beautifully with so much passion. Iam blessed to be your student watching and learning from your videos. No words to thank enough🙏🏼.
@SachinPatel-iw5qi
@SachinPatel-iw5qi 3 года назад
Best explanation i've ever found out on prototype chaining..
@vinitrai5020
@vinitrai5020 5 лет назад
Hey Akshay, wonderful lesson. Thanks a lot for making it so simple.Your videos make JS easy and hence more interesting,as they say ''once you understand you get interested" .I would appreciate if you could come up with a video on DOM Manipulation without using Jquery. I know there are many resources available for this on the web but a video from your end will definitely clear the things in a much much better way.Hope to get a solid foundation video on DOM maipulation with Vanilla Javascript. Thanks in advance. :)
@akshaymarch7
@akshaymarch7 5 лет назад
Thanks for your suggestion, Vinit. That was not in my list, but even I think that would be helpful for a lot of people. Will surely try to cover that in upcoming videos. :)
@vishwasrvishu9267
@vishwasrvishu9267 3 года назад
The most important thing I like in your videos …. You always have that confidence on :-)
@unbiasedperspective3252
@unbiasedperspective3252 2 года назад
the solution of JS problems = Akshay Saini🙏🙏
@milosleng1175
@milosleng1175 3 года назад
good videos bro. I have watched tons of Videos on YT on the topics you presented, but sometimes things do not click on the first time, etc, so I keep coming back to the concepts that cause me issues. I love simplicity of your channel, you really helped me clear some things up! cheers!
@ameyzulkanthiwar9148
@ameyzulkanthiwar9148 5 лет назад
Thank you for explaining in a practical way. It is very helpful.
@dipinkrishnan
@dipinkrishnan 3 года назад
Usual prototype expiation begin with car colour seat etc 🤦🏻‍♂️ and I forget every time ... Most simplest way to explain prototype and js inheritance. Love the way you detail things ..
@armankabir8737
@armankabir8737 2 года назад
Concepts clear within just 20 minutes, in which i was struggling for days. Thanks vaiya. Love from Bangladesh.
@amitsingh-rb6jl
@amitsingh-rb6jl 2 года назад
Much better explanations than all the videos I have watched till now on this topic, liked the video as soon as I got what you were explaining. Now subscribing to your channel for the depth of knowledge you are trying to provide thanks a lot it helped a lot.
@tauseefanwardo
@tauseefanwardo 3 года назад
I was lost and here you are man! Lovely, marvelous, mind boggling, seriously man, you make javascript fun to learn.
@ssvideos-web
@ssvideos-web 3 года назад
Wanted to know what is prototype in JS... searched on youtube and here comes this first video in search, and no need to open other tabs from results... Guaranteed that everything will be covered here. Thank you 🙏🏼 for such great videos.
@akshaymarch7
@akshaymarch7 3 года назад
❤️
@Manish-ee8kx
@Manish-ee8kx 2 года назад
very clear explanation i watched many videos but this video is very understandable.
@mdasadazam6161
@mdasadazam6161 3 года назад
awesome video... cleared all my doubts without having to watch 100s of videos
@kysivaram
@kysivaram 3 года назад
The best explanation on js prototype 👌🏻👌🏻
@parulagg27
@parulagg27 3 года назад
Probably the best explanation so far. I had multiple confusions around this topic previously, but they all got cleared through this. Thank you for making this video 😃🔥
@akshaymarch7
@akshaymarch7 3 года назад
Do watch `Namaste JavaScript` series also, you'll love it. 🔥
@parulagg27
@parulagg27 3 года назад
@@akshaymarch7 for sure. thanks for the suggestion 🙌🏻
@akshaymarch7
@akshaymarch7 3 года назад
@@parulagg27 Here's the RU-vid link for that video series - ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-pN6jk0uUrD8.html
@alpaytripleplay5150
@alpaytripleplay5150 3 года назад
finally an explanation that does not use animal/user constructor functions for examples. using arrays/objects for examples finally helped this topic click better for me
@namankeshari7332
@namankeshari7332 Год назад
Your videos are actually making me understand javascript deeply!
@kodee2
@kodee2 2 года назад
Came to this after being asked what is prototypical inheritance in JS during an interview and not REALLY knowing. Thanks!
@commondev2595
@commondev2595 3 года назад
Your videos are enough to crack most of the JavaScript inteviews
@prernasingh9186
@prernasingh9186 3 года назад
Your explanation is just awsm.....Thankyou...
@zarinamurattalks
@zarinamurattalks Год назад
Thank you Akshay! Your videos are helping me to understand things that I could not understand!
@srinivasnahak3473
@srinivasnahak3473 4 дня назад
Thank you so much for indepth explanation.
@swayambhagwan
@swayambhagwan 3 года назад
You are the best javascript tutor, i am watching all your videos. Great comtent, very helpful 😁
@guyfromdoon
@guyfromdoon 5 лет назад
Finally, all doubts are cleared🔥🔥. Thank you so much sir for such amazing content. Please post more knowledgeable videos like this. BTW i m from Dehradun 🤣🤣
@diwakaryadav4853
@diwakaryadav4853 5 лет назад
i like ur video and ur javascript knowledge is great ...please make more video on javascript.....there are less video on javascript....my concept on prototype inheritance is clear by watching your video
@vikashvikash6346
@vikashvikash6346 9 месяцев назад
Object in JS be like : Aham brahmasmi 😌
@rinkirai
@rinkirai 4 месяца назад
😂
@CricketFanClubvm1wy
@CricketFanClubvm1wy 3 месяца назад
😂😂
@sachikanahashimoto710
@sachikanahashimoto710 Год назад
great concise nd clear explanation.Thankyou so much👍😀
@chandraroy8254
@chandraroy8254 4 года назад
This is Gold! for a Javascript beginner! (at least for mine)....
@deepankarsen4511
@deepankarsen4511 5 лет назад
Akshay bhai aapka samjhane ka tarika bohot gazab hain, thanks... : )
@YashCurious
@YashCurious 2 года назад
Thank you Bhaiya for explaining those terms beautifully, I'm glad that you made the video on it.
@aroundtheglobeSwati
@aroundtheglobeSwati 3 года назад
Namaste JS has brought me here! :) Very informative video.. :)
@fatimaiqra2169
@fatimaiqra2169 4 месяца назад
u explained very well, thanks a lot!
@jayeshbagul3961
@jayeshbagul3961 Год назад
I am new on your channel and js too, but you are not disappointed me, thank you
@arpitaverma9607
@arpitaverma9607 3 года назад
1 million subscribers soon ❤️😍
@adityatiwari1937
@adityatiwari1937 3 года назад
Thank you for putting me in the example.... :)
@SoorajJose1
@SoorajJose1 2 года назад
Finally i got what is Prototype and Prototypal Inheritance, thanks bro
@TheUltimateTrainJourney
@TheUltimateTrainJourney 4 года назад
Wonderful last 13 years working in JavaScript still was confused
@ashirbadbehera5544
@ashirbadbehera5544 4 года назад
THE BEST EXPLANATION....
@evergreen7781
@evergreen7781 2 года назад
You make things so simple. I would love to join Uber, because Akshay is there ❤️
@danielgolden90
@danielgolden90 2 года назад
Bravo. Great, simple, and clear explanation. Thank you.
@Aram64
@Aram64 3 года назад
By far, the best explanation of prototype and __proto__. Thanks.
@SiddhantKulshrestha
@SiddhantKulshrestha Год назад
Bhaisaab , I was so confused in this topic ... Akshay bhai ...Dil se shukriya ..❤
@bw7891
@bw7891 5 лет назад
very good tutorial very useful. thank you Akshay.
@chetanmohol8850
@chetanmohol8850 3 года назад
You are really good in JavaScript.. thanks for this video
@AmanMishra-pn3cq
@AmanMishra-pn3cq 2 года назад
Q. What is Prototype? A. By prototype we can get some hidden property or method . If we are creating some Array, function , Object. For Ex- let obj2 = { name: "Aman", age: 21 } In this if we are going to obj2 methods in console so we can get different methods becz of prototype. Q. What is Prototypal Inheritance? A. Prototypal inheritance is that you can add new properties to prototypes after they are created. For Ex- let obj1 = { name: "Aman", city: "Pune" }; let obj2 = { name: "Alex", }; obj2_proto_ = obj1; console.log(obj2.name+" "+obj2.city); // Alex Pune
@RaviTeja-gq5wm
@RaviTeja-gq5wm 8 месяцев назад
Akshay Explanation is like: So Beautiful, So Elegant Looking Like a Wow. Really great explanation Akshay, its that simple. You have best teaching skills... Super👌👌👌
@shresthsrivastava27
@shresthsrivastava27 3 года назад
WOW ! :-D it's indeed an awesome explanation, got this concept cleared, thanks a lot bro :-)
@DS-zr9gv
@DS-zr9gv 4 года назад
Paused midway just to comment - this is by far the most penetrable vdo on prototype
@ananyajain8528
@ananyajain8528 2 года назад
Thank you Akshay for all the wonderful and easy explaination. I always watch your videos before the interviews. ♥️
@amiturfnd
@amiturfnd 4 года назад
Mast, sab clear ho gaya. Thanks bro.
@mohyak76
@mohyak76 2 года назад
this is the best explanation for me ever. keep up the good work. please do a video about this keyword. thank you
@mustang7ist
@mustang7ist 2 года назад
Wow, your break things down so very well. Thank you for this!!
@prafull3313
@prafull3313 3 года назад
Akshay... I really want to understand why should we modify __proto__ as shown in the video? And what are the valid (or legal) ways to modify __proto__?
@a_maxed_out_handle_of_30_chars
@a_maxed_out_handle_of_30_chars 11 месяцев назад
simple and to the point, thank you :)
@abhishekrawat8579
@abhishekrawat8579 2 года назад
thanks alot sir.... i've learned alot from these kind of videos
@vijaykumar-wq9db
@vijaykumar-wq9db 4 года назад
Great...Thank you...got my concept clear
@shreyansh-mehta
@shreyansh-mehta 2 года назад
Really helpful, javascript students should watch this #javascript
@abrahakahsay
@abrahakahsay 2 года назад
Liked and subscribed! Now, you are on my list for more references. Thanks, man.
@shubhamsonawane967
@shubhamsonawane967 2 года назад
Very helpful thanks for sharing your knowledge.
@ankitpandey349
@ankitpandey349 2 года назад
hatss off to u bro, u make hard concpet so easy to understand, u also made ur map reduce and filter video so much simple and elegant, keep posting more such😇😇😇
@burakdiker2071
@burakdiker2071 Год назад
very clear explanation thank you
@ezhilmarane2694
@ezhilmarane2694 Год назад
ur javascript expert sir
@ayikkathilkarthik4312
@ayikkathilkarthik4312 3 года назад
Thank You so much, I surfed many other videos on same topic. But this one is the best, clears the whole concept. Subscribed the channel. Thank You.
@kishorks5960
@kishorks5960 5 лет назад
We want more videos on JavaScript
@saishree1000
@saishree1000 4 года назад
Thank you dear Friend! super now i cleared with prototype. Can you suggest how to improve logic skills for who coming from designing background people? its most helpful to others.
@zawzawwin2918
@zawzawwin2918 3 года назад
You are great bro! Watching from myanmar
@dequan300
@dequan300 Год назад
Great watch and great explanation of inheritance in js
@rajeshnarra8089
@rajeshnarra8089 Год назад
Simple and clean. Thanks bro
@ranjanrnj6864
@ranjanrnj6864 4 года назад
Thanks a lot Akshay, clear video of what I expected
@SrinubabuRavilla
@SrinubabuRavilla 2 года назад
That's a great explanation Akshay
@akhileshrai7908
@akhileshrai7908 2 года назад
Feels like both of us studied from ‘understanding weird part of JavaScript’ course
Далее
International Tech Meetups - September 2024
2:13:37
Magic of Prototype in javascript | chai aur #javascript
48:08
Local Storage & Session Storage [ with Code Examples ]
14:52
Front-end web development is changing, quickly
3:43
Просмотров 1,1 млн
The Home Server I've Been Wanting
18:14
Просмотров 15 тыс.