Chat Logs

  1. * lockdown joined #java
  2. * fgarcia joined #java
  3. * jinsun joined #java
  4. * ptomli joined #java
  5. * agnivn joined #java
  6. * agnivn joined #java
  7. * fdan joined #java
  8. * B_fd joined #java
  9. * Aedil joined #java
  10. * ernimril joined #java
  11. * stewi joined #java
  12. * rvalue- joined #java
  13. * MonsterAbyss joined #java
  14. * MonsterAbyss joined #java
  15. * MonsterAbyss joined #java
  16. * rvalue joined #java
  17. * MonsterAbyss joined #java
  18. * agnivn joined #java
  19. * domicron6 joined #java
  20. * MonsterAbyss joined #java
  21. * domicron joined #java
  22. * Inline joined #java
  23. * raj joined #java
  24. * MikeBux joined #java
  25. * polarian joined #java
  26. * kathadris joined #java
  27. * RussEfarmer joined #java
  28. * MonsterAbyss joined #java
  29. * MonsterAbyss joined #java
  30. * MonsterAbyss joined #java
  31. * acidjnk joined #java
  32. * MonsterAbyss joined #java
  33. * B_fd joined #java
  34. * MonsterAbyss joined #java
  35. * jreicher joined #java
  36. * jreicher joined #java
  37. * the_red_freak joined #java
  38. * MonsterAbyss joined #java
  39. dreamrealmorning
  40. * MonsterAbyss joined #java
  41. * agnivn joined #java
  42. * agnivn joined #java
  43. * B_fd joined #java
  44. * MonsterAbyss joined #java
  45. * pengu1nx joined #java
  46. pengu1nxHello, can someone recommend me a library to use for a game?
  47. dreamrealwhat kind of game, what kind of library are you needing
  48. dreamrealI guess the actual answer to your question is "maybe"
  49. pengu1nxOpen to the kind of game, it should have a simple API and be cross platform (Linux/Mac/Windows) though
  50. dreamrealWhat kind of API
  51. pengu1nxTo use the library, no?
  52. dreamrealI mean, you can write simple games with pure java, no library at all
  53. dreamrealnevet has hangman, 21 matches, safecracker built in and they could be done with console
  54. dreamrealno library at all
  55. pengu1nxI meant with a UI though, not CLI
  56. dreamrealso I don't know what you'd use the library FOR. Window control? (Why? JavaFX and Swing are built-in.) OpenGL? There are opengl libraries for java, designed for games, but you haven't said you needed one. Is multiplayer a concern?
  57. dreamrealSee what I mean? You asked a VERY open-ended question :D Now at least we have a clue you mean something with a UI
  58. pengu1nxMultiplayer isn't a concern, I suppose OpenGL would be ideal
  59. dreamreal~lwjgl
  60. javabotdreamreal, lwjgl is the Lightweight Java Game Library (lwjgl.org). [LWJGL] is a solution aimed directly at professional and amateur Java programmers alike to enable commercial quality games to be written in Java. It provides direct access to crossplatform libraries such as OpenGL and OpenAL, as well as controllers such as Gamepads,Steering wheel and Joysticks.
  61. dreamreal~javafx
  62. javabotJavaFX, or OpenJFX, is a set of APIs for writing rich client applications in Java. It's more fully-featured and capable than Swing. For more information see https://openjfx.io . To get started, simply add as a dependency in your build script: https://openjfx.io/openjfx-docs/#maven . Also see ~scenebuilder
  63. nevethttps://openjfx.io "JavaFX" || https://openjfx.io/openjfx-docs/#maven "Getting Started with JavaFX"
  64. pengu1nxI'll check it out, thanks
  65. pengu1nxlwjgl references libGDX, is that just a sorta extension?
  66. dreamrealit's the underlying library that provides the opengl access
  67. dreamrealit's cross-platform, if minecraft can run on your systems, you're good
  68. dreamrealnote that javafx might be just as good
  69. dreamrealI can't give you a whole lot of information beyond this, though: I don't do opengl stuff, so my experience is quite limited here
  70. dreamrealothers may be able to fill in the gap
  71. pengu1nxI see, regarding a build system, it seems Maven and Gradle are the two big ones. Which one would you say is easier to learn?
  72. Paralwjgl is moving to vulkan, I think, so that's going to be an option possibly as well
  73. ParaBest part is that you as developer probably don't have to care.
  74. dreamrealI'd say maven between the two
  75. dreamrealgradle's more expressive but harder to predict
  76. dreamrealmaven's mostly copy-paste to get it to work: it's verbose but ^C/^V is SOOOOO hard
  77. pengu1nxExpressive as in the configs contain less keywords?
  78. pengu1nxLike strange keywords
  79. * GreenResponse joined #java
  80. BombeAlso, don’t “learn” build systems. Use them, pick up what you need, be done.
  81. BombeThe optimal amount of time spent on a build system is 0.
  82. * MonsterAbyss joined #java
  83. pengu1nxTo pick up what you need one still has to learn about it
  84. BombeYeah, in the same way that you have to “learn” a website in order to find the “download” button.
  85. pengu1nxNot really, if something doesn't work or if you have to use it more often then you have to understand it better, you can't just keep resorting to copy pasting
  86. * MonsterAbyss joined #java
  87. BombeRight, but you don’t do that before you work on a project. Same way you don’t read about all the ways a website can offer a navigation menu before you want something from that site.
  88. dreamrealpengu1nx: a gradle build is typically MUCH shorter than an equivalent maven build. But the FIRST thing you learn as a gradle user is "lock down the version did you lock down the version OH GOD LOCK DOWN THE VERSION KILL IT WITH FIRE" because gradle's publicly not committed to version stability
  89. dreamrealif you USE the reasons you'd use gradle, you're engaging with specifics that are not guaranteed to be constant from version to version
  90. pengu1nxThat is interesting, thanks.
  91. dreamrealgradle is great as long as you work with it. It's got a good blend of convention vs configuration (you can configure it in ways that maven makes "interesting") and if you NEED to do that, well, there you are!
  92. dreamrealBut MOST builds don't need it; developers choose gradle because they have a build file with 40 lines instead of 180 that they copy-pasted
  93. dreamrealand maven developers get SURPRISED when a build fails due to maven changing; gradle developers don't get those surprises because they've got scars that remind them to LOCK DOWN GRADLE VERSIONS WITH THE WRAPPER
  94. dreamrealand a lot of maven users don't even know it HAS a wrapper
  95. Tenchi./mvnw wrapper:wrapper
  96. Tenchifor a long time i thought the maven-wrapper-plugin was needed in order to use maven wrapper, and i avoided maven wrapper because i thought it was a stupid chicken egg thing
  97. Tenchiafter a long time of avoiding it and looking at how it actually worked, i THEN discovered the plugin's only used to generate the wrapper script if you don't already have it
  98. Tenchi🤷‍♂️
  99. Tenchidreamreal: do you still make use of fabrikt ?
  100. dreamrealnot if I can help it. (Actually, no: that was for $work and getting it to work was proprietary: they didn't let me contribute back to the project.)
  101. dreamrealI think it's still usable if you constrain the inputs really tightly
  102. dreamrealhow come?
  103. Tenchii'm wondering if it's massively different than the last time i used it... like 2 years ago
  104. dreamrealI'm going to bet that's a pretty strong "no."
  105. dreamrealIt's better than openapi-generator but that's a pretty low bar to have to clear.
  106. Tenchii'm actually putting together a demo comparing openai generators against LLM-based code assistants heh
  107. dreamrealoh, my
  108. dreamrealTenchi: would you, uh, do me a huge favor?
  109. dreamrealPM?
  110. Tenchimaybe haha
  111. Tenchiyeah you can PM
  112. * jamezp joined #java
  113. * metalmaniac joined #java
  114. * lockdown joined #java
  115. * MonsterAbyss joined #java
  116. Tenchithe frickin fabrikt docker image isn't even retrievable
  117. * Tenchi rolls up his sleeves and prepares to lay hands on gradle 🙄
  118. * kusanagi joined #java
  119. * stfstfm joined #java
  120. * stfstfm__1467 joined #java
  121. dreamrealI had to run it locally
  122. dreamrealand TBH I heavily modded it
  123. * MonsterAbyss joined #java
  124. * MonsterAbyss joined #java
  125. * zChris joined #java
  126. * B_fd joined #java
  127. * MonsterAbyss joined #java
  128. * troydm joined #java
  129. * domicron joined #java
  130. * stfstfm joined #java
  131. * MonsterAbyss joined #java
  132. * RussE joined #java
  133. * magla joined #java
  134. * jaskarth joined #java
  135. * MonsterAbyss joined #java
  136. * raj joined #java
  137. * jaskarth_ joined #java
  138. * jbosmans joined #java
  139. * magla joined #java
  140. * jetchisel joined #java
  141. * jaskarth joined #java
  142. * creechy joined #java
  143. * stfstfm_ joined #java
  144. * kcomhnall joined #java
  145. * kathadris joined #java
  146. * domicron joined #java
  147. * B_fd joined #java
  148. * B_fd joined #java
  149. * sa02irc joined #java
  150. * saml joined #java
  151. samlhow can I interpolate JsonNode (jackson) to string template? interpolate("\{foo} \{bar}", jsonNode); jsonNode is supposed to be {"foo": "abc", "bar": 24, ...}
  152. * Inline joined #java
  153. ParaJava doesn't really have string templates. Various formatter methods and such, sure.
  154. Tenchihttps://velocity.apache.org/ 🤣
  155. javabotTenchi's title: "The Apache Velocity Project"
  156. Tenchi"Velocity separates Java code from the web pages, making the web site more maintainable over its lifespan and providing a viable alternative to Java Server Pages (JSPs) or PHP."
  157. Tenchi~php
  158. javabotTenchi, php is the solution of choice for relaying mysql errors to web users. For more info, please read http://me.veekun.com/blog/2012/04/09/php-a-fractal-of-bad-design/
  159. ParaVelocity was kinda fun back in the day.
  160. samlyeah maybe i'm doing something wrong
  161. Parasaml: Well, we don't know what you're trying to do so... :)
  162. samlwanted to create a new endpoint by adding a yaml file that has template string + json schema for input variables
  163. samlidea was no java code to add new functionality. just a yaml file
  164. samlPOST /llm/php.yaml where php.yaml defines llm prompt, tools, input/output json schema
  165. ParaJSON Schema for input variables? As in for the incoming request body?
  166. samlyup
  167. ParaWhy bother with YAML :P It's an ass format anyway.
  168. ParaNow that that's been said, hm.
  169. * mwnaylor joined #java
  170. samlconfiguration can be in json.. or whatever format. just wanted to let users add simple llm features easily without coding in java and recompiling
  171. jbosmanscode-wise it doesn't sound too crazy, however i'd make "something" do generic json parsing for you to some object, so you can skip the low level parsing
  172. ParaJackson can do YAML as well, but as said, YAML is an ass format so it won't be convenient to use.
  173. jbosmansi tend to agree
  174. Para~yaml
  175. javabotPara, yaml is short for YAML Ain't Markup Language and is a human friendly data serialization standard for all programming languages. See http://yaml.org for an explanation of the format, and http://bit.ly/1LZV5Zt for a library to marshall YAML into and out of POJOs. ~jackson also has a dataformat provider for yaml available.
  176. nevet- YAML Ain't Markup Language
  177. ParaHeh, the bot hasn't been injected with opinions for that one.
  178. jbosmansit happens (?)
  179. Parahttps://github.com/cblp/yaml-sucks
  180. jbosmansimho yaml as primary input format sounds bad, it could be an input format "plugin"
  181. samlPOST /llm/a.json {"user_id": 123} given this, and a.json has {"prompt": "find mcdonalds near user's house where user_id is \{user_id}", "tools": ...}
  182. jbosmansi guess i'd want something predictable
  183. ParaYeh
  184. ParaClaude actually uses XML :D
  185. ParaBecause obviously the more structure you can introduce, the less guesswork and misses and weird undefined behavior you have.
  186. jbosmansnothing wrong with XML, a means to an end
  187. jbosmansexactly
  188. jbosmanssaml, sounds good !
  189. jbosmanseven if burger king > mcdo
  190. Para(other burger chain may be available)
  191. jbosmans:-D
  192. jbosmanssaml, it sounds pretty simple on the java side
  193. jbosmansintegration-wise, i'd say use something like spring ai or ..
  194. dreamrealWhat's the question?
  195. dreamrealWhat's being asked? Don't listen to morons!
  196. jbosmansi remember mashing up a stupid recipe app with structured data in like an hour iirc
  197. ParaSome kind of superprompter 7000
  198. dreamrealwait, are you trying to TALK TO an llm, saml ?
  199. samli'll try to use spring-boot-starter-thymeleaf. I'm constructing llm prompt. I was gonna use java21 string template. But that doesn't seem to easy to work with jackson json
  200. dreamrealsaml: oh god
  201. dreamrealno
  202. jbosmansthymeleaf isn't relevant for llm interaction
  203. dreamrealsaml: do not do this
  204. samli'm using spring ai for llm part
  205. dreamrealokay, so... what does thymeleaf do here?
  206. jbosmanssaml, thymeleaf is for generation html from whichever you'd want
  207. samlI have a config: {"prompt": "... {{user_id}} ..."} and user input {"user_id": 123} I want to interpolate
  208. jbosmansi guess you'd want a tool to tell you where the user is
  209. saml"foo {{user_id}} bar {{user_id}} baz" + {"user_id": 123} => "foo 123 bar 123 baz"
  210. samlI can change the variable syntax from {{user_id}} to whatever
  211. dreamrealsaml: well, err... why not send the data to the tool per se
  212. jbosmansokay, so now it's just a string templating thing
  213. dreamrealthis sounds like an intermediate incorrect solution, where the way you're working your way TO a solution is breaking it
  214. jbosmanswhich is pretty simple :-)
  215. ParaAs I understood it, saml wants to create an API which takes a bit of data describing a prompt with some variables (why not preformatted prompts, who knows), runs that through spring ai, and returns whatever. And a bit of schema to make the input and output have a known structure.
  216. samlyeah tool calling is done as well. but some variables are better be interpolated into the prompt instead of tool calling
  217. ParaWhich is...a lot, why not just grab ?prompt=eat+my+shorts but what am I to judge :)
  218. samlI'm building prompt template API (if it is a thing)
  219. jbosmanssaml, it's just replacing things in a text, you could use a template engine or write it yourself
  220. samlinstead of accepting any prompt, only taking parameters of existing prompt templates
  221. ParaBut if the user provides the prompt template, that doesn't really add anything?
  222. dreamreal~template
  223. javabotPopular templating engines include ~thymeleaf, ~freemarker, ~qute, ~velocity, ~stringtemplate, ~pebble, ~rocker, and ~handlebars . ~jtwig exists but looks like it's unmaintained.
  224. ParaOh no, I can't do "sing {songname}", I'll just prompt "sing happy birthday" ...?
  225. dreamrealso you've got thymeleaf, why not populate the thymeleaf context with your JSON values, just iterate through as a map and interpolate
  226. jbosmansString template = "my name is _THIS_IS_MY_NAME_"; String result = s.replaceAll("_THIS_IS_MY_NAME_", "myActualName");
  227. jbosmansI'm thinking/hoping Pattern.quote() isn't needed here :')
  228. samlthanks i'll try these
  229. samlbecause copilot can't figure things out
  230. samli wonder if claude code can fix my coading skillz
  231. * dreamreal mourns
  232. jbosmanswell, today i cancelled openai and switched to anthropic
  233. jbosmansfor reasons i was unaware of before a few days ago :)
  234. Parasaml: LLMs can't really make you smarter if you don't know what to ask. You can't run before learning how to walk and all that.
  235. dreamrealsaml: you're saying ... copilot can't figure out template interpolation in thymeleaf?
  236. ParaWhich of the 27 copilots even is this :P
  237. dreamreal~gpt how do I populate a thymeleaf template from a map
  238. javabotTo populate a Thymeleaf template from a Map in Java, you need to pass the Map object to the model of your Spring MVC controller. Then in your Thymeleaf template, you can access the values using Thymeleaf's ${...} expressions. Java: ```java @GetMapping("/template") public String getTemplate(Model model) { Map<String, String> map = new HashMap<>(); map.put("key1", "value1"); map.put("key2", "value2"); model.addAttribute("map", map); return
  239. javabot<p th:text="${map['key1']}"></p> <p th:text="${map['key2']}"></p> ``` In the above code, the values "value1" and "value2" will be inserted into the <p> elements respectively.
  240. Chronoswait, people use copilot? non-ironically?
  241. * dreamreal weeps
  242. ParaOn tangent, Windows 12 will require an NPU and is AI first for everything, check your favorite tech news site for more.
  243. ParaMy conservative hunch is that Apple's gonna sell about a billion Macbook Neos.
  244. ChronosPara: Are those requirements real, or debunked like some of the other claims made recently about Windows 12?
  245. dreamrealsaml: I think you just iterate through the JSON and populate the thymeleaf context directly without the ${map} crap but what would I know, I'm only human
  246. ChronosPara: Sadly, the base MacBook Neo comes with woefully insufficient RAM, 8 GiB. Such a shame.
  247. ParaChronos: Everything's a rumor until it isn't. But it's ridiculous that such even is a rumor.
  248. dreamrealChronos: 8GB in apple silicon is not the same as 8GB in an intel processor
  249. ParaChronos: It's a Chromebook, really. But iBook was already used years ago.
  250. dreamrealdon't make that mistake, the 8GB in apple silicon is *much* more efficient than in intel
  251. ChronosRemember, it's unified memory — take a chunk out for video.
  252. dreamrealI'm not saying 8GB is the same as 16GB or anything like that, because usage patterns matter, but even so
  253. dreamrealChronos: yes, BUT the apple silicon compresses *in the CPU* so it doesn't have the same pipeline limits
  254. Chronosdreamreal: We have Windows and macOS in the house. This is one of those hills I'll die on: 8 GiB isn't enough for macOS (in my opinion). I know normals that blow past 8 GiB with just 3 or 4 web pages open.
  255. dreamrealit's far more efficient
  256. dreamrealChronos: Right, I'm not saying "8GB is enough for anyone!"
  257. ParaAnd the use case is basically web browser based things and text messaging and other similar light tasks.
  258. geenvoudcompresses what?
  259. dreamrealI'm just saying it's not an apple-to-apples comparison
  260. jbosmansdreamreal, not sure if thymeleaf is (by default) recommended for non-html string templating
  261. dreamrealjbosmans: what does HTML have to do with this
  262. dreamrealmoustache would be the same thing
  263. jbosmansdreamreal, err thymeleaf ?
  264. ChronosFor those people where 8 GiB is enough, I'd strongly suggest they use a Chromebook instead.
  265. dreamrealjbosmans: what about it? It's a template engine
  266. dreamrealthat's it
  267. dreamrealpeople use it for HTML, woo
  268. jbosmansyeah i know what it is
  269. dreamrealI use a dry-erase marker for art
  270. dreamrealI know you know what it is
  271. GreenResponseI’m on 8GiB computer and found the ways to use it efficiently
  272. Chronos(I've got a Chromebook in the house, too — they are, frankly, wonderful machines)
  273. jbosmanswhy propose it for simple scenarios?
  274. dreamrealjbosmans: because he's already using it, it sounds like, and it's right there
  275. dreamrealhe has a nail, he's holding a hammer, do the math
  276. Tenchii have an m1 mac mini w/ 16gb of ram running latest sequoia and apple intelligence enabled... and it uses 7GB when it's booted up and I haven't done anything yet
  277. ChronosTenchi: ouch
  278. jbosmansdreamreal, i see what you mean but they're not using it for simple string templating i'm guessing?
  279. Tenchifire up idea and brave browser and it's using 13GB
  280. dreamrealTenchi: I record my drums in a measly 8GB M1, running 16 audio tracks and recording multiple tracks on the fly, I should be PUNISHING that thing but it's FINE
  281. ParaThe Macbook Neo doesn't simply have a lot of the "fancy" stuff like AI in it.
  282. dreamrealjbosmans: right, but *why not* if it's right there
  283. Tenchiload up a few web sites and a java or kotlin project and i'm at 16GB
  284. jbosmansdreamreal, because it's html oriented?
  285. dreamrealjbosmans: but... it's not
  286. dreamrealpeople use it for html, but so what
  287. ParaIt's what Apple considers barebones; it's not meant for developers running a copy of their company infra, it's for the kids and grannies.
  288. TenchiPara: i have no idea what the neo's all about or how 8GB suffices
  289. jbosmansdreamreal, th:text or whatever?
  290. dreamrealthis is like complaining that a housewife shouldn't be using a craftsman hammer just to hang a painting
  291. jbosmansit's really not :-)
  292. dreamreal"that hammer's too good for a simple nail being driven into drywall, y'all!"
  293. dreamrealit really is
  294. dreamrealI understand what you're saying, but ...
  295. ParaMy mom basically migrated to an iPad this winter for most the things she needs a computer for. It sucks at some tasks, but that really is the thing, if 90% of what average person needs to get done can be done with a lot less hardware, then don't overdo it.
  296. jbosmansagreeing to disagree
  297. * dreamreal shrugs. Okay.
  298. ParaI kinda wanna try painting with a hammer.
  299. jbosmansdreamreal, happy to continue btw :)
  300. ParaLike...punch small balloons filled with paint on a canvas, or something.
  301. Parapunch/hit/hammer/slam
  302. jbosmansThymeleaf is a tool for creating natural and elegant HTML templates that can be used in web and standalone environments.
  303. jbosmansit *could* be used for other things, i use it for html email templates as well
  304. ChronosPara: iPads and Chromebooks are amazing for a lot (perhaps most) people
  305. dreamrealjbosmans: why? I mean, you're saying that a tool whose design was template replacement shouldn't be used for template replacement because the tool's got specialization for html. It's got a text mode so it can be used for, uh, hold on, checking the references, carrying the 2, dividing by zero... OH TEXT
  306. jbosmansbut for simple text templating?
  307. dreamreal`The TEXT template mode will allow the use of a special syntax for templates of a non-markup nature. Examples of such templates might be text emails or templated documentation. Note that HTML or XML templates can be also processed as TEXT, in which case they will not be parsed as markup, and every tag, DOCTYPE, comment, etc, will be treated as mere text.`
  308. dreamrealThat's from their docs
  309. dreamrealcopied
  310. dreamrealI mean, why argue at this point, if you think the text mode is insufficient for use with text, what can I say? I am not here to win an argument, you should feel what you feel regardless of what I think of it
  311. jbosmansI know you're not here to win an argument, nor am i
  312. jbosmansthymeleaf is the best template engine i know of, but it's html focused which makes sense, it's great at it
  313. dreamrealsee? no problem. And while it has HTML specializations, the docs suggest "html focused" might be a bit much
  314. jbosmansfor simple text templating it's an overkill
  315. jbosmansworst case the String.replaceAll() needs a Pattern.quote()
  316. dreamrealso: moustache. Unless he already has thymeleaf in his classpath already.
  317. jbosmansactually, i always do that i guess
  318. dreamrealbut at this point this is proceeding beyond not-my-problem.
  319. ParaMoustache was good. Wish it was still common.
  320. dreamrealit's still pretty popular because it's so freaking fast
  321. jbosmansi think i used what came after in javascript world, like long ago
  322. jbosmansmustache right?
  323. dreamrealYou used what came after moustache? ... what was that? Because I've used moustache in JS (and java, and python) relatively recently
  324. jbosmansor maybe that's what i know/knew
  325. jbosmanshttps://mustache.github.io/
  326. * canton7 joined #java
  327. jbosmansah handlebars, that's the one i had to use quite a bit like 10 years ago
  328. jbosmanslong story short, for simple scenarios i'd always prefer simple String.replaceAll() over pulling x dependencies. If it's about HTML tho, that would be dumb(ish)
  329. * Ragnor joined #java
  330. jbosmansthese replaceAll() call could be chained over a text block in recent java version
  331. jbosmansdreamreal, am I making sense here or not at all? I'd love to hear it
  332. dreamrealjbosmans: not enough scope to answer. If it works for you, that's what you should do.
  333. dreamrealWorking code > everything else
  334. jbosmansi do tend to agree :-)
  335. jbosmansgiven i care/try to look at if my "actions"/responses are worthwhile, are they?
  336. jbosmansforgot the highlight @ dreamreal
  337. jbosmans&&
  338. jbosmanssaml, how's it going?
  339. dreamrealI mean... I dunno, I don't know of your code
  340. dreamrealif you're satisfied with it, why wouldn't I be satisfied with it, too?
  341. jbosmans~dreamreall++
  342. nevet~dreamreall now has karma of 1.
  343. javabotdreamreall has a karma level of 1, jbosmans
  344. jbosmans;-)
  345. jbosmansmm that's an 'l' too much
  346. jbosmans*many
  347. jbosmans~dreamreal++
  348. nevet~dreamreal now has karma of 1.
  349. javabotjbosmans, what does that even *mean*?
  350. jbosmansall is good then :)
  351. jbosmans<-
  352. dreamreal?
  353. jbosmanssomething about karma and for whom it does or does not work
  354. jbosmans"<-" means "leaving" which i obviously messed up :)
  355. jbosmansand/or "going out" i guess
  356. dreamrealwell, I'm remarkably hard to assign karma to
  357. jbosmansso it appears
  358. dreamrealnot sure why but it might be my utter disdain for karma personally
  359. jbosmansit might be hardcoded i guess
  360. jbosmanson another note i switched from openai to anthropic today
  361. * kmh_ joined #java
  362. jbosmansand it still works pretty well for what i use it for \o/
  363. jbosmans(or better)
  364. dreamrealI find claude a lot better than chatgpt for code myself
  365. jbosmansagree so far
  366. jbosmansgemini pretty good as well
  367. jbosmansif only money weren't an issue :)
  368. jbosmansthings can get expensive pretty quickly
  369. * metalmaniac joined #java
  370. * kcomhnall joined #java
  371. * ChaiTRex joined #java
  372. * ChaiTRex joined #java
  373. * ChaiTRex joined #java