Fork me on GitHub
#clojure-europe
<
2021-06-15
>
gklijs05:06:17

Good morning

dharrigan05:06:30

Good Morning!

pez06:06:12

Good morning. I’m in dependency hell with Calva right now. It’s pretty rare, but hellish anyway.

simongray07:06:21

good morning

ordnungswidrig08:06:02

I'd rather not mention that I was fighting Scala build problems for the last days.

😢 3
😭 6
🏗️ 2
mccraigmccraig08:06:55

does npm's first-class module approach reduce dependency hell suffering ? it seems to me like it might, but i've no idea if there are other consequences which are as bad or worse

pez08:06:54

I'm not familiar.

mccraigmccraig08:06:29

a module is just an object/map, and its exports are values on the object... there is no global namespace, and any private data is hidden inside a closure, so you can have multiple versions of the same lib imported into the same program

mccraigmccraig08:06:34

then an import looks like this:

const {opt,
       VERSION,
       API_VERSION,
       BUILD_VERSION,
       LEX_BUILD_VERSION,
       PRODUCTION_API_HOST} = require('../build/gulp/config');
which is just using standard object destructuring to give local names to the module's exports - require is a function returning the module object

mccraigmccraig08:06:51

i've always thought it very simple and neat, but i haven't used #js enough to really get a feel for consequences

pez08:06:03

We use that a lot in Calva. I have just been thinking about it as similar to :refer

Ed08:06:00

the js instance style dependency thing allows for multiple versions of something to be loaded and runnable, so it is more resistant to breakages, but it also means you can't redefine a function at the repl in the way clojure does (or at least it works like when you have multiple macros and you change the one at the bottom of the stack, so you now need to re-eval all the call-sites) .... it also makes it more effort to make sure that you've definitely removed a vulnerable version of a dependency ... so, there are trade-offs 😉

gklijs09:06:58

With Rust it's a bit similar. Another problem is when a dependency is kind of exposed in a library. Like when you convert it to 'Avro' data, or with an async framework. If the versions don't match you get weird errors because the byte code doesn't match. Something like: "this Foo is not an instance of Foo".

mccraigmccraig09:06:54

those are exactly the sort of consequences i haven't done enough raw #js to experience @U0P0TMEFJ 😬 - a global namespace does seem like it will make repl usage much easier

Ed09:06:44

👍 ... it's fine if you just expect to restart your process all the time ... or refresh the webpage ... but as soon as you change that assumption you get trouble 😉

mccraigmccraig09:06:50

i end up using c.t.n.r/refresh a fair bit in clojure because of "this Foo is not an instance of Foo" errors (e.g. when a defprotocol gets re-evaulated but the dependent defrecord and deftypes don't), so maybe it's not so very different

Ed10:06:10

I used to have the refresh problem, but I have it less these days. I think I took the need to a full refresh as a sign that I'd done a bad job in dividing up the namespaces and these days I have it less ... I feel like the messages the universe gives you are subtle and it's your job to work out the meaning , and sometimes more tooling isn't the answer 😉

ordnungswidrig14:06:33

I try to avoid classes / records alltogether in favor of ad hoc generated reifytations.

dominicm19:06:50

A big consequence of the npm stuff is that you can't always pass objects between libraries, as they might be using distinct & incompatible versions of objects (even if the API is compatible, even!).

dominicm19:06:19

This comes up if you use a library that wraps or enhances another library.

dominicm19:06:28

Clojure doesn't have this problem as much because of data.

Ed08:06:32

Morning

otfrom15:06:22

finally got a vaccine appt (Thurs afternoon)

🎉 8
💉 2
mccraigmccraig15:06:15

just got my second appt today... i've been checking everyday for weeks, and suddenly there are appointments available 3 weeks earlier than the appointments i was previously being offered (which i won't be around for)

mccraigmccraig15:06:50

maybe the code-change to allow old dudes to bring their appointments forward just hit production

mpenet15:06:32

I drove 200km to another county to get my first shot last week.

agile_geek16:06:43

Got my second on the 22nd... but then I'm really old and I had first one on 6th April!

seancorfield16:06:55

The AZ vaccine has a bigger window between 1st and 2nd dose? (than Moderna/Pfizer)

seancorfield16:06:16

They’ve maintained a very strict four week appointment window over here for Moderna/Pfizer. When anyone gets their 1st shot, the 2nd appointment is made immediately, at that time, for almost exactly four weeks in the future. But mum and her hubby in England waited about 12 weeks between 1st and 2nd AZ shots I think?

