Todd Ginsberg's Avatar

Todd Ginsberg

@todd.ginsberg.com

#Java and #Kotlin developer. @trijug.dev organizer. Conference speaker. Gatherers4j maintainer, Philatelist. Big fan of doughnuts and F1. Raleigh, NC He/Him ๐Ÿ‡บ๐Ÿ‡ธ๐Ÿ‡จ๐Ÿ‡ฆ

843
Followers
592
Following
99
Posts
21.09.2023
Joined
Posts Following

Latest posts by Todd Ginsberg @todd.ginsberg.com

Yeah, but has it continuously reminded you that Feb 2 was groundhog day? If not, what the heck are you even paying for, Ken?

13.02.2026 20:53 ๐Ÿ‘ 1 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0

Labradors
Goldens
Terriers
Malamutes

21.01.2026 23:34 ๐Ÿ‘ 0 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0

RAINMAN! Where you interacted with the compiler by emailing your code to it! Wow that brings back memories.

21.01.2026 23:30 ๐Ÿ‘ 1 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0

โš ๏ธ Behavior change in v0.13.0:

Gatherers performing moving calculations now include partially calculated values by default. The previous behavior can be restored via excludePartialValues() (see release notes).

04.01.2026 20:53 ๐Ÿ‘ 1 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0
Preview
Release Release v0.13.0 ยท tginsberg/gatherers4j New Gatherers Implement uniquelyOccurringBy() to limit the stream to uniquely occurring elements as measured by the given function Implement movingMedian() and movingMedianBy() Implement runningMe...

๐ŸŽ‰ New year, new version of Gatherers4j!

Announcing v0.13.0 with several new gatherers:

โ€ข uniquelyOccurringBy() which limits a stream to uniquely occurring elements
โ€ข Median, Min, and Max with moving (look-back window) and running variants

๐Ÿ”— Release notes:
github.com/tginsberg/ga...

04.01.2026 20:53 ๐Ÿ‘ 4 ๐Ÿ” 1 ๐Ÿ’ฌ 1 ๐Ÿ“Œ 0
Preview
Week Year: Java Date Formatting With YYYY Instead of yyyy โ€ข Todd Ginsberg The end-of-year gotcha lurking in your codebase

It's the time of year when subtle #Java date formatting bugs tend to appear, often caused by using the wrong year format. Iโ€™ve written a post explaining whatโ€™s going on, how to fix it, and how to prevent it in the future.

todd.ginsberg.com/post/java/be...

01.01.2026 21:20 ๐Ÿ‘ 6 ๐Ÿ” 2 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0
Post image

Happy New Year from Devnexus! ๐ŸŽŠ

Thank you to every developer, speaker, sponsor, and volunteer who makes this community so special.

Weโ€™re excited for another year of growing skills, sharing ideas, and building together ๐Ÿš€

See you in March!
๐ŸŽŸ๏ธ- devnexus.com

01.01.2026 17:01 ๐Ÿ‘ 2 ๐Ÿ” 2 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0
TriJUG โ€” Triangle Java Users Group TriJUG (Triangle Java Users Group) helps the community learn Java through monthly meetups, talks, and networking in the Triangle area.

Finally got around to building a small new homepage!

trijug.dev

15.12.2025 00:00 ๐Ÿ‘ 2 ๐Ÿ” 1 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0

I suspect with the Advent of AI my humble effort to solve and explain is not as useful as in years past, but I still have fun doing it.

02.12.2025 00:31 ๐Ÿ‘ 1 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0
Preview
Advent of Code 2025 - Day 1, in Kotlin - Secret Entrance โ€ข Todd Ginsberg Kotlin solutions to parts 1 and 2 of Advent of Code 2025, Day 1: 'Secret Entrance'

It's December 1st and you know what that means... #AdventOfCode is back! And as usual, I'll attempt to solve each puzzle in #Kotlin and blog about my solution.

todd.ginsberg.com/post/advent-...

02.12.2025 00:31 ๐Ÿ‘ 4 ๐Ÿ” 0 ๐Ÿ’ฌ 1 ๐Ÿ“Œ 0

Malbolge, obviously.

01.12.2025 00:23 ๐Ÿ‘ 3 ๐Ÿ” 0 ๐Ÿ’ฌ 1 ๐Ÿ“Œ 0
James Fredley presenting

