5 ms·
We do a ton of railway-oriented programming at Snowplow, using the Scalaz Validation[1]. It's a great great fit for data processing pipelines. When we are enri
by alexatkeplar 12y ago
We do a ton of railway-oriented programming at Snowplow, using the Scalaz Validation[1]. It's a great great fit for data processing pipelines.
When we are enriching raw events, we try a few separate validations/enrichments and then either accumulate errors or compose a valid enriched event.
[1] https://gist.github.com/justjoheinz/9184859 https://gist.github.com/justjoheinz/9184859
[2] https://github.com/snowplow/snowplow/blob/master/3-enrich/scala-common-enrich/src/main/scala/com.snowplowanalytics.snowplow.enrich/common/enrichments/EnrichmentManager.scala#L295 https://github.com/snowplow/snowplow/blob/master/3-enrich/sc...