This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
- # adventofcode (18)
- # announcements (1)
- # babashka (153)
- # beginners (73)
- # bristol-clojurians (4)
- # calva (1)
- # cider (6)
- # clj-kondo (38)
- # clojure (154)
- # clojure-dev (12)
- # clojure-europe (7)
- # clojure-finland (11)
- # clojure-nl (70)
- # clojure-spec (13)
- # clojure-uk (101)
- # clojuredesign-podcast (2)
- # clojurescript (15)
- # core-async (30)
- # cryogen (1)
- # cursive (5)
- # devops (1)
- # duct (4)
- # figwheel-main (1)
- # fulcro (19)
- # jobs (12)
- # kaocha (17)
- # luminus (2)
- # malli (8)
- # music (5)
- # nrepl (13)
- # off-topic (20)
- # overtone (3)
- # re-frame (7)
- # reagent (38)
- # shadow-cljs (13)
- # specter (3)
- # tools-deps (6)
- # vim (7)
ta. I see on their github page that they're thinking of removing/deprecating since they don't see to use async
I'm not on a computer atm, will comment on that ticket saying in my fork I added the ability to pass a response channel. I can't say I use it for prod only for a prototype, but so far it's been great for building processing flows that run without Kafka in demo/test while being able to change config and enable Kafka
I'm currently rebasing my changes with better tests. We can always make it a separate lib if needed
that kinsky async producer facade looks like a case of using streams where promises would be better suited
we have an async kafka producer protocol which is just
(send [_ topic message]) and returns a
manifold/deferred of the result
Maybe. I'm doing two things - one is looking at different kafka libraries (I'm currently using Jackdaw) to determine if Jackdaw is good enough, or if there is something lighter and two, I'm experimenting with learning more async and doing things in parallel with kafka processing in Clojure
I must admit, it's still not very clear when I must use threads or go-blocks (or threads inside go-blocks) etc... if I'm doing IO work, like 1. reading from S3 or 2. doing a REST call etc...
core.async it's best not to do anything in a
go block which will hog a thread from the single fixed-size threadpool - i/o or long-running computation
so if you are doing sync (i.e. blocking) i/o then move that to a thread, if you are doing complex calculation, move that to a thread
but if you are doing async (i.e. non-blocking) i/o and co-ordination then keep that in the
I just pushed some improvements to the kinksy async face in my fork, see https://github.com/pyr/kinsky/issues/42#issuecomment-568599400
heh, got bit by an infinite lazy seq yesterday (I think). It can make debugging quite fun
I’m glad to see that in my absence that @U052852ES is still willing to go for the low hanging fruit.
I just checked the recent committers on a BBC clojure repo, and it looks like it, yes.
the bbc clojure devs are in mcr - there are a few former platform folks in this channel
There are a few London Clojure shindigs - look at London Clojurians, also we just had a mini-conference re:Clojure a couple of weeks ago at The Crypt.
Yep, the BBC. Prior to that I was at Bloomberg. I'm an American transplant to London, but have been here 21 years now.
I think if you hang out here a bit more, you'll get more people chiming in of what is happening in London presently.
I used to be one of that handful of Clojure programmers! Simply try completely pivoting languages because your team feels like it
Yeah, I talked to that team and they told me it was because the language had good concurrency support and seemed to do pipeline-y things well (threading macro, e.g.). That team still likes the language, but it hasn't really caught on elsewhere. I like it (lispy-things like elisp) because it's such a small language that it fits in my head and I'm not constantly googling how to do things. I liked C for the same reason. With Clojure, I'm doing a lot of googling initially, but it still seems like the happy little language I fell for decades ago...
Having used clojure for over a decade, I can attest that it’s still the happy little language it was back then too… Though a little bigger now.
In my 7 years of Clojure, it didn’t change a lot. And I love it. We got clojure.spec instead of prismatic/schema (I still love Schema) We got core.async, but I don’t see people use it Clojure Toolbox got much larger, there are lots of libraries Luminus is still the only backend framework, there was Pedestal, it died and people now use Duct and similar instead of frameworks (which I see as unhappy thing that blocks Clojure adoption) On frontend, it is completely different story with a wide choice of options (re-frame, Rum, etc.) Datomic got into plenty of production uses Datomic Ions seems without traction And it seems to me that that’s the thing.
Yeah, that’s the more usual direction. I left Mike Bloomberg’s (well-paying) empire because I desperately needed a change after 15 years. Also, all my kids grew up and left home, so I didn’t need that much money any longer. I haven’t regretted it, but nor do I regret the time at Bloomberg.
@eamonn.sullivan Whereabouts in the US were you based? New York? I moved from Hampshire (UK) to California, initially to work for a UK company that was setting up in Silicon Valley, then six years at Macromedia once I got my US work permit, then citizenship and some time as a consultant, until I landed at a boutique online dating company (where I've been for ten years and using Clojure in production for eight and a half of those).
Well, like many Americans, I’m from all over the place. I was born in San Diego , grew up (until high school) in New York, then around Boston. My wife and I were in Acton, Mass, before moving to London on a two-year assignment in 1998. One thing led to another and we haven’t left. I have Irish citizenship (via my mother) so work permits weren’t an issue. Sorry, I misunderstood the comment and thought you were now working for Bloomberg from the BBC.
🙂 Americans seem so much more mobile than Brits. My wife was born in Tucson but moved all over the Midwest until she settled in the Bay Area in her mid-30's.
I was born and raised in N. Ireland so we have been considering trying to apply for Irish citizenship since it is staying in the EU. I let my UK passport lapse over ten years ago.
I was a journalist for 20 years (including my first seven years at Bloomberg here in the U.K.), so I needed a nice, neutral passport for moving around with. (Software engineering is my second career -- long story.) The Irish passport has been very handy. I have been able to secure Irish passports for my five kids (so they retain the ability to work either in the U.S. or anywhere in the EU), but sadly not my wife (she'd have to live in Ireland for a time). She's going to wait until this whole Brexit mess settles down and then get her British passport. The world is a bit of a mess lately, isn't it? I'm waiting for the pendulum to swing back round toward sanity. Not holding my breath, but we'll eventually get there.
Aye, fingers crossed. Things have certainly gotten crazy over here -- just glad I live in a "liberal bubble" for now 🙂
you can always get your UK passport back @seancorfield , even if you renounced it: "You have a right (once only) to be registered as a British citizen if you previously renounced British citizenship in order to keep or acquire another citizenship." https://assets.publishing.service.gov.uk/government/uploads/system/uploads/attachment_data/file/788225/Guide_RS1.pdf
Yeah, I know it's only a matter of going through the paperwork -- but my wife doesn't want a UK passport and we always travel together so there's not much incentive there, but an Irish passport (and access to the EU) is more appealing.
haha, well the west coast of norway is beautiful and green too, but omfg the rain
yes, it's good... there are a couple of issues with it (don't use
let-flow and error-handling with streams of deferred's requires some work) but the foundations are solid
it might work for you, but apparently has bugs and was only ever really experimental... looking for a reference to where i saw that
and the icing on the cake @dharrigan -
deferreds work very nicely - you can use
stream/realize-each to turn a
deferreds (of operation results) into a
stream of values, and you can use a buffered stream to then control the concurrency of those operations just by setting the buffer size
some manifold tips @dharrigan  write fns that take plain-value args and return promises of things, including promises of streams if you are using streams - that way you can very easily compose them with
chain  be careful of
loop - much like clojure
loop it's quite low-level and you don't need it very often - many times you are better off making a
reduceing over that
Lol, I just got a book for about Pedestal. Was wondering why there docs where so insufficient. Guess it's because it's dead
I think the core of Pedestal lives on as a library, but the framework itself is dead, yes.
Server-side Pedestal is actively maintained https://github.com/pedestal/pedestal
The front end part hasn't been touched for over five years https://github.com/pedestal/pedestal-app -- I remember when they launched it with a conference talk... it looked pretty slick back then.
That is a bit sparse. You could always open issues asking for the guides to be fleshed out more https://github.com/pedestal/pedestal-docs/issues
(I only looked at that repo to check activity -- I didn't look in the actual docs)