ByteCode.News
Submit RSS Atom Sign in

Back to the channels

#java

  1. jreicher I'm kind of annoyed I didn't know about dmlloyd's articles when I first started teaching myself java.lang.invoke. There's something about the way the JDK documentation is written that is unpleasant.
  2. jreicher In the end I reached the "conclusion" about where to start: method handles and "signature polymorphism" (which I put in quotes because I don't actually consider it to be a language feature, since its appearance is so tightly constrained)
  3. jreicher ...reached the same...
  4. dreamreal https://bytecode.news/posts/2026/05/developer-experience-is-a-performance-feature
  5. jreicher dreamreal: I can't remember where this is from (I suspect it's a fairly well known line) but the adage that "good testing allows developers to be brave" feels appropriate here.
  6. dreamreal That IS a good adage.
  7. jreicher Oh if you haven't heard it before I should find the source.
  8. jreicher Probably Julius Caesar.
  9. dreamreal hmm, what language did HE use, I wonder
  10. dreamreal was he leet like me? Probably not, given that his co-workers stabbed him - probably python.
  11. jreicher It's all about what ides you use
  12. dreamreal He probably used netbeans.
  13. dreamreal or bluej.
  14. Para Is that why he was stabbed to death?
  15. dreamreal He probably refused to use six.
  16. jreicher ides of march guys. Seriously.
  17. dreamreal Probably all about sex instead.
  18. Para And copious amounts of lead poisoning from everything.
  19. dreamreal Well, he was probably a lead programmer
  20. dreamreal maybe he was a punjabi! ... yes, that was a pun, and it was hilarious
  21. dreamreal you know, jabby, and puns, together, and he was stabbed to death
  22. dreamreal etc
  23. dreamreal jreicher: it sounds like you're sort of miquoting kent beck, FWIW
  24. dreamreal it's a really good framing
  25. jreicher Very possible. You have the original?
  26. Para Aunt Beck
  27. dreamreal it's from beck's "extreme programming explained," courage is one of the four original XP values; without tests, changing code is gambling; with them, it's an experiment with a fast feedback loop.
  28. dreamreal but I don't find the direct adage, but it's a paraphrase that captures the idea better than kent's; I guess he DID haveto fill more pages, though...
  29. Para XP was kinda odd. It tried its hardest but just didn't stick.
  30. Para With a big dose of "But we're already doing things almost like that?"
  31. dreamreal the nice thing abotu XP is that it's EXTREEEEEEEEMEEEEEEEE!!!!!!!!!!!!!11!!11!!!11!!!lol!!!!!omg!!!wtfbbq!!!!!
  32. dreamreal (I use a lot of XP principles in my programming, but Eclipse can take a long walk off a short pier. It works, it's cool, if you like eclipse that's great, but I found the perspectives mindset unfortunate.)
  33. dreamreal and I think using the LABEL XP is a lot different than "XP didn't stick" - the label didn't, I guess. Same for agile, but people use a LOT of those principles in daily life, to the point where they're almost background noise. I think it succeeded better than you might think.
  34. Para Remember how Microsoft went all "It doesn't mean extreme! >:(" when they released Windows XP.
  35. dreamreal oddly enough, windows XP would have benefitted a lot from XP
  36. Para (the name was chosen by marketing and it was meant to stand for eXPerience, but somehow the corporate site decided that it's something nonsensical instead)
  37. jreicher I've never liked Eclipse, but the whole project was redeemed for me by the language server it's produced. That has made a big difference to my work.
  38. dreamreal Eclipse as an umbrella org has been a huge positive for the java ecosystem. Eclipse as a development platform has, too, honestly. And Eclipse has had some GENUINELY good variants: WSAD was actually good if you decided to lean in, myeclipse was the best Eclipse for rank and file developers IMO (and the genuitec guys are GREAT). But eclipse requires you to want to think like beck.
  39. sonOfRa Still use eclipse (actually apache directory studio) a lot, because it's the ~only usable ldap client+browser
  40. jreicher That's an interesting observation. I might try it; I've never found an ldap utility I liked.
  41. sonOfRa it's sometimes a bit annoying to launch, because it's not really developed much anymore. But it still works because it's not like ldap is changing a lot
  42. dreamreal That's a good reason to avoid LDAP, of course. Good thing JNDI is better and has nothing to do with LDAP at ALL, la la laaaaa I can't hear youuuuuuu
  43. sonOfRa dreamreal: tell that to the crazy people putting some form of active directoy in every goddamn company on the planet
  44. dreamreal I SAID I CAN'T HEAR YOUUUUUUUUUUUUU
  45. jreicher Let's be honest: AD is just a weird DB that backs an LDAP implementation
  46. dreamreal ... and it's a good thing none of us remember Log4Shell
  47. dreamreal not a single one of us, it's almost like you can't literally use LDAP semantics to inject vulnerabilities
  48. Shell jreicher: also their Kerberos extensions are really interesting.
  49. jreicher Shell: for LDAP or AD?
  50. Shell AD's
  51. Shell The LDAP bit of AD is boring :p
  52. jreicher Well Kerberos is definitely interesting. I've always felt like it's a fundamentally "right" design.
  53. sbalmos dreamreal: y'know, reading Christian's post, one thing I have had in my mind for a long while is the inverse of Google's 20% rule. There should be 20% of a project, or an epic (if you're still into the whole epic/sprint/whatever thing), dedicated to tech debt removal. May not be outright code removal. It might be architectural planning for code removal. Whatever. But intentional tech debt removal in
  54. sbalmos itself, and not piling patch on patch on patch, contributes to the DevEx
  55. jreicher What is Christian's post, and the 20% rule? I'm very interested in the reduction of tech debt in a corporate environment. Always a tricky thing to achieve.
  56. Para jreicher: Google used to have on purpose allocated 20% "innovation time", as in one day per week people were allowed to work on whatever as long as they produced something they could later on demo to the whole unit.
  57. Para jreicher: At least GMail and Google Docs started this way, if I remember correctly. Possibly Google+ as well, maybe Google Reader. Fix my misinfo and check facts with...Google :)
  58. jbosmans seeing talk of google's 20% rule makes me feel really old :)
  59. dreamreal jreicher: https://bytecode.news/posts/2026/05/developer-experience-is-a-performance-feature
  60. Para jbosmans: The misimplementations of that were of course even more fun.
  61. Para "We can't spare 20%! That's valuable!" -> somehow we got 10%, and it had to be latter half of Friday.
  62. Para Also a calendar invite was sent with name "innovation time"
  63. Para Corporate mandated 3,5 hours of innovation time. With expectation of results from everyone.
  64. jbosmans yeah, of course i loved the sentiment etc
  65. jbosmans then, later, i realized the answer to "what's better than a shitton of money"
  66. Para ability to still enjoy life
  67. jbosmans "a bigger shitton of money" etc, aka i guess (sadly) i grew up or something
  68. jbosmans oh yeah sorry, was speaking from google perspective there :)
  69. sbalmos at a certain level of shitton of money, different for each person's lifestyle, acquiring further shittons of money becomes relatively pointless
  70. jbosmans not for listed companies i guess
  71. jbosmans also, it makes one learn, the easiest way to earn more money is to cut costs
  72. jbosmans talking from a mgmt point of view here now ^
  73. jbosmans 5% more profit vs 5% less costs
  74. Para There are ways to calculate what one person's pile should be, and for most people the amount is both surprisingly large yet not that huge at all.
  75. Para This sum is of course heavily dependent on everything, so what applies to me doesn't apply to you etc. :)
  76. jbosmans yeah, and anyway, everything always needs to be put in it's time & context etc
  77. Para And all this comes with the dreadful "what then?" problem.
  78. Para Like...if you were to gain magical lump sum today, what would happen then? Still continue working? Try that dream of yours and find out you liked it more as a fantasy, not as something to actually do?
  79. dreamreal If I were to win the lottery today, I'd still be a programmer, still write stuff for people to read that I hoped was worthwhile. And I'd probably start a recovery program if I could afford it and the liabilities that came with it; if not, I'd make sure my local food banks and my local libraries were well-stocked.
  80. dreamreal I've been thinking about that recovery program for literal decades, back when I thought I was gonna retire at 30 since I was a programmer and programmers were gonna ALL be rich thanks to IPOs never ending.
  81. Para I have a sort of a plan like that as well. A pre-divvy of pushing out most of it from my hands because 1) I'm a terrible investor 2) I want to avoid Gollum/Smaug mode, so better donate the money I really don't need ASAP to causes.
  82. dreamreal I was gonna buy some land and hire people "down on their luck" to work it - give them employment, experience, shelter, food security so they could get on their feet and go elsewhere and live more productive lives
  83. dreamreal whatever necessary job training such work would require
  84. Para Having an orchard or somesuch as rehabilitation workplace wouldn't be terrible.
  85. dreamreal That way, anyone going by my local food bank would get a "hey, you need employment? Well, I have this that needs doing and *you can do it*" no matter what they were able to do, because I wasn't going to imagine going "wait, no, you're too old, you're too crippled, you're to [wrong whatever]"
  86. dreamreal but then the idiot company rode out the dotcom bust and that dream kinda ended
  87. dreamreal (I do, however, volunteer at my local food bank, and donate blood when I'm able as well.)
  88. jbosmans i think so yes, i mostly love what i do <Para> Like...if you were to gain magical lump sum today, what would happen then? Still continue working?
  89. jbosmans not every minute of every day ofc :)
  90. dreamreal I probably wouldn't change much myself
  91. dreamreal just the people around me would benefit
  92. Para I had the silliest moment about two years ago when I got into a fortunate situation where I was both rent and debt free.
  93. Para Had to point out to a few friends that that doesn't make me a millionaire automagically, it just means I don't have huge money sinks in my life anymore. I can still be poor and debt/rent free.
  94. Para (unless someone's handing out bags of money for everyone who manages to get into this point and I just didn't get the memo)
  95. mlxdy Hi, Java development is possible on Emacs or Vim? Anyone is doing something like this?
  96. mlxdy Maybe I'm not planning to use them for Java, but I'm just curious.
  97. Para Everything's possible, but you'll save literally years of your life by learning an IDE.
  98. Para ~ide
  99. javabot IDE stands for "Integrated Development Environment", and an IDE is basically a tool that helps you write and manage your projects. Most Java IDEs are multi-language, including non-JVM languages. There are two really popular ones (~idea and ~eclipse) and one far less popular one (~netbeans), and a number of others suitable for java, like ~vscode. Generally, use IDEA, Eclipse, or VSCode.
  100. Drixtan mlxdy: I am using vim (not neovim), so yea, that's totally possible
  101. mlxdy Drixtan: Are you doing any advanced Java development in it?
  102. Drixtan what's "advanced java development" ?
  103. Para FWIW for personal use whatever you feel like works for you.
  104. Para For corporate environments IDEs will make your life infinitely easier.
  105. Drixtan I highly suggest to use an IDE.
  106. Para You can also get the same benefit for your personal life as well, but if JVM isn't your main platform/Java in general isn't the mainstay, it gets more difficult.
  107. Para Clojure users tends to love emacs :P Personally I don't, but alas
  108. mlxdy Also I would like to ask why you like Java?
  109. ernimril mlxdy, if you go for vim or emacs you will want to configure a lsp or something like that, it will take a bit to setup
  110. dreamreal mlxdy: what's not to like? Predictable, excellent performance, easy to write
  111. dreamreal and you can't use emacs to develop java: it requires something that can write text files, so emacs is out
  112. dreamreal you'd have to have a text editor of some sort, as java source is text
  113. dreamreal I have heard tell, stories really, told about a campfire as wolves howl in the night, of people using things like vi, /usr/bin/joe, even *nano* to write code as in the olden days, almost with quill and ink, but surely that's nonsense
  114. dreamreal can you guys IMAGINE what it was like to have to know programming languages well enough to just... you know... write them?
  115. Drixtan dreamreal: non sense, AI everywhere mate, vibing to the moon 'til dawn
  116. dreamreal oh then emacs is fine
  117. dreamreal whew
  118. * dreamreal cranks up lucid
  119. DoofusCanadensis i dont think you want to be lucid while doing ai
  120. dreamreal I was talking about lucid emacs, noob
  121. dreamreal if you know me at all, MY lucidity isn't in question
  122. DoofusCanadensis that was the joke, son
  123. GreenResponse it’s all Matrix fault: 1337 hax0rs writing in text mode, shell and nano
  124. dreamreal in soviet russia, joke tells YOU
  125. Para dreamreal: you can launch vim from within emacs! it's a text editor
  126. DoofusCanadensis any good OS should be able to launch a text editor, this is true.
  127. * dreamreal hands DoofusCanadensis the commodore 64
  128. DoofusCanadensis I have one, thanks
  129. dreamreal you know, now that I think about it, I'm not sure how to use the disk drives on the c64 any more, so much I've forgotten of the old ways
  130. DoofusCanadensis no doubt
  131. DoofusCanadensis I have a coco2 as well... the cassette tapes have probably faded away even if I still had the tape drive
  132. dreamreal Which c64 do you have? The real one or the ultimate?
  133. DoofusCanadensis the mini one they shipped a few years ago
  134. DoofusCanadensis HDMI output and SD Cards with built in games
  135. dreamreal ah, cool. I saw those but chose the ultimate, because the form factor and the actual keyboard is part of it, otherwise VICE, etc., are fully sufficient
  136. DoofusCanadensis the ultimate looks cool, tbh
  137. dreamreal I'm still in that "holy cow, this is awesome" phase - I've been digging up old abandonware games and playing them, like lode runner, stealth, and so forth, doing SOME programming (oscar64 is *surprisingly* useful) but not a ton
  138. dreamreal I haven't tried the turbo cpu mode, even, still lurking in 1mhz mode
  139. dreamreal I am definitely amused by how much fun I'm having with it - my youngest son says "you sound like you're having a blast programming ... a toaster."
  140. dreamreal I would be mad at him about it but he's probably right :D
  141. DoofusCanadensis hahahaha
  142. dreamreal i showed him stix, and he was like "... and this is supposed to be fun, right?" (he was definitely amused, and definitely poking me about it, and I'm down for it: he ain't wrong.)
  143. DoofusCanadensis yup
  144. Para dreamreal: Sounds like you need to buy a video toaster next so that your kid comments on it again you can get the appropriate dad joke in.
  145. dreamreal hahaha, well, I DID have an Amiga back in the day...
  146. DoofusCanadensis HAH
  147. DoofusCanadensis a new Amiga would be cool
  148. dreamreal I don't think my wife would be down for even more retro hardware, for one thing, and for another, the c64 is enough: I loved my amiga but honestly everything the amiga could do my mac can do WAY better, and I can't say that about the 64
  149. dreamreal DoofusCanadensis: november '26, apparently
  150. DoofusCanadensis oh? neat!
  151. dreamreal i never used the toaster on the amiga: I've never been good at visual arts
  152. Drixtan I want an amiga for this game: https://thalamusdigital.itch.io/roguecraft-dx-amiga Released in 2026 mind you
  153. nevet Roguecraft DX (Amiga) by Thalamus Digital Publishing Ltd.
  154. javabot Drixtan's title: "Roguecraft DX (Amiga) by Thalamus Digital Publishing Ltd."
  155. Drixtan that game requires 2mb ... look at that beauty for 2mb... we clearly did something wrong in the "evolution" of software programming somewhere between the end of amiga and today.
  156. dreamreal hell, I'm still playing nethack in ascii mode
  157. dreamreal nethack 5 released, baby!
  158. DoofusCanadensis yeah, I was prompted to play it again
  159. Drixtan I know man, nethack still beats me _all_the_time_; I've never ascended - I suck :(
  160. dreamreal I've never ascended, either
  161. dreamreal but I tend to play wizards, and they're hard mode
  162. Drixtan yea, priest here, mid range
  163. dreamreal There's harder - but getting a wizard to the point where they're able to survive is... rough
  164. dreamreal before nethack 5 my top 10 was *filled* with priests and fighters but I enjoy playing wizards most :/
  165. Drixtan how are you supposed to manage your fights at the beginning without any spell / mana? like you totally depend on your pet?
  166. dreamreal your pet, luck, and time. Pray a lot for food.
  167. dreamreal find an altar, convert it, magicbane.
  168. dreamreal nethack 5 rebalances stuff, too, so the arc is different; still getting used to that.
  169. Drixtan is it me or 5 generates the dungeons differently? I can't tell exactly, or describe it, but just saying they feel differents like: real dead-end corridors, more hidden passages, more doors
  170. DoofusCanadensis given they moved the generation into lua files, the generation *is* totally different
  171. Para eww, I just had a terrible idea
  172. Para Lua, being of just one of the two prototype based actually popular and stable(ish) languages could model everything through ducktyping.
  173. Para So...why not make a dungeon generator by recursively ducktyping "world" prototype.
  174. Para It'd be like adventuring into a fractal!
  175. dreamreal you could do it with clojure pretty easily
  176. dreamreal nethack moved to lua a WHILE back though
  177. dreamreal like early 3.7, maybe 3.6
  178. Para Clojure is still limited by stack...I mean sort of, you can metaprogram it to do that.
  179. Para There's actually lisp gamejam soon, so go wild.
  180. Para https://itch.io/jam/spring-lisp-game-jam-2026
  181. dreamreal I'm still using clojure to generate hallmark movie scripts, thank you
  182. dreamreal some of them are great
  183. Para Cluedo and Hallmark movies are suprisingly similar.
  184. * dreamreal needs to crank up that script generator
  185. dreamreal you guys might enjoy it
  186. dreamreal you guys might enjoy it
  187. dreamreal https://pastebin.com/bkaZAzS8
  188. Para The Macguffin should be an off-brand toy or similar.
  189. Para Like...Turboman.
  190. dreamreal it's randomly generated, of course.
  191. dreamreal I can create about 500 different scripts in about 700ms. :D
  192. Para That's barely enough for this Christmas.
  193. * dreamreal allocates 2000ms.
  194. dreamreal The story beats are pretty much always the same - I mean, hallmark, right? - but the details are pretty variable
  195. Para Now we're talking. Here's a million and a greenscreen.
  196. dreamreal and since it's clojure, generating new ones is just a matter of adding a few references here and there
  197. Para ...the only reason I'm aware of Hallmark as a concept is Red Letter Media :)
  198. Para That said, it is quite silly.
  199. dreamreal hallmark is great
  200. dreamreal My wife and I are quite amused, often by different aspects: she's always watching for how the quirky companions get abandoned by the script, I'm never sure the story's real until there's a corpse
  201. Para https://www.imdb.com/title/tt33455358/ and sometimes it ends up with stuff like this
  202. dreamreal hmm, I'm not sure my script generator can do that one, hmmm
  203. Para I'm not going to spoil that if you haven't watched the relevant RLM video, but one of their big sale taglines is "from the creator of Money Plane"
  204. dreamreal need to add a "simultaneous and utterly artificial scheduling conflict"
  205. dreamreal hahahaha
  206. dreamreal I was amused a lot more by hallmark christmas movies before they got all woke and added jewish themes
  207. dreamreal now I'm offended :D
  208. dreamreal (I am not, but their impression of what makes a storyline jewish is... amusing)
  209. Para Isn't that a perfect source of conflict? I want to get married on Christmas but I'm Jewish and my rabbi won't allow it! ...or something.
  210. dreamreal "Can we make it a christmas movie, but with jews, so it's got santa claus and... dreidels? And a latke? What's a latke, BTW?"
  211. Shell lmao what
  212. dreamreal so... yeah, I watch the hallmark jewish movies like a hawk
  213. Para And of course since it'll be made by people who don't really know anything about the whole thing, the wedding party gets confused with bar mitzvah with elements from quinceanera because someone thought it looks pretty.
  214. dreamreal They're hilarious even when they're not meant to be funny
  215. dreamreal yeah, pretty much
  216. dreamreal "Can we have the main love interest say 'oy vey?' is that enough?"
  217. dreamreal If *I* made a hallmark jewish movie, I'd have them speak yiddish, but with overdubs, so they'd say the english words and the sound would use the overdubs so the words didn't match
  218. dreamreal ... anyone with connections here? Come on, hook a schlomcha up
  219. dreamreal (other jews in the channel: shut up, it's a joke)
  220. Para Oh yeah, unnecessary word drops are a must.
  221. Para "I am French therefore I say le every now and then."
  222. dreamreal "See what I have to deal with heah? oy vey. Shabbat shalom. Goyische."
  223. Para From a very convoluted etymology POV you just said part of my real name, btw :)
  224. dreamreal stop being selfish, this is all about me
  225. Para Although I very much doubt the story, it felt very backported.