OK so in this video we're going to look at why you use Golinger So this is like an introductory presentation
I often give when I'm asked to speak somewhere about go it's like hey why would you choose this language.
And again I think the main reason you know the main thing that really Anyhow we're going to learn about
these things I want to make sure I try to do a preview of each video we're going to learn.
Why go playing and the reasons for choosing Go learn about the companies using go.
And we're going to learn a little bit about some people who are using go and know we're going to kind
of see an example of a Chinese company and their server load and what they are able to do with which
P2P and not be able to do and even know a jack ass then Python I'd be interested to see how they did
handling this Chinese companies servers are doing.
So let's take a look at why go away.
And to get to this presentation close tabs to the right.
I'm going to go to the presentation link right here which I gave you and open up getting started now.
I'm going to open up why while ago.
So here it is.
So go has really great credentials.
And that's that's one of the things which really attracted me.
Well that was the very first thing which attracted me to go is just as amazing credentials Psagot is
created at Google and Google to me is the best software engineering firm in the world.
I feel like they are either the best or at least one of the very best.
And so Google hit a wall and they were able to do things with all of the other languages that are out
there that other languages were leaving them disappointed.
And they said we need a new language and the language they ended up creating Was go.
So that really makes me take now.
That's right like one of the best software engineering firms in the world needed a new language because
currently we just weren't meeting its needs.
So they created this language and then languages go like that's the first thing which really makes me
take note of it.
And then the second thing that really made me take note of the Go programming language was Ken Thompson
Rob Pike and Robert Kretzmer.
And so these are some luminaries in computer science these are like some great genius programmers who
helped contribute to the creation of things like the C programming language Unix and UTF 8.
And so you know these are like some of the most fundamental bedrock things in computer science.
UTF 8 is the most widely used coding scheme in the world.
Unix and C are like just like the fundamentals of computer science.
These guys helped create those things and now they've created something new.
Well that's like the other thing which really made me stop and take note.
So one came out of Google and two is created by Ken Thompson Rob and Robert Kretzmer.
So these two things to me I say go has amazing credentials.
And that's that's the first thing which really made me stop and take notice of this language and really
to me I was like I've got to learn this language right.
When I learned about that.
So what is it about.
Oh which is also there.
If you go to go Layng dot org and then click on documents and then there is frequently ask questions
and then the first question here is what is the purpose of the project.
So I'm going to bring this and so it's a little bit more readable.
It's not quite so long but now you could pause the video right here and he could read this because this
is a really great statement about the language and lets you know what go was what Google was thinking
when he created go.
And so this was video and take a gander at this and he could also click on this link if you want to
read this article this is a great article.
You know go google language design in the service of software engineering.
So fantastic and really details some of the wonderful features about the Go program language so check
those two things out.
Check that out.
Man if that doesn't look like the Matrix I don't know what does.
That's awesome this in digital form right there.
All right so here's just the summary of that information.
Go to super performant.
You're not going to find them or perform programming language except for maybe C but then that's going
to be really hard to program in.
But go is right up there with C and and they're in one of the great things about go is like all the
previous languages system level languages they were written to run on a single core.
Well we have new machines now and these machines have multiple cores and there's no language out there
aside from go right.
At least you know it's starting to register on on on the horizon.
There's no language out there for all reasonable purposes.
That has been written to take advantage of multiple cores natively and well except for go.
So that's the great thing about go.
It knows how to use multiple cores and scale horizontally really well so it knows how to run concurrency
really well really easily and doing concurrency is really easy and go you know except for the fact that
it's concurrency.
But actually executing it to go no problem.
Super easy natively baked into language.
Awesome.
It's a compiled language.
Right.
So it all goes down to binary.
There's no lag virtual machines there's no inter-breeding.
It's binary.
Write a super fast and it's written to run really well in network environments right.
And it's also garbage collected so it manages all of your memory for you and it does it in a really
performant way.
So they've really focused on making awesome garbage collection so you don't have to worry about managing
your memory so much.
And it's got a really clean sense syntax that writes almost like a scripting language and it's got a
really powerful standard library so it's written it's a systems level low level language with a powerful
standard library that lets you do a lot of high level things.
So you know it's pretty awesome and all compile to many different operating systems.
You can be on one machine and compile it to run on a different architecture and it totally works.
So it's backed by Google.
No one of the really strong reasons do you for me to go with go.
And it's also open source that made it open source.
So if you really get into it and you want to contribute to the project you can absolutely do that.
So here's a presentation that Brad Fitzpatrick gave and he gave us that the go for a conference in Tokyo.
But this is just sort of like you know his subjective perspective on how Go is arranged in the ecosystem
of programming languages.
It's fast and fish for computers and it's also fast and fun for humans.
So it's really kind of like you know here's the history of programming right here right.
And then you know a lot of popular kind of other scripting things which aren't as fast on a computer.
So it's really kind of a sweet spot.
And then also with concurrency you know hey it's official and concurrency and it also offers really
beautiful straightforward code right.
Pretty easy to write.
So it sits out there.
So really to me stands apart and these two slides represent my experience with goto that's how I feel
about it.
So again here's one more statement about go from Google Pozza video and read this one.
But also when they released it in 2009.
This is what they said about it in 2012.
They had the standard version or they'd had Version 1 finished and so.
So at that point they're like OK here's version 1 in the guarantee they're not going to break backwards
compatibility.
And so there is version 1 and then in 2015 August they had Version 1.5 in which the standard library
was finished.
So this is like the perfect time to be learning this language.
It's starting to pick up a lot of momentum and and and you're getting it early if you're somewhere near
2015 when you're watching this even if you're like five years out still fantastic time to learn the
language.
You know when you're learning it's the perfect time right.
Here's one more quote from Bill Kennedy which talks about you know a little bit about I thought this
is a nice quote about the Go programming language seeking stop and read that and then here's one more
from Caleb doxies book which kind of has a lot of buzz words for how would you categorize this language
so you could stop the video right here to take a look at that.
So here are some companies who are using go right because why learn the language if nobody's using Google
YouTube Apple.
Right.
Here's the job announcement where they're looking for go to Bolivar's Dropbox and here's an article
that they posted about oping open sourcing their go Library.
All of these companies say you could stop the video and take a look at those docker or excuse me
Firefox.
The Economist Getty Images The New York Times is huge.
Indigo dot uk Roku Mongar D-B IBM G.E. software Intel.
I don't know our space so I see that Twitter Facebook they use it at parks square halo uber Nokia utech
also creating tumblr.
Maybe I'll come back remind medium maladies.
Love that picture.
Khujand China.
And then all these other companies almost kind of pop through.
And this is of course everything is just sort of a sample.
Any of the different companies that are out there using.
And again you can open this presentation.
You now have access to it and you can look through all of it or slowly but I'm sure you're seeing names
you recognize.
It's like whoa.
Who knew.
Right.
And so another thing that really stood out to me about the language is I was kind of looking for a new
server side in which to teach web programming.
So I was thinking about ideas on Ruby node and but you know and then go was in the mix just kind of
like thinking which one should I go with.
And I heard about this article right here and I think you could click this link and I'll take you to
an article you can.
And so this is by T.J. highway jock who is an amazing programmer who lives on Vancouver Island.
I don't know why I'm including that anecdote but because I really like that island and.
And he he was one of the primary contributors to the no jazz code base like one of the primary contributors
and he left Noad forgo and he's not the only one.
Right.
And so here's Felix Felix Ghassan go over and he was also significant tributary to the no G-S good base.
And he also left a note for go.
So for me like the guys who built note left for go that's a great reason not to go to no great reason
to go to go.
And so what other language can you do all this right at Scripps this madman image processing load balancing
service crypto hardware.
And even in beta they're creating libraries to allow you to do Android and iOS app so instead of knowing
a bunch of languages with Java go for Web sites you just need to know one.
So how awesome is that.
So here is the Chinese company that gave an antidote at a conference and you could check this out right
here at the Google blog Coolangatta.
So another great resource to reference and to read about things to go blog and you could just get there
by googling go blog right.
But here this company runs 400 servers 200 million real time connections world and since $10 messages
daily using go.
That's amazing.
So do less enable more.
That's kind of like one of the models go.
And if you are going to start getting job offers from all over the world here's the most recent one
I got from some China a Chinese company.
Pretty awesome.
So the review going is awesome.
Holy crap a lot of great companies already using go.
And should have already learned go a year ago.
At least you're learning it now.
And here are some of the sources which you can reference when you open the presentation for our where
I got this information.
All right so that's a little bit about why.
Why good leg and reasons for choosing go and companies using go and people using go.
I know O.J.'s and a Chinese company's server loads some cool stuff about why you should choose go