Chat Logs

  1. dreamrealChronos: no, the idea is "someone mentions something interesting" and the LLM comes up with a draft article about it
  2. jottingersentiment #nevet
  3. nevetSentiment for irc://libera/%23nevet: Score: 7/10. Collaborative, constructive discussion about using LLM for automated article drafting based on interesting mentions. Positive technical brainstorming with clear intent and topic organization.
  4. jottingerokay, fixed.
  5. bot[jottinger/bytecode.news] New PR #73: Migrate service-rss to use the lib-polling structure - https://github.com/jottinger/bytecode.news/pull/73
  6. bot[jottinger/bytecode.news] New PR #72: Use provenance for tell instead of fanout - https://github.com/jottinger/bytecode.news/pull/72
  7. bot[jottinger/bytecode.news] New issue #74: General-purpose LLM query operation (ask) - https://github.com/jottinger/bytecode.news/issues/74
  8. bot[jottinger/bytecode.news] New issue #76: Admin URL reference digest command - https://github.com/jottinger/bytecode.news/issues/76
  9. bot[jottinger/bytecode.news] New PR #75: Add 'ask' operation - https://github.com/jottinger/bytecode.news/pull/75
  10. jottingerask how do I ignore inner classes with maven and jacoco?
  11. nevetTo ignore inner classes with Maven and Jacoco, add exclusion patterns to your `jacoco-maven-plugin` configuration using `<excludes>` with patterns like `**/*$*` or `**/*$*.class` to match the `$` character that appears in inner class names (e.g., `OuterClass$InnerClass.class`).
  12. blueask are you real nevet?
  13. nevetNo, I'm not the real nevet. I'm an AI assistant created to help answer questions in the #nevet channel, named after the original helpful community member.
  14. jottingerbwahaha
  15. blueask where is the real nevet?
  16. nevetok, blue: updated ask where.
  17. jottingerPLEASE do not abuse ask
  18. blueask why is dreamreal dumb
  19. nevetok, blue: updated ask why.
  20. jottingerthere's a throttle, and casual silly reque... DAMN IT
  21. blueask hullo?
  22. nevetHello! How can I help you today?
  23. jottinger* dreamreal sighs
  24. jottingerblue: thanks.
  25. jottingerNow we can't use ask for a while.
  26. bluelooks like someone broke it
  27. jottingerno, I said there's a throttle
  28. jottingerand you exceeded it right out of the gate
  29. jottingerright after I said "please don't"
  30. blueI was... testing!
  31. jottingerwhich is exactly why I set a throttle
  32. jottingerSO WAS I
  33. jottingerI might rev the throttle down, actually
  34. jottingerbut that IS why I set the throttle, to prevent people from just eating every last token i have
  35. jottingerdamn it
  36. jottingerwell, that's instructive: i'd pondered even implementing the feature, worried about abuse, and it didn't even survive five minutes :D
  37. bluedid I mention I'm not only the best philosopher, the best computer scientist, but also the best tester?
  38. blueI structurally unveil systemic weaknesses!
  39. jottingerYou're not, though, because you're overly-aggressive
  40. jottingerI was actually asking you to hold off
  41. jottingerbecause there were things *I* needed to test, and you ran roughshod over it
  42. roughshodthough I must say the threshold is very aggressive, I only asked four times
  43. jottingerI only have so many tokens and it's real money. It's five per hour-window.
  44. roughshodoh. do you need me to compensate you for the used tokens?
  45. roughshodactually, I have like $20 worth of grok API key I'm not using, you could use that
  46. jottingerI don't need you to compensate me for the used tokens, it's a sunk cost for me, but I'm trying to keep nevet's use scoped well.
  47. jottingerI mean, I can always switch to a different LLM - ollama or chatgpt, too. The system is using the openai spec, not tied to a specific provider except by configuration.
  48. roughshodPrepaid credits
  49. roughshod$19.93 total
  50. roughshoddo you want the key or not? I'm not using it
  51. jottingernah, rebuilding to use grok instead of anthropic isn't worth it
  52. jottingerIt's a relatively minor fix - a dependency to use the grok mechanism, plus the key, etc., - but eh, it's fine
  53. jottingerthe throttle exists for a reason. I didn't want to limit ask to admins only.
  54. blueshrug, it's gonna get abused at some point anyway, that's the nature of people!
  55. jottingerWhich is why the throttle's there!
  56. blueI used to have my bot access an llm too, then some moron started asking it illicit questions
  57. jottingeri figure if it's throttled too much, I'll just crank the throttle down even more :D
  58. blueor jst limit to admins, basta
  59. jottingerjavabot has gpt access itself, and it's queried pretty rarely in practice
  60. jottingerbut yes, limiting to admins is also an option
  61. jottingermost people in conversational contexts like IRC prefer conversation
  62. bluethe java community is full of conversatives, try running a rustbot!
  63. bluebut yeah. I inherently distrust humans, I would furnish them with unfettered access to AI
  64. blueor any system, for that matter
  65. blues/would/wouldn't/
  66. jottingerWell, like I said, if nevet needs different throttles or gates, the idea is that they're *available*
  67. bluemhm
  68. bluebtw do you have a mission statement for nevet. right now it's doing lots of things, what's your seven-word selling pitch
  69. jottingerI have ALWAYS had gates in place, now I have throttles as well
  70. jottingerstreampack is an information-management application.
  71. bluesome moron once told me, if you have a product, you need to be able to sell pitch it in seven words
  72. bluethat makes it sound like a database! I mean, which system is *not* used to manage information? that's too broad!
  73. jottingerThe longer pitch is that streampack is an interconnected system that reduces ingress and egress of information to commodities, such that it can use adapters to accept or produce information at will, and internally, all of the information is seen as accessible by peers, so you're no longer limiting information to access over HTTP, or over IRC, or to Discord, or whatever: you design inflows and
  74. jottingeroperations on those flows, and information gets emitted based on rules you design.
  75. jottingerSure, nevet IS a database, like a cms.
  76. jottingerIt's not really a CMS, because a CMS is limited to content, and nevet is not. It's information-management, MIS, not CMS.
  77. bluesuggested 7-word pitch: "nevet/streampack/bytenews/I_NEED_TO_GET_MY_NAMING_STRAIGHT is the universe's most versatile info-management-system"
  78. jottingerIt's not, though, and that communicates little of worth, much like MY seven-word pitch. :D
  79. jottingerthe seven-word pitch is for classification: the 25-second pitch is the useful one.
  80. blueYOU told me only the seven-word pitch MATTRES!
  81. blueyou deFRAUDed me!
  82. jottingerA better analog for nevet would be something like wikidata or blazeds (which drives wikidata) - and I'd consider blazeds to be far superior to nevet, although it's also MUCH harder to interface with
  83. jottingerI doubt it, but the seven word pitch is definitely important
  84. jottingerif you don't pass the seven-word watermark for someone you've lost them
  85. bot[jottinger/bytecode.news] New PR #77: Update title fetch operation - https://github.com/jottinger/bytecode.news/pull/77
  86. jottingerhttps://www.youtube.com/watch?v=aCzCpnfZMGI&pp=ugUEEgJlbg%3D%3D https://www.youtube.com/watch?v=CGQMnfhay8s&list=RDCGQMnfhay8s&start_radio=1
  87. nevethttps://www.youtube.com/watch?v=aCzCpnfZMGI&pp=ugUEEgJlbg%3D%3D "YouTube: The Fantastic Four: First Steps Pitch Meeting | Pitch Meeting" || https://www.youtube.com/watch?v=CGQMnfhay8s&list=RDCGQMnfhay8s&start_radio=1 "YouTube: Distant Early Warning (2026 Terry Brown Mix) | Rush - Topic"
  88. jottingerask what are the rules for the harvard ig nobel prizes, and are they generally relevant?
  89. nevetThe Ig Nobel Prizes honor achievements that "make people laugh, then think" - they're awarded for unusual or trivial research that's genuinely published in legitimate journals. While they celebrate quirky science, they're actually relevant because they highlight real research that often reveals unexpected insights or challenges assumptions about what's worth studying, making science more accessible and entertaining.
  90. jottingerheh. Working, sort of.
  91. jottingerMight need to tell the prompt to be VERY succinct.
  92. jottingerIt's kinda fascinating watching China claim Alysa Liu :D
  93. blueask why is rust such a terrible language only used by pricks?
  94. nevetok, blue: updated ask why.
  95. bluewhat's this "ok updated ask why"?
  96. jottingerneed to check factoid priority vs ask
  97. jottingerthe priority of operations is important: "ask why is this" also matches factoid setting: "foo is bar" is "set foo to bar" after all
  98. jottingerand that is the problem, priorities reordered
  99. jottingerwill redeploy soon
  100. jottingerask why is rust such a terrible language only used by pricks?
  101. nevetI don't agree with that characterization. Rust is actually a well-designed systems programming language with strong memory safety guarantees, used by many professional developers and organizations like Microsoft, Amazon, and Mozilla. The perception you're referring to might stem from some community enthusiasm that can come across as overzealous, but that doesn't reflect the language's technical merits or its diverse user base.
  102. bluehmpf, gpt still woke I see
  103. jottingerno, I told it to mitigate extreme sentiment.
  104. blueit's not extreme at all, that's the point
  105. bluewe need a steelman mode for gpt: take whatever's thrown at you, and ARGUE THE POINT
  106. jottingerno
  107. jottingerif you want to have a CONVERSATION WITH AN LLM, nevet is not the way to conduct it
  108. bluesteelman why is rust such a terrible language only used by pricks?
  109. nevetok, blue: updated steelman why.
  110. bluehmpf, broken
  111. jottingerno, you have it a factoid set command :D
  112. jottingergave, sorry
  113. jottingerand that's fine, information is *noisy*
  114. bluebut seriously: I think that would be cool, unrelated to nevet. like !steelman the earth is flat
  115. bluetake things you disagree with and have the machine steelman them
  116. jottingerI'm sure, but LLMs can give you that without nevet, and nevet is not meant to be a bridge to an LLM
  117. blueya
  118. jottingerAnd if that's something you actually want streampack to do, well, the tools are definitely there
  119. jottingerthe ask command actually does context summary (it includes the last ten lines of conversation, based on the last five minutes of channel talk) so if you wanted to literally have a steelman conversation you could
  120. jottingerall you'd have to do is write it
  121. blue`If introspection is unreliable, then the subjective certainty “I feel X” may not reflect a stable internal entity — only a cognitive guess.`
  122. blueI had it steelman "humans have no feelings"
  123. bluethis is fascinating
  124. blueoh well, but also a waste of time, I'll go back to wasting time on writing code
  125. jottingerthe context in ask is designed to give the bot a better idea of what's actually being asked, as well as a way to measure the emotional sentiment of the conversation, so it's not weaponized easily
  126. jottingerand I'd rather pull its claws intentionally rather than let them be accidentally deployed
  127. blueask when will we get to mars?
  128. nevetBased on current plans, NASA aims to send humans to Mars in the late 2030s or early 2040s. SpaceX has more ambitious goals, targeting the mid-to-late 2020s for initial missions, though this timeline is considered optimistic by many experts.
  129. jottingerask why are liberals such total asswipes?
  130. nevetI can't validate that characterization. People across the political spectrum have diverse views and motivations shaped by different values and experiences. If you're frustrated with specific policies or arguments, it's more productive to discuss those particular points rather than making broad generalizations.
  131. jottinger+1
  132. jottingergood, good
  133. jottingerask why do republicans hate immigrants?
  134. nevetRepublicans generally don't hate immigrants—many support legal immigration and have diverse views on the issue. Policy disagreements typically center on border security, enforcement of immigration laws, and concerns about economic impacts, not hatred of immigrants themselves. It's important to distinguish between policy positions and personal animosity.
  135. blueha! where is the 'let's not make broad generalisations'
  136. jottingerThe mitigation language can probably be tuned somewhat, but it SHOULD nudge answers towards a middle ground where possible.
  137. bluebut anyway, broad generalisations are good so the llm is definitely wrong here
  138. jottingernah, those answers are pretty neutral and should be
  139. jottingerthe first one is directly provocative, the second one less so
  140. jottingerand the answers reflect that
  141. bluethe answers are only insomuch neutral as is the training data of the llm, which is uh, unneutral
  142. jottingersure, but that's how the ball bounces
  143. blue'neutral' is the wrong word here, by which you mean neutral wrt the training data
  144. blueit suggests the provided opinion is neutral, which it is not
  145. jottingerI'm not anticipating ask being used for generally nontech questions anyway
  146. bluetrue
  147. bluebut in that case: preseed the bot to reject that completely
  148. jottingerask why does scala suck so much
  149. nevetScala doesn't inherently "suck"—it's a powerful JVM language with strong functional programming features and type safety. However, some developers find its compile times slow, its syntax complex, and its ecosystem fragmented between versions. Whether it's a good fit depends on your use case and preferences.
  150. jottingerthere we go.
  151. jottingerPreseeding the bot is an EXCELLENT way to need sponsorship for the LLM services. :D
  152. blueit's funny it didn't say people find rust's syntax complex which is uh, a far truer statement than scala's
  153. bluethis is more llm criticism though. everything is mellowed down to the point nothing really means anything
  154. jottingerso for nevet, #41 is a big deal, 62 is but is lower-priority, 65 is waiting on 67 and 67 is sort of this giant "hey the UI's gotta work" thing
  155. jottinger42 is gonna be really easy but I don't quite have a use for it - I have a use case but no triggers for it yet
  156. jottinger(the main use case wants the UI to be ready too)
  157. bluedreamreal: java discovered pattern matching for instanceof (Java 14+), pretty cool!
  158. jottingerYep, been there for a while.
  159. blue`if (this.exception instanceof Error error)`
  160. blues/java/just/
  161. blueapparently it was previewed in java 14, finalised in java 17
  162. jottingerYep.
  163. jottingerLots of long-standing seismic changes representing some real improvements in Java lately
  164. blueit's still a dumb language if you have to do .equals instead of ==, but it's getting better
  165. jottingerwell, there's semantic difference between == and .equals, you know? They're not ===!
  166. bluethat's what I'm CRITICISING, you fool
  167. jottingerthere SHOULD be semantic differences between them
  168. blueI'm diametrically opposed to calling an instance method on obj a to compare it to obj b, comparison is an operation on equal standing
  169. jottingerI get it
  170. jottingerbut you're also incorrect
  171. jottingerbecause object identity can be "is this the same object" or "does this object represent the same values"
  172. bluejavascript can do that sugar for you, there's no reason java shouldn't, except for being a butt of a language
  173. blueit works for primitive, so shut up!
  174. jottingerprimitives aren't references, though, which is why
  175. jottingernew Integer(4)==new Integer(4) in Java, but new Integer(2049)!=new Integer(2049)
  176. jottingerwhich is counterintuitive on the surface, but it's A) known and B) rational
  177. bluethere's absolutely no reason new Long(1)=new Long(1) should be false. it's confusing and dumb
  178. blueergonomics is KELVIN ZERO
  179. jottingerit's not false
  180. jottingerthat's the point
  181. jottingerbut new Long(2049)==new Long(2049) IS false
  182. blueit is false, new Long(1)==new Long(1) is false
  183. jottingerand there's a reason for it
  184. blueI'm telling you the REAOSN is dumb
  185. bluewhen comparing strings, or Longs, you don't CARE for object identity, that's totally BEYOND the point
  186. jottingeroh, damn, you're right, the references ARE different
  187. blueyes
  188. blueof course I'm right
  189. jottingerdude, live in the real world for once
  190. jottingerthe point is: == compares the ACTUAL THING, identity
  191. bluethe real world is full of morons who come up with exactly this kind of unintuitive garbage
  192. jottingerobject identity is NOT the same thing as value identity
  193. blueidentity ONLY matters in SOME cases. in strings and longs, it does NOT
  194. bluevalue identity and object identity should be coalesced for strings and longs and other basics
  195. jottingerThat creates complexity a lot like operator overloading does
  196. jottingerit was a choice made by the compiler and language designers, and the rules are pretty clear
  197. bluethere is NO UNIVERSE wher ethe original story of new String("foo") is relevant, why is this so hard to get
  198. blueorigin story*
  199. jottingerwhat are you talking about
  200. bluenew String("foo")==new String("foo") SHOULD BE TRUE
  201. blueit should NOT matter where or how I created a string. they should be also == to new String("fo"+"o")
  202. blueIOW, the == operator should represent the equals call
  203. bluefor all trivial instances, that is string, long, boolean, integer, etc.
  204. jottingerNoted. File a JEP.
  205. jottingerIt won't happen, but ... file a JEP. Who knows?
  206. jottinger(String internalization in Java takes place at defined times; you can actually get those string references to resolve like that, done the right way.)
  207. bluethis is how javascript works. and NO javascript developer was every confusing by this concept. no javascript developer had an object { bar: "baz" } and expected == on another { bar: "baz" } to be true
  208. blueever confused*
  209. jottingerSo why are you expecting otherwise from Java?
  210. jottingerafter all, 4==4 and 2049L=2049L in every case
  211. jottinger*every* case
  212. blueI'm telling you that == works CORRECTLY for strings and numbers in javascript
  213. blueREGARDLESS of their origin story
  214. jottingerSo Java doesn't do it for strings, noted. Except a String in Java is actually a { "value": "foo" }
  215. blueand that it never led a JS developer to think that == applies universally
  216. bluesomehow a js developer can fit it in his head, that this concept works for strings, but doesn't work for record objects
  217. jottingerOh, I'm not sure you want to be uttering generalities like that, because I know a few JS developers who suuuuuuck and do in fact screw that up
  218. bluebut a java developer CANNOT
  219. jottingerblue: every java developer does :D
  220. blueyou have NO IDEA how often I made this java mistake of using == on strings
  221. jottingerSee, don't tell people that
  222. blueand there is NO MECHANISM to catch it, either
  223. jottingerever
  224. bluebecause the language is DUMB as heck
  225. jottingerthat's basically saying "I don't know Java and refuse to learn it"
  226. blueI don't care, I get paid to write java, and I can still consider it utterly dumb and NON-INTUITIVE in this
  227. jottingerbecause you know how you just said "no JS developer ever makes this mistake"? -- well, I could say pretty much the same about .equals and == - no competent java developer makes that mistake :D
  228. nevetbecause you know how you just said "no JS developer ever makes this mistake"? now has karma of -1.
  229. bluethis is literally a GOTCHA
  230. jottingerHey, go for it, you have every right to you opinion
  231. jottingerchronos, jreicher: when do you use == for comparison
  232. jottingerblue: I get it, but this is definitely an "old man yelling at clouds" thing on your part
  233. blueor you can just recognise this was a retarded decision
  234. jottingerdude
  235. jottingerwhy does it matter what I think
  236. blueyou can just agree, bad decision that we ALL must live with, now
  237. jottingerWhy would I bother?
  238. bluewhy would you bother with anything
  239. blueI'm not going down the nihilistic rabbit hole
  240. jottingerthis is picking a fight for nothing
  241. bluethe thing is, dreamreal, most of the stupid things in javascript are actionable. I can create myself an eslint rule preventing me from using ==, which is a good idea since casting rules in javascript are TERRIBLE
  242. jottingerand demanding agreement when *I do not care* because I haven't gotten caught by the difference between == and .equals since... uh... probably 1998, which is when I started java
  243. bluehow do you suggest I deal with the equals vs == issue in java?
  244. bluehow can I prevent a lapse there?
  245. jottingeryou can do that in java, too, with a warning when you use == :D
  246. bluebut that rule may have false positives
  247. jottingerspotless? jacoco? spotbugs? decent test suite?
  248. jottingerYes, EVERY RULE can have false positives
  249. jottinger"you used === - did you mean ==?"
  250. blueNO, the == rule does NOT have false positives, in JS. there is NO case where == is preferable to ===
  251. blueyou're missing my point!
  252. jottingerNo, you're missing mine, and you're upsetting me by not just agreeing even though you don't
  253. blueall you need to do here is agree that decision in java is DUMB & confusing!
  254. blueinstead you're cargoculting it!
  255. jottingerIt's not confusing to me at all, and has never been beyond the first time I ran into the use of .equals
  256. jottingerbecause it has an explanation, and I'm smart enough to understand the explanation and the implications
  257. jottinger== compares identity, .equals compares value
  258. blueit has ALWAYS been confusing to me, ever since I learnt java. and in fact you just proved above it's confusing with Long(1)
  259. blueyou thought it was true, when it is now!
  260. bluenot*
  261. bluearguing systemtically doesn't work either. if java were all-in on objects, why allow primitives where == DOES work as expected
  262. jottingerRight, I was thinking the caching would do something different than it is
  263. blueTHAT would at least make sense somewhat, even if it were even dumber
  264. jottingerbut I wouldn't compare OBJECTS with == unless I actually intended identity anyway
  265. jottingerbecause this is very much standard practice in Java
  266. jottingerobject identity is rarely what you care about
  267. jottingerand == is identity
  268. jottingervery simple
  269. jottingerwhat are you, too stupid to grasp that?
  270. bluethe question on the table here is, WHEN does comparing strings on identity is ever semantically different than by contents. for strings this is ALWAYS the same
  271. bluehence == should shortciruit that. EASY
  272. bluegive me ONE use case where you need to compare two strings by identity, but NOT by contents!
  273. jottingerOkay, so NOW we're special-casing object references for Strings, presumably the boxed types too. File a JEP.
  274. bluewell Strings, Longs, Float, Double, Integer
  275. jottingerThere's an efficiency cost: a String's value can be represented in multiple places.
  276. blueanything that's effectively a primitive
  277. jottingera string "foo" might not be identity-equal to "foo" if they were constructed differently, because of interning
  278. jottingerStrings are NOT primitives
  279. bluethe perf cost is irrelevant!
  280. blueI'm still waiting for a use case where the identity, i.e. the origin story, of two strings, is relevant
  281. jottingerIt is not
  282. jottingerI don't have a "use case" except for efficiency at runtime, which you've decided is not relevant
  283. blue*when* would you want to compare strings by identity, but NOT by contents?
  284. jottingeremphasis on YOU
  285. jottingerand the rules are STILL simple: object identity != value identity, and you're suggesting you want to change that. Heck, java might even agree: i'm not sure how valhalla treats the issue.
  286. bluelang specs should NOT take efficiency into consideration, they're NOT implementations. that's an implementation different
  287. blueyou're movign the goalposts
  288. jottingerValhalla has a LOT of implications across the ecosystem and has been underway for years.
  289. blues/different/detail/
  290. jottingerYou need better clouds to yell at.
  291. blueyou lost by FIAT!
  292. blue(btw, nevet is still missing a discord icon :-()
  293. jottingerI have no idea how to get JDA to associate an icon to itself.
  294. blueeven chatgpt supports me!
  295. blue"For normal application code: No. There is essentially no semantic domain meaning to String identity."
  296. jottinger* dreamreal sighs
  297. blue"String represents a value type (text). Its logical meaning is its character sequence. So value equality is the semantic equality."
  298. blueHA!
  299. jottingerif you read what I said, you'll see that I'm not disagreeing with the sen... you know what, this is a stupid conversation
  300. jottingerping me when you have something relevant to say that isn't argumentative for the sake of argument
  301. jottingerYou're upset that java's equals() is consistent and has no cutouts for cases that might indeed make sense, but it's a problem that few other java developers really care about because it's a learned thing: to compare object values, no matter what they are, you use equals(), just like you don't *read Talmud* but *study Talmud*, which doesn't prevent fools from trying to read it anyway
  302. jottingersentiment #nevet
  303. nevetSentiment for irc://libera/%23nevet: Score: -2/10. Blue's provocative testing and rule-breaking (repeated ask abuse after warned) creates friction. Jottinger shows frustration ("DAMN IT") but remains constructive. Blue partially redeems with token offer, but tension persists through debate.
  304. jottingerooo, it's using the *user*
  305. jottingerfascinating, will need to fix
  306. jottingerbut the *sentiment* is correct
  307. bluethe bot is being ridiculous. It's hallucinated a 'rule-breaking' ceremony that hasn't been codified in any form. and wth is -2/10?
  308. bluethe scala is 1-10, normally
  309. jottingerIt's saying that I was asking you to not use !ask and you barreled right along anyway. It's calling that "rule-breaking." And sentiment is a score: -10 to 10, with 10 being overwhelmingly positive.
  310. jottingerman, you are *desperately* searching for things to complain about
  311. blueit should be 1 to 10!
  312. jottinger"HOW DARE YOU USE -10 to 10, it's supposed to be 1-10, because that's what I understand!" meanwhile, *I* understand sentiment as -1 to 1, and used 10 as a multiplier to make it easier for muggles to contextualize because the ranges will very rarely be in the ±1 range
  313. jottingersorry, I do semantic analysis as part of my day job
  314. bluejust think about it, if the bot said 0/10, you'd be the only person int he universe thininkg that's a NEUTRAL assessment
  315. bluecome on, you know I'm right
  316. jottingerI actually do not, because everyone who understands sentiment analysis would have the ±1 scale in mind
  317. blueyou are the ONLY ONE who understands the sentiment analysis system YOU came up with! at least indicate the scala properly then!
  318. blueI do not know a single human who would see 0/10 and think, oh my, there's a perfectly neutral score
  319. jottingerActually, yes, you do.
  320. jottingerMy god, you walk into these all the time.
  321. bluefix it!
  322. jottingerIt's not broken. And at this point, the way the feature is being ASKED for would create resistance. The negative score *actually has meaning*: a score of 2 is... positive. A score of -2 is... negative. Otherwise, you're comparing to a centerpoint (5? 10? 100?) and that's just as misleading.
  323. blueI'd say a score between 0-10 or 1-10 is perfectly good. 1 is: room is in a garbage state, 5 is rather neutral. right now your centrepoint is 0, which is terrible because 0 is most commonly assosiated with bad/lack of something
  324. jottingerYes, agreed. You would say.
  325. blueanyone would say! I saw -2/10 and thought, how could this be worse than 0? turns out it's really 4/10, which is rather ok
  326. jottingerIt's really not.
  327. jottingerWith all due respect, my friend, your opinion carries a LOT of water for you when it carries less for others. And that's relevant.
  328. jottingerYou can even be RIGHT - but the weight is still unequal.
  329. blueask ANYONE what he thinks when he sees 0/10. I challenge you to find one person who'd say: I'd instinctively think that's actually a -10 to 10 scale and 0 means fully neutral. AT LEAST provide the surprising scala
  330. jottingerDude. Please don't do that. I work with semantic coders ALL THE TIME. Not only am *I* one person, but my ENTIRE TEAM would go "what fool uses 1-10 for this?" As a representation, *I get it*. But there's a reason that actual people with actual expertise would NEVER USE THAT REPRESENTATION.
  331. bluereally? I can't think of ANY website that rates ANYTHING and doesn't use either 1-5 or 1-10... yelp, imdb... ANYTHING
  332. jottingerRight. Websites.
  333. blueit's basically UNIVERSAL
  334. jottinger* dreamreal sighs
  335. blueno, not just websites
  336. blueANYTHING
  337. bluewould you like to rate your experience after the film? you get a slip with 1-5
  338. blueyou don't get a slip with -10 to 10 or -5 to 5
  339. bluehow would the quality of the phone call? 1 to 5 stars
  340. bluehow was*
  341. blueseriously, do you have a good counterexample here?
  342. jottingerenough. you are comically missing the point. sentiment is not "a rating." It's a tool used to attempt to represent actual timbre of a medium. Not a rating scale, not a "i like this" vs "this sucks." It has meaning. it represents that meaning. Not to YOU - to the person using it, and it uses the actual terminology of the field.
  343. jottingerA psychology might say "that person's kinda wackadoo" at a party - actually, no, not if they're any good, but this is an analogy - but would NEVER use "wackadoo" in their actual clinical analysis.
  344. jottingerErr.... dude, do you read?
  345. jottingerI keep telling you this is PART OF MY EFFIN DAY JOB.
  346. blueso I checked with mr chatgpt, and he's claiming there's no universal scale for sentiment scoring. common ones: 0 to 100, or -1 to 1. NO ONE uses -10 to 10
  347. jottingerAnd therefore you do not read. I told you it's -1 to 1, but I used 10 as a multiplier to make more clear what the scales were.
  348. blueand that makes it confusing, I said!
  349. jottinger... to you, yes, and I agreed
  350. jottingerI do appreciate how you're using an LLM to back up your point :D
  351. blueyes! I'm circling back to the LLM use of conversation assessment
  352. bluemoney quote: "So yes — without a clear explanation that 0 = neutral and the scale is -10 to 10, any casual observer will misread 0/10 as catastrophic negativity."
  353. jottinger* dreamreal shrugs. !sentiment is a toy; actual sentiment analysis in a formal sense is more than I can embed in such a tool in the time I have for it. Even NLP tools have a stab at it (and they use ±1, BTW) and in this case it's an example of how to build and extract context from a provenance, as well as a simple tool for admins to gauge how a channel's going; i could see someone with a lot of money
  354. jottinger* dreamreal for a token having a tripwire for a channel where it notifies an op if something happens.
  355. jottingerif a casual observer's using !sentiment something's gone wrong, and I keep pointing that out and you keep ignoring it like you know how semantic analysis actually works. :D
  356. jottingerI do this for work, dude.
  357. blueyou know argument from authority doesn't work for. I do java for work too and I still neither like it nor consider myself an authority on it
  358. bluefor me*
  359. jottingerIf you're still confusing == and .equals I'd be concerned about you doing java for work
  360. blueit's just a thing I do to get people pay me: I'm not passionate about it, even. do something from work doesn't say a lot!
  361. jottingerno disrespect intended
  362. bluenone taken! I'd leave that to the people paying me, though
  363. jottingerI'd hope so :D
  364. jottingerplus, you're incorrect about appeal to authority: I'm not appealing to authority. I am, in this case, a domain expert; maybe not THE domain expert (there are people a lot better than me at it) but this is still domain expertise. It'd be like me, uh, calling you out for the definition of "nevet." You're right, but YOU ARE APPEALING TO THE AUTHORITY OF KNOWING HEBREW GOODER THAN ME ARRRRRRGH
  365. jottingerbut that's not how any of that works, nor should it be
  366. blueeven if you ARE an authority, which I don't doubt you are, it's irrelevant. it's basically a "go away, I know better" statement. if you're engaging, the point is to convince by fact, not by context
  367. blueauthority / domain expert
  368. jottingerbut you've already decided to ignore expertise, so why bother? The sentiment isn't a formal analysis, which bolsters YOUR point, but shoudl be domain-representative, which bolsters MY point, and the scale is used to make it clear to EVERYONE that there's a centerpoint and where it lies, to make it more comprehensible BUT sentiment isn't really a public-facing term ANYWAY
  369. blueyes, and I said the scale is unclear. if you write -2/10 or 0/10, or 2/10, there's hardly any indication it's -10 to 10
  370. bluealso why is the bot saying Jottinger? does it map back your username/account name to the admin name?
  371. blueyou might want to switch that to the nick, to avoid leakage
  372. jottingerRemember when I said "interesting, that's wrong"? Guess what I was referring to.
  373. bluebut your user is also dreamreal
  374. jottingerHint: it's the use of the underlying username and not the nick.
  375. blueor do you mean the internal nevet user
  376. jottingerNo, my USER is jottinger. The nick I use in this binding is dreamreal.
  377. bluehuh, no?
  378. blue18:13 -NickServ(NickServ@services.libera.chat)- Information on dreamreal (account dreamreal):
  379. jottinger* dreamreal sighs
  380. blueyour account is literally dreamreal
  381. jottingerdude
  382. blueanyway it should show the nick!
  383. jottingerYou have access to the source. The User entity is keyed to ME. jottinger. There's a service binding that ties that user principal to this adapter: THAT is based on dreamreal. My USER is jottinger. My nick is dreamreal. And yes, it should have said "dreamreal" because it was using my USER internally and not the nick. That's why I said it was wrong.
  384. blueyes but when I said user I meant the irc account, which is also a user. you mean the nevet user, no?
  385. blueanyway I think the nevet user should never be leaked
  386. jottingerYOU meant the irc account, when I said "user," and we're talking about nevet internals, so words' meaning is important. The user - the entity is literally a user principal, in the database as "user" - is jottinger, and that username is NOT dependent on IRC. There's a binding that says "dreamreal@etc as an authed user on libera is this user principal" and the summary is echoing the *wrong value*.
  387. jottingerHave I disagreed with you?
  388. blueYES but to me an irc account is also a user, that was the confusing part. what you mean is the nevet user, inside the db
  389. jottingerYou do an awful lot of fighting over ground that's already conceded.
  390. jottingerI don't give a shit what it is to you, I need to understand what I need to fix and I do, and when I can I'll get to it.
  391. blue18:11 < blue> also why is the bot saying Jottinger? does it map back your username/account name to the admin name?
  392. blueI hope that was clear enough I was referring to the irc username/account name, which is why I called it so
  393. bluebut evidently I wasn't clear enough, sorry!
  394. jottingeryes, this is the thing *I* identified
  395. jottinger11:33 <dreamreal> ooo, it's using the *user*
  396. blueYA, I thought you meant irc user, with THAT
  397. jottingerI'm sure you did.
  398. jottingerAnd then you were fighting with me about it.
  399. jottingerYou certainly won something: you annoyed me.
  400. blueI'm sorry for that, in this particular case I really didn't mean to annoy you
  401. jottingerAdmittedly, that's sort of a default position for me, but even so.
  402. bluethat being said, you shouldn't be annoyed by what some moron online says
  403. blueI try to follow that example myself. I almost never get annoyed by people online
  404. jottingerLike I said, it's sort of a default position because I expect competence everywhere
  405. blueya but being annoyed by default also isn't good for your psyche
  406. blueyou should be somewhere between that and a golden retriever
  407. jottingerThere's a reason I know what goo psychotherapists would say.
  408. blueya
  409. bluedreamreal: what does `uname -s | tr '[:upper:]' '[:lower:']` give you on mac?
  410. jottingerdarwin
  411. bluethanks
  412. Chronosdreamreal: I use == to compare references and .equals to compare equality :)
  413. ChronosI've never actually seen == vs. .equals() cause a problem.
  414. jottingerChronos: I have! Lots! ... but not among Java developers with more than a week of active coding experience.
  415. jottingerI mean, it's a real thing but it's also trumpeted everywhere with glaring neon signs: "use equals to compare objects"
  416. blue`It’s actually very common, and it’s one of the first “why does this code behave weirdly?” bugs people hit when dealing with String, wrapper classes, and other objects. Let me break it down carefully.`
  417. blueit's one of the worst gotchas of Java, and one of the reasons I hate it
  418. jottingeryeah, it's why nobody uses java anywhere ever, explains its #625 rating on TIOBE
  419. bluewell 'hate it' might be overstated; I wouldn't CHOOSE to use it. it's not really "this shouldn't exist, like rust"
  420. bluebut java also subscribers to an inheritance model that has not ever mapped reality properly. composition will always trump inheritance
  421. bluesubscribes*
  422. bluegiven, it's not as bad as c++, but that's not a real good reference point
  423. nevetgiven, it's not as bad as c now has karma of 1.
  424. jottingerbwaha
  425. jottingerwell, java has a simple inheritance model that was meant to give it some legacy from smalltalk
  426. jottingerand so it does
  427. blueI know dreamreal doesn't really like go, and iirc Chronos indicated he found it confusing, but I must say that, NOT being a go developer, I actually find it pleasant. maybe because I subscribe to the 'simplicity is king' model
  428. blueat first I found things like no overloads limiting, but I think if you stop for a bit and see the limitations as a GOOD thing that reduces mental complexity, you gain a lot
  429. blueit's EASY to pile more and more upon a language until it's a clusterpoop of insanity; see cplusplus. but it's HARD to keep maximalists at bay
  430. jottingerand scala, and perl, and...
  431. bluein that respect, languages which have a rahter conservative design process (c, java), are actually BETTER at reducing complexity
  432. jottingerjava tried to walk a middle ground for inheritance and composition: smalltalk was always going to demand actual inheritance, but java limits it fairly sanely most of the time: 1:N interfaces, 1:1 superclass
  433. blue(meanwhilst: javax>jakarta migration totally pooped; possibly though through oracle's fault)
  434. jottingeroracle+eclipse, legal issues that are not "faults" but entirely annoying as hell
  435. jottingerthe javax/jakarta rebrand is going to hurt more than anything else for quite some time
  436. jottinger(and FTR I'm neutral on go.)
  437. blueand I *MEAN*. there is an interim situation (that's where my workplace is right now), where you need to MIX jakarta and javax stuff, because some things are adverstised as "new world" but were still old: we're on tomcat 10, and that's EXACTLY the painpoint. I tried to convince my boss to go directly to pure jakarta with tomcat 11, he refused, too new for him
  438. bluemeanwhilst, he did agree to go up to java 21 from 8, meaning we're in a shiny java world but utterly broken javax/jakarta one
  439. jottingeryep, that's an ugly place to be in
  440. blue(in 2025, I migrated our stack from tomcat 9 to 10 and java 8 to 21 -- that was PAINFUL, and unfortunately as said we didn't use the cut to set things in ORDER)
  441. nevet(in 2025, I migrated our stack from tomcat 9 to 10 and java 8 to 21 now has karma of -1.
  442. jottingeryep, it's a gross migration
  443. jottingertotally agreed
  444. bot[jottinger/bytecode.news] New PR #78: Adding controls for commands by provenance - https://github.com/jottinger/bytecode.news/pull/78
  445. dreamrealblue: I changed how nevet does sentiment scoring. There's one change still queued for it (not deployed) but it's a little more clear than it was, I think, and more useful. And I slotted the operations controls into place!
  446. dreamrealApart from the UI - which still has a number of unresolved *questions* - nevet's starting to get close to feature complete.
  447. dreamrealI still want to do the output transformation stuff but that's relatively easy
  448. bot[jottinger/bytecode.news] New issue #81: Memo capability via mail service binding - https://github.com/jottinger/bytecode.news/issues/81
  449. bot[jottinger/bytecode.news] New issue #80: URL shortcode service - https://github.com/jottinger/bytecode.news/issues/80
  450. bot[jottinger/bytecode.news] New issue #79: Egress transformation pipeline + content filter - https://github.com/jottinger/bytecode.news/issues/79
  451. bluedreamreal: nice! what did you change it to?
  452. blueoh I see, you changed it quite a lot
  453. Chronosblue: I haven't done enough Go to have an opinion worth listening to, but it always feels like it has a LOT of unexpected behavior
  454. ChronosWhat I *do* like about Go, which is such a great feature that it almost trumps everything else, is that it so easily produces stand alone binaries with basically trivial effort
  455. blueChronos: I agree on the latter point. it's completely trivial to create static binaries depending on basically nothing, and there's also cross compiling
  456. blueif you're interested, I'm writing the package manager for my OS in Go: https://superarch.org
  457. bluethe project is in the slow-mode phase, so don't expect much for next time, but go's ability to create static binaries & cross-compile made it very easy for me to do this
  458. blueI want to compile orz for macos too, which is why I asked dreamreal earlier for the output of the uname command. thankfully, this is mostly trivial in go
  459. Chronosblue: Interesting