go-proverbs / go-proverbs.github.io

Inspired by @rob_pike talk at Gopherfest SV 2015
MIT License
334 stars 21 forks source link

Add proverbs package to organization #34

Closed andriisoldatenko closed 5 years ago

andriisoldatenko commented 5 years ago

PoC https://github.com/andriisoldatenko/proverbs

go run github.com/andriisoldatenko/proverbs

Go Proverbs, by Rob Pike

Don't communicate by sharing memory, share memory by communicating.
Concurrency is not parallelism.
Channels orchestrate; mutexes serialize.
The bigger the interface, the weaker the abstraction.
Make the zero value useful.
interface{} says nothing.
Gofmt's style is no one's favorite, yet gofmt is everyone's favorite.
A little copying is better than a little dependency.
Syscall must always be guarded with build tags.
Cgo must always be guarded with build tags.
Cgo is not Go.
With the unsafe package there are no guarantees.
Clear is better than clever.
Reflection is never clear.
Errors are values.
Don't just check errors, handle them gracefully.
Design the architecture, name the components, document the details.
Documentation is for users.
Don't panic.

what do you think?

andriisoldatenko commented 5 years ago

@HarveyKandola what do you think?

HarveyKandola commented 5 years ago

Current website should be sufficient for reference purposes.

Not sure who will bother running package to get the proverbs list.

andriisoldatenko commented 5 years ago

inspired by https://www.python.org/dev/peps/pep-0020/ tl;dr

import this

or in golang

package main

import _ "github.com/go-proverbs/proverbs/pkg"

func main() {}
andriisoldatenko commented 5 years ago

asked in reddit, let's wait for feedback: https://www.reddit.com/r/golang/comments/d36ogv/what_do_you_think_to_add_something_similar_to/