Skip to main content

  • It may seem odd to write 

      
    req := req 
      

     but it's a legal and idiomatic in Go to do this. You get a fresh version of the variable with the same name, deliberately shadowing the loop variable locally but unique to each goroutine.

  • Unbuffered channels combine communication—the exchange of a value—with synchronization—guaranteeing that two calculations (goroutines) are in a known state.
  • The rule about pointers vs. values for receivers is that value methods can be invoked on pointers and values, but pointer methods can only be invoked on pointers. 

      

     This rule arises because pointer methods can modify the receiver; invoking them on a value would cause the method to receive a copy of the value, so any modifications would be discarded. The language therefore disallows this mistake. There is a handy exception, though. When the value is addressable, the language takes care of the common case of invoking a pointer method on a value by inserting the address operator automatically. 

5 more annotations...

  • And finally, companies should make this part of their DNA, their everyday culture and language. OKRs, whether at the corporate level or the individual contributor level, should be visible throughout the company. New employees should receive formal training on the OKR system. That’s how we make the system successful and sustainable.
  • Goals must be supported by the entire organization. Every team and working group should agree on their goals and priorities.
  • Goals must be measurable or have quantifiable targets.

2 more annotations...

1 - 20 of 2202 Next › Last »
20 items/page

Highlighter, Sticky notes, Tagging, Groups and Network: integrated suite dramatically boosting research productivity. Learn more »

Join Diigo