James Fredley presenting

Tonight, James Fredley is teaching us all about Apache Grails 7 and Groovy!

17.11.2025 23:25 ๐Ÿ‘ 2 ๐Ÿ” 1 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0

Bullshit:

12.11.2025 19:27 ๐Ÿ‘ 28 ๐Ÿ” 4 ๐Ÿ’ฌ 2 ๐Ÿ“Œ 0
Venkat talking

Venkat talking

Tonights the night! @venkats.bsky.social is here! Weโ€™re learning about Records, Sealed Classes, and Pattern Matching!

14.10.2025 22:13 ๐Ÿ‘ 10 ๐Ÿ” 3 ๐Ÿ’ฌ 1 ๐Ÿ“Œ 0
Post image

We're looking for a new venue to host our meetings at in 2026. Got a lead? Please reach out to bjuacm-board@googlegroups.com

02.10.2025 00:39 ๐Ÿ‘ 4 ๐Ÿ” 4 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0
JUnit Release Notes

#JUnit 6.0.0 is released!

โœจ Java 17 and Kotlin 2.2 baseline
๐ŸŒ„ JSpecify nullability annotations
๐Ÿ›ซ Integrated JFR support
๐ŸšŸ Kotlin suspend function support
๐Ÿ›‘ Support for cancelling test execution
โญ๏ธ New `--fail-fast` mode for ConsoleLauncher
๐Ÿงน Removal of deprecated APIs

docs.junit.org/6.0.0/releas...

30.09.2025 08:50 ๐Ÿ‘ 119 ๐Ÿ” 75 ๐Ÿ’ฌ 2 ๐Ÿ“Œ 11
Preview
Release Release v0.12.0 ยท tginsberg/gatherers4j Changes Move Java version to 25 (was 24) Addresses #164 Support Java Modularization. Addresses #156, thanks @Goldmensch! Support parallelization in UniquelyOccurringGatherer Using in Maven <depen...

๐Ÿ“ข Gatherers4j v0.12.0 is out!

- Now built with #Java 25
- Support for modules
- Parallelization now supported in UniquelyOccurringGatherer
- Several internal organizational and testing changes

github.com/tginsberg/ga...

27.09.2025 17:05 ๐Ÿ‘ 13 ๐Ÿ” 4 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0
Preview
The Three Amigos: Intermixing Pattern Matching, Records, and Sealed Classes, Tue, Oct 14, 2025, 5:30 PM | Meetup We have a JetBrains single product license that we will be raffling off after the presentation! To win, you must be present during the drawing at the end of the meetup. **

We are VERY excited to have @venkats.bsky.social join us on October 14, where he'll teach us about some fun modern #java features - Pattern Matching, Records, and Sealed Classes.

Come join us!

www.meetup.com/triangle-jav...

23.09.2025 12:51 ๐Ÿ‘ 4 ๐Ÿ” 4 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0
Preview
Here's Java 25, Ready to Perform to the Limit Here's Java 25, ready to perform to the limit. It introduces stable values, and intensifies its focus on performance as more JEPs emerge from Project Leyden. On top of that, the Java Flight Recorder i...

Java 25 comes out today! Here's a great rundown of all the new features in Java and the JVM since Java 24 came out six months ago.

foojay.io/today/heres-...

16.09.2025 12:47 ๐Ÿ‘ 3 ๐Ÿ” 1 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0
Post image

๐Ÿ“ฃ The KotlinConf'26 Call for Speakers is OPEN!

Share your Kotlin expertise with the world โ€“ server-side, web, desktop, mobile, AI/ML, and more! Submit your proposal and get a chance to speak at the year's biggest Kotlin event!

๐Ÿ‘‰ https://kotl.in/conf26-submittalk ๐Ÿ‘ˆ

15.09.2025 08:50 ๐Ÿ‘ 10 ๐Ÿ” 5 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 2
Video thumbnail

๐Ÿ“ข The Devnexus 2026 CFP is still OPENโ€”but only until Monday, September 15!

Nowโ€™s your chance to share your knowledge, ideas and innovations with developers worldwide at one of the largest Java conferences in the world! ๐ŸŒ

Apply here โคต๏ธ
devnexus.com/posts/the-cf...

12.09.2025 18:31 ๐Ÿ‘ 3 ๐Ÿ” 2 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0
Growing the Java Language #JVMLS
Growing the Java Language #JVMLS YouTube video by Java

