Alvin Alexander | Java, Scala, Unix, Perl, Mac OS X

Summary: This page is a printf formatting cheat sheet. I originally created this cheat sheet for my own purposes, and then thought I would share it here.

A cool thing about the printf formatting syntax is that the specifiers you can use are very similar, if not identical, between several different languages, including C, C++, Java, Perl, Ruby, and others, so your knowledge is reusable, which is a good thing.

“I’ve stuck with Zen because it is unflinchingly honest, but at the same time accepting, kind, and caring — not in a soft syrupy way, but in a rugged, rough and tumble way. To become clear you have to see what’s really there, all the mental junk you’ve made and accumulated over the years. The honesty will force you to acknowledge the parts of yourself you’d rather keep hidden. The acceptance allows you to look at the less savory parts of your self without being overly self-critical.”

~ from this page

Tho’ much is taken, much abides; and tho’
We are not now that strength which in old days
Moved earth and heaven, that which we are, we are;
One equal temper of heroic hearts,
Made weak by time and fate, but strong in will
To strive, to seek, to find, and not to yield.

~ Part of the poem Ulysses, by Lord Alfred Tennyson

(In the process of writing Functional Programming, Simplified, I had to make thirteen trips to the emergency departments of three different hospitals. So this poem has some meaning to me.)

The Farnam Street Blog has a nice set of core principles in regards to “all that we write about, think about, and strive to achieve”:

- Direction Over Speed
- Live Deliberately
- Thoughtful Opinions Held Loosely
- Principles Outlive Tactics
- Own Your Actions

I came across quite a few bald eagles in Canada and Alaska, but didn’t know we had them right next door here in Colorado. I knew construction on this project had been held up for at least two years, and now I know why.

Bald eagles next door (Broomfield, Colorado)

I have a rough surgery coming up in a couple of weeks, and when I came across the saying, “Collect beautiful moments,” it reminded me that that’s pretty much all we can do in life.

Collect beautiful moments

I’ve watched so many British tv shows, I have a hard time driving on the right side of the road.

The people behind IntelliJ IDEA released their JetBrains Scala developer survey recently.

JetBrains Scala developer survey

Two days ago Google announced their “Principles/Objectives for using AI”:

1. Be socially beneficial
2. Avoid creating or reinforcing unfair bias
3. Be built and tested for safety
4. Be accountable to people
5. Incorporate privacy design principles
6. Uphold high standards of scientific excellence
7. Be made available for uses that accord with these principles

I was reminded of this “If at first you don’t succeed, call it Version 1.0” saying this morning. You can find this t-shirt on Amazon if you’re interested.

If at first you don’t succeed, call it Version 1.0

After watching the movie Powder and hearing an electrical arc device referred to as Jacob’s Ladder, I looked into it and found this Jacob’s Ladder page on the Popular Science website (where this image comes from). I was familiar with the term in a religious context, but I didn’t know that’s what the name for this device is.

Jacob's Ladder electrical arc device

“You have no responsibility to live up to what other people think you ought to accomplish. I have no responsibility to be like they expect me to be. It’s their mistake, not my failing.”

~ Richard Feynman (one of the great physicists of the 20th century)

I like the “No New Rationale” rule, which I learned about in this blog post by Aaron Turon, who writes about the Rust RFC process:

No New Rationale rule: decisions must be made only on the basis of rationale already debated in public (to a steady state).”

“At some point, a member of the subteam will propose a “motion for final comment period” (FCP), along with a disposition for the RFC (merge, close, or postpone). This step is taken when enough of the tradeoffs have been discussed that the subteam is in a position to make a decision. That does not require consensus amongst all participants in the RFC thread (which is usually impossible). However, the argument supporting the disposition on the RFC needs to have already been clearly articulated, and there should not be a strong consensus against that position outside of the subteam.”

Based on his current work in developing Rust, Aaron Turon has a couple of good blog posts on developing/leading open source projects titled, listening and trust, part1, and listening and trust, part 2.

A friend once told me he had no self-confidence. “That’s good,“ I said, “You’re halfway there. All you need now is no no-self-confidence.”


If you or someone you know has a mast cell disease — a type of autoimmune disease — the website has several great infographics. I printed them out so I can take them to new doctors who don’t know me, when I have to go to emergency departments, and for things like my upcoming surgery.

Great printable infographics on mast cell disease has an article titled Speeding Up Compilation Time with `scalac-profiling` where they demonstrate how they reduced a project’s compilation time from 32.5 seconds down to 4 seconds. In addition to all of the scalac and profiling details, it demonstrates a nice use of flamegraphs.

Per this tweet, back on May 15 Martin Odersky shared a slide with these contents:

The essence of Scala: Fusion of functional and object-oriented programming in a typed settings.

- Functions for the logic
- Objects for the modularity