portkey 2018-11-30

just listened to Stuart Hallowayโ€™s talk

and now really excited about todays โ€œAWS, meet Clojureโ€ talk ๐Ÿ™‚

which starts in an hour I guess

baptiste-from-paris 2018-11-30T13:23:49.002Z

sad also

baptiste-from-paris 2018-11-30T13:23:50.002200Z

lol

baptiste-from-paris 2018-11-30T13:23:58.002500Z

mixed feelings

yeah well, really a teaser

the lately added Datafy protocol is a center part of the mix

baptiste-from-paris 2018-11-30T13:24:51.003800Z

datafy = ?

(defprotocol Datafiable
  (datafy [o] "return a representation of o as data (default identity)"))

baptiste-from-paris 2018-11-30T13:26:52.004700Z

ok

not sure yet, but with that one could make the java stuff more data-like

if the idea with aws-clj-sdk is to go and make aws http apiโ€™s more like data, then Datafiable can just benifit from that work

thereโ€™s the concept of Navigable too

which would allow seeking (might allow paging too)

anyway, quite exciting

not yet sure if their idea is to work on operating on the pure material (xml/json etc.) of the http apiโ€™s though

well anyway, have to watch the presentation at some point in near future ๐Ÿ™‚

baptiste-from-paris 2018-11-30T13:31:16.009Z

lol

baptiste-from-paris 2018-11-30T13:31:19.009200Z

great

baptiste-from-paris 2018-11-30T13:32:00.010Z

iโ€™ll have at least 4 weeks off, just tell me if I finish the project or not ๐Ÿ˜…

if @viesti is right on the money then it means they use datafy over AWS java libs

so axs-clj-sdk has still value proposition of being pure clojure and cljs

I was a bit wary of saying that, but the java libs have quite much stuff in them which is valuable and aws-clj-sdk still has itโ€™s value proposition

so if that is the case, there is just novel work, no losers here

baptiste-from-paris 2018-11-30T16:57:26.013600Z

๐Ÿ˜ญ๐Ÿ˜ญ๐Ÿ˜ญ๐Ÿ˜ญ๐Ÿ˜ญ๐Ÿ˜ญ๐Ÿ˜ญ

baptiste-from-paris 2018-11-30T16:57:27.013700Z

hmm so traveling back from company little Christmas party still today, can I bear watching the presentation in train? :)

baptiste-from-paris 2018-11-30T17:32:35.016100Z

๐Ÿ˜‚

baptiste-from-paris 2018-11-30T17:32:44.016400Z

Must be interesting anyway

hmm so Datafy on ClojureScript, there's the question on amount of work bridging JS to Datafy

thinking that one artifact is an upside too

anyways we hit a spot :)

baptiste-from-paris 2018-11-30T17:39:19.021200Z

Datafy is on cljs ?

well the protocol is in a clj file

don't know the story of cljc in core actually

baptiste-from-paris 2018-11-30T17:42:15.022600Z

Ok

baptiste-from-paris 2018-11-30T17:42:37.023300Z

Didnโ€™t watched aws, I think Iโ€™ll wait after London ^^

hmm, didnโ€™t yet find Davidโ€™s recording

bracing myself

next slide is the one that @baptiste-from-paris referenced

anyway we got onto a slide in the Conj ๐Ÿ™‚

hmm, this isnโ€™t just Datafy over Java classesโ€ฆ I hopeโ€ฆ

baptiste-from-paris 2018-11-30T20:13:14.026100Z

Lol

ahaa, David found js, ruby and go sdkโ€™s with service descs

baptiste-from-paris 2018-11-30T20:14:20.026800Z

?

you did not watch the whole talk? ๐Ÿ™‚

Iโ€™m progressing slide by slide

baptiste-from-paris 2018-11-30T20:15:20.027900Z

Nope

baptiste-from-paris 2018-11-30T20:15:27.028300Z

Having a drink with friends

baptiste-from-paris 2018-11-30T20:15:34.028700Z

I geeked all week ;-)

you not dare? ๐Ÿ™‚

baptiste-from-paris 2018-11-30T20:15:40.029100Z

Lol

in a train back to home, have to decide if I drink something to my misery or get enlightened after this ๐Ÿ™‚

they (Cognitect) started in 2015

11 people involved

baptiste-from-paris 2018-11-30T20:22:06.032Z

Lol

I havenโ€™t watched it but I guess you (@viesti and @baptiste-from-paris) can be proud.

com.cognitect.aws/api

you too ๐Ÿ™‚

Christophe ๐Ÿ™‚

they too use the other sdkโ€™s for models to generate clojure artifacts

man oh man, If Iโ€™d just had really promoted this in my company, thereโ€™s so many people getting betting on AWS, just that not that many on particularly on Clojure

baptiste-from-paris 2018-11-30T20:25:25.035400Z

Real question is : can we be better at it

Iโ€™m 16min in the presentation still

baptiste-from-paris 2018-11-30T20:27:25.037300Z

Humm, seems our lib is better ^_^

(api/ops s3-client) is like (amazonica/show-functions)

