Go Icon

Go

Go is a programming language built to resemble a simplified version of the C programming language.
433 Stories
All Topics

Go github.com

Authelia is a multi-factor SSO portal for web apps

Authelia is an open-source authentication and authorization server providing 2-factor authentication and single sign-on (SSO) for your applications via a web portal. It acts as a companion of reverse proxies like nginx, Traefik or HAProxy to let them know whether queries should pass through. Unauthenticated users are redirected to Authelia Sign-in portal instead.

Authelia is a multi-factor SSO portal for web apps

Gabe Kangas owncast.online

Take ownership of your live streams with Owncast

Gabe Kangas:

The new release of Owncast –the self-hosted, open source live streaming server– opened up its first set of 3rd party APIs. So not only can you run your own live streams and own your content, but you can build bots, integrate it in to 3rd party services and be super creative in encouraging chat engagement in new ways.

Looks pretty slick.

Databases github.com

Dolt – it's Git for data

Imagine a world where Git and MySQL got together and had a baby. They would name that baby, Dolt.

Dolt is a SQL database that you can fork, clone, branch, merge, push and pull just like a git repository. Connect to Dolt just like any MySQL database to run queries or update the data using SQL commands. Use the command line interface to import CSV files, commit your changes, push them to a remote, or merge your teammate’s changes.

All the commands you know for Git work exactly the same for Dolt. Git versions files, Dolt versions tables.

The authors also created DoltHub where you can host and share your Dolt databases.

Ciprian Dorin Craciun notes.volution.ro

In Go-land you pay even for what you don't use

While I was trying to identify why my-Go-based project took more than three times to execute than a similar Bash script (for a code-path that amounted to just a few stderr writes), I found that many of the Go packages (including some in the built-in library) have quite “heavy” static initializers, which due to how Go initialization works are always executed regardless if I use them for a particular code-path or not.

Also, with the newly introduced GODEBUG=inittrace=1 in Go 1.16 developers can now investigate the cost of static initializers of their dependencies, thus I wanted to raise the awareness of this issue.

Mat Ryer YouTube

You'll be Back (to Go)

Go Time’s Mat Ryer breaks out the acoustic for all the Generics haters out there:

A musical message for #golang​ people thinking of leaving because the Go Generics proposal was official accepted. (Spoof of You’ll Be Back from Hamilton.)

If you like this, you’ll be happy to hear we conned invited Mat on to JS Party this week and threatened him asked him to create some jingles for our regular segments. If you don’t like it, please travel back in time and skip that last sentence.

Go Time Go Time #167

The art of reading the docs

Documentation. You can treat it as a dictionary or reference manual that you look up things in when you get stuck during your day-to-day work OR (and this is where things get interesting) you can immerse yourself in a subject, domain, or technology by deeply and purposefully consuming its manuals cover-to-cover to develop expertise, not just passing familiarity.

In this episode we pull in perspectives and anecdotes from beginners and veterans alike to understand the impact of RTFM deeply. Also Sweet Filepath O’ Mine?!?!

Go Time Go Time #165

When Go programs end

Michael Knyszek from the Go team joins us to talk about what happens when a program ends. How are file handles cleaned up? When are deferred functions run, and when are they skipped entirely? Is there a way to terminate all running goroutines? Tune in to learn the answers to these questions and more!

Go Time Go Time #163

CUE: Configuration superpowers for everyone

On this episode we learn how to Configure, Unify, and Execute things. What’s CUE all about? Well, it’s an open source language with a rich set of APIs and tooling for defining, generating, and validating all kinds of data: configuration, APIs, database schemas, code, … you name it.

Now that we’ve copy/pasted the project’s description… let’s dig in and learn how we can use CUE to make our Go programs better!

Go Time Go Time #162

We're talkin' CI/CD

Continuous integration and continuous delivery are both terms we have heard, but what do they really mean? What does CI/CD look like when done well? What are some pitfalls we might want to avoid? In this episode Jérôme and Marko, authors of the book “CI/CD with Docker and Kubernetes” join us to share their thoughts.

0:00 / 0:00