Save for later

Web Development w/ Google’s Go (golang) Programming Language

The Go programming language was created by Google to do what Google does: performant web applications at scale.

Open-sourced in 2009 and reaching version one in 2012, the Go programming language is the best choice for web development programming today. Go is the most powerful, performant, and scalable programming language today for creating web applications, web API’s, microservices, and other distributed services.

In this course, you will gain a solid foundation in web development.

You will learn all of the following and more:

Architecture

  • networking architecture

  • the client / server architecture

  • the request / response pattern

  • the RFC standards defined by the IETF

  • the format of requests from clients and responses from servers

Templates

  • the role that templates play in server-side programming

  • how to work with templates from Go’s standard library

  • modifying data structures to work well with templates

Servers

  • the relationship between TCP and HTTP

  • how to build a TCP server which responds to HTTP requests

  • how to create a TCP server which acts as an in-memory database

  • how to create a restful TCP server that handles various routes and methods

  • the difference between a web server, a servemux, a multiplexer, and a mux

  • how to use a third-party server such as julien schmidt’s router

  • the importance of HTTP methods and status codes

The net/http package

  • streamlining your web development with the net/http package

  • the nuances of the net/http package

    • the handler interface

    • http.ListenAndServe

    • creating your own servemux

    • using the default servemux

    • http.Handle & http.Handler

    • http.Handlefunc, func(ResponseWriter, *Request), & http.HandlerFunc

    • http.ServeContent, http.ServeFile, & http.FileServer

    • http.StripPrefix

    • http.NotFoundHandler

State & Sessions

  • how to create state: UUID’s, cookies, values in URL’s, security

  • how to create sessions: login, permissions, logout

  • how to expire a session

Deployment

  • how to purchase a domain

  • how to deploy an application to Google Cloud

Amazon Web Services

  • how to use Amazon Web Services (AWS)

  • how to create a virtual linux machine on AWS EC2 (Elastic Cloud Compute)

  • how to use secure shell (SSH) to manage a virtual machine

  • how to use secure copy (SCP) to transfer files to a virtual machine

  • what load balancers are and how to use them on AWS

MySQL

  • how to use MySQL on AWS

  • how to connect a MySQL workbench to AWS

MongoDB

  • understanding CRUD

  • how to use MongoDB & Go

MVC (Model View Controller) Design Pattern

  • understanding the MVC design pattern

  • using the MVC design pattern

Docker

  • virtual machines vs containers

  • understanding the benefits of using Docker

  • Docker images, Docker containers, and Docker registries

  • implementing Docker and Go

  • deploying Docker and Go

Google Cloud

  • Google Cloud Storage

  • Google Cloud no-sql datastore

  • Google Cloud memcache

  • Google Cloud PAAS App Engine

Web Dev Toolkit

  • AJAX

  • JSON

  • json.Marhsal & json.Unmarshal

  • json.Encode & json.Decode

  • Hash message authentication code (HMAC)

  • Base64 encoding

  • Web storage

  • Context

  • TLS & HTTPS

  • JSON with Go using Tags

By the end of this course, you will have mastered the fundamentals of web development.

My name is Todd McLeod. I am tenured faculty in Computer Information Technology at Fresno City College and adjunct faculty in Computer Science at California State University Fresno. I have taught enough students over 22 years to know that by the end of this course, you will be an outstanding web developer.

You will have the best skills available today.

You will know the best way to do web development today.

You will have the most demanded and highest paid skills in the marketplace.

Join me in this outstanding course. Come learn best practices for web development.

Sign up for this course now and open doors to a great future.

Get Details and Enroll Now

OpenCourser is an affiliate partner of Udemy and may earn a commission when you buy through our links.

Get a Reminder

Send to:
Rating 4.5 based on 671 ratings
Length 19 total hours
Starts On Demand (Start anytime)
Cost $12
From Udemy
Instructor Todd McLeod
Download Videos Only via the Udemy mobile app
Language English
Tags Web Development Development

Get a Reminder

Send to:

Similar Courses

What people are saying

web development

I my case, I have 15 years of experience working with web development, so most things presented here was just a check for me to see how it is done in Go.

This course is for biggners, not in go, but at web development at all.

I was happy to learn enough web development in golang to allow me to go grab a course elsewhere that may have had a full blown walk through of a real world project.

My 2 cents: A comprehensive course on web development with golang would include: - Authentication single/multi tenant & multi user authentication and management e.g: admin/non admin users with different views, password recovery, user email invite etc... - Web sockets - Caching - Integration of front-end frameworks like Vue.js, react etc... - Microservices / REST API development - GRPC - Essential third party tools like a router such as Gin or framework like Buffalo - PDF report creation - Graph generation from app data using D3 or some other library - Google map integration Just some thoughts!

If you are at all interested in learning more about web development, or even just networking, definitely take this course.

Web development cannot be limited to creating a http server and deploying a basic site.

In this course you will be taking a deep dive into Web Development using the Go programming language and will work extensively with MySQL, PostgreSQL and MongoDB.

Really nice and well structured course which tackles all of the things needed in web development.

It's very useful course, the instructor is well informed and is giving everything, I recommend this course to anyone wants to get started with web development.

Very good introductory course to web development.

I recommend this course to anyone wanting to learning web development with GoLang.

Besides Go syntax and web development libraries, it touches some other stuff necessary for a real-world programming like databases and deployment procedures/tools.

If you're newbie to web development and have interest in learning Go, look no further - this is a course for you.

Please include a section where you do a walk through of some open source repository that is in production so that we can understand the best practices of golang web development and the methodologies that are followed.

Read more

highly recommend

Highly recommend him as an instructor and this course as well.

