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

Join this course to learn Web Programming with Go from an experienced university professor! Get ready to master web development fundamentals.

  • Overview
  • Curriculum
  • Instructor
  • Review

Brief Summary

This course is your go-to guide for mastering web development with Go! Taught by an experienced university professor, you'll grasp essential skills and build real-world applications.

Key Points

  • Learn server-side web development basics.
  • Master the Go programming language.
  • Understand deployment with AWS and Google Cloud.

Learning Outcomes

  • Gain a solid foundation in web programming and server-side development.
  • Develop skills in utilizing Go for web applications and APIs.
  • Learn deployment strategies using cloud services like AWS and Google Cloud.

About This Course

Learn Web Programming from a University Professor in Computer Science with over 20 years of teaching experience.

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.

  • Construct server-side applications using today's best practices

  • Acquire an outstanding foundation in the fundamentals of web programming

  • Learn from a University Professor in Computer Science with over 20 years of experience teaching individuals of all ability levels

Course Curriculum

Instructor

Profile photo of Todd McLeod
Todd McLeod

Fun, Quick, & EasyLearning can be fun, quick, and easy if you have the right teacher. I come from a family of teachers, I've taught at the college and university level for over 20 years, and I have been recognized as one of the top teachers in the California college system. I became a teacher because I love sharing knowledge...

Review
4.9 course rating
4K ratings
ui-avatar of Pavlos Dinopoulos
Pavlos D.
5.0
7 months ago

Coolest teacher ever extremely hard to find these days. Real A-Z, the path is showed and you can easily build up on that. Many aspects and tools for web development are taught which normally would have been 2-3 separate courses.

  • Helpful
  • Not helpful
ui-avatar of Waren Gador
Waren G.
5.0
7 months ago

Teaching is clear and concise with better explanations

  • Helpful
  • Not helpful
ui-avatar of Alejandro Buezo
Alejandro B.
5.0
8 months ago

Great course on Golang Web Development from scratch. Great Instructor.

  • Helpful
  • Not helpful
ui-avatar of Bret Nelson
Bret N.
3.5
9 months ago

I like his approach. Maybe have more examples to continue with polymorphism, such as other types derived from person (such as villains) and off secret agent (maybe the different actors?) to further show what you can do

  • Helpful
  • Not helpful
ui-avatar of Joao Victor Ferrareis Ribeiro
Joao V. F. R.
4.5
9 months ago

Exelente professor, ele traz muita coisa nova que é bom para aprender.

  • Helpful
  • Not helpful
ui-avatar of Dhanunjay
Dhanunjay
5.0
10 months ago

Good style. Clear direction of the course material. The instructor is chill too.

  • Helpful
  • Not helpful
ui-avatar of Maciej Krasniewski
Maciej K.
5.0
11 months ago

nice
not the newest meanwhile, but very usefull

  • Helpful
  • Not helpful
ui-avatar of Nadim Hallaq
Nadim H.
5.0
11 months ago

The course is beautifully taught

  • Helpful
  • Not helpful
ui-avatar of Brij Kishor
Brij K.
3.0
11 months ago

Build some real product example like creating a CMS/Blog where all CRUD feature should there.

  • Helpful
  • Not helpful
ui-avatar of Maurício Lopes de Mattos
Maurício L. D. M.
3.0
1 year ago

A didática do professor é boa porém eu esperava que ele fosse ao longo de cada vídeo construindo um projeto completo ao invés de mostrar exemplos isolados. Esse tipo de conhecimento existe de graça acessando tutoriais como go playground. Já um projeto completo é algo que sinto falta e esperava obter nesse curso.

  • Helpful
  • Not helpful
Leave A Reply

Your email address will not be published. Required fields are marked *

Ratings

Courses You May Like

Lorem ipsum dolor sit amet elit
Show More Courses