Fork me on GitHub

Good morning.

gratitude 4
❤️ 4

Which one do you like the most?


The second one. The light fall off on the first is a little under exposed. Just my tuppence.


Thanks - I have asked my family and the opinions are split :man-shrugging::skin-tone-3:


Are you using spot metering on the flower?


er, sausage factory reveal: It's the same shot and I did the light changes in post.


But you're right, I could / should have used spot metering if I was smarter.


Nothing wrong doing it post. Whatever works best, I don’t like doing anything in post unless it’s very slight. Too long on old Zenith film cameras when I had to get it right 🙂


Sometimes, exactly what's right is decided in post. I like late binding 🙂

😀 2

Good Morning!


Morning. Don't feed the birds near the airport.


This is basically my dad's job


feeding birds and causing air strikes? I had no idea your Dad was such a centre of chaos and destruction. :chapeau:


Morning all.


now i have to either switch off fingerprints or switch to an iphone, neither of which prospects fills me with joy 😢


or buy a new 'droid with face-auth i suppose


I thought finger print auth had been gummi bear hackable for a long time


and it depends a bit on your threat model. LEA can't usually force a password out of you, but can use face/fingerprint unlocking w/o your consent or a warrant


lol, well as usual i hadn't been paying attention... but it's possible to access my banking with a fingerprint, so cheap fingerprint hacking makes for an expensive lost or stolen phone...


although the ios readers do not seem vulnerable :man-shrugging:


looks like it is a software issue from what I was reading?


they are injecting signals onto the motherboard to get infinite retries aren't they?


oh, i see - it's a software issue which allows the hardware attack to be exploited




Are we the only shop still using leiningen? Among the people in the channel here. I just wanted to check out Morse, but it's only available via git references, which doesn't gel with out-of-the-box leiningen's project.clj.


We still use it. Main factor is that we are still on the Luminus Stack, but we also tried deps and identified a lot of scripts and plugins we would need to everything that lein already does for us. Personally, I find it rather confusing, really complex and having a very steep learning curve


Still use it.


:l That's too bad. I haven't really experienced deps beyond "nice, just reference a sha, that's nice"


But that’s just me, most people seem to like it ;)


Man. It's really a slog for me to get to try Morse. I tried starting a repl directly in the terminal with CLJ, independently of my leiningen project, but I cannot add the replicant dependency in that REPL because the REPL's Clojure version is not new enough.


that's easy to upgrade?


hmm maybe, but I just installed it minutes ago without specifying a version, so I assumed that it was on the highest available version


on what clojure version does morse depend?


the default clojure version is determined by your clojure CLI install


Yes, that's what I'm talking about. The clj install is:

johndoe@Johns-MacBook-Pro query % brew upgrade clojure/tools/clojure                       
Warning: clojure/tools/clojure already installed
Morse depends on version 1.10 or higher, so that's fine, but adding the replicant dep at REPL time is a Clojure 1.12something feature. It's not that my problems are not solvable 🙂 I'm just having to go through more hoops than I'm used to (add a dependency in project.clj, require in the repl, done)


We switched from lein to boot back in 2015 and then to deps.edn in 2018 -- and we like`build.clj` a lot too 🙂


I recall boot being the new, big thing, and then time just whooshed on by.


Yeah, I liked a lot of the ideas in Boot: tasks were regular Clojure functions -- no plugin architecture to deal with -- pods mostly worked to provide semi-classloader isolation. We stored our dependencies in deps.edn files (with a slightly different format) and had functions to read and merge them. But the filesystem shadowing abstraction could mess with your editor's idea of where source code lived and it could be slow with very large projects (like ours). And the pods tended to break in weird asynchronous ways if you used them really heavily (as we did). But it was a real breath of fresh air after Leiningen! And with external deps.edn files, we were well-placed to switch to tools.deps.alpha and the CLI when that came along.


I remember using boot when I started with Clojure. Is there any particular reason why it vanished? Did the maintainers just stop maintaining it?


I don't think it ever really got much traction and, yes, at some point the maintainers moved in to other things (after we migrated to the new CLI).


I was on a big project that used boot for 5-ish years but we actually had to migrate to deps for Java 11, boot just wasn’t working and not well maintained anymore


"Build tool diversity is an unwanted complication for most, with the main tension between Maven and lein. I personally think Clojure Polyglot Maven is the unified "compromise" path that, barring some other stellar solution or Sonatype gumming things up badly, should probably end up being the standard." -- State of Clojure Survey 2010.


In the 2012 survey, Leiningen had 95% share, with Maven in second place (13% -- some people used multiple tools).


By 2014, Leiningen had 98% and Maven had fallen to 3rd place behind "custom scripts".


