Our product, Sourcegraph, lets software teams search and explore their code, so naturally we think a lot about how to help software teams…
This was originally a talk in February 2015 at FOSDEM and the Google Campus London meetup. You can watch the video here. This page is also a bit out-of-date by now. For the latest updates on Go kit, see gokit.io. The modern service-oriented enterprise What Go needs: a Go kit Let’s collaborate The modern enterprise ∞ When we read the word enterprise we probably think of older, slow-moving bureaucra
こんにちは。HDEクラウドプロダクト開発部 小本です。 昨年はGo言語が大盛り上がりでした。HDEでも新規サービスをGo言語で書いています。 しかし、先日リリースされたaws-sdk-goなどについては諸先輩方が書いてくださると思うので、 私は重箱の隅つつきのようなことを書こうと思います。 今日書くのは、私のチームではGo言語標準のlogを(多少のラッパー関数経由で)使っていたのですが、 実はLogrus(https://github.com/Sirupsen/logrus)が、かなり便利だったという話です。 標準のlogは貧弱 エラーレベル(Debug, Info, Warn, Error等)が無いのも問題ですが、 ログをPrintfなどで自分で整形しなければいけないのも問題です。 つまり・・・ // 悪い例1 log.Printf(`some error occured level=%
Have you ever wanted to write something that is highly concurrent, and performs as many tasks as you will let it, in parallel? Well, look no further, here is a guide on how to do just that, in Go! This isn't new For an absolutely riveting (to me) talk on concurrency patterns, I highly recommend watching the following videos: Concurrency is not Parallelism by Rob Pike is a good video to start with,
We’re using Go for some parts of the Gitorious project and one of the recently open sourced sub-projects written in Go is git-archive-daemon. It’s a scalable, high-performance HTTP API for serving archives of git repositories. While implementing this tool we noticed several apparent patterns emerge which are not specific to git archive generation and can be applied to other use cases. For example
7 minute read On the surface, Panda is a pretty simple piece of software – upload a video, encode it into various formats, add a watermark or change frame rate, and deliver it to a data store. Once you spend some time with it, it begins to show how complex each component can be – and how important it is to continuously improve each one. When Panda was first built, it worked beautifully, and it was
How to Dockerize a Golang Webapp With Postgres DB Dec 19th, 2014 I’ve been playing around with Docker recently and have decided to use it in the deployment of a Golang Negroni + Postgres webapp I’ve been working on. In order to ensure future scalability and to comply with best practices, this meant spinning up two docker containers, one for the app and another for the database and linking the two.
Atlas is a recently announced service by HashiCorp that provides a single platform to take an application from development through to production. The complexity of the problem makes Atlas a sophisticated web service that is composed of many moving pieces. This article covers the design of Atlas, and specifically the use case of pairing a front-end Rails application with a collection of Go microser
Andrew Gerrand 10 December 2014 Today we announce Go 1.4, the fifth major stable release of Go, arriving six months after our previous major release Go 1.3. It contains a small language change, support for more operating systems and processor architectures, and improvements to the tool chain and libraries. As always, Go 1.4 keeps the promise of compatibility, and almost everything will continue to
Introduction to Go 1.4 The latest Go release, version 1.4, arrives as scheduled six months after 1.3. It contains only one tiny language change, in the form of a backwards-compatible simple variant of for-range loop, and a possibly breaking change to the compiler involving methods on pointers-to-pointers. The release focuses primarily on implementation work, improving the garbage collector and pre
Not Another Go/Golang net/http Tutorial Before we get into it, I’d like to provide a little bit of a preface for the motivation behind writing this tutorial. A few months back, Brent Anderson created the meetup.com group for Minnesota’s own Go User Meetup; and, a couple months later, I set about organizing the group and events. One of our own members, Craig Erdmann, and his trusty sidekick Jen Raj
What follows is the text of my presentation, Functional options for friendly APIs that I gave at dotGo this year. It has been edited slightly for readability. I want to thank Kelsey Hightower, Bill Kennedy, Jeremy Saenz, and Brian Ketelsen, for their assistance in preparing this talk. I want to begin my talk with a story. It is late 2014, your company is launching a revolutionary new distributed s
Your Cody questions answered live! - September 2024Justin Dorfman October 10, 2024 Our livestream on September 16, 2024 unveiled exciting updates and future plans for Cody, including new features like Smart Apply and upcoming multi-file editing capabilities. Introducing OpenAI o1 for CodyAdo Kukic September 12, 2024 Experience the reasoning power of OpenAI o1 with Cody. Accurate algorithms, reliab
Golang: Convert JSON in to a useful struct. Raw JSON Input { "example": { "from": { "json": true } } } Go Struct Output package main type MyJsonName struct { Example struct { From struct { JSON bool `json:"json"` } `json:"from"` } `json:"example"` } Notes: Also supports loading from remote json via the src param. Example: http://json2struct.mervine.net?src=http://json2struct.mervine.net/example.js
Alex Payne wrote an excellent essay called Thoughts on Five Years of Emerging Languages. It called to mind something I wrote a while ago for a limited audience that I never got around to turning into a public form. Thanks to Manuel Chakravarty for the link and the inspiration. For those who read my blog for Cocoa (and recently Swift) discussion, you may be surprised that most of my professional wo
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く