The Curious Engineer

All blogs / Java / JVM

Stories by Donald Raab on Medium

medium.com/@donraab

Java / JVMOther languagesSoftware / engineering practice

Posts
217 from 23 Nov 2020 to 29 Oct 2026
Posting
monthly (14 in the last year)
Kind
personal blog
Feed
https://medium.com/feed/@donraab

2026 14

  1. Talk: Who moved my (Java) heap?
  2. Stop Owning Yourself
  3. The Escape of Java Stream anyMatch
  4. Save Memory in Java by Making Memory Efficiency Your Top Priority
  5. Buttoning Up Method Categories in Eclipse Collections with Annotations
  6. Exploring the Asymmetric Apathy in Java Collection and Java Stream
  7. My Ten Year Quest to Evolve Java Collections Beyond Java Stream
  8. Why Optimizing Java Stream Makes Sense for Eclipse Collections
  9. Allocation Hungry Any/All/None, FindFirst, and Count Methods on Java Stream
  10. Level Up Your Programming Game with a Java Book and Smalltalk
  11. What ifFalse was true?
  12. What ifFalse was true?
  13. Save Memory in Java by Making Memory Efficiency Your Top Priority
  14. FizzBuzz in Smalltalk

2025 3

  1. Book: Eclipse Collections Categorically
  2. Foreword and Onward to Your Next Connection
  3. Thanks, Heinz!

2024 1

  1. Docendo discimus and Retroactive Interference

2023 4

  1. Thank you!
  2. Thanks Jose.
  3. Getting Started with Eclipse Collections — Part 3
  4. I forgot how to write this blog

2021 2

  1. No worries, my Java looks very Smalltalk-ish.
  2. Sometimes writing a for-loop is the best answer.

2020 1

  1. Heaven’s Gate

