and now let's go with go and before moving forward let's see what we are
going to cover. We will see the power of go. we will see if you go for every one
is it good for the machine or is it good for humans but who said that go is better
than who is the creators of go and why go was created but why we need
to learn go what is the unique select point USP of Go if it is so great then
what are the companies using GoLang then we will see what Go have and what not
and we will look upon the Go garbage collector and Go concurrency last but
not the least we will see the recommended books to learn GoLang so
let's first start with the power of Go for any programming language to be powerful
it has to be efficient and has to have straight code a straight code means only
one simple way of writing something so you don't have to brainstorm you don't
have to think about a better way there is only one and that is the best way so
if you have looked upon good things and while we learn Go you have seen this
chart it is saying that JavaScript Python Perl Ruby is neither good for
efficient programming nor have beautiful and straight code but C C++ Java is good
for efficient programming but not has straight code here comes our goal and
GoLang has straight code and it is very efficient for concurrent programming it
is more powerful than closure the sharp and Erlang so that's the power of Go
is it good for everyone a language good for human must have fast and fun while
writing and if it is good for computer it has to be fast and efficient in terms
of execute so this chart is saying that C C++ is
good for computer but it's not good for human it is not fast and fun for human
but Ruby Python poll is yeah good for humans but not good for computers
here comes GoLang which is yes good for humans it is fast and fun for writing
GoLang and simultaneously it is fast and efficient for computers it is more
powerful than Java so that is the power of GoLang but who is saying that GoLang
is better than NodeJs obviously the creators of node.js they
left NodeJs just because of GoLang here is TJ hallo
uture he has written a medium blogpost on that he's saying that I'm leaving
node.js because of Go so the title of his blog post on medium is farewell
node.js you will find the link of that medium blog post in the description then
comes Ryan down Randall is the creator of node.js and in an interview he said
that I think note is not the best system to build a massive server web I would
use go for that and honestly that's the reason why I left node the creator of
node left node it was the realization that oh actually this is not the best
server-side system ever so think about this a language dragging another
language creators so what you want from a language like GU let's see who created
this golang obviously it is not a task of normal person normal humans the
koulang is created by these three legends why I am calling them legends
let's see so Rob Pike Rob Pike was the member of UNIX team he's the creator of
limbo programming language he's involved in utf-8 then comes Ken Thompson he is
the Cree of uniques he's the creator of utf-8
coding scheme he is the creator of B programming language which is the
procedure of C programming language he was the director of Professor of C
language actually ken Thompson and Rob Pike was fellow on Bell Laboratories
then comes Robert Crissman he is the creator of JavaScript v8 engine on which
node.js runs and he is the creator of hotspot JVM Java Virtual Machine he is a
creator of Sajal programming language so think about this these three legends who
has written the foundation of programming by creating these things
they had created the foundation of programming and they are coming up with
another language so it's not a yet another programming language it's
another great programming language then why go was created yeah why these
legends has created goo initially on 2006 when the first dual-core processor
was released Google was facing problem with scalability none of that language
the so called great languages like C C++ C Java Python Java
none of these language meet that requirement are capable of handling that
scalable system of the server's so that's why on 2007 these three rock bike
can Thompson and Robert Crissman conceived and created gulang on 2007
after two years on 2009 it was released at open source language and on 2012 its
first major version was released which was goo 1.0 so that's why Gulin was
created but what is the unique selling point of go why we need to learn go
because go is the highest paying language on 2019 according to
overflow so that is very nice and it is rapidly growing in the world many big
giant companies are accepting goo for their huge huge infrastructures also goo
is a general-purpose language you can do almost anything with go you can do web
development you can use it in machine learning you can use it for creating
command line tool you can use it to handle the server and whatnot I consider
goo as the future language so language of future but who is using goo so let's
talk about uber is using go for its micro services the Netflix is using goo
for handling heavy data processing and that is actually for recommending great
shows TV series for different users also Adobe is using it for server handling so
these three are using it for different different purposes but not just these
three language Firefox Apple docker which is fully written in a goal on
YouTube which is now fully converted into goal and docker
every company is now accepting go there are lots and lots of companies which are
using golang so growing is actually different language it is not yet another
language it is not it just like other languages so what is the difference in
goo what good doesn't have who doesn't have header file it doesn't have
exception neither inheritance nor constructor it doesn't have wide classes
a notation template array Mac nothing if goal doesn't have all these things
why go is so famous because go is extremely easy it is so easy that people
are not accepting its easiness its easiness is people's difficulty so it is
difficult because it is extremely easy think about this dot this dot is just
simple ting in this slide but you will point
out that why this dot is here there has to be some purpose there has to be some
complexity no gulang doesn't have complexity for you so this is why every
company is accepting go and we should also so if good doesn't have lots of
things what it has so gue have readability and concurrency to achieve
concurrency Co has go routines yeah it is statically typed and it has its own
garbage collection which is evolving with every release and because of that
go is extremely fast you can build a go program on Mac OS and you can run it on
Windows that means go is cross-platform yes go has lots and lots of packages
they are ready to use just plug and play and your task is done let's talk about
the concurrency in go but what is concurrency so concurrency is executing
more than one tasks simultaneously and making progress is called concurrency it
is like dealing and managing lots of things at once so go has go routine to
achieve this concurrency if we have a simple function where we have simple
loop of one to ten printing their number then we are calling this function inside
this main function so Rob I said that to achieve concurrency go has just three to
three Stoke of your keyboard geo and space so to create any function
concurrent function you just need to have guell written before that function
so Gon space three keystroke and your task is done the simplest achievement of
concurrency in any programming language so that's why goo is extremely useful
for creating concurrent programming and concurrency is not parallelism actually
parallelism is doing lots of things at once but
concurrent programming enables parallelism to achieve parallelism yeah
you can use the concurrency so this is the very very useful thing of guellen--
but vana one another useful thing is garbage collector so what is garbage
collector go has its own garbage collector which is used to allocate and
remove object process happens in a concurrent wave while a go program is
running so if you are running a program the program is in running state you have
some variable and that variable is not useful in the later stage so this go
garbage collector on the fly remove that function or that non useful variable
from the memory and it free upset that's why go is extremely good for memory
management and what is the benefit of go garbage collector you can easily develop
low latency applications with use of golang so with that let's talk about
some great tools given in gulang so golang has go FM T which is used to
refactor your code for better syntax readability so just see if you can have
a unformatted good click on format' yep your code is now formatted on-the-fly
also go has go fix so goo fix is a new tool that if introduced it is used to
reduce the amount of effort it takes to update the existing code suppose you
have some code written in go 1.0 and syntax or api of go change with 1.5 then
how will you convert your go 1.0 code into new api of goo 1.5 it just for
example so a tickle look on this code this is having a case reflect dot array
or slice value but just by using go fix you can convert that code into new API
of golang which is reflected away comma reflect dot slice and this can be
achieved with just one click with the use of go fix so a goal language is
having so great tools which is not just reducing your time which is also
managing your code so that's why GU is awesome but let's not talk about last
but not the least go books what are the books you need to read to learn golem to
learn golang you need to firstly get the go programming language written by Alan
a Don Owen and brand W Karen gun you can use this Amazon link to get this book on
your home and not this book you also have a great another book which is
called get programming with go it is written by Nathan
young man and Roger pepper and the third grade book is introducing go which is
from or relay written by Cal abducts see and all these books name and links you
will find in the description along with some other books for learning : so I
hope you got the point that Vigo is so great and why we need to learn it so
let's start the journey of gulang and we will see how we can learn this great
language with ease we will meet in the next episode till then good bye