off-topic

https://github.com/clojurians/community-development/blob/master/Code-of-Conduct.md Clojurians Slack Community Code of Conduct. Searchable message archives are at https://clojurians-log.clojureverse.org/
2021-03-15T11:31:49.368900Z

I just got the strangest email at work. I have some local pending changes for in progress work I'm doing... The way TFS is setup we ahve to lock files we are working on, I just got asked to undo all my local pending changes (which only exist on my machine!) So that the lead dev can do a release... I don't know where to begin with this. And it's only Monday 😞

🤯 1
cassiel 2021-03-15T14:51:53.369400Z

Source Lack-of-Control System? Reminds me of the good old days of RCS.

2021-03-15T15:07:16.371200Z

Talk about going down the OOP rabbit hole. I'm working on someone else's code, it's a simple 4 line function and I think it's pretty slow for what it's doing. SO I tore it out of the solution (c#) and into linqpad so I can jsut focus on that one function. Obviously it didn't run, it needs teh Database class. So I copied that in. Uh-oh, that needs another few classes, so I'll copy those in... 706 lines of pasted code later, I can finally run these 4 lines I want to test.

lilactown 2021-03-15T15:07:54.371400Z

oof

simongray 2021-03-15T15:25:55.371800Z

more like OOPh

1
😄 3
2021-03-15T15:59:35.372100Z

wow, I didn’t realize I’d been using git for that long, but this concept sounds completely alien

2021-03-15T15:59:47.372300Z

although I do remember similar issue with Perforce, back in the day

2021-03-15T16:04:59.372600Z

Yeah, its strange. If i want to edit a file and someone else has locked it, either i have to wait till they are finished, or get them to undo all their work and unlock it again. Which means they take a local copy to another folder on their machine, or lose their changes. Its dumb but the lead doesn't like source control and doesn't believe in branches. Says its too complicated.

2021-03-15T16:05:52.372800Z

And he says if we have branches then merges will be a nightmare. The team size is 6 people...

😮 1
cassiel 2021-03-15T16:11:51.373200Z

I remember the shift from RCS to CVS, and thinking that automatic merging was obviously not going to be practical, only to discover that it does actually work. At least, on linear code; if it’s, say, a text based representation of data structures with no semantic ordering then it can get unpleasant.

2021-03-15T16:12:22.373400Z

What's rcs?

2021-03-15T16:12:51.373600Z

ask the lead if it would be more of a nightmare than the current situation 😆

cassiel 2021-03-15T16:13:56.373800Z

RCS == Revision Control System. The first one ever, I think - I used it in the 80s. It worked by locking files that others had checked out for editing. Plenty of Dining Philosopher experiences back in those days, I can tell you.

2021-03-15T16:14:08.374Z

I've actually started my own system of notepad and a separate folder and I keep track of changes manually, then copy across when im finished so i only lock for a very short time...

2021-03-15T16:14:21.374200Z

I actually think it might be worthwhile to just create a local git repo based on a copy (completely outside the aegis of TFS), do your work there in your own local feature branches, and apply patches in the TFS dir if/when you are able

2021-03-15T16:14:59.374500Z

Hmmm. Didn't knlw i could do that, ill have to investigate! Thanks.

2021-03-15T16:15:18.374700Z

yeah just cp -r to somewhere, go into it, do git init and you’re off

👍 1
raspasov 2021-03-15T16:26:53.375Z

@qmstuart and this lead codes in Clojure or… ?

2021-03-15T16:27:39.375200Z

Oh no, this work project is his vb. Net baby...

2021-03-15T16:28:25.375400Z

Vb and js. I swear there is a file called javascript. Vb, which is vb that strings up js

raspasov 2021-03-15T16:28:34.375600Z

I’d setup Clojure CLR in his project and send him some code, just for fun :sheepy:

raspasov 2021-03-15T16:33:00.375800Z

In all seriousness, it sounds like a dire situation; actively opposing source control? That’s something. Sounds like a person who is very opposed to anything remotely unfamiliar.

punit-naik 2021-03-15T16:34:15.376500Z

Hi people! Is there a good library in Clojure to work with stripe and it's integration?

raspasov 2021-03-15T16:35:55.376600Z

Or perhaps the code is so convoluted, that there’s no way to split up the work without touching a million files… In that case perhaps “locking” can make sense. But instead of addressing the issue (simplifying the code), you’re using a band-aid (locking the files).

