Been programming for 30 years and you have a special gift. You are not only smart, but are able to articulate your thoughts. In my experience, engineers struggle with one or the other. Most don't share the gift of both at your level. Keep shining your light Tim. We hear you.
I'm almost 50 yrs old and I'm impressed how listening to you makes things so easy - I've never had so much fun with any programming language before. Thank you very much! Keep the good work! Cheers! Bye!
I've looked in many other places to try to understand interfaces. They are always like, this is how you make one, this is how you use one, okay next lesson. This is the first place that actually explained it. Thanks, I'm going to pick up from here following your tutorials instead.
Tim, thanks for such a great explanation of Go Interfaces! I searched through several videos & articles, and your style of explaining it finally make it clear!!
After almost 30 years of OOP languages with classes and objects, they managed to make interfaces in a way that's beats everything else in ugliness. That needs balls.
Great tutorial series on Golang. I saw many of your videos while reading the Tour of Go, and few things became clearer on watching these videos. Next is to go for Effective Go. Only thing which I missed in your series is the coverage of Concurrency. Perhaps, if you come back to visit this topic some day in future.
Your tutorials are wonderful, however I want to point to an issue I see with many tutorials and teaching programs, the naming of variables are too general sometimes so it makes it difficult understanding the connections between parts. For example there is an interface named shape and then we name shape as the variable a function receives and then we create a shapes slice and then we do "for _, shape := " so this makes it difficult to understand which ones are connected and not. When studying I tent to create random local names for variables such as "for _, shapeasdf :=" and this helps me focus more.
3:11: "the point of interface is that any type/struct that implements the method defined in the interface is considered of that interface" me: wait, you mean any struct that implements the interface must implement the methods defined in the interface right? just like in java or c#? *sees the syntax* me: WTF
I still don't fully get the point of interfaces. Why would I want to create an interface if I already added the area() method to the rect and circle structs?
You would create an interface so that you can treats all objects that implement the interface like the an instance of the same struct. For example, your function can only take an object of type circle or square if you don’t use an interface. By having an interface you can take a “shape” which means the square and the circle get treated the same, so long as they implement the interface. So you have access to the same method names on each object. Hope that helps!
I understood the pointer concept and the use of pointer in normal variables and in methods , but I didn't understand the use of pointer in this interface. Can you please explain that why we want to pass the adress while using interface
Thank you for the great video, but one crucial remark, in Go structs are not objects and cannot be referred to as objects they are like an envelope of defined data. Thank you
Did you stop going to go with go? Access mod*** I mean naming, asynchronous stuff with e.g. goroutines, and project structure, file structure, conventions and so on is missing, would love to see more. :)
Hi, Tim, I have been following your channel for a time now, I am a 13-Year-Old and wanted to know that how do you practice python because I still come across code that is written programmatically also which framework do you use for app development?
This example for "interface{}" is overused in most videos and articles with the same variable, function, and struct names. Is it a copy & paste as well or what?
Hii Sir, I have learnt progamming in golang, How to start development side learning in go for building microservices, Rest . Can you please guide me any course or content
I can think of multiple issues this way we don't know what func got what interfaces thou as func doesn't implement it (for example like extending an interface in java)
1. It'd help to organize before making the video (stop repeating yourself), 2. references are not the same as pointers. One last thing: the pointer has that C-stigma thing. Unless necessary, don't bring it up. Modern languages don't need to talk pointers all the time.
Been programming for 30 years and you have a special gift. You are not only smart, but are able to articulate your thoughts. In my experience, engineers struggle with one or the other. Most don't share the gift of both at your level. Keep shining your light Tim. We hear you.
agree
It's amazing the way you back-linked concepts to your previous videos on structs & struct methods which are great. A really smart way of execution!
tim i am waiting to see you post things about projects with golang because you are the best man, your tutorials are incredibles
I'm almost 50 yrs old and I'm impressed how listening to you makes things so easy - I've never had so much fun with any programming language before. Thank you very much! Keep the good work! Cheers! Bye!
That was the simplest explanation of interfaces I have seen so far. Kudos for showing examples of usage.
Probably the best explanation of Interfaces on internet, exactly what I was looking for. Kudos Tim and thanks a ton :)
I come from JS and wow I finally understand interfaces! I will enjoy the rest of my day.
Hey Tim I was wondering if you could do a video on projects you can do with golang
To be honest, basically anything.
Project : Let's cal the area of any circle you want
@TechWithTim I must say that "You're one of the best teachers, makes me understand everything with less effort"
Man you not only look so handsome but also make good explanations on this go interface.
I've looked in many other places to try to understand interfaces. They are always like, this is how you make one, this is how you use one, okay next lesson. This is the first place that actually explained it. Thanks, I'm going to pick up from here following your tutorials instead.
When next video? Goroutines, channels and some other things are still left
Tim, thanks for such a great explanation of Go Interfaces! I searched through several videos & articles, and your style of explaining it finally make it clear!!
Great example, this tutorial the best one I found about interface on internet. thanks.
Nice, this series was wonderful, I hope you continue this topic :)
Great series bro. I used it to remember the syntax but now I realized I want to give Rust a try. lol You are a great teacher/presenter, keep it going!
Excellent Golang tutorial for beginners. Thanks Tim.
Thank you, this is what i was looking for.
Thanks for demystifying interfaces. Hope for more Go tutorials from you!
You have a great teaching style... getting to the point while giving examples 👍
After almost 30 years of OOP languages with classes and objects, they managed to make interfaces in a way that's beats everything else in ugliness. That needs balls.
It does look bad.
Go is simply just a poor and ugly language.
Go is not an OOP language and isn't meant to be used as one.
This cleared a lot up for me thank you so much!
Sup 4 hour ago guy!
Great tutorial series on Golang. I saw many of your videos while reading the Tour of Go, and few things became clearer on watching these videos. Next is to go for Effective Go. Only thing which I missed in your series is the coverage of Concurrency. Perhaps, if you come back to visit this topic some day in future.
Thank Tim, I know more about go lang programming, it's useful
looking forward to the rest of the series!
Hello Tim, Nice tutorial and very helpful. For meet with golang in basic level, I think this tutorial is perfect.
Great explanation, thank you for this!
thank you so much for golang series and making free😊👍
Hey, Tim, are you thinking of continuing the playlist?
Thank you so much, really appreciate this
Your way of teaching is amazing. Waiting for concurrency concepts tutorials.
Your tutorials are wonderful, however I want to point to an issue I see with many tutorials and teaching programs, the naming of variables are too general sometimes so it makes it difficult understanding the connections between parts. For example there is an interface named shape and then we name shape as the variable a function receives and then we create a shapes slice and then we do "for _, shape := " so this makes it difficult to understand which ones are connected and not. When studying I tent to create random local names for variables such as "for _, shapeasdf :=" and this helps me focus more.
Great tutorial!!! Thanks!
FYI: it helps during the pointer vs. non-pointer examples to run this in main to kinda show the difference: fmt.Printf("fooShapes: %v
", fooShapes)
Great explanation - thanks!
Loved it. Thanks!
Please post videos on concurrency, go routines and channels, you really explain very well.
Good video, Tim; impressed
Will there be goroutines and channels?
Very edifying. Thank you :)
3:11: "the point of interface is that any type/struct that implements the method defined in the interface is considered of that interface"
me: wait, you mean any struct that implements the interface must implement the methods defined in the interface right? just like in java or c#?
*sees the syntax*
me: WTF
Well explained, thanks , you owned my vote & subscribe cheers !
Great video! Thanks
bro great video and explanation
Thank you so much. it helped me a lot
Hope this series can be follow up ~
Yeah Tech With Tim is the best
I still don't fully get the point of interfaces.
Why would I want to create an interface if I already added the area() method to the rect and circle structs?
You would create an interface so that you can treats all objects that implement the interface like the an instance of the same struct. For example, your function can only take an object of type circle or square if you don’t use an interface. By having an interface you can take a “shape” which means the square and the circle get treated the same, so long as they implement the interface. So you have access to the same method names on each object. Hope that helps!
rect area :D jokes apart you are an amazing teacher.
Thanks for the info
I understood the pointer concept and the use of pointer in normal variables and in methods , but I didn't understand the use of pointer in this interface. Can you please explain that why we want to pass the adress while using interface
Thank you for the great video, but one crucial remark, in Go structs are not objects and cannot be referred to as objects they are like an envelope of defined data. Thank you
When will we see more golang videos @Tech With Tim?
We are waiting eagerly for more videos.
Great video! It feels like GoLang's interface is a convenient form of abstraction? It feels similar to defining a new class in python.
Now how does generics alter this?
"JavaScript doesn't need/have interfaces"
*Typescript enters in the room*
Great tutorial Tim.. Really liked the way you explain.. Can we more advanced tutorial on golang?
Rest / grpc API in golang... Thanks
Did you stop going to go with go?
Access mod*** I mean naming,
asynchronous stuff with e.g. goroutines,
and project structure, file structure, conventions and so on is missing, would love to see more. :)
Hi, Tim, I have been following your channel for a time now, I am a 13-Year-Old and wanted to know that how do you practice python because I still come across code that is written programmatically also which framework do you use for app development?
Kivy is generally what he uses with python app development or otherwise like Java based android programing
Kivy is used to make mobile apps with Python. If you want to build a web app, you can use something like Django, Flask or Fast API
Good one!
I completed Tutorials videos :). Then What to do Where do I implement this.
How to implement into projects
This example for "interface{}" is overused in most videos and articles with the same variable, function, and struct names. Is it a copy & paste as well or what?
You should at least demonstrate the flipside that "interface{}", as it is the base type of any datatype in Golang.
Hi Tim, You are the best man, I love your explanation. keep going.
Finally I found, what is the reason for using interface..
What about empty interfaces?
Thank you for the lesson! I do wish implementing interfaces was more explicit in Go
can you please make videos on golang rest api's and advance golang stuff like channels, go routines
where to download this code?
Hii Sir, I have learnt progamming in golang, How to start development side learning in go for building microservices, Rest . Can you please guide me any course or content
thank you
Leave it to Tim to take you from zero to programming a chip-8 emulator in a day
Amazing!!!
could you please continue?
thanks
I can think of multiple issues this way we don't know what func got what interfaces thou
as func doesn't implement it (for example like extending an interface in java)
do u start golang pro course ?
is this last video ?
Please make a gui-toutorial.
very nice explanation.
You should do udemy courses. You have a knack for teaching.
This is great but you didn't cover scopes.
sheldon cooper?
👍
Please create open ai gym tutorial next time
1. It'd help to organize before making the video (stop repeating yourself), 2. references are not the same as pointers. One last thing: the pointer has that C-stigma thing. Unless necessary, don't bring it up. Modern languages don't need to talk pointers all the time.
2nd