Scala, Java, Unix, MacOS tutorials (page 188)

When I was younger I didn’t really like The Beatles, though I did like individual songs by John Lennon and Paul McCartney. Lately I’ve been listening to a lot of McCartney and The Beatles, and this quote from the Wikipedia’s A Day in the Life discussion is good:

“Paul and I were definitely working together, especially on ‘A Day in the Life’ that was a real ... The way we wrote a lot of the time: you’d write the good bit, the part that was easy, ‘I read the news today’ or whatever it was, then when you got stuck or whenever it got hard, instead of carrying on, you just drop it; then we would meet each other, and I would sing half, and he would be inspired to write the next bit and vice versa. He was a bit shy about it because I think he thought it’s already a good song. Sometimes we wouldn’t let each other interfere with a song either, because you tend to be a bit lax with someone else’s stuff, you experiment a bit. So we were doing it in his room with the piano. He said ‘Should we do this?’; ‘Yeah, let’s do that.’”

(Here’s a link to A Day in the Life on YouTube.)

(Dear Jackie Waller: I’m sorry, you were right, I would have liked the Beatles if I took the time to listen to them.)

What started off as an accidental finding resulted in me performing a test on myself the last few weeks. The results are in, and I think they’re pretty conclusive: right before going to bed, if I turn off the tv (or put down the book I’m reading) and meditate for a little while, I remember my dreams more, sleep less, and wake up more refreshed.

“A state of being is an experience. A description of a state of being is a symbol. Symbols and experience do not follow the same rules.”

~ The Dancing Wu Li Masters: An Overview of the New Physics

This is a little RxScala example from the RxScala/RxJava Github docs:

object Transforming extends App
{
    /**
     * Asynchronously calls 'customObservableNonBlocking'
     * and defines a chain of operators to apply to the 
     * callback sequence.
     */
    def simpleComposition()
    {
        AsyncObservable.customObservableNonBlocking()
            .drop(10)
            .take(5)
            .map(stringValue => stringValue + "_xform")
            .subscribe(s => println("onNext => " + s))
    }

    simpleComposition()
}

If you like visual diagrams, this source code goes along with this marble diagram.

I’ll be including examples like this in my book, Functional Programming, Simplified.

A long time ago I wrote about how to improve your iTunes song quality, but that article was about how to make the songs you already have in iTunes sound their best through a couple of tweaks.

This morning I was again listening to a song on YouTube, and then I checked it against the same song I have in iTunes, and the YouTube song quality sounded better than my song, which I purchased through Amazon.com. In short, that led me to find this amazon page where they discuss the (poor) quality of their MP3s, part of which is shown in this image. IMHO, I don’t think people are that concerned about 5 MB file sizes and 56k dialup connections in most places. (They could make this an option.)

Poor Amazon MP3 quality

This image of “lessons learned” comes from an article titled, “Learning FP the hard way: Experiences on the Elm language.” (Elm is incredibly similar to Haskell.)

FP the hard way

“That’s someone’s opinion,” he said. “There are certain things in this world you can’t control. You’ve got to keep living without them.”

~ Jimmy Garoppolo, in this article

The song of the day is a fun little song called Goodnight Tonight, by Wings (Paul McCartney):

The next chapter of my new book, “Functional Programming, Simplied (Scala edition)” is now online. It’s titled, “Benefits of Functional Programming.”

“On Venus it snows metal.” This image comes from the Google search results, with the story contents coming from smithsonianmag.com.

On Venus it snows metal

Zeus, the Best Dog Ever, passed away on August 21, 2010. In an unrelated event, I almost kicked the bucket on the same day in 2016. That would have been kinda cool in that regard.

I got really sick again yesterday and didn’t know if I’d make it through the night, so I did two things I wanted to do: one good, the other meant as helpful (you know how that can go). Somehow that leads me to making “Lonely Ol’ Night” by John Mellencamp the song of the day:

“I know there’s a balance, I see it when I swing past.”

“You can’t always do what you’re told, darlin.’”

(A quote from my favorite movie of the last five years, In Your Eyes.)

“It seems like there is a sound case for a ‘pure’ keyword in future C/C++ standards.”

(A quote from id Software co-founder and technical director John Carmack in this article. I wrote about using an impure annotation in Scala many moons ago.)

HER: What’s your cell plan?

ME: Bodily decay over decades until inevitable mortal collapse. You?

HER: ... V-Verizon.

“You know, Haskell actually never liked the name Haskell.”

~ Mrs. Haskell Curry

Psychologists have identified a state of mind called flow in which we’re capable of incredible concentration and productivity.

The importance of flow to programming has been recognized for nearly two decades since it was discussed in the classic book about human factors in programming Peopleware: Productive Projects and Teams by Tom DeMarco and Timothy Lister (Dorset House, 1987). The two key facts about flow are that it takes around 15 minutes to get into a state of flow and that even brief interruptions can break you right out of it, requiring another 15-minute immersion to reenter.

DeMarco and Lister, like most subsequent authors, concerned themselves mostly with flow-destroying interruptions such as ringing telephones and inopportune visits from the boss.

Less frequently considered but probably just as important to programmers are the interruptions caused by our tools. Languages that require, for instance, a lengthy compilation before you can try your latest code can be just as inimical to flow as a noisy phone or a nosy boss. So, one way to look at Lisp is as a language designed to keep you in a state of flow.

In the last few weeks I learned that Miranda is a lazy, functional programming language that preceded and greatly influenced Haskell. Here are some examples of the Miranda language.

The name of this language, along with the use of the name in the movie Serenity, got me wondering about its origin. BehindTheName.com states, “Derived from Latin mirandus meaning ‘admirable, wonderful.’ The name was created by Shakespeare for the heroine in his play ‘The Tempest’ (1611). It did not become a common English given name until the 20th century. This is also the name of one of the moons of Uranus.”

The Blues Brothers, starring Dan Akroyd and Jim Belushi, are on a little road tour. If I’m healthy enough by November, it would be great to travel to see them. It would be even greater if they’d play a show in Colorado. ;)

The Blues Brothers, on the road