emccue 2021-03-15T17:16:34.377500Z

yep, the stripe java library

👍 1
emccue 2021-03-15T17:16:52.378200Z

@punit-naik

👍 1
raspasov 2021-03-15T17:17:04.378500Z

A quick google search returns this: https://github.com/clojurewerkz/elephant (but I haven’t used it)

emccue 2021-03-15T17:17:27.379200Z

i'd personally trust the non-wrapped java lib more than any given wrapper

👍 1
emccue 2021-03-15T17:17:53.379900Z

case in point that project's readme says

raspasov 2021-03-15T17:17:55.380100Z

Last time I used it, the Stripe API I believe it was relatively simple to just use from HTTP

👍 1
emccue 2021-03-15T17:17:56.380300Z

The project is too young to begin documenting the API.

This section will be updated when the API stabilizes.

emccue 2021-03-15T17:18:29.380600Z

and it hasn't been updated in years.

emccue 2021-03-15T17:18:43.381100Z

That too^ you can always just use their http api if you want to

raspasov 2021-03-15T17:19:37.382100Z

Yea… I would just go with simple HTTP and see if you need anything more; I have a hard time believing that a Java library would be nicer/simplier/easier than just calling the HTTP endpoints from a regular Clojure HTTP library of your choice…

👍 2
punit-naik 2021-03-15T17:23:06.383400Z

I have decided to just use stripe-java. The clojure libs available are very old and not very actively maintained. So I guess it's best to write a simple custom clj wrapper for it. Thanks for the help guys :thumbsup:

👍 1
seancorfield 2021-03-15T18:19:28.384300Z

@cassiel RCS wasn’t the first one: it appeared in 1982 and was a challenger to SCCS which appeared a decade earlier. SCCS was my first version control system — I thought RCS was a huge step forward at the time! But, yeah, RCS is considered ancient these days 🙂

seancorfield 2021-03-15T18:23:32.384500Z

@qmstuart A decade or so back, when I was freelancing, I took on a project for a client that had no version control, no issue tracking, and used a shared development server that everyone accessed remotely via LogMeIn. Nightmare! But I downloaded all the code to my local machine (via LogMeIn — took ages) and then did git init and managed all my changes locally, uploading changed files to their server at various times for testing. I would present them with the change history and a list of diffs from git as documentation accompanying my work and they were absolutely amazed that such a thing was possible!

2
😀 2
Ben Sless 2021-03-15T18:49:22.386100Z

I found myself reaching for "Solving The Expression Problem" again and it was not readily reachable, although the PDF is still hosted. No idea how long it will still be available for, here's a direct link for posterity https://www.ibm.com/developerworks/library/j-clojure-protocols/j-clojure-protocols-pdf.pdf

👍 1
cassiel 2021-03-15T19:12:28.386300Z

@seancorfield Ah yes, SCCS - I forgot that one. And these days I find myself almost missing expanded $Id$ strings.

1
Asier 2021-03-15T19:27:20.386700Z

https://github.com/magnetcoop/payments.stripe

Asier 2021-03-15T19:27:35.387Z

https://github.com/magnetcoop/payments.stripe

Asier 2021-03-15T19:27:53.387200Z

https://github.com/magnetcoop/payments.stripe

Asier 2021-03-15T19:28:07.387400Z

https://github.com/magnetcoop/payments.stripe

borkdude 2021-03-15T20:47:54.388300Z

Anyone here got a Raspberry Pi 64bit (with 64bit OS)? Can you verify that uname -m prints aarch64 for you?

ghadi 2021-03-15T20:57:37.388700Z

Linux rpi4 5.11.4-1-ARCH #1 SMP Sun Mar 7 23:46:10 UTC 2021 aarch64 GNU/Linux

borkdude 2021-03-15T20:57:52.389100Z

did you use the -m flag?

ghadi 2021-03-15T20:57:58.389400Z

uname -m == aarch64

ghadi 2021-03-15T20:58:02.389700Z

that was uname -a above

borkdude 2021-03-15T20:58:03.389800Z

Thanks!

borkdude 2021-03-15T20:58:18.390100Z

(babashka on rpi4 coming up)

4
🤯 1
1
🚀 4
borkdude 2021-03-15T22:30:19.391400Z

Now released. See #announcements