O organizador de conferências precisa de um sistema de gerenciamento para as conferências que ele administra, tanto para palestrantes quanto para participantes.
Centenas de palestrantes, dezenas de funcionários do evento, milhares de participantes
const TIMEOUT = 30 * time.Second | |
//Start a new http server with graceful shutdown and default parameters | |
func Start(l *logger.Logger, port string, handler http.Handler, options ...ServerOption) error { | |
srv := &http.Server{ | |
ReadTimeout: TIMEOUT, | |
WriteTimeout: TIMEOUT, | |
Addr: ":" + port, | |
Handler: handler, | |
} |
package main | |
import ( | |
"context" | |
"fmt" | |
"log" | |
"net/http" | |
"os" | |
"os/signal" | |
"syscall" |
package main | |
import ( | |
"fmt" | |
"time" | |
) | |
func main() { | |
errs := make(chan error, 3) | |
go upload(errs) |
We must explain the problem clearly and identify additional details that the team needs to know. We must here describe the context, what we did so far, and the current state.
The description also serves as a trail that we can go back to in the future to understand the reasoning we had at the time and see what restrictions and requirements have changed.
Devemos explicar o problema claramente e identificar detalhes adicionais que a equipe precise saber. Devemos aqui descrever o contexto, o que foi feito até agora e o estado atual.
A descrição também serve como uma trilha à qual podemos voltar no futuro para entender o raciocínio que tínhamos na época e ver quais restrições e requisitos mudaram.
//this way? | |
func CanSubscribe(userID int, courseID int) bool { | |
} | |
//this way? | |
func CanSubscribe(userID int, courseID int) error { | |
//if can't subscribe return an error | |
//if can return nil | |
//if there's an error, like a database connection error, return the error itself |
Dividir o texto entre página incial e o conteúdo
Criar novo conteúdo
hugo new post/2016-07-22-como-usamos-o-slack-na-coderockr.md
Testar localmente