we have specs

cider-browse-specs rules here

we even have docstrings

(ok, not for all apiโ€™s but anyway)

ah, but they have specs

(me: interlude, where are spec dosctrings)

they have pay-as-you-go, docs/specs get loaded during call, not on require

lower-level response in metadata, it seems

not streaming, since the client they use (same http client as datomic uses)

baptiste-from-paris 2018-11-30T20:34:34.041800Z

๐Ÿ‘Œ

baptiste-from-paris 2018-11-30T20:34:41.042100Z

Thanks kimmo

baptiste-from-paris 2018-11-30T20:34:52.042600Z

Keep going with news ^^

yeah, not live but anyway ๐Ÿ™‚

retryable? predicate, can retry requests via throttling

(thinking that this is a โ€œRelease itโ€ book like addition)

seems there are more backpressure things, backoff retry

credential chain as normal, maybe nothing interesthing here, but for completeness sake, works in EC2 and containers

ok but for testing one can provide a :credentials-provider

(aws.async/invoke) gives back a channel

(now Christophe could chime in for async support :))

(def ddb (aws/client {:api :dynamodb}))

clojure -A:rebl...

(almost like clojure -A:rebel for Bruceโ€™s work)

wifi problems, demo effect continues

oh damn! wifi fails demo

would have demoed documentation navigation

library state is alpha

designed for dealing with services, no helpers (like aws-clj-sdk)

meaning that lacks stuff like the TransferManger in the Java S3 api which does multipart download in parallel

try it out! feedback!

jars in maven central

(I would have but Iโ€™m no there)

ack, he didnโ€™t repeat the questions

ahh, someone asked about versioning the apis

they generate clojure specs

Stu comes with a laptop

(Stu says this is supercool)

Stu takes the stage

comedy style of Stu finding a connnector for his laptop ๐Ÿ™‚

okay, he demoes the thing that I demoed with Emacs cider-browse-spec gif

caps lock remapped confuses David!

html as html (hrm, we have html to nice string)

ok, list tables in dymanodb, then get arn, Datafy the arn, turn that into table describe

Datafy the resouce, Nav throught it

(i.e. jump through all the AWS api)

baptiste-from-paris 2018-11-30T20:56:25.059600Z

So

baptiste-from-paris 2018-11-30T20:56:32.059900Z

Pros & cons

baptiste-from-paris 2018-11-30T20:56:43.060100Z

?

well the spec generation struct me

Datafy is something that didnโ€™t exist just until now

obviously we didnโ€™t know about it

I think David mentioned that this lib is in experimental use

but odds are that this will get more eyes on it than ours

didnโ€™t catch how many APIโ€™s they actually support

thinking that probably not API Gateway, for which Cristophe did a fair amount of work

0% tree src/cognitect/aws/protocols
src/cognitect/aws/protocols
โ”œโ”€โ”€ common.clj
โ”œโ”€โ”€ ec2.clj
โ”œโ”€โ”€ json.clj
โ”œโ”€โ”€ query.clj
โ”œโ”€โ”€ rest.clj
โ”œโ”€โ”€ rest_json.clj
โ””โ”€โ”€ rest_xml.clj

right off the bat, more protocols than we support

and since they release to maven, this lib has immediate user base

0% tree test/resources/aws-sig-v4-test-suite
test/resources/aws-sig-v4-test-suite
โ”œโ”€โ”€ get-header-key-duplicate
โ”‚   โ”œโ”€โ”€ get-header-key-duplicate.authz
โ”‚   โ”œโ”€โ”€ get-header-key-duplicate.creq
โ”‚   โ”œโ”€โ”€ get-header-key-duplicate.req
โ”‚   โ”œโ”€โ”€ get-header-key-duplicate.sreq
โ”‚   โ””โ”€โ”€ get-header-key-duplicate.sts

test suite might look familiar to Baptiste? ๐Ÿ™‚

baptiste-from-paris 2018-11-30T21:09:30.065200Z

Lol

baptiste-from-paris 2018-11-30T21:09:33.065400Z

Yep

baptiste-from-paris 2018-11-30T21:11:13.067200Z

But itโ€™s all good, the journey does count, not the destination and if I feel that I can bring something new with finishing the last protocol during Xmas Iโ€™ll do it

baptiste-from-paris 2018-11-30T21:11:31.067900Z

If not, fuck it, it was awesome anyway

my thoughts exactly, awesome anyway ๐Ÿ™‚

๐Ÿ‘Œ 1

I donโ€™t see HAL in the lib

wiggle that in to make the thing better

glad that this wasnโ€™t just glue over Java artifacts

but a proper datafying

I say we pat ourselves on the back in London, and continue the Clojure journey, wherever it leads us ๐Ÿ™‚

baptiste-from-paris 2018-11-30T21:17:03.070700Z

Amen

baptiste-from-paris 2018-11-30T21:17:06.070900Z

๐Ÿ™

hops off the train, catches a taxi an tries to get some sleep

baptiste-from-paris 2018-11-30T21:20:02.071200Z

Lol