![Kantan Coding](/img/default-banner.jpg)
- Видео 122
- Просмотров 1 522 886
Kantan Coding
США
Добавлен 5 янв 2021
Go Programming (Golang), Algorithms & Data Structures, Software Architecture & Design, Codivation, Advice...
Sometimes I use languages other than Go but Go is my favorite.
Join the Discord to talk to me and the rest of the community!
discord.gg/NU39rvkUXa
For business inquiries: kantancoding@gmail.com
Sometimes I use languages other than Go but Go is my favorite.
Join the Discord to talk to me and the rest of the community!
discord.gg/NU39rvkUXa
For business inquiries: kantancoding@gmail.com
3 Coding Techniques To God-Tier Developer
These 3 coding techniques will change your life.
Просмотров: 676
Видео
The 3 Laws of Writing Bug Free Code
Просмотров 34 тыс.14 дней назад
These laws will bring you one step closer to the impossible task of writing bug free code. Don't be the guy that breaks prod...
The 3 Laws of Writing Readable Code
Просмотров 290 тыс.21 день назад
Is your code readable? Or is it difficult to understand? Following these three laws will help you to become the guy that every Engineer wants to be on the same team with because code reviews become so easy! 🌟 Hey devs! 🌟 Ready to level up your coding game? Check out this awesome course on Microservices using Go! 🚀 From beginner to pro, learn to build scalable apps with ease. Don't miss out! Enr...
Master Golang with Polymorphism
Просмотров 2,2 тыс.Месяц назад
In this video you will learn how Polymorphism works in golang 🌟 Hey devs! 🌟 Ready to level up your coding game? Check out this awesome course on Microservices using Go! 🚀 From beginner to pro, learn to build scalable apps with ease. Don't miss out! Enroll now: 👉 kantan-coding.teachable.com/p/early-bird-special-pricing #golanguage #Microservices #CodeWithConfidence 🔥🎉
Master Golang with Composition
Просмотров 2,8 тыс.Месяц назад
In this video we go over composition and its usages. 🌟 Hey devs! 🌟 Ready to level up your coding game? Check out this awesome course on Microservices using Go! 🚀 From beginner to pro, learn to build scalable apps with ease. Don't miss out! Enroll now: 👉 kantan-coding.teachable.com/p/early-bird-special-pricing #golanguage #Microservices #CodeWithConfidence 🔥🎉 Master Golang with Interfaces: rucli...
Master Golang with Abstraction
Просмотров 2,5 тыс.Месяц назад
In this video, I explain abstraction and its benefits in the go programming language. 🌟 Hey devs! 🌟 Ready to level up your coding game? Check out this awesome course on Microservices using Go! 🚀 From beginner to pro, learn to build scalable apps with ease. Don't miss out! Enroll now: 👉 kantan-coding.teachable.com/p/early-bird-special-pricing #golanguage #Microservices #CodeWithConfidence 🔥🎉 Cod...
Master Golang with Interfaces
Просмотров 7 тыс.2 месяца назад
In this video, I explain golang interfaces in a simply and easy to understand manner. 🌟 Hey devs! 🌟 Ready to level up your coding game? Check out this awesome course on Microservices using Go! 🚀 From beginner to pro, learn to build scalable apps with ease. Don't miss out! Enroll now: 👉 kantan-coding.teachable.com/p/early-bird-special-pricing #golanguage #Microservices #CodeWithConfidence 🔥🎉 Cod...
Merge Interval Algorithm In 4 Minutes
Просмотров 1,7 тыс.3 месяца назад
In this video we go over the merge intervals pattern. A pattern that can solve many common coding interview problems. This series: ruclips.net/p/PL7g1jYj15RUOjoeZAJsWjwV8XUo9r0hwc&si=WPhq8XyUQwloSSxj
Avoid golang interviews unless you know these 3 things
Просмотров 2,5 тыс.3 месяца назад
golang, go programming language, go interview things to know 🌟 Hey devs! 🌟 Ready to level up your coding game? Check out this awesome course on Microservices using Go! 🚀 From beginner to pro, learn to build scalable apps with ease. Don't miss out! Enroll now: 👉 kantan-coding.teachable.com/p/early-bird-special-pricing #golanguage #Microservices #CodeWithConfidence 🔥🎉 RUclips Go Concurrency Playl...
golang context package explained: the package that changed concurrency forever
Просмотров 9 тыс.3 месяца назад
In this video we go over a visualization of how the context package works in golang. 🌟 Hey devs! 🌟 Ready to level up your coding game? Check out this awesome course on Microservices using Go! 🚀 From beginner to pro, learn to build scalable apps with ease. Don't miss out! Enroll now: 👉 kantan-coding.teachable.com/p/early-bird-special-pricing #golanguage #Microservices #CodeWithConfidence 🔥🎉 ► Jo...
learn the Go concurrency pattern that blew my mind
Просмотров 4,1 тыс.3 месяца назад
Golang, Go Programming concurrency patterns continued 🌟 Hey devs! 🌟 Ready to level up your coding game? Check out this awesome course on Microservices using Go! 🚀 From beginner to pro, learn to build scalable apps with ease. Don't miss out! Enroll now: 👉 kantan-coding.teachable.com/p/early-bird-special-pricing #golanguage #Microservices #CodeWithConfidence 🔥🎉 Join the Discord to talk to me and ...
Master Go Programming With These Concurrency Patterns | Part 2 (in 40 minutes)
Просмотров 11 тыс.8 месяцев назад
🌟 Hey devs! 🌟 Ready to level up your coding game? Check out this awesome course on Microservices using Go! 🚀 From beginner to pro, learn to build scalable apps with ease. Don't miss out! Enroll now: 👉 kantan-coding.teachable.com/p/early-bird-special-pricing #golanguage #Microservices #CodeWithConfidence 🔥🎉 Go Programming Concurrency Patterns, Generators, Pipelines, Fan Out Fan In In this video,...
Improve Go Concurrency Performance With This Pattern
Просмотров 11 тыс.9 месяцев назад
🌟 Hey devs! 🌟 Ready to level up your coding game? Check out this awesome course on Microservices using Go! 🚀 From beginner to pro, learn to build scalable apps with ease. Don't miss out! Enroll now: 👉 kantan-coding.teachable.com/p/early-bird-special-pricing #golanguage #Microservices #CodeWithConfidence 🔥🎉 More advanced concurrency patterns and concepts in the Go Programming language! Pointers:...
DevOps Using Go: GitHub & Jenkins Pipeline Integration
Просмотров 1,7 тыс.9 месяцев назад
In this video we will configure the integration between github and jenkins so that jenkins pipelines can be triggered by pull requests made on github. We will also configure checks so that if the jenkins pipeline fails, pull requests will be blocked from being merged on github. 🌟 Hey devs! 🌟 Ready to level up your coding game? Check out this awesome course on Microservices using Go! 🚀 From begi...
DevOps Using Go: ssh & Jenkins on AWS
Просмотров 5249 месяцев назад
In this video we remotely connect to our server using ssh and install Jenkins. 🌟 Hey devs! 🌟 Ready to level up your coding game? Check out this awesome course on Microservices using Go! 🚀 From beginner to pro, learn to build scalable apps with ease. Don't miss out! Enroll now: 👉 kantan-coding.teachable.com/p/early-bird-special-pricing #golanguage #Microservices #CodeWithConfidence 🔥🎉 Join the D...
DevOps Using Go: Continuous Integration (CI)
Просмотров 7679 месяцев назад
DevOps Using Go: Continuous Integration (CI)
DevOps Using Go: Infrastructure as Code & AWS Resources
Просмотров 1,3 тыс.9 месяцев назад
DevOps Using Go: Infrastructure as Code & AWS Resources
A Day With a Software Engineer | Work from Japan's Ryokan Hotel
Просмотров 1,7 тыс.9 месяцев назад
A Day With a Software Engineer | Work from Japan's Ryokan Hotel
DevOps Using Go: Git & Version Control Basics
Просмотров 1 тыс.9 месяцев назад
DevOps Using Go: Git & Version Control Basics
DevOps Using Go: Install Go & Configure VS Code
Просмотров 8989 месяцев назад
DevOps Using Go: Install Go & Configure VS Code
DevOps Using Go: The most bare bones Go API
Просмотров 1,3 тыс.9 месяцев назад
DevOps Using Go: The most bare bones Go API
Learn golang pointers in 179.001 seconds
Просмотров 3,5 тыс.9 месяцев назад
Learn golang pointers in 179.001 seconds
Learn Go Concurrency in 9.5 minutes
Просмотров 1,5 тыс.10 месяцев назад
Learn Go Concurrency in 9.5 minutes
Go Programming - Generics in 2.8 Minutes!
Просмотров 3,1 тыс.10 месяцев назад
Go Programming - Generics in 2.8 Minutes!
DevOps & CI/CD Explained in 10 Minutes
Просмотров 2,6 тыс.10 месяцев назад
DevOps & CI/CD Explained in 10 Minutes
these videos are so good. already knew it but damn. i wish i was a noob watching these
0:04 1. fmtr should be allocated after check for empty string, because it is a rudimentary allocation if empty is true; 2. it is not necessary to allocate validator to check string length; 3. there should be check for error before return from db.fetchData or for empty return; 4. formattedName is unnecessary allocation, since fmtr.formatName call can be passed within db.fetchData call.
0:30 the behavior of called functions should not change, as you first complete utility functions and then utilize them. The caller should know specification and it be concrete. Otherwise it is an infinite monkey problem.
0:55 compiled program should either check for dependency, or dependencies should be baked into the program.
1:58 you still need to allocate those dependencies somewhere in the code. So db variable will still be present. And since the type of parameter is concrete/known and not any, it is not so much of an injection, but rather swapping the value. If you mean an interface, then yes, we can talk about dependencies. But then the concrete type underlying interface should conform to interface specification.
3:10 where is atomicity? Function should either format or save to the database.
3:53 ehm, let's make first function in the video non-deterministic and second deterministic?
Your style of editing is so good...
some people write code that only them can read... and they don't care and keep doing because in the event boss is thinking in firing you or hiring another dev he will be the one that know how to maintain it making him more valuable.
Kantan, didn't you make the same video last 2 weeks?
Yes.
Actually, it is different...
woow i love this kind of coding video !! what do you use for the filmmaking of the code part ?
2:48 ok i have to disagree with the extraction approach there, you are just trading readability for more abstraction which is even worse, i believe a priece of code should only be extracted into its own thing if its would be used in several places, many times, not this one piece, that likely only happens there
This is probably the most useful information for me as someone who has just started to learn Python. I was taught a little bit of programming by my father in the 80s (DOS Basic, and then later GFA Basic and Laser C when we got an Atari ST), but unfortunately I never got very far. In the late 90s I started working for a large PC manufacturer and ended up in database management, but I was relying mostly on visual editors and editing existing SQL. I did write quite a lot of Access and Excel VBA (and some VBscript for outlook forms), and I was playing around with Visual Basic at home. But without knowing about things like style guides, good coding practices and basic algorithms, everything that I wrote ended up as a giant, deeply nested hairball that no-one else would have been able to decypher! 😂
Sorry that's a no a Go fir me. Roger that?
Usually it's better to sacrifice performance for readibility. This is where CS programs set up their students for failure when they get to the real world. The thing you really need to optimize for is Mental RAM. Engineering time is expensive. Writting code that's easy to understand and refactor and is tested will save engineering time in the long run.
*So...:* - Try to not nest. - Function spam. - bool UseElementNamesThatAnyLaymanCanDecipherInOrderToKeepYourCodeReadable = True
Great video helped me understand the concept, thanks much ❤
+
thanks!
1. KISS, avoid nested code. 2. DRY, have a single source of truth / point of failure. 3. WHY, use names and comments to describe why the code is there.
One other thing you can do is maintain objects so you can use the 'if' statements wherever you want, to check for the current status of the block of code you are running. Sometimes it won't work but most of the times it will work.
I call it "The indian arrow." Once our externist (guess from where) gave us a 10x (I kid you not) nested code. Truly amazing.
Unit tests help void somethibg liek segfaults. However in my experience (embedded) there are far more functional bugs that sometimes only get noticed in field tests.
best explanations on go concurrency i found on RUclips
The first two laws of code reduction. Third law is give meaning full descriptions to your variables.
❤❤❤
very nice and simple explanation on channels..
10 seconds in, already parroting propaganda. Experienced dev don't have issues "reasonning" over such code, inexperienced devs do. Train yourself to read code or your career will be miserable.
There are a few critical bits: First, this is on the Go Programming language. Any other programming language probably works different, I can at least confirm that for a couple. Second, the rules of the presented programming language behaviour are still unclear/dubious. Better practice is making a class giftcard with an attribute int amount and a function deposit(int). And after all, any hardware-near implementation of the closure will expose this fact, because you need a function pointer (as depicted) with a state (as is what a class object with attribute instantiation is).
What font do you use in your code examples? It's beautiful.
Very useful
In my Software class, we learned the following principles: Don’t repeat yourself (DRY) Comment where needed Fail fast (code should reveal its bugs as early as possible) Avoid magic numbers One purpose for each variable Use good names Use whitespace and punctuation to help the reader Don’t use global variables Functions should return results, not print them Avoid special-case code I think this video summarizes many of them!
Great brief explanation. As someone once said, bad coders know what to write, whereas good coders know what not to write.
Back here to refresh and strengthen foundational knowledge. Thank you for putting these together!
So far, your explanation is the best one 👍🏻 Now I understand how to implement Interface for Polymorphism 🎉 thanks mate !
I appreciate the effort you put into this video. On behalf of all noobs, I want to thank you for the complete explanation you have provided. GO is an interesting departure from c++. Some packages need some time to digest. This is a fantastic video. You should have more subscribers, like me, who are happy to have found this channel.
Beautifully animated video, great explanation and delivery, thank you!
yeah and on the extraction rule of thumb: 3 to 5 actions, which produce 1 action when combined. e.g. function is "cook potatoes" actions would be "peel potatoes", "chop them", "choose a way to cook them", "cook them the way you chosen to". if you can split an action into more or equal amount of actions you should do so. e.g. ",cook potatoes the way you chosen to" can split into "get the chosen cooking method", "prepare for cooking" and "do the cooking". you can split actions into more actions into more actions. they only need to result in one concrete thing and be semantically similar. like e.g. when we cook we will do things related to cooking. we will not focus on arbitrary actions like "take the knife in your hand" if it isnt obvious how we will relate that action in the context of splitting another one ("take the knife in your hand" and "make a chicken stock" arent obviously related, imagine if we dont have to chop anything why did we take the knife then?)
why 3 to 5 becsuse human brain ram is approx 5-9 statements depending on the person so youre always within your brain's 1 stack frame (maybe even 3 if youre lucky). thats easier to reason about what
ive had cases where second law doesnt apply. like when same methods are in different modules, they both are depended on, need to be incapsulated strictly in their modules and moving them around requires moving a large chunk of code along with them potentially breaking everything and bringing a disaster upon oneself often called "integration hell". yeh that sucks a bit but hey if i just copy my code once you have to read it only once, i dont break anything and its okay
So helpful
1) Modular and maintable code (use functions) 2) write Unit tests 3) Write regression Test
NASA programming follows all of these (and then some), mostly to avoid stack-heap-collisions and use less memory+energy.
i agree 100 % but i have also worked two projects where "integration test" was the unit tests, and that ... was a flipping nightmare.
Law #4: never right negative properties. The name of your property should be something such that knowing what the default is is very obvious and straightforward. If you find you are putting the word not in your property names then you have it backwards. Example: DontProcessX. In this example in order to process x you would need to pass false. You're much better off with a property called ProcessX
Law #4: never right negative properties. The name of your property should be something such that knowing what the default is is very obvious and straightforward. If you find you are putting the word not in your property names then you have it backwards. Example: DontProcessX. In this example in order to process x you would need to pass false. You're much better off with a property called ProcessX
OMG. I love how your refactoring of code actually changes the logic and you somehow breeze right over that as if that's not kind of important??!! I think I need to make a video about rookie developers doing RUclips videos. 🤣😂🤣😂
I've had to work behind senior programmers who like to use single letter names for pretty much everything. They get good evaluations and promotions because of how fast they can code this way. No fun trying to understand what they did though.
that's 100% true , consistency is key
I fully disagree with 2:46 because if you have a bug or the code needs to change, the developer who reads the code will be like "what does is valid user mean?" then he needs to open that function, read it and keep it in his mind, if that function exists of other functions, he needs to do the same... this is kinda the same problem as too many indentations, but worse, it just looks neat, but it's totally impractical
STOP TURNING YOUR SIMPLE COMPARISONS INTO FUNCTIONS A simple comparison is much more obvious and clear to read than a random function call
is that htop showing processes in the monitor in background.
So, i'd disagree with the extraction bit. It might be easy to skim code when you do this, but it actuslly degrades from the READability. Most programs I've seen have everything as a small little function instead of just writing it where it's needed. When looking through people's source, it's difficult to scroll to the function and back and scroll to the function and back... Though, I do use this for more mathematical functions and, of course, when I have code that is duplicated
Good advice!! I would summarize the video at the end just like the thumbnail, learning is based on repetition after all :D