- Code Review https://github.com/golang/go/wiki/CodeReviewComments
- Common Traps: http://go-traps.appspot.com/
- Channel Patterns http://www.slideshare.net/jgrahamc/go-oncurrency
- Go 4 Java http://talks.golang.org/2015/go-for-java-programmers.slide
- Crazy stuff http://talks.golang.org/2015/tricks.slide
- Go Race Detector https://golang.org/doc/articles/race_detector.html
(by @andrestaltz)
So you're curious in learning this new thing called Reactive Programming, particularly its variant comprising of Rx, Bacon.js, RAC, and others.
Learning it is hard, even harder by the lack of good material. When I started, I tried looking for tutorials. I found only a handful of practical guides, but they just scratched the surface and never tackled the challenge of building the whole architecture around it. Library documentations often don't help when you're trying to understand some function. I mean, honestly, look at this:
Rx.Observable.prototype.flatMapLatest(selector, [thisArg])
Projects each element of an observable sequence into a new sequence of observable sequences by incorporating the element's index and then transforms an observable sequence of observable sequences into an observable sequence producing values only from the most recent observable sequence.
package astar | |
import "container/heap" | |
type NodeQueue []Node | |
func NewNodeQueue() NodeQueue { | |
return make(NodeQueue, 0, 1000) | |
} |
package main | |
// overview of crqs.go: | |
// this example app and supporting documentation enables you to query analytics data via the Core Reporting API in a completely headless manner, with | |
// no "popup" or user intervention required. it doesn't "handle" the returned data very well, as that will depend on what metrics/dimensions your | |
// query has. better handling of this is left as an exercise for the reader. :) follow the pre-reqs, change the ga* consts specific to your own app, | |
// and you should be good to go. uses google-api-go-client, analytics/v3, oauth, and oauth/jwt which you can download and install from | |
// https://code.google.com/p/goauth2/ and http://code.google.com/p/google-api-go-client/ | |
// docs/pre-reqs: |
#!/usr/bin/env python | |
class Options: | |
critical_host = 'python.example.com' | |
service_state = "OK" | |
description = "parsing works" | |
long_output = "Yeah, I can still python" | |
options = Options() |
package main | |
import ( | |
"fmt" | |
"time" | |
) | |
type Message struct { | |
Timestamp time.Time | |
Client *Client |