mccraigmccraig16:06:28

going to be ~8 weeks between 1st and 2nd shots of moderna for me, in brighton UK

seancorfield16:06:49

And congrats on your shots everyone! We got our first shots almost as soon as we became eligible (April 1st for my wife and April 9th for me — April 1st was the date they opened it up to 50+ — and we got a nurse friend to help get my appointment since my wife had gotten so lucky with hers). Such a weight off our minds to be fully vaccinated — just in time for our 21st anniversary so we felt safe to eat indoors at a nice restaurant!

seancorfield16:06:20

@U0524B4UW My folks live in West Chiltington nearby and he has several properties in Brighton.

mccraigmccraig16:06:56

ha, i'm not actually in brighton itself ... i'm in ditchling which is another village nearby - had your folks lived in east chiltington we would almost have been neighbours, but it appears west chiltington is quite a long way away from east chiltington

seancorfield16:06:31

The quirks of little English villages 🙂

otfrom16:06:23

it took a while for NHS Scotland to find me (as I had moved from NHS England, and there are 3 NHSs and 1 HSCNI in the UK despite what some URLs would have you believe)

seancorfield16:06:23

Are vaccination records coordinated centrally in the UK? (they are here, via the CDC, but getting actual vaccination appointments here is a labyrinth of individual health care companies, not even at the county level, let alone state level)

otfrom16:06:45

@U04V70XH6 centrally as in each devolved nation?

otfrom16:06:34

probably. I'm not sure what will escape the hospitals and GPs as it is more about reporting upwards when required by local or national practice.

seancorfield16:06:38

Well, I guess I was asking at what level are vaccination records tracked… I’m guessing the answer is at the “NHS” equivalent organization level?

otfrom16:06:17

for Covid, probably at the national level, but most things will be at the GP hospital level (tho hospital events are reported upwards usually)

mccraigmccraig16:06:46

the covid vaccination records appear to be centrally co-ordinated in england... not sure if scawtland is included in the same database though

otfrom16:06:01

definitely different databases

seancorfield16:06:02

My COVID-19 vaccination card is an official CDC (national, federal) document.

seancorfield16:06:16

Interesting. Thanks.

otfrom16:06:20

as I was getting notifications from my old surgery in London, even tho I'd registered in Scotland

mccraigmccraig16:06:35

the http://nhs.uk site also uses a integer counter to determine appointment ids 🙈

otfrom16:06:46

and chasing the appointment has been through the Scottish NHS website

otfrom16:06:09

I can't chase a Scottish appt via http://nhs.uk, as it isn't really a UK service, but actually an English service

seancorfield16:06:18

Heh, when our GP switched offices, it took six months to get his own patients’ records moved over to the new system… we didn’t move anywhere and he only moved about a mile in the same town 🙂

mccraigmccraig16:06:44

my vaccination card is issued by "public health england". no idea how that is or isn't related to the nhs

seancorfield16:06:20

Yeah, I’ve seen a lot of references to PHE and I hadn’t heard of it until the pandemic…

mpenet16:06:56

7 weeks interval here for pfizer

otfrom16:06:17

I think PHE happened b/c they wanted to take a lot of the PH responsibilities away from local authorities (tho some LAs still do some on their own)

mpenet16:06:30

Some study showed immune response is actually better with more than 4 weeks for pfizer iirc, that's why a lot of countries increased it. I think the study went as far as 11 weeks

otfrom16:06:09

it is weird being so early days in a lot of the vaccine stuff that we don't know what is most effective as there just hasn't been that long to tell

otfrom16:06:24

(like how long the vaccine effectiveness will last, or if we'll need boosters)

mpenet16:06:38

Yes, it's difficult to know who to trust

otfrom16:06:54

obviously PHE has nothing to do w/Scotland/Wales/NI

otfrom16:06:31

it has been weird watching the news and seeing Boris Johnson as Prime Minister being really obviously only Prime Minister in England

🤢 2
otfrom16:06:34

(tho Westminster Parliament can write a law to reverse devolution in health whenever they want, or take all the doctors from one part of the country and put them in another if they want. The amount of power washing around is pretty worrying tbh)

otfrom16:06:11

(and current PM and gov't get very excited about their parliamentary sovereignty and Henry VIII powers)

otfrom17:06:17

@U050SC7SV re:trust - yeah, having to become an expert on vaccines and viral spread of deadly diseases during a widespread failure of public health orgs (WHO, CDC, PHE, others) has been a lot of fun.

agile_geek20:06:23

It's fine. It only counts in Rugby Union!

6