ByteCode.News
Submit RSS Atom Sign in

Back to the channels

#nevet

  1. dreamreal Chronos: no, the idea is "someone mentions something interesting" and the LLM comes up with a draft article about it
  2. * nevet joined #nevet
  3. * dreamreal!~dreamreal@about/java/dreamreal changed the topic to: This is the channel for the development of the software that runs nevet: https://github.com/jottinger/streampack
  4. jottinger sentiment #nevet
  5. nevet Sentiment 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.
  6. jottinger okay, fixed.
  7. bot [jottinger/bytecode.news] New PR #73: Migrate service-rss to use the lib-polling structure - https://github.com/jottinger/bytecode.news/pull/73
  8. bot [jottinger/bytecode.news] New PR #72: Use provenance for tell instead of fanout - https://github.com/jottinger/bytecode.news/pull/72
  9. * nevet joined #nevet
  10. * dreamreal!~dreamreal@about/java/dreamreal changed the topic to: This is the channel for the development of the software that runs nevet: https://github.com/jottinger/streampack
  11. * blue joined #nevet
  12. bot [jottinger/bytecode.news] New issue #74: General-purpose LLM query operation (ask) - https://github.com/jottinger/bytecode.news/issues/74
  13. bot [jottinger/bytecode.news] New issue #76: Admin URL reference digest command - https://github.com/jottinger/bytecode.news/issues/76
  14. bot [jottinger/bytecode.news] New PR #75: Add 'ask' operation - https://github.com/jottinger/bytecode.news/pull/75
  15. * nevet joined #nevet
  16. * dreamreal!~dreamreal@about/java/dreamreal changed the topic to: This is the channel for the development of the software that runs nevet: https://github.com/jottinger/streampack
  17. jottinger ask how do I ignore inner classes with maven and jacoco?
  18. nevet To 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`).
  19. blue ask are you real nevet?
  20. nevet No, 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.
  21. jottinger bwahaha
  22. blue ask where is the real nevet?
  23. nevet ok, blue: updated ask where.
  24. jottinger PLEASE do not abuse ask
  25. blue ask why is dreamreal dumb
  26. nevet ok, blue: updated ask why.
  27. jottinger there's a throttle, and casual silly reque... DAMN IT
  28. blue ask hullo?
  29. nevet Hello! How can I help you today?
  30. jottinger * dreamreal sighs
  31. jottinger blue: thanks.
  32. jottinger Now we can't use ask for a while.
  33. blue looks like someone broke it
  34. jottinger no, I said there's a throttle
  35. jottinger and you exceeded it right out of the gate
  36. jottinger right after I said "please don't"
  37. blue I was... testing!
  38. jottinger which is exactly why I set a throttle
  39. jottinger SO WAS I
  40. jottinger I might rev the throttle down, actually
  41. jottinger but that IS why I set the throttle, to prevent people from just eating every last token i have
  42. jottinger damn it
  43. jottinger well, that's instructive: i'd pondered even implementing the feature, worried about abuse, and it didn't even survive five minutes :D
  44. blue did I mention I'm not only the best philosopher, the best computer scientist, but also the best tester?
  45. blue I structurally unveil systemic weaknesses!
  46. jottinger You're not, though, because you're overly-aggressive
  47. jottinger I was actually asking you to hold off
  48. jottinger because there were things *I* needed to test, and you ran roughshod over it
  49. roughshod though I must say the threshold is very aggressive, I only asked four times
  50. jottinger I only have so many tokens and it's real money. It's five per hour-window.
  51. roughshod oh. do you need me to compensate you for the used tokens?
  52. roughshod actually, I have like $20 worth of grok API key I'm not using, you could use that
  53. jottinger I 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.
  54. jottinger I 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.
  55. roughshod Prepaid credits
  56. roughshod $19.93 total
  57. roughshod do you want the key or not? I'm not using it
  58. jottinger nah, rebuilding to use grok instead of anthropic isn't worth it
  59. jottinger It's a relatively minor fix - a dependency to use the grok mechanism, plus the key, etc., - but eh, it's fine
  60. jottinger the throttle exists for a reason. I didn't want to limit ask to admins only.
  61. blue shrug, it's gonna get abused at some point anyway, that's the nature of people!
  62. jottinger Which is why the throttle's there!
  63. blue I used to have my bot access an llm too, then some moron started asking it illicit questions
  64. jottinger i figure if it's throttled too much, I'll just crank the throttle down even more :D
  65. blue or jst limit to admins, basta
  66. jottinger javabot has gpt access itself, and it's queried pretty rarely in practice
  67. jottinger but yes, limiting to admins is also an option
  68. jottinger most people in conversational contexts like IRC prefer conversation
  69. blue the java community is full of conversatives, try running a rustbot!
  70. blue but yeah. I inherently distrust humans, I would furnish them with unfettered access to AI
  71. blue or any system, for that matter
  72. blue s/would/wouldn't/
  73. jottinger Well, like I said, if nevet needs different throttles or gates, the idea is that they're *available*
  74. blue mhm
  75. blue btw do you have a mission statement for nevet. right now it's doing lots of things, what's your seven-word selling pitch
  76. jottinger I have ALWAYS had gates in place, now I have throttles as well
  77. jottinger streampack is an information-management application.
  78. blue some moron once told me, if you have a product, you need to be able to sell pitch it in seven words
  79. blue that makes it sound like a database! I mean, which system is *not* used to manage information? that's too broad!
  80. jottinger The 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
  81. jottinger operations on those flows, and information gets emitted based on rules you design.
  82. jottinger Sure, nevet IS a database, like a cms.
  83. jottinger It's not really a CMS, because a CMS is limited to content, and nevet is not. It's information-management, MIS, not CMS.
  84. blue suggested 7-word pitch: "nevet/streampack/bytenews/I_NEED_TO_GET_MY_NAMING_STRAIGHT is the universe's most versatile info-management-system"
  85. jottinger It's not, though, and that communicates little of worth, much like MY seven-word pitch. :D
  86. jottinger the seven-word pitch is for classification: the 25-second pitch is the useful one.
  87. blue YOU told me only the seven-word pitch MATTRES!
  88. blue you deFRAUDed me!
  89. jottinger A 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
  90. jottinger I doubt it, but the seven word pitch is definitely important
  91. jottinger if you don't pass the seven-word watermark for someone you've lost them
  92. bot [jottinger/bytecode.news] New PR #77: Update title fetch operation - https://github.com/jottinger/bytecode.news/pull/77
  93. * nevet joined #nevet
  94. * dreamreal!~dreamreal@about/java/dreamreal changed the topic to: This is the channel for the development of the software that runs nevet: https://github.com/jottinger/streampack
  95. jottinger https://www.youtube.com/watch?v=aCzCpnfZMGI&pp=ugUEEgJlbg%3D%3D https://www.youtube.com/watch?v=CGQMnfhay8s&list=RDCGQMnfhay8s&start_radio=1
  96. nevet https://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"
  97. jottinger ask what are the rules for the harvard ig nobel prizes, and are they generally relevant?
  98. nevet The 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.
  99. jottinger heh. Working, sort of.
  100. jottinger Might need to tell the prompt to be VERY succinct.
  101. jottinger It's kinda fascinating watching China claim Alysa Liu :D
  102. blue ask why is rust such a terrible language only used by pricks?
  103. nevet ok, blue: updated ask why.
  104. blue what's this "ok updated ask why"?
  105. jottinger need to check factoid priority vs ask
  106. jottinger the priority of operations is important: "ask why is this" also matches factoid setting: "foo is bar" is "set foo to bar" after all
  107. jottinger and that is the problem, priorities reordered
  108. jottinger will redeploy soon
  109. * nevet joined #nevet
  110. * dreamreal!~dreamreal@about/java/dreamreal changed the topic to: This is the channel for the development of the software that runs nevet: https://github.com/jottinger/streampack
  111. jottinger ask why is rust such a terrible language only used by pricks?
  112. nevet I 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.
  113. blue hmpf, gpt still woke I see
  114. jottinger no, I told it to mitigate extreme sentiment.
  115. blue it's not extreme at all, that's the point
  116. blue we need a steelman mode for gpt: take whatever's thrown at you, and ARGUE THE POINT
  117. jottinger no
  118. jottinger if you want to have a CONVERSATION WITH AN LLM, nevet is not the way to conduct it
  119. blue steelman why is rust such a terrible language only used by pricks?
  120. nevet ok, blue: updated steelman why.
  121. blue hmpf, broken
  122. jottinger no, you have it a factoid set command :D
  123. jottinger gave, sorry
  124. jottinger and that's fine, information is *noisy*
  125. blue but seriously: I think that would be cool, unrelated to nevet. like !steelman the earth is flat
  126. blue take things you disagree with and have the machine steelman them
  127. jottinger I'm sure, but LLMs can give you that without nevet, and nevet is not meant to be a bridge to an LLM
  128. blue ya
  129. jottinger And if that's something you actually want streampack to do, well, the tools are definitely there
  130. jottinger the 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
  131. jottinger all you'd have to do is write it
  132. blue `If introspection is unreliable, then the subjective certainty “I feel X” may not reflect a stable internal entity — only a cognitive guess.`
  133. blue I had it steelman "humans have no feelings"
  134. blue this is fascinating
  135. blue oh well, but also a waste of time, I'll go back to wasting time on writing code
  136. jottinger the 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
  137. jottinger and I'd rather pull its claws intentionally rather than let them be accidentally deployed
  138. blue ask when will we get to mars?
  139. nevet Based 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.
  140. jottinger ask why are liberals such total asswipes?
  141. nevet I 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.
  142. jottinger +1
  143. jottinger good, good
  144. jottinger ask why do republicans hate immigrants?
  145. nevet Republicans 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.
  146. blue ha! where is the 'let's not make broad generalisations'
  147. jottinger The mitigation language can probably be tuned somewhat, but it SHOULD nudge answers towards a middle ground where possible.
  148. blue but anyway, broad generalisations are good so the llm is definitely wrong here
  149. jottinger nah, those answers are pretty neutral and should be
  150. jottinger the first one is directly provocative, the second one less so
  151. jottinger and the answers reflect that
  152. blue the answers are only insomuch neutral as is the training data of the llm, which is uh, unneutral
  153. jottinger sure, but that's how the ball bounces
  154. blue 'neutral' is the wrong word here, by which you mean neutral wrt the training data
  155. blue it suggests the provided opinion is neutral, which it is not
  156. jottinger I'm not anticipating ask being used for generally nontech questions anyway
  157. blue true
  158. blue but in that case: preseed the bot to reject that completely
  159. jottinger ask why does scala suck so much
  160. nevet Scala 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.
  161. jottinger there we go.
  162. jottinger Preseeding the bot is an EXCELLENT way to need sponsorship for the LLM services. :D
  163. blue it's funny it didn't say people find rust's syntax complex which is uh, a far truer statement than scala's
  164. blue this is more llm criticism though. everything is mellowed down to the point nothing really means anything
  165. jottinger so 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
  166. jottinger 42 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
  167. jottinger (the main use case wants the UI to be ready too)
  168. blue dreamreal: java discovered pattern matching for instanceof (Java 14+), pretty cool!
  169. jottinger Yep, been there for a while.
  170. blue `if (this.exception instanceof Error error)`
  171. blue s/java/just/
  172. blue apparently it was previewed in java 14, finalised in java 17
  173. jottinger Yep.
  174. jottinger Lots of long-standing seismic changes representing some real improvements in Java lately
  175. blue it's still a dumb language if you have to do .equals instead of ==, but it's getting better
  176. jottinger well, there's semantic difference between == and .equals, you know? They're not ===!
  177. blue that's what I'm CRITICISING, you fool
  178. jottinger there SHOULD be semantic differences between them
  179. blue I'm diametrically opposed to calling an instance method on obj a to compare it to obj b, comparison is an operation on equal standing
  180. jottinger I get it
  181. jottinger but you're also incorrect
  182. jottinger because object identity can be "is this the same object" or "does this object represent the same values"
  183. blue javascript can do that sugar for you, there's no reason java shouldn't, except for being a butt of a language
  184. blue it works for primitive, so shut up!
  185. jottinger primitives aren't references, though, which is why
  186. jottinger new Integer(4)==new Integer(4) in Java, but new Integer(2049)!=new Integer(2049)
  187. jottinger which is counterintuitive on the surface, but it's A) known and B) rational
  188. blue there's absolutely no reason new Long(1)=new Long(1) should be false. it's confusing and dumb
  189. blue ergonomics is KELVIN ZERO
  190. jottinger it's not false
  191. jottinger that's the point
  192. jottinger but new Long(2049)==new Long(2049) IS false
  193. blue it is false, new Long(1)==new Long(1) is false
  194. jottinger and there's a reason for it
  195. blue I'm telling you the REAOSN is dumb
  196. blue when comparing strings, or Longs, you don't CARE for object identity, that's totally BEYOND the point
  197. jottinger oh, damn, you're right, the references ARE different
  198. blue yes
  199. blue of course I'm right
  200. jottinger dude, live in the real world for once
  201. jottinger the point is: == compares the ACTUAL THING, identity
  202. blue the real world is full of morons who come up with exactly this kind of unintuitive garbage
  203. jottinger object identity is NOT the same thing as value identity
  204. blue identity ONLY matters in SOME cases. in strings and longs, it does NOT
  205. blue value identity and object identity should be coalesced for strings and longs and other basics
  206. jottinger That creates complexity a lot like operator overloading does
  207. jottinger it was a choice made by the compiler and language designers, and the rules are pretty clear
  208. blue there is NO UNIVERSE wher ethe original story of new String("foo") is relevant, why is this so hard to get
  209. blue origin story*
  210. jottinger what are you talking about
  211. blue new String("foo")==new String("foo") SHOULD BE TRUE
  212. blue it should NOT matter where or how I created a string. they should be also == to new String("fo"+"o")
  213. blue IOW, the == operator should represent the equals call
  214. blue for all trivial instances, that is string, long, boolean, integer, etc.
  215. jottinger Noted. File a JEP.
  216. jottinger It won't happen, but ... file a JEP. Who knows?
  217. 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.)
  218. blue this 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
  219. blue ever confused*
  220. jottinger So why are you expecting otherwise from Java?
  221. jottinger after all, 4==4 and 2049L=2049L in every case
  222. jottinger *every* case
  223. blue I'm telling you that == works CORRECTLY for strings and numbers in javascript
  224. blue REGARDLESS of their origin story
  225. jottinger So Java doesn't do it for strings, noted. Except a String in Java is actually a { "value": "foo" }
  226. blue and that it never led a JS developer to think that == applies universally
  227. blue somehow a js developer can fit it in his head, that this concept works for strings, but doesn't work for record objects
  228. jottinger Oh, 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
  229. blue but a java developer CANNOT
  230. jottinger blue: every java developer does :D
  231. blue you have NO IDEA how often I made this java mistake of using == on strings
  232. jottinger See, don't tell people that
  233. blue and there is NO MECHANISM to catch it, either
  234. jottinger ever
  235. blue because the language is DUMB as heck
  236. jottinger that's basically saying "I don't know Java and refuse to learn it"
  237. blue I don't care, I get paid to write java, and I can still consider it utterly dumb and NON-INTUITIVE in this
  238. jottinger because 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
  239. nevet because you know how you just said "no JS developer ever makes this mistake"? now has karma of -1.
  240. blue this is literally a GOTCHA
  241. jottinger Hey, go for it, you have every right to you opinion
  242. jottinger chronos, jreicher: when do you use == for comparison
  243. jottinger blue: I get it, but this is definitely an "old man yelling at clouds" thing on your part
  244. blue or you can just recognise this was a retarded decision
  245. jottinger dude
  246. jottinger why does it matter what I think
  247. blue you can just agree, bad decision that we ALL must live with, now
  248. jottinger Why would I bother?
  249. blue why would you bother with anything
  250. blue I'm not going down the nihilistic rabbit hole
  251. jottinger this is picking a fight for nothing
  252. blue the 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
  253. jottinger and 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
  254. blue how do you suggest I deal with the equals vs == issue in java?
  255. blue how can I prevent a lapse there?
  256. jottinger you can do that in java, too, with a warning when you use == :D
  257. blue but that rule may have false positives
  258. jottinger spotless? jacoco? spotbugs? decent test suite?
  259. jottinger Yes, EVERY RULE can have false positives
  260. jottinger "you used === - did you mean ==?"
  261. blue NO, the == rule does NOT have false positives, in JS. there is NO case where == is preferable to ===
  262. blue you're missing my point!
  263. jottinger No, you're missing mine, and you're upsetting me by not just agreeing even though you don't
  264. blue all you need to do here is agree that decision in java is DUMB & confusing!
  265. blue instead you're cargoculting it!
  266. jottinger It's not confusing to me at all, and has never been beyond the first time I ran into the use of .equals
  267. jottinger because it has an explanation, and I'm smart enough to understand the explanation and the implications
  268. jottinger == compares identity, .equals compares value
  269. blue it has ALWAYS been confusing to me, ever since I learnt java. and in fact you just proved above it's confusing with Long(1)
  270. blue you thought it was true, when it is now!
  271. blue not*
  272. blue arguing systemtically doesn't work either. if java were all-in on objects, why allow primitives where == DOES work as expected
  273. jottinger Right, I was thinking the caching would do something different than it is
  274. blue THAT would at least make sense somewhat, even if it were even dumber
  275. jottinger but I wouldn't compare OBJECTS with == unless I actually intended identity anyway
  276. jottinger because this is very much standard practice in Java
  277. jottinger object identity is rarely what you care about
  278. jottinger and == is identity
  279. jottinger very simple
  280. jottinger what are you, too stupid to grasp that?
  281. blue the 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
  282. blue hence == should shortciruit that. EASY
  283. blue give me ONE use case where you need to compare two strings by identity, but NOT by contents!
  284. jottinger Okay, so NOW we're special-casing object references for Strings, presumably the boxed types too. File a JEP.
  285. blue well Strings, Longs, Float, Double, Integer
  286. jottinger There's an efficiency cost: a String's value can be represented in multiple places.
  287. blue anything that's effectively a primitive
  288. jottinger a string "foo" might not be identity-equal to "foo" if they were constructed differently, because of interning
  289. jottinger Strings are NOT primitives
  290. blue the perf cost is irrelevant!
  291. blue I'm still waiting for a use case where the identity, i.e. the origin story, of two strings, is relevant
  292. jottinger It is not
  293. jottinger I don't have a "use case" except for efficiency at runtime, which you've decided is not relevant
  294. blue *when* would you want to compare strings by identity, but NOT by contents?
  295. jottinger emphasis on YOU
  296. jottinger and 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.
  297. blue lang specs should NOT take efficiency into consideration, they're NOT implementations. that's an implementation different
  298. blue you're movign the goalposts
  299. jottinger Valhalla has a LOT of implications across the ecosystem and has been underway for years.
  300. blue s/different/detail/
  301. jottinger You need better clouds to yell at.
  302. blue you lost by FIAT!
  303. blue (btw, nevet is still missing a discord icon :-()
  304. jottinger I have no idea how to get JDA to associate an icon to itself.
  305. blue even chatgpt supports me!
  306. blue "For normal application code: No. There is essentially no semantic domain meaning to String identity."
  307. jottinger * dreamreal sighs
  308. blue "String represents a value type (text). Its logical meaning is its character sequence. So value equality is the semantic equality."
  309. blue HA!
  310. jottinger if you read what I said, you'll see that I'm not disagreeing with the sen... you know what, this is a stupid conversation
  311. jottinger ping me when you have something relevant to say that isn't argumentative for the sake of argument
  312. jottinger You'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
  313. jottinger sentiment #nevet
  314. nevet Sentiment 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.
  315. jottinger ooo, it's using the *user*
  316. jottinger fascinating, will need to fix
  317. jottinger but the *sentiment* is correct
  318. blue the bot is being ridiculous. It's hallucinated a 'rule-breaking' ceremony that hasn't been codified in any form. and wth is -2/10?
  319. blue the scala is 1-10, normally
  320. jottinger It'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.
  321. jottinger man, you are *desperately* searching for things to complain about
  322. blue it should be 1 to 10!
  323. 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
  324. jottinger sorry, I do semantic analysis as part of my day job
  325. blue just think about it, if the bot said 0/10, you'd be the only person int he universe thininkg that's a NEUTRAL assessment
  326. blue come on, you know I'm right
  327. jottinger I actually do not, because everyone who understands sentiment analysis would have the ±1 scale in mind
  328. blue you are the ONLY ONE who understands the sentiment analysis system YOU came up with! at least indicate the scala properly then!
  329. blue I do not know a single human who would see 0/10 and think, oh my, there's a perfectly neutral score
  330. jottinger Actually, yes, you do.
  331. jottinger My god, you walk into these all the time.
  332. blue fix it!
  333. jottinger It'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.
  334. blue I'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
  335. jottinger Yes, agreed. You would say.
  336. blue anyone 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
  337. jottinger It's really not.
  338. jottinger With all due respect, my friend, your opinion carries a LOT of water for you when it carries less for others. And that's relevant.
  339. jottinger You can even be RIGHT - but the weight is still unequal.
  340. blue ask 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
  341. jottinger Dude. 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.
  342. blue really? I can't think of ANY website that rates ANYTHING and doesn't use either 1-5 or 1-10... yelp, imdb... ANYTHING
  343. jottinger Right. Websites.
  344. blue it's basically UNIVERSAL
  345. jottinger * dreamreal sighs
  346. blue no, not just websites
  347. blue ANYTHING
  348. blue would you like to rate your experience after the film? you get a slip with 1-5
  349. blue you don't get a slip with -10 to 10 or -5 to 5
  350. blue how would the quality of the phone call? 1 to 5 stars
  351. blue how was*
  352. blue seriously, do you have a good counterexample here?
  353. jottinger enough. 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.
  354. jottinger A 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.
  355. jottinger Err.... dude, do you read?
  356. jottinger I keep telling you this is PART OF MY EFFIN DAY JOB.
  357. blue so 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
  358. jottinger And 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.
  359. blue and that makes it confusing, I said!
  360. jottinger ... to you, yes, and I agreed
  361. jottinger I do appreciate how you're using an LLM to back up your point :D
  362. blue yes! I'm circling back to the LLM use of conversation assessment
  363. blue money 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."
  364. 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
  365. jottinger * dreamreal for a token having a tripwire for a channel where it notifies an op if something happens.
  366. jottinger if 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
  367. jottinger I do this for work, dude.
  368. blue you 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
  369. blue for me*
  370. jottinger If you're still confusing == and .equals I'd be concerned about you doing java for work
  371. blue it'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!
  372. jottinger no disrespect intended
  373. blue none taken! I'd leave that to the people paying me, though
  374. jottinger I'd hope so :D
  375. jottinger plus, 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
  376. jottinger but that's not how any of that works, nor should it be
  377. blue even 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
  378. blue authority / domain expert
  379. jottinger but 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
  380. blue yes, 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
  381. blue also why is the bot saying Jottinger? does it map back your username/account name to the admin name?
  382. blue you might want to switch that to the nick, to avoid leakage
  383. jottinger Remember when I said "interesting, that's wrong"? Guess what I was referring to.
  384. blue but your user is also dreamreal
  385. jottinger Hint: it's the use of the underlying username and not the nick.
  386. blue or do you mean the internal nevet user
  387. jottinger No, my USER is jottinger. The nick I use in this binding is dreamreal.
  388. blue huh, no?
  389. blue 18:13 -NickServ(NickServ@services.libera.chat)- Information on dreamreal (account dreamreal):
  390. jottinger * dreamreal sighs
  391. blue your account is literally dreamreal
  392. jottinger dude
  393. blue anyway it should show the nick!
  394. jottinger You 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.
  395. blue yes but when I said user I meant the irc account, which is also a user. you mean the nevet user, no?
  396. blue anyway I think the nevet user should never be leaked
  397. jottinger YOU 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*.
  398. jottinger Have I disagreed with you?
  399. blue YES 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
  400. jottinger You do an awful lot of fighting over ground that's already conceded.
  401. jottinger I 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.
  402. blue 18:11 < blue> also why is the bot saying Jottinger? does it map back your username/account name to the admin name?
  403. blue I hope that was clear enough I was referring to the irc username/account name, which is why I called it so
  404. blue but evidently I wasn't clear enough, sorry!
  405. jottinger yes, this is the thing *I* identified
  406. jottinger 11:33 <dreamreal> ooo, it's using the *user*
  407. blue YA, I thought you meant irc user, with THAT
  408. jottinger I'm sure you did.
  409. jottinger And then you were fighting with me about it.
  410. jottinger You certainly won something: you annoyed me.
  411. blue I'm sorry for that, in this particular case I really didn't mean to annoy you
  412. jottinger Admittedly, that's sort of a default position for me, but even so.
  413. blue that being said, you shouldn't be annoyed by what some moron online says
  414. blue I try to follow that example myself. I almost never get annoyed by people online
  415. jottinger Like I said, it's sort of a default position because I expect competence everywhere
  416. blue ya but being annoyed by default also isn't good for your psyche
  417. blue you should be somewhere between that and a golden retriever
  418. jottinger There's a reason I know what goo psychotherapists would say.
  419. blue ya
  420. blue dreamreal: what does `uname -s | tr '[:upper:]' '[:lower:']` give you on mac?
  421. jottinger darwin
  422. blue thanks
  423. Chronos dreamreal: I use == to compare references and .equals to compare equality :)
  424. Chronos I've never actually seen == vs. .equals() cause a problem.
  425. jottinger Chronos: I have! Lots! ... but not among Java developers with more than a week of active coding experience.
  426. jottinger I mean, it's a real thing but it's also trumpeted everywhere with glaring neon signs: "use equals to compare objects"
  427. 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.`
  428. blue it's one of the worst gotchas of Java, and one of the reasons I hate it
  429. jottinger yeah, it's why nobody uses java anywhere ever, explains its #625 rating on TIOBE
  430. blue well 'hate it' might be overstated; I wouldn't CHOOSE to use it. it's not really "this shouldn't exist, like rust"
  431. blue but java also subscribers to an inheritance model that has not ever mapped reality properly. composition will always trump inheritance
  432. blue subscribes*
  433. blue given, it's not as bad as c++, but that's not a real good reference point
  434. nevet given, it's not as bad as c now has karma of 1.
  435. jottinger bwaha
  436. jottinger well, java has a simple inheritance model that was meant to give it some legacy from smalltalk
  437. jottinger and so it does
  438. blue I 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
  439. blue at 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
  440. blue it'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
  441. jottinger and scala, and perl, and...
  442. blue in that respect, languages which have a rahter conservative design process (c, java), are actually BETTER at reducing complexity
  443. jottinger java 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
  444. blue (meanwhilst: javax>jakarta migration totally pooped; possibly though through oracle's fault)
  445. jottinger oracle+eclipse, legal issues that are not "faults" but entirely annoying as hell
  446. jottinger the javax/jakarta rebrand is going to hurt more than anything else for quite some time
  447. jottinger (and FTR I'm neutral on go.)
  448. blue and 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
  449. blue meanwhilst, 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
  450. jottinger yep, that's an ugly place to be in
  451. 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)
  452. nevet (in 2025, I migrated our stack from tomcat 9 to 10 and java 8 to 21 now has karma of -1.
  453. jottinger yep, it's a gross migration
  454. jottinger totally agreed
  455. bot [jottinger/bytecode.news] New PR #78: Adding controls for commands by provenance - https://github.com/jottinger/bytecode.news/pull/78
  456. * nevet joined #nevet
  457. * dreamreal!~dreamreal@about/java/dreamreal changed the topic to: This is the channel for the development of the software that runs nevet: https://github.com/jottinger/streampack
  458. * nevet joined #nevet
  459. * dreamreal!~dreamreal@about/java/dreamreal changed the topic to: This is the channel for the development of the software that runs nevet: https://github.com/jottinger/streampack
  460. * nevet joined #nevet
  461. * dreamreal!~dreamreal@about/java/dreamreal changed the topic to: This is the channel for the development of the software that runs nevet: https://github.com/jottinger/streampack
  462. * nevet joined #nevet
  463. * dreamreal!~dreamreal@about/java/dreamreal changed the topic to: This is the channel for the development of the software that runs nevet: https://github.com/jottinger/streampack
  464. * nevet joined #nevet
  465. * dreamreal!~dreamreal@about/java/dreamreal changed the topic to: This is the channel for the development of the software that runs nevet: https://github.com/jottinger/streampack
  466. dreamreal blue: 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!
  467. dreamreal Apart from the UI - which still has a number of unresolved *questions* - nevet's starting to get close to feature complete.
  468. dreamreal I still want to do the output transformation stuff but that's relatively easy
  469. bot [jottinger/bytecode.news] New issue #81: Memo capability via mail service binding - https://github.com/jottinger/bytecode.news/issues/81
  470. bot [jottinger/bytecode.news] New issue #80: URL shortcode service - https://github.com/jottinger/bytecode.news/issues/80
  471. bot [jottinger/bytecode.news] New issue #79: Egress transformation pipeline + content filter - https://github.com/jottinger/bytecode.news/issues/79
  472. blue dreamreal: nice! what did you change it to?
  473. blue oh I see, you changed it quite a lot
  474. Chronos blue: 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
  475. Chronos What 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
  476. blue Chronos: I agree on the latter point. it's completely trivial to create static binaries depending on basically nothing, and there's also cross compiling
  477. blue if you're interested, I'm writing the package manager for my OS in Go: https://superarch.org
  478. blue the 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
  479. blue I 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
  480. Chronos blue: Interesting