While the Super Bowl was a disaster (from a Denver, Colorado, perspective), I’ll try to remember February 2, 2014, as the day I watched Love Actually. Still a favorite quote:
“Okay, dad. Let’s do it. Let’s go get the shit kicked out of us by love.”
While the Super Bowl was a disaster (from a Denver, Colorado, perspective), I’ll try to remember February 2, 2014, as the day I watched Love Actually. Still a favorite quote:
“Okay, dad. Let’s do it. Let’s go get the shit kicked out of us by love.”
When I left Alaska in 2011 I didn’t have enough room in my car for all of my books, so these are the ~104 books I left behind.
Here in May, 2020, I was just experimenting with Dotty 0.24 (Scala 3), and I just noticed that the Dotty compiler (dotc
) does not have a “strict” flag that’s referred to in the documentation. Instead, when working with open classes, I was able to get the compiler error/warning I was looking for by adding the -source 3.1
flag, as shown in these two examples:
$ dotc -source 3.1 OpenClass* there were 1 feature warning(s); re-run with -feature for details $ dotc -source 3.1 -feature OpenClass* -- Feature Warning: OpenClass2.scala:2:23 -------------------------------------- 2 |class Employee extends Person | ^^^^^^ |Unless class Person is declared 'open', its extension in a separate file should be enabled |by adding the import clause 'import scala.language.adhocExtensions' |or by setting the compiler option -language:adhocExtensions. |See the Scala docs for value scala.language.adhocExtensions for a discussion |why the feature should be explicitly enabled. 1 warning found
In my case I put a Person
class in one file and an Employee
class that extends Person
in another file, and I didn’t expect them to compile without a warning because of what I read in the docs. But then I read that you’ll only get the warning message if the -strict
flag is used with dotc
, and then I further discovered there is no strict
flag, but you can use the command line arguments shown with dotc
to see the warning message.
Note: The docs on this page currently state, “open
is a new modifier in Scala 3. To allow cross compilation between Scala 2.13 and Scala 3.0 without warnings, the feature warning for ad-hoc extensions is produced only under -strict
. It will be produced by default from Scala 3.1 on.”
Several good quotes from this article about Peyton Manning making his free agent decision:
(1) “I don’t know what to do. What does a free agent do?” (Peyton Manning)
(2) “Remember the Patton principle: Make a decision and do it like hell.” (David Cutcliffe to Manning)
(3) It was getting down to decision time. “These are not math problems,” Cutcliffe told Manning, “they don't have single right answers.”
(4) On Saturday night Manning called Dungy to discuss the pros and cons of the three finalists: Denver, Arizona, Tennessee. Then he asked, “Are there any other things I should be thinking about?”
Said Dungy, “I told him it's never going to be 100%. He had so many good choices, it’s going to be 51/49, or maybe 50/50, and then it just comes down to a gut feeling. I told him what [Hall of Fame coach] Chuck Noll told me a long time ago: When you’re making an important life decision, make sure it’s without regard to money, title or position. Make sure it’s about who you’re going to be working with and how much you’ll enjoy being there.”
Update: On September 21, 2021, using MySQL 8 and Ubuntu 20.04, the solution to this problem was to edit this file:
/etc/mysql/mysql.conf.d/mysqld.cnf
Then add this configuration line to the end of that file:
sql_mode = ""
Once I did that, the problem described below went away.
Note that you can use this command to show your MySQL version on Ubuntu Linux:
$ mysql -V mysql Ver 8.0.26-0ubuntu0.20.04.2 for Linux on x86_64 ((Ubuntu))
NOTE: Everything below this point describes the background to this problem, and solutions I used with older versions of MySQL and Ubuntu Linux.
As a brief note to self, I ran into this MySQL error when running a SQL SELECT
and GROUP BY
query:
02:14:33.911 [main] ERROR scalikejdbc.StatementExecutor$$anon$1 - SQL execution failed
(Reason: Expression #3 of SELECT list is not in GROUP BY clause and contains
nonaggregated column 'aad8final.u.alias' which is not functionally dependent on columns
in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by):
select tn.nid, count(tn.nid) as countOfTnNid, u.alias, n.title
from taxonomy_index tn, url_alias u, node_field_data n
where tn.tid in (select tid from taxonomy_index where nid = 9423)
and tn.nid = u.nid
and tn.nid = n.nid
and n.status = 1
and n.nid != 9423
group by tn.nid
order by countOfTnNid
desc limit 5
Chapter 10 of the book, Learn You a Haskell for Great Good!, is titled, Functionally Solving Problems. In that chapter, the author describes a “Reverse Polish Notation” (RPN) calculator. If you ever used an old Hewlett-Packard (HP) calculator, you might know what that is. (At least that’s where I first learned about RPN.)
You don’t have to read it all yet, but some of that discussion is shown in this image:
“Goddamnit!”
Every so often a woman in a lucid dream this morning yelled out like that, so after the fourth or fifth time I had to ask her about it. “Why do you keep saying that?,” I asked.
“Gets your attention, doesn’t it?”
“Yeah, I guess so.”
“There you have it.”
“There I have what?”
As a brief note today, here’s the source code for a little Scala function that gets the first paragraph of text from a string. Paragraphs are assumed to be separated by \n\n
characters. Also, if that character sequence isn’t found, the input text is assumed to be one paragraph. Here’s the source code:
I’m working on a little app for my Scala & functional programming book I currently call “Future Board.” It works a little like Flipboard in getting news headlines from different sources, but it uses Scala Futures and a few other functional programming techniques.
I had my old RAV4 for about eight years. I bought it because Toyota supposedly had good quality, but I sold it on this date a few years ago because I had a lot of problems with that car, including the time it filled up with water shortly after I bought it.
When I first started studying Zen and the Tao, I interpreted many of the quotes I read as “let things be just as they are.” For a while that led to me act as a doormat, letting other people do as they wished, in some cases even treating me poorly. I did that consciously, so even though I was acting like a wimp I didn’t feel like a wimp; I was just trying to practice what I was learning.
After a while I realized that was a wrong approach. Because I wasn’t demanding excellence at work, some employees weren’t performing up to their capabilities. Other people in my personal life were “using” me because they knew they could get away with it.
The Human Route, by Zen Master Seung Sahn, on a card from the people at DharmaCrafts.com:
Coming empty-handed, going empty-handed — that is human.
When you are born, where do you come from?
When you die, where do you go?
Life is like a floating cloud which appears.
Death is like a floating cloud which disappears.
The floating cloud itself originally does not exist.
Life and death, coming and going, are also like this.
But there is one thing which always remains clear.
It is pure and clear, not depending on life and death.
What is that one pure and clear thing?
“When the ten thousand dharmas are without self, there are no delusion, no enlightenment, no buddhas, no creatures, and no death. The Buddha way transcends being and nonbeing.”
~ Zen Master Dogen (as seen on this page)
Mandy Patinkin’s two favorite lines from The Princess Bride:
(2) “Hello, my name is Inigo Montoya. You killed my father, prepare to die.”
(1) “I have been in the revenge business so long, now that it’s over, I do not know what to do with the rest of my life.”
~ from this video
I really struggle with equanimity, so this is a nice discussion on equanimity vs indifference, by Jack Kornfield. It comes from this page on his website.
I don’t remember where I saw this, but I like the saying:
Courage doesn’t always roar. Sometimes courage is the quiet voice at the end of the day saying, “I will try again tomorrow.”
Jack London’s credo, which I like very much. (I don’t know who first created this image, but I saw it on this Twitter page.)
When I was 20-23 years old, I lived in this apartment building in Texas. I’m not sure about that red/brown tree in the foreground, but the big green tree in the middle of the building was there way back then. Thank you Google Maps for the opportunity to look back in time (without having to travel 1,000+ miles).
In case you wondered where Kotzebue, Alaska (population ~3,300) is, I hope this map is helpful.
One point worth mentioning is that there are no roads on most of the west side of that map. For instance, there is no way to drive from Fairbanks to Nome, Talkeetna to Nome, Fairbanks to Barrow, Nome to Kotzebue, etc. There is one road from Fairbanks to Prudhoe Bay, and it’s called the Dalton Highway. That’s where the “Ice Road Truckers” drive.
Also of interest is that President Obama is nowhere near Alaska’s state capitol. In fact, Alaska is so big, Juneau, Alaska is not even on this map. It’s off the map to the lower-right.
Map courtesy of Google Maps.
This image comes from this presentation on Pure-Functional Database Access in Scala.