Fork me on GitHub
#clojure-europe
<
2022-06-15
>
simongray07:06:41

Yesterday our son’s caretaker fell ill, so I was forced to clear my schedule and take the day off. We ended up visiting our local amusement park. Obviously, he’s too young to go on any of the rides, but he had such a great day there anyway. 10/10 would do again.

❤️ 4
otfrom07:06:26

any day with strudel is likely to be a good one 🙂

😁 2
1
plexus07:06:35

Something I've been tinkering on during ClojureD, do folks think this could hold water? https://github.com/plexus/integreat

plexus07:06:23

Keep in mind • this is a proof of concept, not a polished library • the name is a working title

dominicm07:06:43

I'm not sure about all the secret management over using a configuration library. Is this slightly more opinionated, by using aero?

plexus07:06:35

Can you elaborate?

dominicm07:06:40

It seems like the library is a tool for using aero in a particular way?

plexus08:06:19

Is that how it comes across? It's a tool for using Integrant in a particular way, which leverages Aero.

dominicm08:06:38

The secret management could be an aero extension and then one could use integrant-repl with that.

plexus08:06:12

What we mostly see is that folks have a single system.edn that gets huge (thousands of lines), with bits of #profile {....} sprinkled in together with everything else. We want to pull the actual settings and secrets out because a) better overview of the actual configuration flags of the app, b) a mechanism to error out when one of them isn't present, c) a pluggable mechanism to be able to switch to .env or vault or whatever.

dominicm08:06:25

It doesn't come across that way from the marketing, but I'm reading between the lines.

plexus08:06:43

integrant-repl is not enough, people use integrant-repl as their main entry point for dev/prod/test, whereas it's only suitable for dev.

dominicm08:06:53

I've never seen that

plexus08:06:01

I've seen it multiple times.

dominicm08:06:14

It has repl in the name though 😓

plexus08:06:42

in that case you still leave people to figure out the boilerplate for other envs, what this provides is an opinionated setup that caters for the common cases. Especially the test setup is something we've done for multiple clients that isn't obvious to folks.

dominicm08:06:00

OTOH, it seems silly to have a function that is practically (-> config aero/read ig/start) just because we want to label it as prod. But I get that value proposition.

dominicm08:06:08

Ah, so it's a framework ;)

plexus08:06:15

It's a policy library

plexus08:06:15

> (-> config aero/read ig/start) Except that there's more to it, like setting up a shutdown hook, setting the profile.

dominicm08:06:33

Ah, I skimmed over that part. That is more complex, and I intentionally documented that when I wrote clip (I think!)

dominicm08:06:23

In wedge the main can do a shutdown for multiple types of system.

dominicm08:06:35

Fwiw, I don't think this is a bad thing. But I would personally value access to this independently of integrant.

dominicm08:06:19

I've always wanted better secrets and environment management for Aero. I've got a few scrap notes on it, but nothing concrete from enough experience that I'm confident in it.

plexus08:06:28

That's a pretty small part of it and could indeed be split out.

dominicm08:06:08

What would you say is the kernel of the library? The labelled entry points?

dominicm08:06:15

I'd be curious to know if people would be able to use integrant correctly with the config code separate, and an instruction to do the equivalent of set-init! for integreat.

plexus08:06:33

It's really two parts, the tailored entry points, plus the setup->config transformation with conventions that help keep your config organized.

plexus08:06:00

In this case we're very much choosing for an integrated solution, there's little value in having the same wiring duplicated in every project.

plexus08:06:46

Like I said, it's policy code. If you want a variant of it then just inline it into your project, then you'll have about as much boilerplate as you would have without it.

simongray08:06:43

I wonder if any of you Clojure peeps are interested in the so-called indieweb/fediverse and all of the associated tech? Recently I’ve been researching a bunch of stuff related to self-hosting and this seems like a closely related scene.

2
simongray08:06:08

I am very fascinated with this idea of controlling your own identity and owning your own data, integrating with other people doing the same, while still cooperating with the adtech silos where most people are.

❤️ 1
simongray08:06:23

Haven’t been able to find a lot of Clojure libs implementing the different standards, which is a shame.

simongray08:06:32

(e.g. https://indiewebify.me/ for those not in the know)

👀 2
plexus08:06:40

Any component/integrant/mount-alikes I've missed? https://gist.github.com/plexus/11176695924670471e0ef84bf048bc3e

👀 1
dharrigan09:06:07

donut.system

dharrigan09:06:44

This repo is an example of using donut power and this one uses clip .

plexus11:06:41

those are all already in the list?

dharrigan12:06:15

Ah yes, cool.

dominicm10:06:10

This is fantastic, exactly something I need this week

borkdude08:06:20

Good morning. I wonder why traveling always makes me so tired, it takes about a week to feel like my old self again 😅

plexus08:06:52

We are creatures of habit.

gklijs20:06:00

Try traveling + camping + Covid.. Haven't felt this bad in more than 10 years.

😢 1
borkdude08:06:48

@simongray It seems logseq also plays nice with those ideas

simongray08:06:42

@borkdude Yup, actually I also recently started using Logseq. It’s a bit buggy tbh, but I really like it.

borkdude08:06:35

They also have an #nbb clone that allows you to script against the datascript database

simongray08:06:20

Yup, I think I actually starred that already because you or someone else did 😛 I follow you and a bunch of other Clojure people on Github and scan the Github homepage every morning for interesting things to star.

simongray09:06:00

That’s cool!

genRaiy09:06:03

Good morning

simongray10:06:05

Fighting with IT department today. They set up a domain for me two days ago, using their own authoritative name servers, pointing to their own web server, and now this morning their own automated security has blocked the domain and the guy who set it up for me is insisting that the domain has been “compromised”. I guess because he doesn’t have a clue why their own system blocked it. The server is still accessible, it’s just the domain that has been blocked this morning.

simongray10:06:44

I figure organisations like this would have automatic whitelists in place, but I guess not… but the most annoying thing is that he’s lecturing me about it like I am a moron and not someone who develops web software for a living.

simongray10:06:26

I get a prosopagnosia vibe…

reefersleep10:06:52

must suck to actually suffer from that

simongray10:06:54

Yeah, must be exhausting

simongray11:06:44

Or maybe it's liberating... Who knows

reefersleep11:06:41

Like it’s liberating to be deaf and not able to hear people’s noise? 🙂

reefersleep11:06:08

I’d like that, occasionally… But I’m generally grateful for having all of my senses and limbs and digits. And no debilitating mental/neural issues.

simongray12:06:50

Well, lacking a key sense like hearing is perhaps not that fun, but… I mean sensory deprivation, however it’s achieved, can be quite beneficial at times. People who are not neurotypical also need to work around the issues caused by their condition, but at the same time the fact that they’re different can also be a source of strength in some other areas. If you don’t rely too much on recognising faces in your day-to-day life then I guess that’s less noise and more brainpower for doing other stuff.

pez13:06:34

Morning! I thought nothing could get my Macbook warm enough to start the fans spinning. nvm install: Hold my beer.

thomas13:06:03

have you tried Maven yet?

1
lread13:06:22

g’mornin’