Need help to learn go lang

233 views
Skip to first unread message

veeresh...@gmail.com

unread,
Jul 19, 2019, 9:39:03 AM7/19/19
to golang-nuts
would anyone help me out how to learn go lang more practically , may be some resources . I want to understand go lang more practically , with some great examples.

thank you!

Brian Hatfield

unread,
Jul 19, 2019, 9:46:14 AM7/19/19
to veeresh...@gmail.com, golang-nuts
Hi Veereshreddy!

Welcome to Go!

Here's a collection of links that I put together for some of my teammates who are new to Go:

Basics / Introduction to Go

GoByExample is a great resource if you've got experience with 2+ programming languages already. It quickly showcases langauge syntax and features, but is relatively spartan in its presentation.

The Little Go Book is a more thorough book-style approach to Go for folks with less diverse programming language experience, or for folks who find GoByExample to be too spartan.

The Golang Tour is the official interactive introduction to Go. It leverages the Go playground, which lets you run Go right in your web browser.

Intermediate Go

These links deal with the practicalities of writing Go, and encourage/discourage various implementation patterns observed in real world use.

Effective Go is officially provided documentation that gives tips for writing clear, idiomatic Go code. "Effective Go" is generally regarded in the Go community as particularly helpful.

Go Code Review Comments is a laundry list of common mistakes, not a comprehensive style guide. It's great for beginners and advanced programmers as it explains the rationale behind its guidance.

Practical Go: Real World Advice presents an excellent overview of the practice of software engineering in Go. Some overlap with Effective Go and Code Review Comments, but with more explanation and memorable quotes to describe patterns.


On Fri, Jul 19, 2019 at 9:39 AM <veeresh...@gmail.com> wrote:
would anyone help me out how to learn go lang more practically , may be some resources . I want to understand go lang more practically , with some great examples.

thank you!

--
You received this message because you are subscribed to the Google Groups "golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/golang-nuts/4cb7eae4-b6d2-4454-9d4a-2fe7790cf685%40googlegroups.com.

Brian Hatfield

unread,
Jul 19, 2019, 10:02:28 AM7/19/19
to Veeresh Reddy, golang-nuts
Veeresh,

Out of the links I provided, The Little Go Book is the closest to a "new programmer" book, but I don't think it really meets that need. Hopefully others on this list are aware of a good resource for "new to programming and want to try Go" and can link you to one!

Good luck,
Brian

On Fri, Jul 19, 2019 at 9:50 AM Veeresh Reddy <veeresh...@gmail.com> wrote:
Thanks much . To be honest I have not wrote any code so far but I wanted to start of with Go Lang . Pleade suggest me some accordingly .

Veeresh Reddy

unread,
Jul 19, 2019, 12:40:10 PM7/19/19
to Brian Hatfield, golang-nuts
Thanks much . To be honest I have not wrote any code so far but I wanted to start of with Go Lang . Pleade suggest me some accordingly .

On Fri, 19 Jul 2019, 7:15 pm Brian Hatfield, <bmhat...@gmail.com> wrote:

Michael Jones

unread,
Jul 19, 2019, 2:44:30 PM7/19/19
to Brian Hatfield, Veeresh Reddy, golang-nuts
Veeresh,

Welcome to the world of programming. It is a beautiful world and has been my joy for fifty years. It is magical to have a robot friend to multiply your abilities by millions of times. 

Learning about programming at the very start is a small group of tasks: learning a few details like “where do I type” and “how do I start it” and understanding the nature of the magic; unlike the Sourcer’s Apprentice in Fantasia you can’t just point, the robot is faithful but not so smart. You may be surprised at the need to give very simple commands. 

Many people learn best by example. The Golang Tour that Brian mentioned has this virtue. Not only can you see what’s happening, but you can type changes right there to try it your way. Give that a quick look. 

I’ve taught students/classes but long ago. I do not know what’s the best “new person learning to program a computer” guide out there now, or if any of those use Go as their environment. I learned alone in the 4th grade (age ten) using grim tools for a child (keypunch, FORTRAN, big computer centers) — so whatever you do will be better!

It is not hard, is fun, and offers many rewards. 

Good luck,
Michael

--
Michael T. Jones
michae...@gmail.com

Ronny Bangsund

unread,
Jul 19, 2019, 6:24:53 PM7/19/19
to golang-nuts
Brian's list is good.

I started with the tour and picked relatively simple tools I wanted to write, then looked up what I needed as projects advanced. My list of GitHub Go projects is getting unwieldy now, a few years later. It's an addiction. Just start with simple projects and set some increasingly advanced goals as you learn. It doesn't matter if you're recreating something that exists if you're learning from it.

Reading the docs for the included packages should give you an idea of what's built in, and it covers a lot. The basics to fetch and serve HTTP, sending mail, doing RPC and most of what you're likely to need in crypto, although sometimes a 3rd party may provide an easier/better way to do things. If you're building web servers you may need some middleware too (neater REST endpoint setup, authentication, rate-limiting).

There's a newbie channel on the Gopher Slack (you have to join it manually, as you only start with #general) where you should be able to get some help with specifics. Just start something and ask as you get stuck!

Leo R

unread,
Jul 20, 2019, 1:17:01 PM7/20/19
to golang-nuts
Two books immediately come to mind 
(1)  Donovan & Kernighan "The Go Programming Language", 2016
(2) Tapir Liu "Go 101", 2019   [https://go101.org/]

Book (1) is to Go what K&R is to C. The book (2) is a useful complementary exposition. Both books assume some familiarity with programming in general.

Hope it helps,
--Leo

Jason E. Aten

unread,
Jul 21, 2019, 8:27:19 PM7/21/19
to golang-nuts
This is my outline of beginner hints:

https://github.com/glycerine/thinkgo

David Riley

unread,
Jul 21, 2019, 8:34:07 PM7/21/19
to Veeresh Reddy, Brian Hatfield, golang-nuts
This may be a controversial opinion on this list (maybe it's not, I don't know), but I've never thought Go is a particularly good first language. It's an *excellent* language, but I've always said the same thing about it as I did about C/C++ and Java: there's just a touch too much arcana for it to be particularly beginner-friendly. Much of that is because it's aimed squarely at experienced programmers and isn't meant to have training wheels which eventually hem you in.

But I'm biased; I grew up using BASIC on Apple IIs, which was a really great introduction to programming. I feel like the modern equivalent to that is Python or Ruby, or anything where you don't really need to declare a special function that happens to be the thing that runs first. After learning the basics of programming (what's a loop? what's a conditional? how do I write something to the console?), Go makes a very good second language, and tour.golang.org makes a great introduction. But it does assume some prior programming knowledge.

If you'd like, I'd be happy to point you toward some good tutorials and/or books. But that's decidedly out of scope for this list.


- Dave
> To view this discussion on the web visit https://groups.google.com/d/msgid/golang-nuts/CAEZF3R8FQ%2BL2z3O7W0nTJZidj%3DyQPCxEFQmwStikeodP2iN0rQ%40mail.gmail.com.

Everton Marques

unread,
Jul 23, 2019, 11:59:31 AM7/23/19
to golang-nuts

Em sexta-feira, 19 de julho de 2019 10:39:03 UTC-3, veeres...@gmail.com escreveu:
would anyone help me out how to learn go lang more practically , may be some resources . I want to understand go lang more practically , with some great examples.

thank you!

If you have basic understanding of Go, you could try Exercism:



Reply all
Reply to author
Forward
0 new messages