Upgrade to macOS 10.15.4 Fixed LG 5K Monitor Issue

March 26th, 2020

Software Update

Yesterday morning I updated my 16" MacBook Pro laptop to macOS 10.15.4, and this morning I noticed that one of the nagging problems with my LG 5K monitor was gone! In the past, this new laptop and the LG 5K weren't really happy with one another. When I'd wake up the laptop in the morning, the attached display would not wake up, but it also wasn't unattached.

The windows were still "on" the LG 5K, but I couldn't see them, and I couldn't move them because I couldn't see them, and that meant that I have to unplug the LG 5K... let the laptop rearrange things... then plug it back in. It wasn't the worst thing in the world, but it was annoying.

Well... after the update this morning, it's now working exactly as expected. 🙂 That's a wonderful development! Now things are just working exactly as they should... very pleased.

Day 8 of Coronavirus WFH

March 25th, 2020

Today has been interesting because some folks are starting to show some really strain about all the forced confinement of the shelter-in-place orders from the local states. I know it can be tough... going out just feels risky now, and I'm profoundly grateful that I don't have to. But some aren't handling it well, and they aren't reaching out for the help they need.

It manifests itself in any number of ways, and I make sure yo make myself available for these people - to talk, or video chat, or listen... It's the little things that we can all do to help those that are struggling a little in this wild, crazy time. What I never imagined was that I would be one of the people offering comfort to someone else. This is a reversal I would never have seen coming.

On the up-side, things are going well at The Shop, and work is proceeding, at some sense of pace, to move forward. People generally are being kind to one another... there's a ton of pet pictures on Slack, and people are making shared Hnagouts to meet, casually, as a group. It's the evolution of what we have to do.

It's hard to imagine that this could go on for months... but the data from other countries is clear - this needs to stay in place for 4 to 8 weeks, and that helps to spread out the curve and buy time. Crazy days indeed.

The Laser Printer Died

March 22nd, 2020

Sad State of Affairs

My daughter needed to have about 18 pages printed out for a school assignment, and because the only printer we have is a very old, it's connected to my laptop by a simple USB cable. Sure, it's still working fine, and the pages are fast enough, and sure, it's only Black and White, but for an HP LaserJet 1200 that's more than a decade old, it's doing pretty well. Or so I thought.

I got about three pages out, and then it started making a screeching noise that didn't sound good, and nothing I could do was going to bring it back. It had printed it's last page. I tried power cycling... removing the toner cartridge... opening it up... nothing was going to get rid of that screech, and so I had to let her know that the pages weren't coming, and to let her instructor know.

So I started looking around, and the review sites seemed to really like the HP Color LaserJet Pro M255dw - it's color, double-sided printing, WiFi and Ethernet, as well as USB, and works with Macs as well as AirPrint for iOS and iPadOS. Just exactly what I was looking for, because with this I don't have to be The Print Man in the house, and she can print from her desk and just pick it up in my office.

I was a little surprised that it was only really available from HP Direct, and the larger toner cartridges as well. But it wasn't really that much more than some of the online sites were advertising. So I ordered it, and will press it into service as soon as it arrives.

I'm looking forward for it lasting another decade... 🙂

Day 5 of Coronavirus WFH

March 20th, 2020

Microbe

Things are really escalating now... the Governor of Illinois is talking about issuing a shelter-in-place order for the entire State. That's some serious stuff. We will still be able to go to the grocery store, and drive-thru food, etc. but the casual trips out, and the large collections of people are over for now.

This has been a little creepy for me, but I'm able to take care of things, get food, and while there is rationing happening at the grocery store: 1 gal of milk... 1 bread item... 1 paper product... it's not horrible, and the point is that it's just temporary, and as soon as the trucks and logistics get geared up, then we'll be able to see normal supply again.

But for now... it's stepped up to the next phase, and it'll be a while before things get back to normal.

Day 4 of Coronavirus WFH

March 19th, 2020

Microbe

Things are getting worse, as the numbers climb. At this point, things are getting out of hand, and the news is changing almost hourly. The markets have been up and down, but The Shop is asking people not to come into the office unless it's an emergency.

Pretty quick change for just three days. But that's what'll happen when you have something like this happen. It's certainly reminding me of all the viral outbreak movies you see - and while the mortality rate isn't like Ebola, it's bad enough, and that's reason enough to take this all very seriously.

Day 1 of Coronavirus WFH

March 16th, 2020

Microbe

The Coronavirus is spreading, and The Shop has said that if we aren't comfortable going into the office, it is acceptable to work from home (WFH) - after checking with your manager. Since I'd checked with my manager on just this issue last week, I was ready to start this week WFH for sure.

I don't believe the office is bad... but the Metro and Shuttle are going to be horrible - simply because many people will have the light version of the disease and spread it to many others. That's not their fault - they wouldn't necessarily know... but I could get it - and then unwittingly spread it to others. That's bad.

So I'm going to WFH and see how things play out. After all... I'm every bit as productive here as I am at the office.

Interesting Interoperability C++ to Java

March 9th, 2020

GraalVM

