Share Go code on GitHub

Programming Snapshot – Go Code on GitHub

© Lead Image © bowie15, 123RF.com

© Lead Image © bowie15, 123RF.com

Article from Issue 288/2024
Author(s):

Go makes it easy to bundle universal code into a package and share it with the world on GitHub. Mike Schilli explains the tricks and how to avoid the pitfalls.

Attentive readers of this column will have noticed that the Go listings covered here often reference packages on GitHub, which the Go compiler picks up from there and integrates into the binaries as libraries. But you can't always take, take, take. Instead, let's contribute back! How hard could it be to write your own code and share it with the world on GitHub? Then programmers near and far can use it, saving them the time they could otherwise use to sing the originator's praises.

By way of an example, a simple package that allows a Go application to store the passwords and API tokens it uses in an external file would be useful. These strings should never be part of the code, and not just because the listings are printed here in the magazine. Hard-coded strings are also frowned upon in production releases, because the code is usually openly available in a GitHub repo and automatic installations like to roll out binaries and secrets separately – just as if the user were configuring them manually after installation.

Take a look at the sample application shown in Listing 1, for example. It determines the five most frequently viewed videos on a YouTube channel and requires a secret API key and a channel ID to do so. Instead of keeping strings with secret data in the code, the code calls the Lookup() function twice. It reads a string for the specified keyword from an external humanly readable file (in the example, "youtube-api-key" and "youtube-channel-id") and returns the results to the application.

[...]

Use Express-Checkout link below to read the full article (PDF).

Buy this article as PDF

Express-Checkout as PDF
Price $2.95
(incl. VAT)

Buy Linux Magazine

SINGLE ISSUES
 
SUBSCRIPTIONS
 
TABLET & SMARTPHONE APPS
Get it on Google Play

US / Canada

Get it on Google Play

UK / Australia

Related content

  • Free Software Projects

    Authors and editors can use EtherPad to edit a column online in real time. Then, anything they can’t handle in writing, they can discuss in detail by launching Mumble.

  • Voice Chat with Mumble

    The Mumble server lets you hear your multiplayer game opponents over VoIP, freeing you from inconvenient text chat during game play.

  • Mumble and Murmur in Version 1.1.8

    The software is oriented to TeamSpeak and gamers: the voice chat product Mumble is now available together with the Murmur server in version 1.1.8.

  • GitHub with hub

    The handy hub command-line tool lets you manage your GitHub repository from a terminal window, which can make it easier to automate repetitive tasks.

  • YouTube Players

    YouTube offers more than just funny kitten movies; you will also find more than 60 million music videos. With a native YouTube client for Linux, you can use this online jukebox as conveniently as your local music collection.

comments powered by Disqus
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters

Support Our Work

Linux Magazine content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.

Learn More

News