Wow, today's stream was full of failed predictions in my TDD process. 5 times my prediction was wrong, sometimes because I had wrong expectations of the code, and sometimes because my test was wrong.
Each time I learned more about the code and quickly recovered.
#PredictiveTDD
Latest Posts by Ted M. Young (he/him) aka @JitterTed
Another stream, another set of notes. So much "new"!
I try out a new design for Projectors, splitting EventConsumer into two pieces. Test-driving shows how it's about design exploration, not just writing tests.
ted.dev/articles/20...
#Java #EventSourcing #TDD
Notes from my #Java #EventSourcing work, where I looked at event consumers that only get events they're interested in.
Struggled with Java's MethodHandle (docs could be better!), but otherwise works well.
Thoughts about Projector design.
Read more at: ted.dev/articles/20...
A handful of tickets left for tomorrow's Test-Driven Development workshop aimed at self-funding learners.
18:45 - 21:00 BST. Live, instructor-led training that goes beyond the basics of red-green-refactor.
(And there's another one on Saturday morning)
www.tickettailor.com/events/codem...
People on here rightly are pissed by the way Democratic politicians post as if they are witnesses to what's happening instead of ACTORS in what's happening. It's absolutely pathetic and weak.
The biggest story in the world right now is that the president of the United States is a demented old man who takes pleasure in torturing and killing people and is committing crimes with impunity. And yet most legacy media outlets are too cowardly to tell it like it is.
Never forget, a 13-year study found that protected bike-lanes led to a drastic decline in fatalities for all road users.
ALL ROAD USERS.
What about painted bike-lanes? No safety improvement at all.
For sharrows, it’s actually safer to NOT have them.
Via @usa.streetsblog.org @nyc.streetsblog.org
It's always fun to give a talk to the Seattle Software Crafters group. Last week I gave one of my favorite talks on "Refactoring Tests". You can grab the slides and links to code at ted.dev/talks/#refa...) and the video is at youtu.be/zthP-YtNjh4
This was all triggered by new functionality that I want to add: the ability to set a date/time when concert tickets go on sale that is separate from when the concert was scheduled (entered into the system).
Read all about it at ted.dev/articles/20...
#EventSourcing #Java
No stream today, but I did write up notes from yesterday's stream, where I started exploring a redesign of the way Projectors and Processors catch up on events. Going from 2 minutes to 4 seconds is certainly worth the trouble and paves the path away from being Aggregate-centric.
If you're in Germany, Austria, Switzerland, Netherlands, or Belgium (especially if easily reachable by train), let me know. If you want some technical coaching, I'd only charge for travel expenses! For user groups, no charge, of course.
In The UK, I can it around SoCraTes UK.
Want some Technical Coaching or a #Java Talk (Event-Sourcing, Testing)?
I'm looking to do meetup/user group presentations or technical coaching the week of April 27, and in June so I don't have to fly all the way back home, just to fly back again a soon after.
Event Modeling Conference - June 25-26, Munich, Germany. Snagged a ticket for this event put on by Martin Dilger.
DDD Europe - June 8-12, Antwerp, Belgium
SoCraTes UK - June 18-21, Abingdon, UK (hour away from London). An unconference for software crafters that I missed last year.
I'm spending a lot of time in Europe over the next few months:
JCON Europe - April 20-23, Cologne, Germany - I'm giving a 20-minute version of my "Testable Architecture" talk.
COMO Camp - May 6-9, Vienna, Austria - an unconference that I'm very much looking forward to!
I love #Java generics (when I get them right, which can take me a while!) and find varargs really useful when refactoring, but they do NOT play well together. Ugh. Guess I'll create an overloaded method to take a List<T> instead.
On my #Java stream last week, I had some frustration with Avro for event payload serialization and decided that JSON was just fine (in terms of performance).
I had thoughts about Projections as Caches and a question around IDs being required in events.
ted.dev/articles/20...
Ted M. Young is talking at Seattle Code Crafters on Refactoring Tests. Today (March 26th) at 10:00AM Pacific
Join us today at 10:00AM Pacific when @ted.dev will talk to us about "Refactoring Tests"
All are welcome. Community time starts at 9:30AM
www.meetup.com/seattle-soft...
Join me and the Seattle Software Crafters group for my talk on "Refactoring Tests"!
The talk starts at 10am PDT (5pm UTC), but you can join 30 minutes earlier to chat.
www.meetup.com/seattle-sof...
#Refactoring #AssertJ #JUnit #Testing
More live coding #Java and #EventSourcing:
I dealt with "external" and "parameter" validation (I didn't implement the third type: "internal" validation) of scheduling conflicts for Concerts.
I also pondered minimal consistency boundaries.
Notes are at: ted.dev/articles/20...
JitterTed's TDD Game is now back in stock for shipping outside of the USA/Canada! Well, it's also available for shipping to the USA/Canada, but now Etsy is showing availability.
If you're in Germany or Austria & are willing to wait a month, let me know.
tdd.cards
Back to streaming, with notes from yesterday's stream: ted.dev/articles/20...
I chatted about consistency boundaries, missing-event heuristics, and encoding (serializing) events.
#EventSourcing #Java #TDD
Tabletop game design tip of the day: to write rulebooks, study comics
A rulebook should integrate words and pictures to guide the reader's attention just right.
Words mixed with pictures can scatter attention, so the reader doesn't know where to look next.
No one has more practice guiding readers through words & pictures than folks who make comic books.
🎲✂️(1/5)
In a good example of negative polarization, I just signed in support of the Billionaire Tax (after previously being ambivalent) because of Sergey Brin.
After watching James Shore's "Paranoic Telemetry" I was inspired to create a skill for Claude to help it help me brainstorm missing test cases.
This is v1 so send me your suggestions.
Google reduced our headline “I used the ‘cheat on everything’ AI tool and it didn’t help me cheat on anything” to just five words: “‘Cheat on everything’ AI tool.” It almost sounds like we’re endorsing a product we do not recommend at all.
Read more from @seanhollister.bsky.social:
example sheet of momo icons. All little cute weird characters in circles, to be used for social media avatars
I am drawing custom user icons again!
Want your own momo icon? Order here:
ko-fi.com/heyheymomo/c...
Limited slots available!
These interviews with developers about learning have been so great I've turned this into an open research call
+ a couple high level take-aways so far (with a few links to research to help you immediately learn more about the themes coming up):
catharsisinsight.com/open-researc...
Cinema-booking demo for stream-less Event Sourcing going well. Helps find APIs and perf. to tweak. Demos are great dog-food!
Oh my god @cuttercross.bsky.social this converted so well it sounds like it was designed for this soundchip this whole time!