Published Mar 20, 2024

SE Radio 608: Lane Wagner on Revisiting the Go Language

Lane Wagner unpacks the Go programming language's evolution, highlighting its high-impact features like generics and concurrency that bolster its simplicity and efficiency, while examining the community, developer experience, and its burgeoning future prospects.
Episode Highlights
Software Engineering Radio - the podcast for professional software developers logo

Popular Clips

Episode Highlights

  • Go Community

    Lane Wagner shares his admiration for the Go community, highlighting its growth and the vibrant ecosystem of podcasts and resources. He notes that Go's popularity has surged, especially with the release of generics and increased content from creators. The community is centrally managed by Google, which has both benefits and criticisms, but Lane appreciates the Go team's efforts so far 1. He recommends resources like Boot.dev, the "Tour of Go," and works by John Bodner and Bill Kennedy for those interested in learning Go 1.

       

    Developer Experience

    The developer experience with Go is notably enhanced by its fast compilation speed, which Lane Wagner describes as a significant productivity booster. Unlike languages like C or Rust, Go's compilation is quick, making it ideal for frequent deployments and continuous integration processes 2. Lane attributes this speed to Go's simplicity and the decision to avoid using LLVM, which typically slows down compilation 3. He emphasizes that while Go may not match the raw execution speed of C or Rust, its rapid compilation is a major advantage for developers.

       

    Future Considerations

    Looking ahead, Lane Wagner identifies potential improvements in Go, particularly in its type system. He mentions the lack of enums and union types as areas needing enhancement for safer code practices 4. Lane also discusses the challenges Go faces in embedded systems due to its static linking approach, which contrasts with the dynamic linking used in languages like C and Rust 5. Despite these challenges, he remains optimistic about Go's future developments and its continued evolution.

Related Episodes