Lies we tell ourselves to keep using Golang

This page summarizes the projects mentioned and recommended in the original post on reddit.com/r/programming

Our great sponsors
  • InfluxDB - Access the most powerful time series database as a service
  • SonarLint - Clean code begins in your IDE with SonarLint
  • SaaSHub - Software Alternatives and Reviews
  • Graal

    GraalVM: Run Programs Faster Anywhere :rocket:

    You seem to have literally no idea what you are talking about: * https://openjdk.org/jeps/425 * https://www.graalvm.org/

  • distroless

    🥑 Language focused docker images, minus the operating system.

  • InfluxDB

    Access the most powerful time series database as a service. Ingest, store, & analyze all types of time series data in a fully-managed, purpose-built database. Keep data forever with low-cost storage and superior data compression.

  • kubernetes

    Production-Grade Container Scheduling and Management

  • zero-to-production

    Code for "Zero To Production In Rust", a book on API development using Rust.

    I'm going through the book Zero To Production In Rust by /u/lukemathwalker and he goes through it step by step. Not once have I needed to use higher level concepts like Cells, RefCells, Boxes (beyond a basic example), etc.

  • drogon

    Drogon: A C++14/17/20 based HTTP web application framework running on Linux/macOS/Unix/Windows

    C++ - my favorite language, and, with modern revisions, extremely expressive and readable. There isn't a web server in the standard library, but there are a number of solid open-source choices (e.g., Drogon).

  • MBBSEmu

    The MajorBBS Emulation Project is an Open Source, Cross-Platform emulator for easily running The MajorBBS & Worldgroup Modules

  • Quasar

    Fibers, Channels and Actors for the JVM (by puniverse)

    Third party options have been around for nearly a decade now: https://docs.paralleluniverse.co/quasar/

  • SonarLint

    Clean code begins in your IDE with SonarLint. Up your coding game and discover issues early. SonarLint is a free plugin that helps you find & fix bugs and security issues from the moment you start writing code. Install from your favorite IDE marketplace today.

  • murder

    Large scale server deploys using BitTorrent and the BitTornado library (by ervinb)

    using System.Text; using System.Text.Json; using System.Xml.Serialization; var s = """ Elliot https://facebook.com https://twitter.com https://youtube.com Fraser https://facebook.com https://twitter.com https://youtube.com """; using var reader = new StringReader(s); var users = (Users)new XmlSerializer(typeof(Users)).Deserialize(reader)!; var app = WebApplication.CreateBuilder(args).Build(); app.MapGet("/", async (c) => { c.Response.ContentType = "application/json"; c.Response.Body.Write(Encoding.UTF8.GetBytes(JsonSerializer.Serialize(users))); }); app.Run(); [XmlRoot(ElementName = "social")] public class Social { [XmlElement(ElementName = "facebook")] public string Facebook { get; set; } [XmlElement(ElementName = "twitter")] public string Twitter { get; set; } [XmlElement(ElementName = "youtube")] public string Youtube { get; set; } } [XmlRoot(ElementName = "user")] public class User { [XmlElement(ElementName = "name")] public string Name { get; set; } [XmlElement(ElementName = "social")] public Social Social { get; set; } [XmlAttribute(AttributeName = "type")] public string Type { get; set; } } [XmlRoot(ElementName = "users")] public class Users { [XmlElement(ElementName = "user")] public List User { get; set; } }

  • git-vanity-hash

    CLI tool for creating commit hashes with a specific prefix

    The answer is "pretty easy". Go just import git stuff, most usually straight from github, maybe with some tags (which can be replaced) or date time and some commit prefix (It's also pretty easy to generate new commit with same prefix).

  • rust

    Empowering everyone to build reliable and efficient software.

    So for instance the bare-bones of the features used to be in the std (nightly), but it was considered too much work and unnecessary for std, as crossbeam-channel has it, and so does e.g. tokio (though tokio's is a lot more general as it's designed to work on futures not just channels, and has features like guards).

  • logrus

    Structured, pluggable logging for Go.

    Like, for example, some projects importing logrus with a capital L and some with a lowercase L, and go modules having no way to reconcile the two: https://github.com/sirupsen/logrus/issues/553

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts