This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2023-03-06
Channels
- # adventofcode (2)
- # announcements (5)
- # architecture (4)
- # babashka (35)
- # beginners (28)
- # calva (4)
- # cider (9)
- # clerk (30)
- # clj-kondo (11)
- # clojure (58)
- # clojure-conj (3)
- # clojure-europe (71)
- # clojure-gamedev (2)
- # clojure-nl (3)
- # clojure-uk (2)
- # clojurescript (49)
- # conjure (2)
- # cursive (2)
- # emacs (4)
- # fulcro (1)
- # honeysql (2)
- # hyperfiddle (10)
- # jobs (2)
- # jobs-discuss (18)
- # leiningen (9)
- # membrane (14)
- # missionary (1)
- # off-topic (27)
- # pedestal (1)
- # polylith (5)
- # reagent (12)
- # releases (2)
- # remote-jobs (3)
- # shadow-cljs (83)
- # sql (5)
- # squint (14)
- # tools-build (13)
(loop :coffee: :morning: (recur :coffee:))
tho I'm only doing it for the side effects
morning!
āItās great that you got the site up, but why isnāt my name the first thing mentioned on the landing page? After all, I was the one who received the funding.ā - senior researcher who didnāt really do any of the work
I basically did all of it completely by myself and I didnāt even put my own name thereā¦ but yeah, name recognition and prestige is the name of the game in academia. It is kind of sad.
That sounds awful
That is what turned me off academia. People scrambling to get recognized for work they might not have done themselves, but they are at the top of the food chain.
It is even topical in Denmark the moment: https://da.wikipedia.org/wiki/Please_don%27t_steal_my_work
Are you researching as well @U4P4NREBY?
well, I did the work, but I am not technically a researcher. And to be honest, it doesnāt matter much to me since I donāt need to game citations to have a career like the tenure track people.
I think the proof is in the pudding. I open source everything I do here and that paper trail leads directly to me in 100% of the cases.
Thatās at least a positive way of seeing it. But yes, the citation game is what makes some parts of academia seem toxic (in my opinion, and I can only see it from the outside as Iām no researcher myself).
The way I see it, having a plethora of open source contributions is the software developerās equivalent to having lots of citations. And I consider myself a software developer, not a researcher even if my output is often research-adjacent.
True, the difference is, as you put it before, with software contributions the paper trail leads to the developer who made it.
Dammnnnnn I didnāt know it was that bad in Denmark š® Iāve heard about it being an issue in the states before.
I think itās common almost everywhere in academia. It has some serious perverse incentives. Career advancement is basically a pyramid scheme linked to the citation scores and the funding that is attached to your name. Employment for researchers is extremely precarious until they finally become a professor, which means those lower in the hierarchy accept long work hours with poor financial compensation + having to attribute a great deal of their work to those higher up in the hierarchy, since they bring the name recognition and/or funding. A as a consequence of this, you will find that a lot of PhDs and postdocs have this extremely meek and subservient attitude since this is furthers their career advancement. I am not a part of that system (thankfully) so I also donāt have to work interest hours, but I do get to observe it first-hand almost every day.
That's what academia runs on Can you imagine what would happen if it lost its prestige? No more research grants, donations or conventions. Instant demotion from researcher to unemployed bum
If some esoteric vc investor is reading this, lend me your power and I'll break the prestige monopoly š
Immediately added it to our company Slack space, thanks! š
All credit goes to @U4P4NREBY in the message right above (very topical crediting š)
Morning!Ā°
Ā”mĆ„Ć„ning!
This weekend I managed to find a couple of hours to work on my blog thingyā¦ felt good to do some hobby programming again
Good morning!
anyone know how a java 19 virtual thread differs from a java 1.0 green thread ?
the very first release of java had non-native "green" threads ... scheduling was entirely in-JVM
then one of the early subsequent major releases introduced native threads
>> Isnt this just "green threads"? >> > Java developers may recall that in the Java 1.0 days, some JVMs implemented threads using user-mode, or "green", threads. Virtual threads bear a superficial similarity to green threads in that they are both managed by the JVM rather than the OS, but this is where the similarity ends. The green threads of the 90s still had large, monolithic stacks. They were very much a product of their time, when systems were single-core and OSes didnt have thread support at all. Virtual threads have more in common with the user-mode threads found in other languages, such as goroutines in Go or processes in Erlang -- but have the advantage of being semantically identical to the threads we already have.
Taken from here: https://www.infoq.com/articles/java-virtual-threads/ by Brian Goetz
yeah, googling found me that @U0N9SJHCH... but it's not very satisfying - e.g. what do jdk19 vthreads do differently ?
and what's a monolithic stack as opposed to any other stack ?
You are right, itās not really a deep explanation
AFAIK green threads were multiplexed on one real thread, while virtual threads do MxN multiplexing
searching for "green" in that doc @U11EL3P9U gives roughly what @UK0810AQ2 said
i asked chatGPT as well, and along with some vague stuff which might be hinting at MxN multiplexing, it also gave me:
Stack Size: Java 1.0 green threads had a fixed stack size, which limited their scalability. Java 19 virtual threads use a flexible stack allocation mechanism that allows the JVM to dynamically adjust the stack size based on the application's needs, improving scalability.
ah, from the JEP:
The stacks of virtual threads are stored in Java's garbage-collected heap as stack chunk objects. The stacks grow and shrink as the application runs, both to be memory-efficient and to accommodate stacks of arbitrary depth (up to the JVM's configured platform thread stack size). This efficiency is what enables a large number of virtual threads, and thus the continued viability of the thread-per-request style in server applications.
old grean threads Mx1 new virtual threads MxN, but that from the JEP is the best I think
> monolithic Monoliths* are bad mkay ... *except for when they're repos ... or backends written in Clojure.
@UK0810AQ2 jdk.internal.vm.Continuation
is there (though you need to toggle it on when you start the JVM), and they say they'll ultimately support continuations via some future stable public API, but for now... š
Yeah, I already played with it but it feels half baked, and it can't be forked
Their comments about how lightweight threads should meet most use cases for continuations makes me worry that they'll never support them properly, but I do hope they manage something in the end. Combined with other recent improvements and the upcoming TCO support, I'd be excited about all the implementation improvements we could make for languages like Clojure, Kawa, &c.