I highly recommend this course (after completed Todd's other Go course first of course:))!

I highly recommend taking this outstanding course!

I can highly recommend this course to everyone.

The course covers important parts of the GO language and still complements with a small class of SQL, NoSQL, AWS, Docker, GCloud and Git enough that you can understand how these tools work and how to use them along with GO, which allows you to create Powerful applications in GO, over these six months of studies I learned a lot from Todd because in addition to a very explanatory content he still proportions a huge list of exercises for fixing the content of his videos, I see that few teachers have this zeal with they courses, so I highly recommend this course.

I highly recommend it!

Highly recommend!

Highly recommend if you like this style of lecture and pacing.

Highly recommend it.

Highly recommend this!

I've taken each of his previous 2 courses (Both of which I highly recommend) and this course absolutely will depend on those courses or at least some prior knowledge of Go.

Read more

for web dev

If you want to understand more of the inner workings of Go for web dev, it's a great course.

This course is good, specially if you are new for web development.

awesome course and teacher - covering a lot of essential web development stuff - really good for web development novices - lot of thanks to Todd!!

Really great course about Go for web development.

If you like Golang and you want to use it for web development, before you pick a framework or even a router, take this course.

Learning a ton of really great foundations for web dev in Go.

Good course if you are looking to get comfortable with Go for web dev and are familiar with web dev already.

I've been using K&R ANSI C for several years now so using GoLang for Web Development is exciting and keeps me on my toes so I can stay up with what the industry is doing, as well as what my sons talk about.

The best course for web dev with Golang!

Highly recommend this to anyone wanting to learn Go for Web dev.

Interesting and good for web development with more database Highly recommended!

Read more

easy to follow

The teaching method is great and easy to follow and understand.

The review was great, and it is easy to follow what the teacher is talking.

easy to follow.

good course easy to follow The bad then the good.

As a new Go learner I tried different cources and lectures online and I found this one really smooth and easy to follow and understand the language, I like the instructor’s approach when he stars from standard library doc to explain funtions and method then he jump to code, which really helpful.

Easy to follow explanations and examples.

Read more

so far so

So far so good.

Good explanations, quite useful So far so good.

So far so awesome.Very good course, I am really surprised at how far I have come.This course is very comprehensive with clear and concise instruction.

So far so good well it is super early, so i cant give you a five, Todd seams pretty good.

Read more

covers a lot

It covers a lot of areas that are popular nowadays.

This is not a quick course to get through, it covers a lot, but if you're up to the challenge you'll end up with a good base knowledge and understanding of how to do web development in Go.

It's really extensive and covers a lot of ground!

Quite in-depth lessons and covers a lot of areas.

Read more

hands-on exercises

Nice mix of teaching content and hands-on exercises.

Working thru the hands-on exercises and excuting each of the lecture examples provided a solid understanding of the Go language and practical examples of how it could be used for WebDev work.

I guess that it is quite nice way to teach, but I think that a few more hands-on exercises will be really nice there (especially with input forms) It's amazing how learning a new language with such a good instructor can improve your programming skill even in other languages.

And those hands-on exercises are gold!

Hands-on exercises and sample code repos are very helpful.

Description of hands-on exercises is not complete.

Read more

laid back

I really enjoy his laid back but thorough explanations.

Thanks Laid back style, buckets of good information... deserves all of the great reviews.

The instructor is laid back and easy to understand and the resources on github and challenges and thorough and challenging.

Instructor has very laid back but compelling way to teach Very good introduction because it was comprehensive without being tedious or long.

Greates course on Go Programming Love how the teacher explain things clearly, and make it easy to understand The instructor is entertaining, I like his laid back style Very comprehensive.

Read more

real world

The exercises are boring and too easy and not really relevant to real world situations.

Building a "real world" application and learning to use popular libraries would teach us valuable skill we could use in everyday development.

I would be willing to purchase a course which has a real world example walked through in it's entirety.

Would have liked some additional content on building real world web apps though.

I'm already able to apply the acknowledgment in the real world.

Todd is awsome lacking a little bit of inter communication in real world but has a way of making things simple and understandable.

Read more

best practices

Pretty good basics, but few best practices.

The course should speak more about best practices while writing code using Go as well.

He gave you a deep knowledge about other cutting edge technologies and best practices.

Would be awsome to see a follow up in go best practices and design patterns, e.g.

Read more

highly recommended

Highly recommended.

Highly recommended for any body wanting to do IoT back-end infrastructure, API gateways, and data driven interactive web apps.

Read more

too fast

Only complaint is sometimes things are cruised through too fast but for this you can go back and rewatch the video slowly.

In the first few lectures, Todd was changing screens too fast to see the results on his shell.

Instructor give's really good general advice you show result from the compiler too fast :| Exactly what I needed.

Love the instructor Examples are too fast The educator is not sympathetic Todd is awesome !

Read more

Careers

An overview of related careers and their average salaries in the US. Bars indicate income percentile.

Web Development Tutor $69k

IT/Web Development $70k

Web Development/Support $78k

IT & Web Development $80k

Web Development and Administration $85k

Web Design, Web Development $90k

IT / Web Development & Administration $94k

IT Specialist - Web Development $96k

Web Development Producer $99k

Head of Web Development and IT $103k

Flash and Web Development $108k

Creative & Web Development $111k

Write a review

Your opinion matters. Tell us what you think.

Rating 4.5 based on 671 ratings
Length 19 total hours
Starts On Demand (Start anytime)
Cost $12
From Udemy
Instructor Todd McLeod
Download Videos Only via the Udemy mobile app
Language English
Tags Web Development Development

Similar Courses

Sorted by relevance

Like this course?

Here's what to do next:

  • Save this course for later
  • Get more details from the course provider
  • Enroll in this course
Enroll Now