Tales from the jar side: Gradle parallel tests, Working at a Nuke Plant, Song lyrics revisited, and amusing Tweets and Toots
Dolphin Dad: Your mom and I met in school. Dolphin Mom, wincing: Please don't. Dolphin Dad: And we just clicked. (rimshot)
Welcome, fellow jarheads, to Tales from the jar side, the Kousen IT newsletter, for the week of March 19 - 26, 2023. This week I taught the second week of my Spring and Spring Boot in 3 Weeks course on the O’Reilly Learning Platform, and my Key Gradle Concepts course as an NFJS Virtual Workshop.
Regular readers of (and listeners to, and now video viewers of) this newsletter are affectionately known as jarheads, and are far more intelligent, sophisticated, and attractive than the average newsletter reader (or listener, or viewer). 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 to open it in a browser tab formatted properly for both the web and mobile.
Gradle Parallel Tests
For several years, I taught the online Introduction to Gradle course offered by Gradle, Inc., every other month. I rarely followed the materials as given, though I did cover a lot of the same information. Eventually, when they hired someone to revise the materials (an event I was very happy to see, because I really don’t like writing materials), that person also wanted to teach the course, so they brought the whole thing in house, as it were.
Hey, good for them. I see that by now they’ve expanded their offerings, and have lots of one-day (really, half-day) offerings. Just follow this link to see them.
That did leave me with a bunch of simple demos that I used to do in class, however, and in presentations, and I’d like to share them before I forget. I taught an NFJS Gradle workshop this week, and it reminded me of one, which I ran out of time to use.
Instead, I turned it into a new video on the Tales from the jar side YouTube channel, entitled Speed up your tests with one line of Gradle:
That’s supposed to be my surprised face, believe it or not. The video is about enabling test classes to run in parallel using the maxParallelForks
property, and I set it in both the Groovy DSL and the Kotlin DSL. If you’re at all interested in Gradle, I hope you find it helpful.
Peach Bottom’s Up
When I was in college, I spent three summers as a low-paid intern at the Peach Bottom Atomic Power Station, a nuclear power plant in Delta, PA. Like most kids that age, I got my job because I knew somebody who knew somebody — in this case a friend of my father’s knew the plant manager, who by coincidence lived down the street from me. I was near the end of my freshman year at MIT, and I was already planning to major in Nuclear Engineering, though I planned to study fusion rather than fission. That’s was all my way of being a physicist without majoring in physics, but it didn’t work out in the end. I’d like to believe my credentials and my good interview got me the summer job, but, to be honest, there probably wasn’t a lot of competition at the time.
See, the job was during the summer of 1980, and a year earlier (March 1979, to be exact) an event occurred not terribly far away: the accident at Three Mile Island, near Harrisburg, PA. Though ultimately not much came of the accident, the resulting panic combined with the horrible press relations done by the owning company dealt nearly a death blow to the entire nuclear industry in this country.
This week I ran across an interesting video about the accident:
My first summer at Peach Bottom was uneventful, though I was shocked the first time I entered the master control room and an alarm went off. It turned out that nearly any change of any kind in the plant triggered an alarm, to make sure an operator knew about it. As long an operator is expecting the alarm, it’s routine. At the time, one of the two stations (I think it was station 2) was down for refueling and maintenance, while the other (station 3) was up and running, cranking out serious megawatts per hour. Maintenance meant lots of changes were happening in station 2, so alarms went off all the time, which the operator knew about. He would just walk calmly over to the big red button on his control panel and punch it, turning off the alarm until the next one.
My second summer there I got my college roommate a job there as well. I lived in York, PA, and he lived just outside Baltimore, MD, so the station was roughly halfway between us. We were in different groups at the plant, but we still hung out together. We loved to talk to the operators, who were an awesome, colorful, bunch.
What does THIS button do?
As a couple of teenagers who were both engineering majors, obviously we kept asking them how we could melt the place down. “What if we closed this valve? Then what would you do?” The operator would tell us in great detail. “Okay, but what if that failed? Then what?” The operator would laugh and respond with half a dozen fixes.
In fact, the biggest lesson I learned in three summers at the plant was that if you have one single operator who knows what they’re doing, you can’t cause a meltdown. The entire system is designed to prevent that, and all you need to do scram the control rods (shutting down the reactor), and find some way — any way at all — to get water into the core to carry away the excess heat. There were tons of ways to do that, including what the operator called the “balls to the walls” valve, which would let Susquehanna River water directly into the core. Sometimes they called that the “fish in the reactor” solution.
So, you’re probably wondering, what happened at Three Mile Island? They had multiple failures, but the real problem was that they had faulty readings from some of the sensors, so the operators weren’t able to trust what they were seeing. Once they figured that out, they worked around the bad ones, and while they ultimately did have some melting in the core, almost no radiation was released from the plant. If the company in charge hadn’t handled the press so badly, it would have been a problem but not a crisis.
That’s the real lesson: the operators couldn’t trust their readings, and the press lost any trust in the company’s statements. The breakdown in trust on both levels was the real problem.
Incidentally, the Fukushima reactor disaster in Japan was largely due to both a major earthquake and the resulting 50-foot tidal wave that knocked out all the back-up generators. The generators were the only remaining way to pump water into the core, and once they were gone, the plant was in real trouble. That’s what caused the major evacuation, but believe it or not, not a single death was attributed to the accident, and minimal radiation was released even in the presence of melting. Many deaths occurred due to the tidal waves, but even at Fukushima, the systems and the operators ultimately did their jobs. See this video for the details.
Chernobyl, on the other hand, was a massive combination of incompetence, denial, and design flaws (see the HBO series, which gets things right about the plant but staggeringly wrong about radiation poisoning being contagious), but that’s a story for another time.
Mostly what I learned in my time at the plant was that I am terrible at hands-on mechanical work, but I could have told them that going in. I did get a cool T-shirt from one of the major drills which said Nuclear Radiation Victim on it. I wish I still had that, but sadly I must admit it wouldn’t fit anymore anyway.
(As for Three Mile Island, I lived in the twelve-mile radius from the plant at the time. We didn’t have to evacuate. I was a senior in high school, and we got three days off of school which we didn’t have to make up, so it was all good. Incidentally, the radio kept playing the Bee Gees song Tragedy over and over again for some reason.)
Song Lyrics Revisited
Periodically in this newsletter I’ll listen to an old song with the benefit of years and years (and years) of experience, and hear it with a very different perspective.
This week my music service played the classic Don’t Pull Your Love by Hamilton, Joe Frank & Reynolds (and if ever there was a need for an Oxford comma, it’s there — that’s three guys: Hamilton, Joe Frank, and Reynolds), and for the first time in a long time, I actually listened to the words.
My basic reaction is: Yikes. Whoever the singer is singing to should run, not walk, anywhere away from this guy.
Take this verse, for instance:
Haven't I been good to you, what about that brand new ring?
Doesn't that mean love to you, doesn't that mean anything?
If I threw away my pride and I got down on my knees,
Would you make me beg you "pretty please"?
Look, friend, you proposed and she obviously said no. Give it up. You’re only embarrassing yourself by begging, and that’s not going to make her suddenly want to be with you.
The chorus isn’t much better:
Don't pull your love out on me, baby
If you do, then I think that maybe
I'll just lay me down, cry for a hundred years
Don't pull your love out on me, honey
Take my heart, my soul, my money
But don't leave me here drowning in my tears
I get the feeling those aren’t metaphorical tears, either. In fact, you’re back to begging, and it’s getting pathetic. Seriously, let her go.
Interestingly, though the verses are out of order, she already felt compelled to get out of town:
You say you're gonna leave, gonna take that big white bird,
Gonna fly right out of here without a single word
But you know you'll break my heart when I watch you close that door
Cause I know I won't see you anymore
Buddy, if her only option is to jump on a plane without warning, seriously, take the hint. Besides, she just told you she’s going to leave, so what’s that about not saying a word? Were you stalking her and overheard her tell an actual friend she had to run? Either way, yikes again.
But he won’t give up. Instead he ends with:
There's so much I want to do
I've got love enough for two
And I'll never use it, girl, if I don't have you
Trust me, you don’t have enough for two if one of you doesn’t want to be there. Besides, never is a long time. I wouldn’t be at all surprised if suddenly this guy was head over heels for the next girl who accidentally acts friendly to him. After all, they’re only other big hit was Fallin’ in Love (after Reynolds had left the group).
What I didn’t know was that much later Glen Campbell (of all people) paired that song with Then You Can Tell Me Goodbye as a medley, which is at least realistic. The medley is on the same album as Rhinestone Cowboy, and actually hit #2 on the country charts in Canada.
(If you’re under the age of 35, or maybe 40, you probably have no idea what any of this section is talking about. Maybe you’re even giving me a good eye roll, a heavy sigh, and an “Okay, Boomer.” That’s fine. Now kindly get off my lawn, or I’ll cry for a hundred years.)
Tweets and Toots
Grandpa Squarepants Tells His Story
Works on many levels, including under the sea.
My brain hurts
No, they’re not!
(Yes, they are.)
Oops
I’m thinking that fish is going to be really surprised when the Nazgûl show up.
That was awesome
I didn’t see much of the World Baseball Classic, but Shohei Ohtani coming out of the bullpen to face Mike Trout with two outs in the bottom of the 9th in a one-run game was amazing. Trout fought off the two 100+ mph fastballs to make it a full count, but then couldn’t stop a filthy 87 mph slider just off the plate for strike three. Two of the greatest players ever going at it. Wow.
And their little dogge, too
Perfect Venn Diagram
Looks reasonable, or so I hear.
You say you want a revolution
Hard to resist that logic.
Speaking of logic
And finally, a picture worth a thousand words:
Good one, but I’ll admit it grates on my nerves that the image refers to him as Dr rather than Mr Spock. Not that he didn’t earn the equivalent of multiple doctorates, but in my day, Dr Spock was the idiot psychologist who ruined a whole generation of kids with bad parental advice. I’d fix the image, but it wouldn’t change the gag.
Have a great week, everybody. :)
The video version of this newsletter will be on the Tales from the jar side YouTube channel tomorrow.
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:
Week 2 of Spring and Spring Boot in 3 Weeks, on the O’Reilly Learning Platform
Gradle Concepts and Best Practices, an NFJS Virtual Workshop.
This week:
Week 3 of Spring and Spring Boot in 3 Weeks, on the O’Reilly Learning Platform
The Groovy Podcast returns! Seriously! With the incomparable Graeme Rocher and everything!
It must have been a slow week. Summer job and music lyrics were pretty uninteresting. Chess news is more exacting.🤷♂️