Tales from the jar side: ÜberConf (with an umlaut), Playing chess against kids, The best travel delay ever, and Tweets and videos about the JWST images
I would like to get paid to sleep. It would be my dream job. (Rimshot, but quietly, so as not to wake anybody)
Welcome, fellow jarheads, to Tales from the jar side, the Kousen IT newsletter, for the week of July 10 - July 17, 2022. This week I gave a great many presentations at ÜberConf, the NFJS destination event in Westminster, CO (near Denver), and I played in the 27th Bradley Open chess tournament.
Regular readers of this newsletter are affectionately known as jarheads, and are far more intelligent, sophisticated, and attractive than the average newsletter reader. If you wish to become a jarhead, please subscribe using this button:
As a reminder, when this message is truncated in email, click on the title at the top to open it in a browser tab formatted properly for both the web and mobile.
ÜberConf
This week I had a lot of talks at ÜberConf, in the Denver, CO area. Note that if you check out the ÜberConf website, you'll see that there's an umlaut over the Ü, but I believe this newsletter is the first time anyone has ever referred to it that way.
With the umlaut, über is the German word for “over” and often used in compound words. The conference is named that way because it is designed for “übergeeks,” who don’t mind a very full schedule of talks from 8am to as late as 10pm.
The conference pre-dates, and therefore has nothing to do with, the ride-sharing company, which has been much in the news lately for seriously unethical business practices, most recently exposed by the Uber Files investigation provided to The Guardian. I imagine that's a sore point for Jay Zimmerman, the founder of the conference.
For some reason, I haven't given him a hard time about it yet. I suppose that's in keeping with my general philosophy, which is to enjoy causing trouble, but actively try to avoid getting into trouble. Not to mention I wrote a whole book on building a productive relationship with your manager (Help Your Boss Help You, from Pragmatic Programmers), and while I do tease Jay from time to time, I like to pick my spots.
(I'm other words, maybe next year.)
This year I started with a day-long workshop on Modern Features in Java. I had to scale it back a bit, because the attendees had less Java experience than I expected, but that was doable.
It reminds me of the Gartner Hype Cycle:
For any new technology, some trigger starts a rapid rise in adoption, reaching the Peak of Inflated Expectations. People then expect way too much, and eventually they fall into the Trough of Disillusionment. If the technology has merit, eventually adopters will rise along the Slope of Enlightenment to reach the Plateau of Productivity.
It’s a nice model, but it’s sufficiently vague that a lot of topics fit that curve. Gartner tried to milk the idea, adding various technology points along the curve, but if you compare their hype cycles from year to year, you don’t see a steady progression. Technologies magically appear and disappear without warning, some jump on and off at odd moments, and that, worst of all, there’s no actual data involved.
For example, here’s a version Gartner published for the blockchain (the distributed ledger that forms the foundation of cryptocurrencies):
Funny how there are no scales on that graph. That would commit them to actual predictions, and we can’t have that. I wonder how they feel about this curve now, a year later, given the current meltdown in cryptocurrencies. I expect they would wave it away somehow.
Getting back to UberConf (and yeah, I’m officially already tired of the umlaut and won’t be using it anymore, and yeah, that was fast), when I said I was going to talk about modern Java, I intended it to be about modern Java. It turns out, however, that even though the functional features in Java were added to Java 1.8 back in March 2014, there are still a lot of developers that haven’t learned them. Since that’s really important (arguably more important than anything else that’s been released since), I had to spend a lot of time talking about them.
Maybe instead of talking about the hype cycle, I should have referenced the Early Adopter Categories for New Products:
1. Innovators
2. Early Adopters
3. Early Majority
4. Late Majority
5. Laggards
I’ve been teaching about the functional features in Java for about six years and even wrote a whole book about them (called Modern Java Recipes, published by O’Reilly Media in August 2017). I would have thought we’d be finished by now. Maybe we’re close, but I can’t complain too much — those latecomers are keeping me in business.
On an unrelated note, my talks on Gradle Concepts and Property-based Testing were both surprisingly well attended, so that’s good for the future. My Mockito talk is getting better, too. I’m finally figuring out how to present that material effectively, which is a good thing, given that I have a new book (called Mockito Made Clear, from Pragmatic Programmers) about that as well.
Oh, and hey, your reward for reading this far: in honor of UberConf, here’s a coupon code for my Mockito book:
Use mockito_medium_35 at the book web site for a 35% discount.
Feel free to try mockito_medium_85 and see if that works, or, if you really think it through, try mockito_medium_105 and see if they’ll pay you to take it away.
The Most Awesomest Travel Delay EVER
My original flight to UberConf was scheduled for Monday morning at 7am, which meant I was planning to leave my house around 5:15am, since it takes about 40 minutes to get to the airport and I wanted to be there an hour early. Of course, that meant I had to get up before 4:30am, and you can see where this is going.
Sunday evening, however, I received a text message from United. They informed me that due to thunderstorms in the Denver area, the inbound flight from there to Hartford was being canceled until the next morning. That meant my flight — which was returning from Hartford to Denver — was delayed until 2:30pm in the afternoon.
What made all this special was:
There is only one direct flight each way between Hartford and Denver, so you take whatever you can get.
Since this was a direct flight, I didn’t have to worry about any connections.
I was only taking the early flight on Monday morning because that when they always run it. I didn’t actually need to be in Denver until Tuesday.
Best of all, rather than get up around 4:30am only to discover the delay, they let me know about it the night before, so I could sleep in without worrying about it.
They even told me about the delay early enough to inform my wife, so she wouldn’t panic the next morning seeing me still asleep, not realizing I didn’t have to go to the airport for hours.
All I can say is, stick with me and I’ll get you there. I’m officially living the dream.
(We’ll just ignore the fact that my return home from Denver was delayed by several hours, so we arrived back in Hartford around 2:30am. In this newsletter we try to focus on the positive.)
27th Bradley Open
Since I got back from UberConf a day earlier than I expected, I had time to enter the 27th Bradley Open, a five-round chess tournament held at my home airport every year. Last year’s edition was my first OTB (over-the-board) tournament since the 3rd Bradley Open, back in 1997. I wasn’t going to enter this time, because I hadn’t spent any time at all preparing — plus I have a book to finish — but there was an Under 1500 section available and I was home. My rating is 1457, so I figured I’d at least be competitive in every round whether I studied or not.
Actual conversation between me and my wife as I was leaving:
Her: Go get 'em, tiger!
Me: (in a calm voice reflecting a serene acceptance of fate): Grr. Or, maybe, meow.
I knew that rating level would include a lot of kids, but there were even more than I expected. To wit: after the first four rounds, my age exceeded the combined ages of all my opponents, with room to spare. My last opponent was 12 years old, meaning the ages of all my opponents were 16, 9, 15, 10, and 12, for a combined age of 62. Compare that to my age of 60, and, in a word, yikes.
Here’s the thing about playing kids:
Their chess performances are wildly inconsistent (like most of their lives).
Their ratings often don’t match their skill levels at all, especially after the pandemic where they didn’t get to play in many tournaments.
They are physically incapable of sitting still during a game.
Every one of them had to get up and move around, generally many times during the game, and even when they sat, they fidgeted. Ugh. Cost of doing business, I guess, and maybe I should just deal with it.
My overall results were L, W, W, W, L, so I recovered after a disappointing first round but almost certainly lost points overall. We’ll see how many when they post the results in the next few days.
Only one of the kids played like an actual kid, meaning he blitzed out his moves, focused on only the most obvious attacks, and missed almost everything the least bit subtle. I managed to win that game quickly, which meant I even drove home between rounds on the last day. I mean, all it cost was gas.
That’s a joke actually. I have a Tesla, so all I do is plug it in when I get home. I think this is very last time I can make the “Gas? What is this ‘gasoline’ of which you speak? I’m unfamiliar with the concept” joke before my wife and son (or both) become violent.
Miscellaneous
First, a correction. Last week I included a whiteboard from the Arrival movie:
I then claimed that the symbols were “how to save your work and exit out of the vi editor.” Ugh. Of course that’s wrong. They’re how to exit vi without saving. Sorry about the error, but nobody called me on it, so that’s partly on you, too.
Oh, and speaking of vi (or it’s common variant, vim):
To get out, see above.
Wordle Results
If you know, you know.
Yay!
(I always start with the same first two words, which have no letters in common. The solution turned out to be the second word.)
Boo!
Broke my streak of 47 wins in a row. Now I have two losses overall. I have a couple wins since then, though, so we’ll see if I can back to that record again.
Open Source Licensing
This actually looks useful:
Emmanuel the Emu
This is making the rounds, and it’s great:
Emmanuel! Don’t do it! Emmanuel!
Somebody I Know Will Get This
That’s Not A Bug
JWST Explainer
Finally, the James Webb Space Telescope released its first images on Tuesday. Here’s the explainer by Dr. Becky, one of my favorite YouTubers:
Also, here’s an article about it by Katie Mack (@astrokatie on Twitter):
May you find anything in your life that gives you the kind of joy the new telescope is giving astronomers.
(Now if they would only rename it.)
As a reminder, you can see all my upcoming training courses on the O’Reilly Learning Platform here and all the upcoming NFJS Virtual Workshops here.
Last week:
UberConf, in Denver, CO, where I gave a full-day workshop on the latest features in Java, and seven talks.
This week:
Spring Data Fundamentals, on the O’Reilly Learning Platform
Week 1 of Spring and Spring Boot in 3 Weeks, ditto
Latest Features In Java, an NFJS Virtual Workshop