Use the controls above to listen to the episode or subscribe on iTunes | Stitcher Radio | Google Play | RSS

 

 

Aaron Schlesinger discusses the past, present and future of the Go programming language and why it is coming to take over the world.

Aaron Schlesinger is a Sr. Software Engineer at EngineYard where he’s a core contributor to the Deis project. Being a Go developer for the past 2+ years, he has distilled his knowledge of the language into the Go In 5 Minutes screencast as well as speaking at various conferences and events about Go.

 

Sponsors

 

Key Takeaways

  • Deis project is a PaaS open source, runs on top of Kubernetes.
  • Kubernetes started by Google for cluster management.
  • Google create Go programming language to solve their own problems.
    • While waiting for a build, they imagined a language simpler and faster, more pleasant to use.
    • Interfaces look like interfaces in Java & abstract classes in C++.
    • Tool chain is powerful that other stacks.
    • Wweb frameworks limited but there.
    • Start a Go project in a greenfield situation such as a command line interface or systems command.
  • Go is growing in its usage.
    • Docker is almost all Go, daemon, CLI
    • Kubernetes is 90+% Go.
    • Go will be defacto standard for cloud tech in 2018.
  • If you come from Java, C++, JS background you can learn Go in the weekend.

 

Resources Mentioned

 

Contact Guest

Transcript

ABOUT THE TRANSCRIPT

This transcript was generated from an automated closed-captioning service and thus is far from perfect. There is no punctuation, no paragraphs and it’s difficult to tell who is speaking. That being said, if you’d like to access the podcast in written form, let me know. If there is enough demand I’ll formalize the process.

 

Full Transcript with Aaron Schlesinger — GoLang Will Make Your Plumbing Code Sexy

 