I have always hoped that GraalVM would be something that really launched Clojure, and Java, into something that would be fast - and like really fast. But then it was a licensing issue as GraalVM was licensed by Oracle, and so any production deployment was going to cost real money. But even then... for a company, that might not be bad - especially when you have to worry about performance, and you are looking at JNI, or a mixed-mode environment with C++.

So it was very interesting to me to see this article about calling Java from C++, with the GraalVM compiling Java to a shared library (and header), that could then be linked in with C++ like any other shared library.

The key is that this would completely avoid JNI, and it's complications - in coding, versioning, and execution speed. I can imagine having lots of Java code, built and tested in the normal Java way, and then compiled into a shared library for inclusion in a much more performant C++ system for those engines that had to run for long periods of time without restarts, and be very aware of resource management (memory, ports, etc.) and yet built with a simpler system than C++.

The article is interesting, but again... with the licensing, it's only really useful for organizations with revenue streams to support it.

Ordered Another Messenger Bag

February 25th, 2020

Chrome Bag

I've been noticing that my Chrome messenger bag hasn't been as full as it used to be. And while it's in great shape, I was hoping to get the slightly smaller Citizen Messenger Bag from Chrome

The closest thing they have now to what I typically carry is the Berlin, as it's big, but not in a horrible way. I can typically take my laptop, chargers, and everything - plus three days clothes - all in the big bag, and it's perfect for sailing through airports.

But I will admit, it's a touch big for under the seat, and so I wanted to see about going with the Citizen, and seeing if I could put everything in it, and not feel cramped. It should fit under the airline seat better, and as long as it's all there, I'm better off carrying that and my duffel bag, than one big bag.

We will see when it arrives! 🙂

Upgrading Postgres 11.1 to 12.1 Using Homebrew

February 4th, 2020

PostgreSQL.jpg

It's time to make sure that my laptop has the latest version of PostgreSQL, as I was reading that Heroku was moving to Postgres 12 as their default database. And since I don't do it that often, I decided to write it all down so that it's easier to do next time.

The process isn't bad... dump all the databases into one file, stop the server, update Homebrew, update postgres. This gets us to the point that we are ready to rebuild the new database:

  $ pg_dumpall > dump.sql
  $ brew services stop postgresql
  $ brew update
  $ brew upgrade postgres

Now we need to move out the old database data, create a new structure, and restart the service:

  $ cd /usr/local/var
  $ mv postgres postgres.old
  $ initdb -D /usr/local/var/postgres
  $ brew services start postgresql

You then need to go back to the directory of the first command - the one where you dumped the databases, and reload them all:

  $ psql -d postgres -f dump.sql

and at this point, everything should be back and running:

  $ psql --version
  psql (PostgreSQL) 12.1
  $ psql -l
                                      List of databases
      Name     | Owner | Encoding  |    Collate     |     Ctype      |  Access privileges
  -------------+-------+-----------+----------------+----------------+---------------------
   health      | drbob | SQL_ASCII | en_US.US-ASCII | en_US.US-ASCII |
   inventory   | drbob | SQL_ASCII | en_US.US-ASCII | en_US.US-ASCII |
   northhollow | drbob | SQL_ASCII | en_US.US-ASCII | en_US.US-ASCII |
   postgres    | drbob | SQL_ASCII | en_US.US-ASCII | en_US.US-ASCII |
   template0   | drbob | SQL_ASCII | en_US.US-ASCII | en_US.US-ASCII | =c/drbob           +
               |       |           |                |                | drbob=CTc/drbob
   template1   | drbob | SQL_ASCII | en_US.US-ASCII | en_US.US-ASCII | drbob=CTc/drbob    +
               |       |           |                |                | =c/drbob           +
               |       |           |                |                | _postgres=CTc/drbob+
               |       |           |                |                | postgres=CTc/drbob
   test        | drbob | SQL_ASCII | en_US.US-ASCII | en_US.US-ASCII |
  (7 rows)

At this point you can remove the old data:

  $ rm -rf /usr/local/var/postgres.old
  $ rm dump.sql

and everything is updated. You can then use any of the normal tools, including the Apache/PHP/Postgres that Apple makes available, and Postico - a great GUI client.

UPDATE: a friend asked: "What's in 12?" and I had to say I really didn't know... so I looked it up. The big changes are all about under-the-hood performance, and so, as I suspected, it just "works better". Which is really the goal, right? 🙂

I know I will probably enjoy the JIT on by default, as there are plenty of times stored procedures are in my databases, and that makes them faster, which is always nice. But it's just a great database - getting greater.

Trying out a new Editor Font

January 21st, 2020

GeneralDev.jpg

A few days ago, I read about the new JetBrains Mono font that they had created for their IDEs, and it looks interesting with the increased hight of the lower-case letters, and the easily readable "1lI" combination... so I decided to give it a whirl on my editor, and in Xcode.

I have to say I like how Sublime Text and Xcode handles all the weights of the font, and the ligatures for common expressions makes it a lot easier to read the code - as if I'd written it on a chalkboard. Very nice indeed

JetBrains Mono for Clojure

I'm not sure how it'll play out, but it's pretty nice so far, and I'll play with it for a bit and see what I think. So far... nice. 🙂