talked on https://golangtokyo.connpass.com/event/129067/

talked on https://golangtokyo.connpass.com/event/129067/
tl;dr Goã§CLIã®ãã¼ã«ãä½ãã¨ããçãããã©ã°ãã©ãå®è£ ãã¾ããï¼ æ¨æºã®flagããã±ã¼ã¸ã§ã·ã³ãã«ã«ãã¾ããï¼ ããã¨ãCLIã³ãã³ãã©ã¤ãã©ãªã§è¤éã§ãªãããªã¢ãã³ã³ãã³ãã«ãã¾ããï¼ ä»åã¯ããã¤ãããCLIã³ãã³ãã©ã¤ãã©ãªããããã©ã°ãå¶å¾¡ããã©ã¤ãã©ãªã«çç®ãããã¨æãã¾ãã ã¾ãæå§ãã«æ¨æºã®flagããã±ã¼ã¸ãè¦ãä¸ã§ãåã©ã¤ãã©ãªã¯ä½ã解決ãããã®ããã©ã®ãããªæ¹æ³ã§è§£æ±ºãããã¨ãã¦ããã®ãã ãã®æ©ä¼ã«ã¡ãã£ã¨çºãã¦éãã§ã¿ããã¨æãã¾ãã Goæ¨æºflagããã±ã¼ã¸ Go製ã®CLIãã¼ã«ãè¦ã¦ããã¨ãã©ãããµã¼ããã¼ãã£ã©ã¤ãã©ãªã使ã£ã¦ããæ¹ãå¤ãå°è±¡ãåãã¾ãã ãã®ã³ãã³ããä¸èº«ã©ããªã£ã¦ããããªã ã¨è¦ã«è¡ãã¨ãã»ã¨ãã©ã®ãã¼ã«ã¯æ¨æºflagããã±ã¼ã¸ã§ã¯ãªãããµã¼ããã¼ãã£ã©ã¤ãã©ãªãã¤ãã£ã¦ãã¾ãã Goå ¬å¼ãã¼ã«ããå¤ãã«ä½ããããã¼ã«ãªã©ã¯
ãã®è¨äºã¯ãBASE Advent Calendar 2018ã24æ¥ç®ã®è¨äºã§ãã devblog.thebase.in ã¯ããã« BASEã§ã¨ã³ã¸ãã¢ã¨ãã¦ã¤ã³ã¿ã¼ã³ããã¦ããæ± ç°ã§ããä»æ¥ã¯ã¯ãªã¹ãã¹ã¤ãã¨ãããã¨ã§ã以åããæ°ã«ãªã£ã¦ããã°ãªã¥ã¼ã¯ã¤ã³ï¼ãã¤ãã®ã¯ãªã¹ãã¹ã«æ¬ ãããªããããã¯ã¤ã³ï¼ãã¯ãªã¹ãã¹ãã¼ã±ããã«é£²ã¿ã«æ¥ã¦ãã¾ãã æ®æ®µã¯BASE BANKã¨ããBASEã®100%åä¼ç¤¾ã«ã¦éèäºæ¥ã®ç«ã¡ä¸ããè¡ã£ã¦ãã¾ããBASE BANKã®ãããã¯ãã®APIã¯Goã使ã£ã¦æ¸ããã¦ããã®ã§ãããBASEã§ã®Goã®ä½¿ç¨ã¯ãã®ããã¸ã§ã¯ããåã ã£ãã®ã§ãéçºåºç¤æ´åã®ä¸è²«ã§æ§ã ãªlinterã®å°å ¥ãè¡ãã¾ããããã®éã«linterã®å é¨ãã©ããªã£ã¦ãããã«èå³ãæã¡ããããç°¡åãªlinterã®ä»çµã¿ãå®éã«ä½ã£ã¦ã¿ãã®ã§ãä»åã¯ãã®ç¥è¦ãã話ããã¾ãã Goã¨éç解æ Goã«ã¯
Gitãªã©ã®VCSããcloneãããã¼ã«ã«ãªãã¸ããªãã©ã管çããã®ãããæããªã®ããããããããªãããªãã¨ãªãèªå·±æµã§ãã£ã¦ãããããã£ã¨ããæ¹æ³ãç¥ãããã tl;dr - ãã£ã¬ã¯ããªã¬ã¤ã¢ã¦ããgolangã®ä½æ³ã«åããããã¹ã¦ã®ãªã¢ã¼ããªãã¸ããªãghqã使ã£ã¦cloneããpercolã使ã£ã¦ç°¡åã«æ¤ç´¢ã§ããããã«ãã¾ãããã 追è¨: ãã¾ãªãpercolã®ä»£ããã«pecoã¨ãããã¼ã«ã使ãã®ãããã§ããããã¨ããããåã¯ãããã¦ãã¾ããè¨å®æ¹æ³ã¯ãã®ã¨ã³ããªã¨ã»ã¼åæ§ã®å 容ã§ãããã¨æãã¾ãã èæ¯ ãããªèª²é¡ãæ±ãã¤ã¤ããç¹ã«ãªã«ããããããã§ããªãæ¥ã æ®ããã¦ããæãRebuild: 42: When in Golang, Do as the Gophers Do (lestrrat)ã§@lestrratããããGoã®ãä½æ³ã«ãä»ã®è¨èªã®ãªãã¸ããªãå«ãããã¹ã¦ãããã
TL;DR forkå ï¼ãªãªã¸ãã«ï¼ãgo getãã¦ãã®ä¸ã§ä½æ¥ï¼forkããèªåã®ã¬ãã¸ããªã«pushãã¦Pull Requestãéãï¼ åé¡ Githubä¸ã®Goè¨èªã®ããã¸ã§ã¯ãã«ã³ãããããã¨ãï¼cloneã®ä»æ¹ã§è¥å¹²ããããã¨ãããï¼æ®éã®OSSããã¸ã§ã¯ãã®å ´åã¯ï¼forkãã¦ãããcloneãã¦pushï¼Pull Requestã¨ããã°ããï¼Goè¨èªã®ããã¸ã§ã¯ãã§ã¯ï¼åãã¬ãã¸ããªã®ä¸ã§ããã±ã¼ã¸ãåãï¼ãããimportãã¦ä½¿ã£ã¦ããã®ãããï¼ããããå ´åã«forkãããã®ããã®ã¾ã¾cloneããã¨ï¼importã®åç §å ãforkå ã®ååã«ãªããããï¼ ä¾ãã°ï¼github.com/someone/toolãããã¨ããï¼ãã®ã¬ãã¸ããªã¯github.com/someone/tool/utilsã¨ããå¥ããã±ã¼ã¸ãæã£ã¦ããï¼mainãããã使ã£ã¦ããã¨ããï¼ã¤ã¾ã以ä¸
OSSç´¹ä» Advent Calendar 2017 - Qiita 18æ¥ç®ã®è¨äºã§ãã(ä¸é±éé ã) Amazon ECS ã¸ã®ãããã¤ãã¼ã« ecspresso ã¨ãããã§ä½¿ã£ã¦ããç°å¢å¤æ°ãå±éãã¤ã¤è¤æ°ã® YAML/JSON/TOML ãèªã¿è¾¼ã config loader ã§ãã go-config ã®ç´¹ä»ããã¾ãã ecspresso github.com ãã¨ã¹ãã¬ãã½ãã¨èªã¿ã¾ããGo ã§æ¸ããã Amazon ECS ç¨ã®ãããã¤ãã¼ã«ã§ãã以ä¸ã®3ã¤ã®ãã¡ã¤ã«ãç¨ã㦠ECS ã¸ã®ãµã¼ãã¹ãã¿ã¹ã¯å®ç¾©ä½æãå ¥ãæããè¡ãã¾ãã YAML ã®è¨å®ãã¡ã¤ã« ã¿ã¹ã¯å®ç¾©ã®ããã® JSON (aws ecs describe-task-definition åºåã¨äºæ) ãµã¼ãã¹å®ç¾©ã®ããã® JSON (ãªãã·ã§ã³ãaws ecs describe-services åºåã®
ã¯ã©ã¦ããµã¼ãã¹ã®ãªã½ã¼ã¹ç®¡çãã³ã¼ãåã§ããTerraformãã¨ã¦ã便å©ã«ä½¿ã£ã¦ããããã©ããªã½ã¼ã¹ã®ç¨®é¡ã«ãã£ã¦å½ç¶ãªããæ¸ãã¹ãå 容ãç°ãªããªããªãã¹ã ã¼ãºã«æ¸ããã¨ãã§ããªãã Provider: AWS - Terraform by HashiCorp ä¾ãã°èªåããã使ãAWSã ãã§ãããã®ãªã³ã¯å ã«æ¸ããã¦ããã ãã®ãªã½ã¼ã¹ã®ç¨®é¡ãæ¸ãæ¹ããããããã¦æ©è½ããµã¼ãã¹ãå¢ãããã¨ã«ããªã½ã¼ã¹ã®æ¸ãæ¹ãã©ãã©ãå¤æ§åãã¦ãããä»ã¯ããããã¡ãã¡ã¦ã§ãä¸ã§æ¸ãæ¹ã確èªããªããTerraformãæ¸ãã¦ãããã ãã©ãã¡ãã£ã¨æéãå¤ããªã¨ããæ°ããã¦ããã åæ§ã«Infrastructure as Codeã®ãã¼ã«ã§ããAnsibleã«ã¯ãansible-docã¨ããã³ãã³ãããã£ã¦ãããã¥ã¡ã³ããã³ãã³ãã©ã¤ã³ä¸ã§è¦ããã¨ãã§ããããã«ãªã£ã¦ããã $ ansible-doc f
ããGoã§èª¤è§£ããããã¤ã³ãã«ã¤ãã¦å人çãªè¦è§£ãæ¸ãã¦ããã¾ãã ä»åã®è¨äºã¯Goã¢ããã³ãã«ã¬ã³ãã¼2017 ãã®3ã®20æ¥ç®ã®è¨äºã§ãã 使ã£ã¦ãªãããã±ã¼ã¸ãã³ã³ãã¤ã«ã¨ã©ã¼ã£ã¦é¢åãããï¼ ãã£ãã¨goimportsãgoreturnsãä¿åæã«èªåå®è¡ããã¨ãã£ã¿ç°å¢ã使ãã¾ãããã gofmtãä¸ç·ã«å®è¡ããã¦ãããã¨ãããã§ããï¼ ã¤ã³ã¿ã¼ãã§ã¼ã¹ãnilå¤å®åºæ¥ãªããã¿ã¼ã³ãããã®ãã¡ãããï¼ æåã¯ç§ãããæãã¾ãããããããtyped-nilãnilãªãã©ã«ã¨æ¯è¼ã§ããªããªã£ãã®ã¯ ãnilå¤å®ãµãã£ãã¾ã¾interfaceåã«å¤æãããããã§ãµãããªããã°å ¨ãåé¡ã«ãªããªãã®ã§ãã map,sliceãä¸ä¾¿ï¼ map,sliceã¯ã¡ã½ãããä¸åããã¾ããã 極è«ãããã¨Goã®ããªããã£ãåã¿ãããªãã®ãªã®ã§ãã ã¦ã¼ã¶ã¼ã欲ãããã®ã¯mapãsliceãé§ä½¿ãã¦åèª
go-shebang-story.md Story: Writing Scripts with Go This is a story about how I tried to use Go for scripting. In this story, Iâll discuss the need for a Go script, how we would expect it to behave and the possible implementations; During the discussion Iâll deep dive to scripts, shells, and shebangs. Finally, weâll discuss solutions that will make Go scripts work. Why Go is good for scripting? Whi
â ã¤ãã³ãæ¦è¦ Goè¨èªå ¥éè ã®LT大ä¼&æ親ä¼ã§ãã æè¿Goã«ããã£ã¦ããæ¹ãããããGoè¨èªãæ·±ãã¦ãããã¨ããæ¹ããã²éã¾ã£ã¦ãGoè¨èªã®ãããããã£ãããããã好ãã«ãªã£ããããããã²ã£ããããããããªã©ãGoè¨èªãå§ããã«ããã£ã¦ã®ç¥èãå ±æãã¾ãããã ãã¡ãã®ãã³ãºãªã³ãªã©ã§åãã¦Goè¨èªã触ã£ãï¼ã¨ãã人ã®çºè¡¨ã®å ´ã«ãªãã°ã¨æã£ã¦ãã¾ãã â ã²ã¹ãè¬æ¼è ç´¹ä» ä¸ç°æä¹æ°ã@tenntenn ã¡ã«ã«ãªï¼ã½ã¦ã¾ã¦æå±ããµã¼ããµã¤ãã¨ã³ã¸ãã¢ã¨ãã¦æ¥ã Goãæ¸ãã¦ãããGo Conference主å¬è ãGopherCon2016ã¹ãã¼ã«ã¼ã大å¦æ代ã«Goã«åºä¼ãããã以æ¥ã®ããè¾¼ãã社å å¤ã§èªãåå¼·ä¼ãéå¬ããGoã®æ®åã«åãçµãã§ããããã¹ã³ããã®Gopherã®çµµãæãã®ã好ãã â ã¤ãã³ã対象è ããæè¿Goè¨èªãå¦ã³å§ããã°ããã®æ¹ ãã¾ã«Goè¨èªä½¿ããããã§ããã¾ã§è©³ã
å é±æ«ãä»äºã§æ±äº¬ã«è¡ãæ©ä¼ããã£ã¦ãå¾å¾©ã®æ°å¹¹ç·ã®ä¸ã§ã¾ã¨ã¾ã£ãæéãåãããªã¨æã£ã¦Goè¨èªã«å ¥éãã¦ãã¾ãããGoè¨èªã«å ¥éããçç±ã¯ ä»äºã§æ®éã«ä½¿ã(mackerel-agentãªã©) è·å ´ã§è©å¤ããã ä¸å¹´ã«ä¸åã¯æ°ããè¨èªãåå¼·ãããã£ã¦ããã¢ã¬ ãªã©ãªã©ã§ããæ¬ãtour of goãèªãã ãã ã¨ãã¾ãé ã«å ¥ã£ã¦ããªãã®ã§ãè¤ééããç°¡åéããªãä¾ããããã¨ãããã¨ã§å¹³ååãã¼ã»ãããã³ã§äºå¤åé¡ãæ¸ãã¾ãã(ãã¡ã¤ã«ã®èªã¿è¾¼ã¿ãæååæä½ãã¹ã©ã¤ã¹ãMapã®åºæ¬çãªæä½ãstructã®ä½¿ãæ¹ãªã©ãã¡ãã£ã¨èº«ã«ä»ã)ãPerlã«åå ¥éãScalaãåå¼·ããã¨ãããã®ãã¿ã ã£ãã®ã§ãå®çªã«ãªã£ã¦ãã¤ã¤ãããã³ã¼ãã¯ãã®è¾ºã«ç½®ãã¦ã¾ãã https://github.com/syou6162/go-perceptron/blob/master/main.go ã¡ãã£ã¨å°ã£ãç®æ
ã¯ããã« ããã«ã¡ã¯ãGoçã®éª¨ç¤è·äººã§ããbuildersconã«mattnããããããã¦ããã¨ãããã¨ã§çmattnããã«è¬è¦ãããã£ãã®ã§ããã諸äºæ ã§ãã®æ¥ç¨ã¯ã©ããã¦ãé½åãã¤ãããåå ã§ããªãã£ããã¨ãé常ã«æ®å¿µã§ãã¾ã§ãæããã§ãã¾ãã ãã¦ãGoã¯å®å®ãã¦éçºãé²ãã§ããããã¾ã¯å®å®ãã¼ã¸ã§ã³ã1.8ã«ããªããã¨ããã¨ããã§ããã»ã«ããã¹ãã£ã³ã°ã1.5ã§éæããGCã®é«éåãé 調ã«é²ãã§ããä¸ããã¾ã ã«Goã®åé¡ã¨ãã¦æãããããã®ã¨ãã¦ãããã±ã¼ã¸ãã¼ã¸ã§ã³ã®ç®¡çããããã¾ããä»æ¥ã¯ãã®è¾ºã®è©±ããããã¨æãã¾ãã TL;DR go ããã±ã¼ã¸ã使ã£ã¦ãèªåãã¡ãæ¸ããã³ã¼ããä¾åãã¦ãããã±ã¼ã¸ãæããã«ããä¾åå ããã±ã¼ã¸ã®æ´æ°ã«è¿½å¾ãã¦ãããã åç½®ã 以ä¸ã®è©±ã¯Goããããã¯ã·ã§ã³ã§ä¸è¦æ¨¡ã大è¦æ¨¡ã«å©ç¨ãã¦ããç°å¢ãæ³å®ãã¦ãããç´°ããªéããããããã±ã¼ã¸ã®ã¿ãé
Google App Engineï¼GAEï¼ã§ Go 製ã®ã¦ã§ãã¢ããªãåããããã£ã話ããã£ãºãåããã¦ã¿ã㨠GAE/Go ã¯ã¦ã§ãã¢ããªãåããç°å¢ã¨ãã¦ã¯ã¨ã¦ãããããã ãä¸éå端ãªç¥èã ãã§å§ããã¨éçºè ã¨ãã¦ã¯ã¤ã¾ãããã¨ãå¤ãã£ãã®ã§ãåããã«ããç¹ãã¾ã¨ãã¦ããã Google App Engine Go Standard Environment ã«ã¤ã㦠goapp 㯠$GOPATH 以ä¸ãã¢ããªã±ã¼ã·ã§ã³ã®ã½ã¼ã¹ã¨ãã¦ã¢ãããã¼ãï¼ã³ã³ãã¤ã«ãã goapp ã¯ããã¸ã§ã¯ãã«ã¼ã以ä¸ã®ã½ã¼ã¹ã³ã¼ãããã¹ã¦ã³ã³ãã¤ã«ãããã¨ãã go-app-builder: Failed parsing input: parser: bad import "syscall" in ... go-app-builder: Failed parsing input: app file x
Mackerel Advent Calendar 2015ã®12æ¥ç®ã§ããæ¯è¼çãããå 容ã«ãã¾ãããæ¨æ¥ã¯ãã¦ã«ããããã§ããã ãã®è¨äºã«ã¤ã㦠件ã®éããmackerelã®ãã§ãã¯ãã©ã°ã¤ã³ã«ã¤ãã¦ãåèªèº«ãæ¥åã§ã¯ç£è¦ã·ã¹ãã ã®ä¸æ ¸ã¨ãã¦Mackerelãæ¡ç¨ãã¦ãã¦ã主é¡ã®go-check-pluginsãmackerel-agent-pluginsã«ããã¤ãã®ã³ã³ããªãã¥ã¼ããããã¦ããã ãã¦ããã¾ããä»åã¯go-check-pluginsã®ãã©ã°ã¤ã³ä»æ§ãããä½æ³ãããç°¡åã«è§£èª¬ãã¾ããgolangã§ãã§ãã¯ãã©ã°ã¤ã³ãæ¸ãã¦ã¿ããã¨ãã人ã®ä¸å©ã«ãªãã°å¹¸ãã§ãã go-check-plugins ãã§ãã¯ãã©ã°ã¤ã³ã®éçºã«ã¯ããã¤ãã®ã«ã¼ã«ã¨ãä½æ³ãããã¾ãããã£ããè¨ãã¨æ¬¡ã®ãã¤ã³ããæ¼ãããã¹ãã ã¨æã£ã¦ãã¾ãã exit code å ¬å¼HPã«ã解説ãããã¾ãããããã
GitHub - kohkimakimoto/cofu: Minimum configuration management tool written in Go.github.com Cofuã¨ãããµã¼ããããã¸ã§ãã³ã°ãã¼ã«ãGoã§å®è£ ãã¾ãããItamaeãåèã«ä½ãã¾ãããå®è£ è¨èªã®éãï¼Itamaeã¯Rubyã«ããå®è£ ï¼ã¯ããã¾ãããå¤é¨ä»æ§ãå é¨å®è£ ãå ±ã«ããªãä¼¼ãã¦ä½ã£ã¦ããã®ã§ãItamaeã¾ãã¯Itamaeãåèã«ãã¦ããchefã使ã£ããã¨ãããã¨ãç解ã¯ç°¡åãã¨æãã¾ããç¹å¾´ããã£ãã説æããã¨ã ãã¼ã«ã«ã§ã®ãããã¸ã§ãã³ã°ã®ã¿å¯¾å¿ãSSHãªã©ã§ã®ãªã¢ã¼ããµã¼ãã®ãããã¸ã§ãã³ã°ã¯ãµãã¼ãããªã Goãªã®ã§å®è¡ãã¡ã¤ã«ä¸åã§åããå°å ¥ãç°¡å ã¬ã·ãã¯Luaã®DSLã§è¨è¿°ãã ä»ã®ã¨ããåä½ãã©ãããã©ã¼ã ã¯RedHat(CentOS)ã®ã¿ããµãã¼ã ãããã§ããããã
æè¿ãã¹ã¿ãªã³ã°TCP/IP SSL/TLSç·¨ãæå·æè¡å ¥éãèªãã§ããï¼ç解ãæ·±ããããã«Goè¨èªã§æ¨æºã®cryptoããã±ã¼ã¸ã触ã/å®è£ ãèªã¿ãªããèªãã ï¼ cryptoããã±ã¼ã¸ã¯ä»ã®æ¨æºããã±ã¼ã¸ã¨åæ§ã«ç´ æ´ãããï¼Goè¨èªã«ã¯ã©ã®ãããªæå·åææ³ãå®è£ ããã¦ããã®ãå®ä¾ãå«ãã¦ãã£ã¨ã¾ã¨ããï¼ãªãæ¬æã«æ¸ããããªãã£ããã®ãå«ãå ¨ã¦ã®å®è£ ä¾ã¯tcnksm/go-cryptoã«ããï¼ å ±ééµæå· ã¾ãã¯å ±ééµæå·ãã¿ãï¼å ±ééµæå·ã¯æå·åã¨å¾©å·åã«åãéµãç¨ããæå·åæ¹å¼ã§ããï¼å ±ééµæå·ã¯ãããã¯æå·ã¨ã¹ããªã¼ã æå·ã®2種é¡ã«åãããã¨ãã§ããï¼ãããã¯æå·ã¯ç¹å®ã®é·ãåä½ã§æå·åãè¡ãæ¹å¼ã§ããï¼ã¹ããªã¼ã æå·ã¯ãã¼ã¿ã®æµããé 次å¦çãã¦ããæ¹å¼ã§ããï¼ Goè¨èªã«ã¯ãããã¯æå·ã¨ãã¦DESï¼Data Encryption Standardï¼ï¼DESãç¹°ãè¿ãtriple-D
ã©ã³ãã³ã°
ã©ã³ãã³ã°
ãç¥ãã
ãªãªã¼ã¹ãé害æ å ±ãªã©ã®ãµã¼ãã¹ã®ãç¥ãã
ææ°ã®äººæ°ã¨ã³ããªã¼ã®é ä¿¡
å¦çãå®è¡ä¸ã§ã
j次ã®ããã¯ãã¼ã¯
kåã®ããã¯ãã¼ã¯
lãã¨ã§èªã
eã³ã¡ã³ãä¸è¦§ãéã
oãã¼ã¸ãéã
{{#tags}}- {{label}}
{{/tags}}