THIS is the BEST Way to Write HTTP Services in Golang

preview_player
Показать описание
Go is an incredibly good programming language. It is gaining in popularity and is increasingly being used in fields such as cloud computing, backend and infrastructure.

In this video I go through an article written by Mat Ryer, an engineer at Grafana on how to write HTTP services in Go.

Link to article:

Video Editor: @TheMason

### Twitch
I stream live on Twitch every weekend
Join the amazing community on Discord
I post memes and host Twitter Tech Spaces

Whether you're a beginner or a seasoned developer, our step-by-step approach will unveil the secrets behind creating high-performance, scalable HTTP services that stand out. Dive into the world of Go with practical examples, best practices, and expert tips to elevate your programming skills to the next level. Don't miss out on mastering the art of Go HTTP services

SUBSCRIBE OR GET LAID OFF
╔═╦╗╔╦╗╔═╦═╦╦╦╦╗╔═╗
║╚╣║║║╚╣╚╣╔╣╔╣║╚╣═╣
╠╗║╚╝║║╠╗║╚╣║║║║║═╣
╚═╩══╩═╩═╩═╩╝╚╩═╩═╝

#coding #neovim #typescript #programming #vim #softwareengineering #codinglife #webdesign #webdevelopment #webdev #javascript #rustlang #rust #twitch #twitchstreamer #programmerhumor #codinghumor #software #softwareengineer #softwaredeveloper #softwaredevelopment #gymbro #gym #programmerhumor #programming #coding #golang #go #golanguage
Рекомендации по теме
Комментарии
Автор

Hope you all enjoy the video - make sure to comment + like and subscribe if you havent already and check out the original article as well!

MelkeyDev
Автор

Really cool video, factory for middleware is one thing I have been doing since I learned go.

lcarv
Автор

Nice video man, good to have more content to rely on. Thanks and keep up

NoctuaDeveloppement
Автор

I stumbled into having encode and decode functions because in a project I used protobufs with an optional json fallback. Having all that logic in one place just made sense.

pbentesio
Автор

Its so nice to see that I'm doing a lot of things the "right" way, but this still has a lot of "OH, that would make things so much easier" patterns.
Looks like I'm going to be updating my API template ... again :) Thanks

RayAndrewsDev
Автор

Excellent content as always. Hopefully the YouTube gods start showing you the love your channel deserves.

Cixelsyd
Автор

Like your channel (interested in learning Go). Found you from the Primeagen...

Your video cuts remind me of Max Headroom (from 80s MTV) 😂

cabanford
Автор

Fantastic article and video covering it!

omarcrosby
Автор

nice video i coming from Javascript world, Thank you for helping keep going

whiteshadow
Автор

I really respect Mat Ryer, and even use his moq code generator, but when I read his article I was disheartened to read him advocating for long parameter lists, at least without mentioning the cons for using them vs. structs.

Simply put, when using long parameter lists you have to break the API of a function to add another dependency which has unfortunate ripple effects in terms of breaking code if 3rd parties are using it, and possibly worse, bloating pull requests often making it much harder and time consuming to review. Theo recently had a video about how larger PRs have been shown to significantly reduce velocity, and google says so too in their eng-practices blog (not posting a URL as YouTube seems to hide my comments when I do.)

With structs for optional parameters, nothing breaks if you add new properties and code in a backward compatible manner. I really wish Mat and other Gophers would consider the downsides of broken calls and bloated PRs more when they decide to just keep adding parameters to funcs .🤷‍♂️

gearboxworks
Автор

Why not using the plug pattern for middleware like in Phoenix? Maybe because wirhout a reduce its impossible??

MarcosVMSoares
Автор

Why Chi? Aren't there Go native capabilities to make REST APIs?

ashimov
Автор

😂😂😂😂😂
Shoutout to if err != nil had me rolling

jt
Автор

I suggest read Lets go further book it follows some useful patterns

_us.m.an_
Автор

It reminds me of the Flask boilerplates in Python.

theyioel
Автор

Encoding response with generics like "encode[T any](..." is stupid. No need to know type inside the func when passing "any" gives the same result.

dyto
Автор

Best way not workung enything on steam

iamwitchergeraltofrivia
Автор

Do you plan to launch a course or something similar with the code example you shown in the video? Saw the name "goschool" and hope you do something similar like you shown as example, liked very much your course on FrontEnd Masters.
Thank you.

marius-mihailionte