Undated 192

  1. Nope just regular old java code 86ebc473b430
  2. The game of marriage 43766ffacaf9
  3. Transforming a box of lego into a ci build monitoring robot 2280af48fb1d
  4. How i survived the surviving open source keynote at intellij idea conf 694c4a889de
  5. Playing in the sand 9d95a2bca3c3
  6. Getting started with eclipse collections part 2 43f9f05a46ae
  7. Bridging the gap 5180e685dbf4
  8. Lazyiterable will get back to you later 1f4cf92ce5f5
  9. My seventh blogiversary 4c725a1b20d5
  10. If you read the blog you will see i introduce the concept of a pool 831986a29ac6
  11. Dont make me scroll b5eaa9ec7915
  12. Why do you write like youre running out of time af6f74ccff05
  13. My journey to and as a java champion 5b692786a3ba
  14. Blog series getting started with eclipse collections 5634dc39b9e6
  15. The joy of programming 64cd5949bc78
  16. Grouping java methods using custom code folding regions with intellij bdff0b4fb2a3
  17. My fifth blogiversary 778c8e26d900
  18. Visualizing eclipse collections after twenty years of development 701047fdc672
  19. Own your ide 5ebc54e5709a
  20. I installed rainbow brackets and mario progress bar 5e6698717b39
  21. My pet python kata d2959ca702a5
  22. The desktop don reference 5e3299df50d8
  23. Blog is fear 3f4e3fd4bb73
  24. Im glad the blog resonated 4d23329c0994
  25. Thank you so much for the kind words bhavana 8c1532003fca
  26. Infectious enthusiasm 689d675458f6
  27. Memorable sunsets of 2024 063e01b0bdf9
  28. My top four blogs of 2024 3c284a761532
  29. The hidden treasures of eclipse collections collection f00e3a058055
  30. Traveling the road from idea all the way to openjdk fc7ae04371a5
  31. Sending the open source library i created off to college a398bba5e518
  32. I published 150 blogs and drank 450 cups of coffee f77c33b17e19
  33. The clarity of open source 640871544e9f
  34. Connect the braces 6f3ed53beecd
  35. Getting started with eclipse collections part 4 a72eb23cce0e
  36. Building better building blocks 7e61dc71d519
  37. Thank you mohamed 7d245ef7e9ef
  38. Thanks for the shout out 393bcd8706e6
  39. Divide and conquer feature rich apis categorically d29d5050d82d
  40. Categorizing methods in java types using eclipse collections 8aa498eedd7e
  41. Poetry in code 91801b3c5b6b
  42. How i survived my first ever podcast 632d3ac1c56e
  43. Bonus slides from qcon ny 2023 40a3cd019c9
  44. The benefits of participating in the openjdk quality outreach program 590b86382f20
  45. Tell dont ask and be specific about the return type edb1d2845ce1
  46. My top three blogs of 2025 981ccfff52f8
  47. My sixth blogiversary 710a529549f3
  48. Exploring the asymmetric apathy in java collection and java stream 9b2b4b13fa18
  49. My ten year quest to evolve java collections beyond java stream 310f0c287be0
  50. The authors inside guide to reading eclipse collections categorically 950b245e8cab
  51. Eclipse collections 12 0 and 13 0 packed released and ready to go 006f8bda5127
  52. Computer aided in the eighties 4439316e1fc0
  53. Happy 30th birthday java 0b8095a1cd91
  54. There is no mute button 6b842751113c
  55. What if java consistently used intention revealing names for types 7b9cbc39f65f
  56. Level up your programming game with a java book and smalltalk 3c4c9bffbb49
  57. Fizzbuzz in smalltalk 8c6b7cdb6c41
  58. Thank you for reading and for the comment jose 1ddaeb4badca
  59. Something s amiss ce2a55326dd1
  60. Why optimizing java stream makes perfect sense for eclipse collections 885289a3b12c
  61. Allocation hungry any all none findfirst and count methods on java stream e3ca6d66b265
  62. But i do i want the same element that is in the set not an equivalent one 7f7373667bd1
  63. Of course aacaa2c72648
  64. Comparing collections in java 69c7e70fc5f1
  65. Hi istvan thank you for the comments b847872fdc65
  66. Interesting 0eb07f4cd5ae
  67. Time e948afd71913
  68. Process 97e651964dfd
  69. Quality 768ea894d398
  70. Simplicity 0ab7f5d4cf7f
  71. Be your own juke box hero 94730e06a28f
  72. Communication 58413369a53b
  73. The future ecbc2e3b2054
  74. Teamwork 04ee01a4925b
  75. Education 3255f7e6bbb7
  76. My first and second jcrete unconference experiences f6d7cce2195f
  77. Anything can happen 68a4f8ec5e9b
  78. The sun also rises 9faa319952ad
  79. Sunset at yorktown battlefield 302c6166f28e
  80. Associating method categories with emojis in intellij and javadoc a82aebe1e903
  81. Red rocks and great talks at dev2next a6a203557214
  82. Buttoning up method categories in eclipse collections with annotations 641421b7aca0
  83. The missing java datat structures no one ever told you about fa4875f6fc89
  84. If folks dont have experience with other languages they may not know what java is missing 7ff48a8597b4
  85. Senior java devs should use primitive collections bags and multimaps 2eabdda3f934
  86. Did you write today c79a24ef10b4
  87. Conversations ive had with code 583f0fd67363
  88. Cv vs readme f3c59baa2578
  89. Refactoring to eclipse collections with java 25 at the dev2next conference 9a2fae1a2a4b
  90. Using java 8 collectors groupingby 8578acef5c82
  91. Au revoir 21a1f98f58b8
  92. My fourth blogiversary 8e2dd3a3d907
  93. What if a developer can help improve software development in java e2aff2727bf7
  94. Thanks donald cea1436726d2
  95. What if java didnt have modcount 60f1bba9f3ff
  96. What if the add and remove methods in java util collection had fluent counterparts ff2c104a8ca3
  97. Wakin with bacon a433c5f26acb
  98. Pavement 3b68185c5cb9
  99. On winning jcp member participant of the year for 2025 at javaone 2026 3c977f7049da
  100. Breaking through d490e7b98b06
  101. Homeward found 697db7fb8e62
  102. The thrill of conquest 7cf1cd62258
  103. Life in a beautiful day bfe4534b12f0
  104. Into the unknown 2a5dc5bfcfb0
  105. Let me repeat myself ebeca940627
  106. Eleven 1f9837c02313
  107. Simple nothings 5ac56dbbfcfa
  108. With deepest regrets 491c4733bede
  109. Finding solace 9d932b103107
  110. Curious cat 3e3320da16d1
  111. Caffeinated coding rituals 6292b4f77544
  112. Winter slip and slide ef078ba3bef8
  113. The eclipse collections code katas d1539d45d104
  114. Eclipse collections 11 0 released d14df63f5d1d
  115. Exploring the smalltalk collections api in unit tests using pharo 8 0 2f62cfc8410d
  116. Trouble with the curve 40404b159b6d
  117. 10 billion integers walk into an array 37097386c964
  118. Jldd challenge arrives in the den 7221653c7f31
  119. Is your code singable 0f53fc1c67e7
  120. Peekaboo with collections in java f9c3f60da5e1
  121. Go primitive in java or go in a box c26f5c6d7574
  122. This is not the vibe coding book you are looking for 1e5577ec8f8e
  123. Snow leopards and tribbles in java heaps a3f20fd5520c
  124. Coding the haiku kata in smalltalk a2a3279fbea2
  125. Cascading messages in smalltalk 14807389b6ce
  126. More features less waste 8a41b3023ab6
  127. Does your programming language ever surprise you in a good way eb29e1eba8d3
  128. Smalltalk blocks cbe508c2e472
  129. Mind maps didnt make me scroll 9248f3354d37
  130. The tangent is the opportunity a9a193f647d5
  131. Yes this is correct 3a3ddedd598c
  132. One positive effect of java 25 with compact object headers enabled d95096d8c612
  133. The ten year anniversary and the next five years for eclipse collections dd1c03758b29
  134. Eclipse collections quietly killed list get list size b4e777d779df
  135. The same approach that eclipse collections supports works with java stream da7bb361343f
  136. Comparing my smalltalk and eclipse collections wordle kata solutions 4058ac7d8ca0
  137. Thanks kevin 496c03542cd0
  138. Hi erwin thank you for asking the question on so i answered 5b8304e53e42
  139. Hi erwin thanks for the questions and for checking out the library a7e1a9fcc61
  140. I havent written enough kotlin code to have formed an opinion on the topic bf5c248ea939
  141. What if java had no if ea88d90b76c3
  142. What if null was an object in java 3f1974954be2
  143. What if java had no for 85302ab7e484
  144. Some benefits of enabling compact object headers in java 25 for streams 8df8b2037e05
  145. Performance of lazy and eager iteration patterns on small lists in java f4234bef50a5
  146. Empty should be empty c09e21edc205
  147. Measuring the startup memory cost for lazy iteration patterns in java be24f4dd5b64
  148. I used five command line java tools this week and i feel good a07531fefb02
  149. A fun read and very well written 695366e43250
  150. The escape of java stream anymatch 192a31aec749
  151. Twelve plus one sunsets in 2023 705a7b618c59
  152. My plan is to write as much as i can aee10e302016
  153. Spliterating hairs results in spliterating deja vu dec6eac704fc
  154. The only benchmarks that matter to your application are the ones you can measure 53c0268e6559
  155. Fat free lambdas in java bf228da0613b
  156. Counting and collecting collectors d69b7c9aaca0
  157. A brush cut world ec7b07b10aa0
  158. The shadow of life 77c65407561b
  159. The next 5 years for eclipse collections a1f3ce896c2c
  160. How to initialize a set using eclipse collections 40952f343594
  161. Night of the living pet kata 70886ddc608c
  162. One fun javaone in the sun 980db8b7a8fa
  163. Year end reflections of eclipse collections 6a24859a2c50
  164. Memories of twenty years of eclipse collections development ddd545969dcf
  165. Visualizing my java champion journey d5b620dd71a3
  166. Youre welcome and great question b3784088d0d2
  167. Hi johan i updated the blog with some benchmarks i ran locally ac9b1c483022
  168. Following the flow of a java stream 0bb617e3074f
  169. Time saving poetry hacks 7f67da857bf7
  170. Too much to read in a world of continuously regurgitated content 1c5c39e92ff4
  171. Closing the gap 02763df7c0dc
  172. Surviving my second podcast aab32737a346
  173. Getting started with eclipse collections part 1 d5ba0098465f
  174. I rarely use java streams myself 56dc42258cb1
  175. Glad to hear eclipse collections is having a positive impact for you thanks for the feedback 34ef95658d0c
  176. Nailed it again 09be12b79247
  177. Assert but verify b2727bd63f6c
  178. Categorizing the methods of set types in eclipse collections d6d7d8dfe435
  179. The quieting of the quiet ones 68be12b4895c
  180. Smalltalk isnt dead it s just waiting in deep thought 40bcf7c81f73
  181. Nice there is a pattern from sbpp i reference in appendix e of my book named collection accessor 0f27dc1c09a0
  182. Eclipse collections passes one million downloads in a single month e1408e941743
  183. Have you tried lambdas and method references with eclipse collections 86b392e0b9a2
  184. The incredible shrinking technology book section 40d692f0d5f7
  185. Thanks for your comment and for reading the blog e43d42f66b67
  186. The joy of programming is back one two three 12 0 times 125f859705b0
  187. What if java had symmetric converter methods on collection cbb824885c3f
  188. I havent measured it so cannot answer definitively 55b2533062b2
  189. Ternary predicate and pattern matching for fizzbuzz with java 26 646c812a137b
  190. My twenty one year journey to write and publish my first book f81352352e24
  191. Explaining the eclipse prefix in eclipse collections 1d9850d20047
  192. I m not cattle bdde7358534d