By 2015, Boot had appeared and captured 13%. 22% in 2016, then fell to 17% in the 2018 survey with CLI appearing and getting almost 10% share. In 2019, Boot dropped to just over 10% as the CLI had climbed to 33%, and in 2020 Boot had dropped to 6% as the CLI climbed to 49% (and Leiningen started falling, down to 85%).


Those last 2 numbers don't add up? Or am I not getting it right. But anyways, very interesting to hear about the history of usage! Thanks @U04V70XH6


Kind of mirrors my vague notions of what was going on in the community, except "custom scripts", I would have assumed that that would be a very small niche


The numbers don't have to add up, you can use lein + deps at the same time


I mentioned use of multiple tools for the 2012 numbers - I should have been clearer that applied every year.


yup, still using lein primarily here - it’s like comfort food to me.


As for tooling fragmentation, I don’t worry too much about it. Just please make sure we never end up in a situation like in python’s tooling ecosystem picard-facepalm.


I think stuff is slowly converging to deps.edn. If I was a lein maintainer I probably would have tried plugging tools.deps into lein. I'm still happily using lein test on some projects, inertia I guess


also, good morning 🙂


Still on leiningen

👋 4

thank you 🙂


also, if you're still on lein but want to use clojure 1.12's new add-lib feature:


Very nice, I'll try this!



(require '[borkdude.deps.add-lib :refer [add-lib]])
Execution error (FileNotFoundException) at query-user/eval3648 (form-init7935061936962240935.clj:1).
Could not locate borkdude/deps/add_lib__init.class, borkdude/deps/add_lib.clj or borkdude/deps/add_lib.cljc on classpath. Please check that namespaces with dashes use underscores in the Clojure file name.


too old Clojure version again


maybe I can just bump it in the project.clj


yeah bump your clojure version. this project already depends on clojure 1.12


lein install
Could not find artifact io.github.borkude:deps.add-lib:jar:0.0.1 in central ()
Could not find artifact io.github.borkude:deps.add-lib:jar:0.0.1 in clojars ()


do I have to check out and build locally?


borkdude@m1 /tmp $ clj -Sdeps '{:deps {io.github.borkdude/deps.add-lib {:mvn/version "0.0.1"}}}'
Downloading: io/github/borkdude/deps.add-lib/0.0.1/deps.add-lib-0.0.1.pom from clojars
Downloading: io/github/borkdude/deps.add-lib/0.0.1/deps.add-lib-0.0.1.jar from clojars
Clojure 1.12.0-alpha2


works for me


somehow I made a spelling mistake


in a copy/paste? 😕


oh yes, I see


I'll fix it


I was just about to do a PR


should have read the error more thoroughly


already done

👌 2

sweet, it works!


or, it seems like it's working


Depending on everything clj-refactor had M-x add-project-dependency or some such. It got b0rken around java 9 or something 😕

😔 2

Thank you so much for supporting me @borkdude, I got Morse up and running! I'll figure out how to simplify the process if I like using it. Very nice to see it running 🙌

👍 2

@borkdude helped me get Morse up and running in my crusty old Leiningen project 🥳 So nice! How about all'o'y'all, are you using Morse? Or do you use something else for exploration of big, nested data structures?

👍 2

My goto is #C035GRLJEP8. Though I'd like to try Morse if I get a chance!

Daniel Craig14:05:20

I tried out Morse, but most recently I've been using Clerk


I have also, unsurprisingly, kept using Clerk. OTOH we’re trying to figure out if all the outboard tools can share some code on things like pagination of data structures, &c. 🙂

😮 2
👍 2

I used REBL back in the day, then switched to Reveal so I could customize things (since REBL was closed source). Then switched to Portal when Reveal moved to a free/paid model (and made the paid part not OSS I think?). Now my workflow is so tied into Portal... ...I run two Portal windows inside VS Code and I can use it for remote process debugging as well as local dev. I don't think I'd want to go back to running a Java UI-based tool after having Portal integrated inside VS Code -- but I did like REBL's (and Morse's) datayf/nav presentation slightly better than how Portal does it by default. Although it's relatively easy to customize Portal to do that same thing... ...and I really like that I can drive Portal entirely from my editor through a combination of the API it provides to the server-side process and cljs (Joyride) in VS Code.

👍 2

I use Portal, but by no means have an advanced or integrated setup like what @U04V70XH6 describes. Used Reveal at some point before, which I found equally nice.


Very nice, I'll have to look through these.


I tried Clerk, which seems very nice, but it's really slow for loading our huge EDN structures into the browser. Gotta try Portal and Reveal, then.


