Also wanted to get your thoughts in terms of any p...
# pact-plugins
p
Also wanted to get your thoughts in terms of any preferred programming languages for these pact plugins in general. In the documentation, there was a suggestion to choose a language (like golang or rust) which can be compiled to create a single executable to multiple languages. Are those type of languages strongly recommended for plugins or they don’t matter too much?
y
we recommend languages that cross compile easily into a single binary, and don’t require end user intervention just for each of use. The pactflow supported plugins are most likely to be written in Rust like https://github.com/pactflow/pact-protobuf-plugin just due to @uglyog being in Rust land most of the time. There are some JVM examples. GoLang is also good but there is less shared experience, @Matt (pactflow.io / pact-js / pact-go) is probably our most versed in golang across the maintainer group. I wouldn’t let it stop you at the moment, as the avro plugin that has been built it still at an early stage, so even if playing via golang is useful to help get your head around the plugin concepts in a language most familiar and then can port across to the avro jvm version, or otherwise maintain your own version.
p
Great! will continue with Golang in that case at least for time being. Right now, it’s in my own repo. It is most likely to move to our org’s external public repo with some support. will let you know if/when that happens.
Just so you know, golang is new to me as well. I just happened to use it as the workshop used golang template. After using it for couple of weeks, i started liking it. There is also bit of resemblance with C which I used to love very much (my first programming language). And in our org we have growing population using Golang for helm charts and kubernetes operators.
happy hearts 1
y
golang is pretty cool to be honest, I’ve been writing some github extensions of late
I particularly like its cross compiling and tiny binaries, and its really fast when doing parallel tasks, over a bash script that is getting overly complicated. I never did C much bar at uni and some programming books off my Dad’s
👍 1