This talk by @briangoetz.bsky.social about Growing the Java Language is one of the best I've seen lately. If you've ever wondered "Why can't they just..." about Java, you should watch this. I hope this talk changes the way I approach growing my own APIs.

www.youtube.com/watch?v=Gz7O...

31.08.2025 22:37 ๐Ÿ‘ 7 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0
Preview
[RESCHEDULED!] Stream Gatherers: The Missing Link in Java Streams, Mon, Sep 22, 2025, 5:30 PM | Meetup We have a JetBrains single product license that we will be raffling off after the presentation! To win, you must be present during the drawing at the end of the meetup. **

Come join us on September 22 for the newly rescheduled "Stream Gatherers: The Missing Link in Java Streams" talk!

www.meetup.com/triangle-jav...

31.08.2025 16:43 ๐Ÿ‘ 1 ๐Ÿ” 1 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0
Preview
Why Aren't People Going to Local and Regional In-Person Events Anymore? - Brent Ozar Unlimitedยฎ Steve Jones recently posted an update about SQL Saturdayโ€™s status, and it includes some news we need to talk about: However, this year the number may stagnate or even decline slightly. Running events ...

As a JUG leader, I sure hope in-person events aren't dying off, but it sure seems like it's getting harder and harder to keep this all going.

www.brentozar.com/archive/2025...

28.08.2025 22:48 ๐Ÿ‘ 6 ๐Ÿ” 5 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0
Why should I write better when a machine can do it for me?
Because actually no one can do it for you, because your voice is unique among all the people on earth. Siri never petted a horse's neck. Alexa has never been ghosted by the captain of the football team. But you have lived, your heart is beating, you have suffered, and you have something important to say. It's a human's job, to use words, and whatever job you give to a machine, that part of your brain goes dark. Maybe it's worth it when it comes to remembering phone numbers and directions, but when that part of your brain that uses words goes dark, that's a vast area that's very close to your soul. Don't let some internet platform convince you that what you have to say and create isn't worthwhile. Words are the echo of your soul. Honing that echo matters.

Why should I write better when a machine can do it for me? Because actually no one can do it for you, because your voice is unique among all the people on earth. Siri never petted a horse's neck. Alexa has never been ghosted by the captain of the football team. But you have lived, your heart is beating, you have suffered, and you have something important to say. It's a human's job, to use words, and whatever job you give to a machine, that part of your brain goes dark. Maybe it's worth it when it comes to remembering phone numbers and directions, but when that part of your brain that uses words goes dark, that's a vast area that's very close to your soul. Don't let some internet platform convince you that what you have to say and create isn't worthwhile. Words are the echo of your soul. Honing that echo matters.

this iconic advertising copywriter named Kathy Hepinstall Parks died over the weekend and I wanted to share something from her website I thought Bluesky would like

22.08.2025 14:20 ๐Ÿ‘ 19235 ๐Ÿ” 8755 ๐Ÿ’ฌ 36 ๐Ÿ“Œ 356
Preview
Busy Beaver Hunters Reach Numbers That Overwhelm Ordinary Math | Quanta Magazine The quest to find the longest-running simple computer program has identified a new champion. Itโ€™s physically impossible to write out the numbers involved using standard mathematical notation.

www.quantamagazine.org/busy-beaver-...

23.08.2025 12:31 ๐Ÿ‘ 0 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0
Post image Post image

Last (but not least) talk at #KCDC2025: @richard.fichtner.dev teaches us about Java Modernization

15.08.2025 21:04 ๐Ÿ‘ 5 ๐Ÿ” 1 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0
Post image

And from the same talk, a very handy chart of various test doubles and their meanings

15.08.2025 16:25 ๐Ÿ‘ 1 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0
Post image

Last morning talk at #KCDC2025: @jeanneboyarsky.bsky.social is teaching us about testing beyond JUnit. Here, sheโ€™s covering @assertj.github.io

15.08.2025 16:06 ๐Ÿ‘ 8 ๐Ÿ” 3 ๐Ÿ’ฌ 1 ๐Ÿ“Œ 0
Post image

This morning at #KCDC2025, the great @venkats.bsky.social teaches us about all of the excellent new features in modern Java!

15.08.2025 14:53 ๐Ÿ‘ 3 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0