An experimental, automatically generated set of AWS clients in Go
github.com
github.com
"(Apologies for the self-promotion, but it's at least on-topic.)
I just opened up this repo yesterday: https://github.com/stripe/aws-go.
It's really raw, but it uses the JSON API descriptions from botocore to generate Go clients for all 40 public AWS services."
As for aws-go, I had some APIs I needed to use and a machine-readable description of those APIs. The choice was pretty clear.
Helpful links: https://github.com/swagger-api/swagger-spec/blob/master/vers...
Powerful array of tools to enable wrappers for Go, Scala, Flash, Java, Objc, PHP, Python, Python3, Ruby, Node, and more. https://github.com/swagger-api/swagger-codegen
[1] https://bgentry.io/blog/2014/01/09/auto-generating-a-go-api-...
[2] https://github.com/pksunkara/alpaca
Update: Here's a link from [1] that may be closer to what you're looking for: http://json-schema.org/
Especially since they have bet so heavily on Docker which is built with golang.
I wonder if Amazon don't support golang directly because it's the Google language.
Source: I heavily contributed to boto in years past. It has progressed by leaps and bounds since then, but I still don't see it mentioned in the AWS blog posts when Ruby/Java/PHP get new shinies.
Boto has supported Python 3 since early August :)
After spending so much effort trying to get boto 3 to work with python 3 I completely gave up and re-wrote all my scripts in python 2. August isn't that far away.
Companies that provide programmable systems should be the first to provide SDK's, even for technologies not yet widely adopted. That goes for any company that provides something programmable.
Amazon appears to have no trouble at all justifying the massive development effort required for every new back end web service they build, but front end programming API access just isn't valued as much.
Honestly, is that really a surprise at all?
REST web services work well. Most languages have frameworks with excellent support for them.
Historically, the community has provided wrappers for popular APIs pretty quickly.
In the specific case of Go, it's still in early adopter territory. That means they are unlikely to have a problem using the raw APIs.
Their back end services make them money. Creating a Go API does not.
Makes it hard to justify investing development resources.
I did this in rough a week and a half of full-time work.
I'm more oriented that the language is new so is still hard to find devs without consider that is a very a big work port this huge amount of api.
For internal projects, situation is even worse and many of them are community-maintained.
Disclaimer: Amazon Employee.
There are many, many submissions of things written in many languages and they don't generally append "in Scala", "in JavaScript" or "in Julia", etc., unless it's a post specifically about the language features or experience of writing the given software in that language.
When it's a tool such as this, is there some reason why it matters to a user if an app was written in Go specifically? Are Go users just particularly zealous? Honest curiosity here.
(Put another way, you might want to take a moment to understand what the tool is before you use it as an excuse to complain about Go.)