hello tech pros episode 95
you know decide for yourself whether or not it’s useful for you
welcome to the podcast where i chat with professionals who are getting the job
done using technology seven days a week each week we start with motivation
monday tuesday is about productivity Wednesday leadership Thursday technology
friday people in communication Saturday entrepreneurship and sunday being
unplugged
all right let’s get started
hello tech pros this is Chad Bostick and I’m excited to introduce our featured
guest today Aaron Schlesinger happy thursday Aaron
hey everybody thanks i’m trying i’m laughing here because I practiced for
like what Aaron about a hundred and fifty-two minutes trying to get the
pronunciation of your last name right
and that yeah that’s that’s that it’s a work in progress
you know like I was it like i was saying before we start recording i was born in
texas and raised in Oklahoma so there’s a there’s always a little bit of redneck
that peeks out every now and then so audience bear with me Aaron bear with me
I there’s no telling what I’m a mispronounced people’s names programming
languages you know all kinds of good stuff but it’s all part of the learning
and experimentation process here on health tech pros
yeah yeah a lot of people struggle with the name so you’re not alone tab
cool Aaron’s Lessing / help you remember time Aaron slesinger Aaron slashing your
is a software engineer at Engine Yard where he is a core contributor to the
dais project being a go developer for the past two plus years he has distilled
his knowledge of the language into the go in five minutes screencast which can
be found in at go in five minutes calm as well as speaking at various
conferences and events about go
so Aaron are we had an episode just prior to this just about 40 episodes or
so away back on episode 54 woman when I talk to Bill Kennedy and that one was a
people friday episode we talked about how you know tech interviews are scaring
away brilliant people and he sees all the time you know that I don’t know just
that sometimes we’re really really hard on our tech interviews and there’s some
amazing people that maybe don’t know all the answers to all the tests that you’re
going to give them but they’re really amazing people that need we need to hire
so anyway in that episode you know bill is a go program
and he just barely mentioned I mean we have maybe two or three minutes worth of
go conversation in there but afterwards Twitter and and LinkedIn everything just
blew up about it so I personally don’t have any experience prior to talking to
Bill with a go program programming language but it seems to be either
really really hot or just the community is really really like developed and
supportive of each other and the language
yeah so I think the community is is by far
at its at least in the top three communities that I’ve seen
I just not just in the programming language communities but of any tech
community
so if you talk about programming languages or frameworks or just in
general of new technologies
this is one of the most supportive and knowledgeable communities and I really
think that comes from its roots and the roots of go
come from obviously Google and if you don’t know google created this
programming language originally to solve their own problems inside of Google but
then it grew very quickly to commit contributors and community members
outside of Google and sort of the spirit of go comes from the practicality of a
programming language and I can get into more you know why go was created and all
that but first and foremost this is a very supportive community
if you go if you’re just starting to go and you go into one of the four arms or
if they even have a slack group slack is an instant messenger kind of product if
you ask you know any question from the most beginner or something you might
think it’s dumb
all the way to something super advanced that you know talks about some low-level
go implementation detail
really no matter what you asked this is going to be your question is going to be
something that’s well received and directed or redirected to the right
person as your question and you’re never going to feel dumb or you know on the
outside looking in
and that’s to me regardless of how well the technology has matured or what it’s
used for or how many people are using it
the community and especially that aspect of inclusiveness and the community is
the number one most important thing that is awesome i can’t tell you how many
different languages or different text acts I’ve tried to learn over the years
and there’s a few of them
not many but but maybe a bell curve where you got go on the right hand side
that’s awesome and everybody that’s in it is love it and it’s just very
supportive and then in the big middle of the bell curve is just kinda you know
just kind of average but then on the left side
the horrible side where you ask any questions like oh my god noob
seriously like go read the manual yep
I’d read the manual i don’t understand the manual the manual doesn’t make any
sense like help help a brother out here
yep yeah I’ve been in those communities to and you don’t know it takes one of
those and and you’re out
you just don’t want to be a part of that to you try to get a job done and part of
your job that has to become dealing with someone who’s mean to you or or mean to
somebody else and it kind of poisons the well
mmm yep absolutely so speaking of have a job to do
so let’s talk about your a senior software engineer at Engine Yard and you
work on the dais project so what is the dais project and what is engine yard do
and how you contribute to it
yeah so the day is project in sure i’ll try to keep this brief
the day’s project is a platform as a service built as an open source project
and what that means in a little bit more detail is the dais project is a set of
software components that run on top of KU benetti’s Kubernetes is a big
platform that you run on a bunch of machines and companies is kind of the
fabric that connects all all of those machines together and helps you run your
apps in a distributed fashion across all those machines
so days provides a higher level platform that lets you backup your apps into
containers and it specifically into docker containers and then it
distributes them push them on to Kubernetes sets them up so that if it’s a
web app for example you can go to your domain and it will route that traffic to
your domain on to the right containers
it just deals with some more of the administrative issues like configuring
the apps and setting up ssl certificates and so on and so forth
awesome so is this project live and available where people can get to it and
you’re just adding new features or is this something that’s brand new that
hasn’t been released yet
yep it’s live and release and we just launched our official
actually it’s the v2 release because the v1 release was not on communities
so it’s a little confusing that the dais workflow is the name of the product that
runs on top of Kubernetes and we’re calling it the v2 release but really
it’s the the one release of deus workflow so apologies for that confusion
but we just launched the official stable release of Davis workflow which again is
the Kubernetes release and it’s completely open source so you can go to
github com / days or you can go two days . com d is . com
you can read all about it there’s a link on dice.com to go to the github repo or
get to get home organization and each piece that comprises this whole platform
is of course open source completely on the github repos and it’s been our goal
from day one to make those components both usable as part of the bigger
platform that deals with all those concerns that i mentioned before but you
can also use them as you see fit
sort of on their own so one quick examples I i had mentioned that routing
platform that deals with all the SL staff and it deals with taking some
traffic for a domain and routing it to the right containers it
there’s a bunch of other stuff it does and we have a lot of people that just
use that that routing platform on its own and they don’t deal with
they don’t include a deal with all the other features besides the routing that
the whole day’s work flow platform offers
gotcha and speaking of communities who support each other just topically from
what I’ve seen the communities you know all the users of Kubernetes really
kind of band together and help each other out because that’s a it’s kind of
a beast right
yeah you know Kubernetes is a really ambitious project and again it
was started by google and it was started in response to a lot of Google’s
internal needs and community specifically was modeled after google’s
massive internal cluster management software
it’s they called it internally they called it Borg and communities is not
sort of lift from the code base that they had internally but it’s written
from scratch
model after a lot of the primitives that they had internally and yes it is a
beast
there is a there’s quite a few moving parts and you know they all talk to each
other and very specific ways but the communities community has done a really
really good job of making it very installable and very maintainable on
tons of different platforms so internally even we use Kubernetes
for development in sort of
let’s see maybe four or five different ways so for example some people r &
cumin at ease on a couple of virtual machines on their local laptop
personally I prefer to run it on google cloud other people use AWS to run it and
we’ve even had some of our customers run it on just bare metal machines that are
in their garage now
and you know it’s of course it varies a difficulty to set who were not is up on
different machines different types of deployments
but the docs are wonderful the install methods are wonderful especially for
clouds and most importantly to me
the community is really is really comprised of tons of resources
there’s people from Red Hat people from the core OS company they’re still
lot of people from google in the committee is growing so all those people
are very focused on one specific piece and one of those pieces of course is the
deployment story and the development is just blazing fast
so I’m really really I’m really hopeful and i’m anticipating tons of growth even
over the next couple months
awesome very exciting well you know Aaron here on hello tech pros on our
thursday technology episodes
it’s all about the past the present and the future of technology and you kind of
hit it a little bit about the past of the go programming language as well as
Kubernetes how they both originated from google and they were solving some
of the problems or the the original products were solving some of the the
problems that that the google internal team was having and the reason why they
needed this programming language that reason why they needed this cluster
management platform so maybe you could help us dive a little bit more into the
details of that and then maybe your your personal experience with these languages
as well and kind of get us up to speed on the passive of these technologies
sure yeah so I go
you can actually read a little bit more about goes past and its motivations
I on golang . or gol a and G dot org
but I’ll distill it down here so they sort of the the colloquial story is that
the creators of go were essentially waiting for a build at Google
so Google has tons and tons of C++ code and some of their builds take over an
hour
so the creators were they sent some code onto Google’s big huge cloud to be built
on to their build servers and while they were waiting they kind of imagine this
programming language and this tool chain for the programming language that would
build things faster
that would be simple enough for a sort of a new programmer that was just out of
college to pick up
and we just be more pleasant to use and you know as they were imagining this
they sent in their second building their third building the fourth build and so
on and it kind of started this chain reaction of thoughts in their head and
of course you know when you have time to think you have time to to narrow down
your problem space and become a lot more specific as to what you’re solving and
really flesh out more and more details and as they did that go kind of grew in
their minds and eventually they began starting to implement this program
language and so the major things I kind of hinted that just now
I’m its simplicity it’s a really heavy focus on native concurrency and one of
my favorite parts about go that was there from the start is this concept or
of orthogonal ality and i know that’s a big word the word orthogonal in math
it essentially boils down to parallel so these are things in specifically and go
these are pieces of the language that don’t interfere with each other but they
can be used together
so one example is this concept of interfaces so in go interfaces closely
resemble interfaces in Java
for example or a little bit less closely but still similar are abstract classes
in c++ so these are just constructs and go that define what functions a thing
should have but the really cool part is a type and go can adhere to the
interface you can literally have an inch and if you define an interface that into
can adhere to the interface and you know I’ve ever eaten tons of examples online
you can find tons of other examples on other people’s websites but you can use
two interfaces together at any time and if you have a type that doesn’t
implement the interface you can just add a couple of functions on that type and
then you’ve implemented interface
you don’t have to type you know this
extend some other interface it just automatically and immediately implements
the interface
I and that’s a really good example of orthogonal ality you really don’t have
to be concerned with defining what the thing implements you can just go
implement it and then use it and be done with it it and so that’s also a really
good good example of the simplicity of go as well
so anyway getting off that tangent that whole orthogonal ality thing is a really
really important piece of go
and so that combined with the native concurrency features will go really
keeps the simplicity
while also making go super super powerful and then if you add in the tool
chain which i had mentioned before the toolchain is super powerful and it
always has been and it allows you with one single command which is conveniently
called the go command
you know you can go into the terminal and type go build on a million line code
base or a massive code base and it will build pretty quickly
you know I’ve done it on a 300,000 line a line of code code base so that’s lines
of real code not just comments and it built in under five minutes on my
macbook
wow so it was a fork or old school
well older school macro mode we don’t know how fast techno moves
mhm it was a fork or macbook with four gigabytes of RAM which you know by
today’s most modern aesthetic standards is not the best and that’s 300,000 line
code base built in about five minutes
I you know didn’t use all the memory didn’t spin the cpu up two hundred fifty
percent usage it just chugged along and built the code base and if you were to
compare that with building a 300,000 line java code base or four thousand
lights c++ code base that is a really good experience and the creator’s ago
kind of initiated or started this culture of keeping compiled times fast
and efficient and that culture is permeated all the way up
now across oh let’s see probably 10 plus major releases and it will continue to
permit because it’s one of the most important things about go
so Aaron um you know in the past when when go didn’t exist and Google only had
the tools that everybody had at the time you know the programming languages in
the end the build scripts that everybody had and they started you know thinking
about well we need something better and we need something different and so they
came up with these well now in the enterprise or in startups
we have a ton of options we have all of of you know kind of classic programming
languages when you think c++ so you think of java even you know . net or or
some of the other languages out there and then we have go
so when does it make sense to use go in when should we look at some of the other
languages like is there like a best practice a best fit for go or is it kind
of ubiquitous you can use it kind of anywhere for anything
yeah that’s a great question so go was originally designed as a systems
programming language
so you know from from that perspective if you look at go
it really does systems programming well so that we can look at Kubernetes
is a great example and Kubernetes deals with things like allocating
resources for the number of cpu cores you have or for the amount of RAM you
have made deals with things like calling into the dr. Damon to make sure that an
individual processes sandbox so it doesn’t use up all the ram on the
machine and those kinds of things are really systems oriented and goes a
really great choice if you have to do
low level tasks like that but it also has been adopted by by developers of
things like databases and that’s because it does concurrency really really well
but you can also even go up the stack and you can see it that go has a bunch
of really well designed web framework so if you if you really want to stick with
go all the way up the staff
you can build a web app with go and you know you’re not going to find the all
the features of something like ruby on rails but if you want to
it’s it’s not that hard to build a web application with go and that’s actually
something I’ve done quite a few times in my career
so if you’re looking in an enterprise for sort of the the best way to start
with go
I would certainly say start with a green field implementation something new that
you have to build whether it’s a systems like a server that deals with low level
systems things or even like a command-line interface go is really good
at that building command-line interfaces and write it and go
and I think you’ll find that writing this thing and go
well not only shorten your your time to completion
it will make it but it also make it really easy to learn and you also end up
with this binary it statically compiled that you can distribute to anybody
you can cross compile it to windows to all the architecture of linux the mac OS
x even two things like arm processors or freebsd and you can just literally email
some on this binary and they can use it out of the box
no dependencies they don’t have to gem install something if they’re on Ruby or
make sure they have some shared library if it’s the c++ binary you can literally
just give them the binary and it’ll work so i would say the start would be no
systems utility system server or CLI and if you’re an enterprise generally those
kinds of things are relatively easy to find and oftentimes relatively easy to
automate and that’s where go would really shine
gotcha so this isn’t a case where we want to say okay I’m a full stack go
developer and I can build anything and everything on go from the top front end
interfaces with
with all the all my favorite CSS and JavaScript libraries all the way down to
managing the builds you might be able to do that but it sounds like we really
want to target fit for purpose with a goal language just like we do for
everything else and kind of start with that bottom up approach of okay what are
those
command-line interfaces the system commands those back-end kind of plumbing
things that we have to do the dirty work
the groundwork that that’s not sexy that doesn’t get a lot of like a you know I
don’t know bells and whistles in the in the press and all that kind of stuff but
the the system’s plumbing that that really drives the enterprise and makes
everything connect together that’s where we want to start in that green field
situation and when we have the chance
start with ago yeah absolutely
you know go hasn’t taken over the world you’re not going to find a ruby on rails
that in go that has all the features you know hasn’t taken over the world yet
hi i really hope it does one day but yeah you know it if you find a utility
that low level and like you said on sexy
I go we’ll make it sexier for sure somehow that there are some stories
including from inside google where they rewrote a big c++ server and go and cut
it and I think made it like 18 of the size or something like that and you can
go and google it and find that story but in my experience you know something from
scratch is the best way to learn go and kind of build your first app and go oh
yeah
awesome well Aaron we talked about the past in the history of how go got
started and where when you first started learning go and then we’ve been talking
very briefly about the present and all the things that you can build with it
and where you want to start in just a moment I want to ask you questions about
the future of go in the future maybe of of what you’re doing with go but first
we’re going to take a quick break and thank our sponsors
this episode of Hello tech pros is sponsored by Burdine Cirie and ok Google
or fun for party tricks but ninety-seven percent of smartphone users don’t like
talking to the phones in public
it’s kind of weird when was the last time you were at the mall and heard
someone say Siri what’s my wife’s dress size or ok Google
where did I park my car some things are better left unspoken 13 remembers the
things you care about and reminds you discreetly through text messages
names dates places ideas to do list for Dean never forgets and is always there
to remind you you don’t need to install an app just text for Dina statement and
she’ll remember texture a question and she’ll answer
Burdine is the only contact you have to have on your phone
meet Burdine at aberdeen . com
that’s being you are the e in e.com or text Burdine 2480 418 1411 outside the
US be sure to use the country code + 1
so for non us residents text plus 1 480 for 18 1 for 11 with a message
13
yeah
ok we’re back with aaron Schlesinger we’ve been talking to airing Aaron about
the go programming language how it has its roots in
well the foundation was google right google found a problem in their own
process and their own technology and they said you know what we need
something that’s a little bit more simple where anybody can use it
we need something that’s more performance so these builds don’t take
hours they take minutes and and we need something that can be you know work in
parallel and work you know interface with just about anything out there and
so they built this go programming language and now you know in today’s
world we talked about how it’s a really really good choice for those unsexy
situations where you’re working on the the the plumbing type of code that
command line interface is that kind of stuff that doesn’t have those those
slick you eyes on it so it goes a great fit for those things so Aaron let’s talk
about the future for just a moment so we can talk about both the future of the
goal programming programming language as well as your future plans and what you
uh what’d you have in mind for it
yeah so starting with the future of go I think that go is going to grow in its
usage of those as you said those unsexy and kind of low level systems projects
and tasks you can kind of already see that you know if you look at dr which
you might have read about its exploding in the press and it’s this whole
containerization solution and a lot of people are saying containerization is
the new virtual machine and I i think just about every CTO out there is saying
how does this matter for me
should we be doing it should we use containers why should we use containers
so on and so forth but what some people might not know is the doctor project is
almost all go
if you look at github.com / docker do cker
you can see tons and tons of go code
the whole dr. Damon is written and go the doctor seal is written and go
they’ve got a ton of distributed systems work they’re starting to do it
that’s all and go and you can jump over to the Kubernetes project which is
what I talked about before
that’s one of the technologies that we’re building on top of that’s a
hundred percent go as well
or maybe not a hundred percent it’s at least ninety percent go
I know they have some front and stuff in there that’s going to be javascript and
you can jump all around the ecosystem of systems software and things that are
solving system problems and go is the choice i know there’s another database
for time series data called influx DB that’s written and go a lot of
monitoring software is written and go these days
so you can see a lot of the new products things like uber Nettie’s cluster
management new databases
there’s another database that’s built sort of in the model of Google’s latest
and most fault-tolerant database another open source product called cockroach DB
that’s a hundred percent go for the data layer and so you can see you know a lot
of the old software is still the old system software at least it’s still your
C++ code bases or your C or Java code bases and you know those things probably
won’t change but the new stuff and the stuff that they build on top of those
old older code bases in Java or C++ that stuff it’s starting to be go
and it’s not like the people on the go team are out buying Google Ads or you
know promoting go for your next big enterprise product and go charging for
support of fur go or anything like that
I go is almost entirely an open source product in fact the ghost standard
library and compiler runtime is a hundred percent open source and it’s
just happening that goes the best the best choice for these systems problems
and it’s starting to be a really good choice for websites in sort of front-end
web apps and there’s even some some product projects out there for open
source that are starting to use go for mobile apps as well
there’s another there’s another project called go for jas that’s literally a
compiler that can change your go code into JavaScript
so we’re seeing some real projects like Kubernetes as i mentioned that are
a hundred percent go and and we’re even starting to see some experimental stuff
out there that’s pushing the boundaries and trying to get going to other places
into mobile apps are in the front and web development
so both of those kind of initiatives are happening organically and they’re both
very very promising and they’re even showing off the this growth of go
and in my opinion I would say in the next two to three years ago is going to
become the de facto standard for everything cloud-based you know if in
two years let’s say it’s going to be in 2018
that would be two years from now july twenty eighteen it’s going to be the
case in this is my prediction is going to be the case that if you start a cloud
technology or you start a web a web app or even a startup that does something in
the cloud
the question is not going to be why are you doing this and go or what’s go or
are you sure go is the right choice for you
the question is going to be if you don’t write it and go
why are you not writing it and go what is your reasoning for not writing to go
and that to me is very powerful that’s going to be indicative of go being the
de facto standard for cloud applications and I’m not alone in this opinion that
there are other prominent people in the cloud ecosystem and in the go ecosystem
as well that have this opinion as well
what you got a big part of that that acceptance in the enterprise comes with
a community support right so regardless of how performing a technology is
regardless of how easy it is to use if the if the community is not screaming
for it then it’s going to be really really hard for for architects or
executives or or those decision makers to really buy into it and say yeah dude
this is this is
where our future lies right because they want to make sure that you know it as if
they implement something that they’re going to be able to sustain it for the
next five years ten years whatever it is and that there’s going to be a great
community of developers to hire or two you know how sore or however they’re
going to do to to support the tools that they’re building now
you know someday in the future yeah absolutely
in that point about hiring for go is huge
hiring for go and in fact let me back up a second go as I kind of brushed on
before go was designed at Google to be really easy for people to pick up and
that spirit lives on you know go looks a lot like see are more like c++ now it
has things that look like object-oriented programming
so if you come from a C++ or Java or Python a ruby even a JavaScript
background
you’re going to be able to learn go probably to reasonably proficient level
in a weekend and the resources are there they’re free
most of them are even on golang org
there’s even one thing called the tour of go
which you can write go to learn go in your browser
you don’t even have to download any of the toolchain and these are the things
again you touched on it these are the things in the community that make go so
approachable and then just the design of the language itself makes go very easy
to pick up and you know I decided to go in and start this go in five minutes
screencast to get people from that level of proficiency up to kind of the expert
level and go and i did that because I don’t really see a need for too many
more
beginner’s guide to go or or you know resources that help people get from
nothing to write and go like I decided not to do that and i think that you know
new new beginners guide books for go are not as necessary because
people already know go they just don’t know it yet
no they know how they know pretty much what the syntax is and they know pretty
much what you know what I know log . printf does because log that printout
looks a whole lot like you know
printf in PHP or you know the print function in Python or whatever
now that’s not to say that you know if we see a new beginners guide to go book
out there that it’s useless because i’m almost certain that it won’t be but you
know just me personally I thought that it would be more more effective and more
useful in the community through build and write that kind of teaching material
to go from the beginner or intermediate level up to the advanced level for go
you know and that’s what I try to do with go in five minutes
now I think that’s awesome i think that’s a you know really valuable thing
that you did is take a look at the market
take a look at the kind of education process that that ate a new go developer
has to go through in order to get up to speed on the language get up to speed on
the tool sets and like you said if they are already comfortable with some of the
other technology some of the other programming languages like they have a
foundation and computer science they have a foundation and and a different
programming language then transitioning over to go may be extremely easy and
there it is not like they have to learn a lot is just kind of shift in a little
bit of the syntax left and right right
but it making it to that next level like okay now I’m am Mego beginner i’m a go
new band I know how to know how to build some things right hello world are easy
now check done that ok sample project checked on that now i need to really
make sure that i’m using the industry best practices then I’m doing things the
right way that our performance that are scalable that are supportable that that
other people are going to look at and go yeah that’s the right way to do it and
not just hack together and so that’s what you put together in your go in five
minutes screencast in your teaching people how to how to implement those
best practices
yeah exactly event and those best practices are also in the tool chain two
and it’s not it’s not just the
mode so again if you start out with go
you download the go-to chain which is an installer a mac and windows you run an
installer and when it’s done you have go and you can type go build and that’s it
your program will be compiled for your platform and you can ride just like any
other executive level but once you get more advanced you could start to deal
with things like dependency management and versioning cross compiling and all
sorts of things like that
and again that’s that’s sort of where this advanced level education comes in
because when you have to deal with for example dependency management
that’s where you’re going to be working most likely with a much larger product
or project if you’re in the open source world and we’re going to have to know a
lot of the nuts and bolts about how go
did or did not do things with dependency management and what are the industry
best practices today for it and where is the industry going with respect to in
this case dependency management and so you know it
it’s not just the code although I try to focus very heavily on the code
it’s not just the code it’s sort of just like in any programming language or
technology ecosystem
it’s the things that surround the code as well and and I try to touch on those
as much as possible in the time that I have to make sure that people who write
go at least know what they’re getting into and they know what they keep
writing go and they keep you know building bigger and bigger projects they
know what’s in store for them and how to approach these problems as they hit them
so Aaron we talked about the future of go and how in your opinion goes is just
on the verge of taking over the world and making everyone’s projects just a
little bit more sexy but tell us about the future of of your screencast stuff
here now
do you have plans of it changing or stay in the same what are you going to do
with it sir
yeah so I have both I want to keep going five minutes as is for sure
I want to keep having these five minutes screencasts out on youtube
you know I’m going to
the go in five minutes . com website up and i’m also this is part of the changes
i’m also going to start launching some paid screencast and they’re not gonna be
five minutes they’re gonna be more like 15 or 20 minutes and there to start
they’re just going to be extensions of what you can learn in the five-minute
public screencast
so for example I just launched a screencast
oh and i think the beginning of may be the middle of may 2016 and it was about
goes capacity to talk to sequel databases and I got a ton of feedback
asking for more about connecting to my sequel and more about how you do how you
could build data base models and kind of organize your code in such a way that
you don’t have to care as much about the mechanics of building a sequel query and
I realized that that kind of thing would be best covered in like a 30-minute
screencast or maybe even a 45-minute screencast and so those kinds of things
you know the extensions on the existing topics i’m going to cover in the free
things those kinds of things are going to become paid screencast and they’re
going to be available on the same exact website even on the same exact page for
the free ones you know it’s going to have just another link that says get the
extension and I don’t haven’t really decided on a price or anything like that
but my goal is to make them pretty low
pretty affordable but i just want to be able to get paid for my time because as
it stands a five-minute screencast takes five to six hours right now to really
produce that quality that I want so 30 to 40 minutes screencast is going to
take significantly longer than that but then in addition I have two other plans
one is I’m writing a book and the book is going to be in the in a pretty
similar spirit has gone five minutes so they’re going to be for each chapter in
the book is going to be really easily digestible principle of go or best
practice for go or one thing I’ve been focusing on lately for these chapters is
a pattern go programming pattern for go
and these are going to be things again that are sort of on the more advanced
side
they’re going to be patterns for doing like dependency management as i
mentioned I’ve been focusing a lot on concurrency patterns lately
and those are things like a concurrent barriers or producer-consumer
publish-subscribe kinds of patterns and and then also there’s going to be things
about future adoption topics for future projects that are coming out for go over
that are getting big for go
and again I’m i’m focusing on these chapters being really short easily
digestible and you know that book is a work in progress and I’ve been throwing
around some ideas with launching one chapter at a time for the book
that’s kind of an unknown so far as to how I’m going to launch it or if I’m
just going to wait till the very end to the book is completely done and then
launched it but i’m looking at somewhere for the book somewhere around october or
september-october 2016 kind of timeframe for that but this whole longer more
extended paid screencast idea is probably going to be by the end of July
2016 is one you’ll start seeing those screencasts awesome
and that time will be honest before we know it it’s been a time where we’re
running out of time so before we go
Aaron could you share some parting words of wisdom for our audience
the best way that we can connect with you and then we’ll say goodbye sir
so parting words of with them check out go
that’s really it you know decide for yourself whether or not it’s useful for
you but at very least check it out because go is coming to take over the
world
huh also check out going five minutes . com
everything is free on there right now not just the screencast but all the code
that you see on the screen cast is available
there’s a link to it on the website even the outlines for the screencast are
available too
let’s go in five the number five minutes . com
I’m sure it’ll be in the show notes as well I know the best way to connect with
me
the really on the website
all the contact information is there’s Twitter there’s an email address which
is also my personal email address so dont spam me please
there’s a there’s a github link as well to my personal github repo
so any of those methods is is fine I just encourage you if you have questions
about the contact their questions about what I said today i really encourage you
just tweet me or email me or carrier pigeon me or whatever is the best way
for you
you know I answer questions about screencast every single day so I’m more
than happy to answer yours
awesome and you can find the links to all of that here on the show notes on
today’s episode this is hello tech proz.com / 95 this is episode 95 so if
you get a Hello tech proz.com / 95
you’ll get access to all of the topics that we’ve been talking about today
including the resources that Aaron’s been mentioning as well as links to how
to get in contact with him
Erin thank you so much for joining me on hello tech pros today I really value
your insight and appreciate you taking time out of your busy thursday to spend
time with us
sure thanks again dad you bet on and tech pros
keep your eyes open goes going to take over the world
you’ve been listening to Aaron Schlesinger and I’m Chad Bostick and
until next time take care
the show notes page for this episode can be found at hello tech pros . com / 95
if you enjoyed this episode please leave a review
subscribe to this channel and check back tomorrow
this has been technology thursday but tomorrow my featured guest and I
discussed people in communication on saturday we talk
entrepreneurship sunday being unplugged monday motivation Tuesday productivity
Wednesday leadership and back again on thursday to discuss technology once
again and I’ll talk to you tomorrow

Available on Technology Thursday and Hello Tech Pros daily podcasts

Get the Interview Questions

My Podcast Interview Guide contains the interview questions for all 3 topics:

  • Career Development
  • Product Development
  • Business Bevelopment
I hate spam. Unsubscribe anytime. Powered by ConvertKit
Liked it? Take a second to support this podcast on Patreon!