@reefersleep it should only load a small part of the data, then offer interactive paging. if you’re seeing slowness we’d love to hear about it in the #C035GRLJEP8 channel so we can fix it 🙂


@reefersleep yep, certainly interested to learn what has been slow for you here. Showing (excerpts of) large data structures is in clerks design and I'd consider slowness a bug.


@U5H74UNSF @U07SQTAEM I'll see if I can scramble our data (so as to not leak stuff) and reproduce the situation 🙂

💯 2
🙏 2

@reefersleep excellent, thank you!


disappeared for 1 month + coz I fell into the AI rabbit hole 🙀🥺

metal 8

(spoiler 1: token/sec and spam……:thinking_face:🙀)


welcome back to the humans!


but the message backlog…………

Ben Sless18:05:26

Did you get us a basilisk?


Welcome back! 🙂


@UK0810AQ2 my first gut reaction was: wow you knew that! But then think about it a bit, I would instead say: What basilisk? There ain’t no basilisk~


(phew! that’s a close call)


(spoiler2: sorry, we ran out of gpus. No gpu for ya)

Ben Sless19:05:23

Should have brought us a basilisk...

🙃 2

@UK0810AQ2 err… okay 😓 maybe wait a few months (according to some people over there)


in the meantime I remember there being an anime on some goddess in ancient Egyptian mythology - which then promptly get bullied out of the _ by an innocent looking character


that one put a whole new spin to basilisk lol

Ben Sless19:05:22

Huh, which one? I'm guessing Sekhmet or Isis


(hang as the dict doesn’t contain entry of English <-> Cantonese or Japanese


did you form any conclusions @U6L5FFL95? I'm on the outside of all this LLM stuff right now. wondering if i should play closer attention


@U0509NKGK ok, joking aside. I mainly looked into the “open source”/source-available portion of that universe. I think the main takeaway at this moment (important qualifier as things changes rapidly in this space) is that: • Compared to previous generation, task-specific NLP models, they are more broadly usable - whereas before you generally need ML/AI specialist if you want to develop AI based NLP application, now you can do it in a more generalist manner • LLM may have some amount of intelligence/capability probably at the level of high schooler or early undergrad, but it has many specific “quirks” and limitations so please don’t just slap it on everything. If you keep those limitations in mind and leverage its strength instead it’d be much more useful • Open source/source available can’t really compete with GPT4. GPT 3.5 is a bit harder to tell for me personally. I don’t have any insight into how this may change in the future or even what direction it will take however (eg scaling up param count vs “Chinchilla” paper on dataset’s importance, non-brute force directions for tackling current LLM limitations). (tbc…)


@U0509NKGK (continued) • As for machine consciousness/empathy etc, it’s a touchy subject for sure. I think it’s a deeply personal topic, kinda like religious belief, so I leave this part up to you. But if we’re talking about civics, well, I think we should treat the AI with respect at a minimum, not least because the way you interact with “others” also eventually changes who you are as a person (neural adaptation blah blah blah) (aside from being like a mirror that reflect back who you are) • Broader societal discussion on potential impact on 1) job loss and 2) AI safety, x-risk, regulations etc: It’s our problem, not the AI’s lol. Not sure what to say of this, but one thing I’ve tried to keep in mind is that you are not your job, and don’t forget the important peoples in your life. Also, don’t panic.


@U0509NKGK (second level bullet points omitted for brevity - maybe I expand it into a blog post?) Appendix tl;dr list of (technical) LLM development this/last year: • Emergent capabilities, prompt engineering • Multi-modality, embodiment hypothesis • Augmenting and integrating LLM with external tools • Local LLM scene: llama, alpaca paper, fine-tunes/lora/quantization etc • Tool use and Agentization • Future architectural/infrastructural improvement


And finally, I wrote the above manually without using AI. (AI can actually be usable for getting a first draft that you edit later/writing out the “fluff” part that you just don’t want to do. But this topic is important, so I do it myself. Besides, hand-crafting have a certain satisfaction to it:sweat_smile:)


As an aside, I actually am working on a prototype to use open source (more accurately source available) LLM models to auto-gen analysis and design doc for software development, as well as a bunch of other experiments


Biggest reveal to me: I don’t know how good counts as “good enough” for software architecture and design… any suggestions or can someone enlighten me?


(I mean, my personal anxiety is that I have an unusually low standard on that front, so the AI generated docs “look good” to me but would never get accepted if it were submitted as proposal in real world companies)


wow thank you @U6L5FFL95! lots to ponder for sure. i appreciate your feedback!


I tried Clerk, which seems very nice, but it's really slow for loading our huge EDN structures into the browser. Gotta try Portal and Reveal, then.