Set Up New Mac

18 Dec

I got a new Mac to go with the new job. Here’s rough notes on what I did to set it up.

Open the box and plug it in.

Get it booted.

Create a new apple id for the new job along the way. Get annoyed at Apple for not allowing a letter to be used more than 2 times in a row e.g. a password with ‘AAA’ anywhere in it is not allowed. Just let me use whatever password I want.

Upgrade the OS

Update the OS from Catalina to Big Sur.

Configure Some Things

  • Make the touchpad NOT click on finger taps
  • Get my standard set of images for the screen saver and set it up to show them
  • Put the power saver settings the way I like them

Install All the Things

Chrome

Install Chrome and set it as the default browser. Don’t @ me. This is the browser I use because it is the browser I use. I am not interested in browser wars.)


Create two user profiles in Chrome. One for work using the work email and one for personal using the personal email. This makes it easier to keep things with things while still making it not-too-bad to get at all my common tools using the chrome-synced manus, toolbars, and settings.

Password manager

Install my favored password manager because remembering passwords is hard work that no human should do.

VSCode


Install VSCode. Install the key extensions.

  • EditorConfig
  • C/C++
  • CMake Tools
  • Docker


Realised I did not have all the extensions I expected on my personal machine. There are many that I used on my old work machine that are not yet there either. Awesome. Let’s guess what they are and install some of them on both machines.

  • Python
  • shellcheck (this will need some other things installed below)

That’ll get the most likely ones. Others can be installed as I go along.

Configure VSCode to allow code on the command line to open files.

ITerm2

Install ITerm2 and make its configuration match what’s on my personal machine.

Set Shell

Recall as some point that the newer MacOS versions default to zsh. Nothing against it, but I am sticking with bash.

Big Sur still has bash in the /etc/shells so I just need to change the default shell

chsh -s /bin/bash

I will have to change this when I install the newer version of bash below.

Xcode


Putting this here even though I actually did it after brew install pyenv because I realized I would need the command line tools pretty soon.

Use the App store to install XCode. Which required setting up the App store with the new Apple ID.

Start XCode to click all the agree buttons.

This version of XCode installed the command line tools by default so xcode-select --install did not have to do anything.


(Carry on with the Brew installs…)

Homebrew

Install homebrew.

brew install all the things I use on my personal machine that look to be useful on the work machine.


brew list to get the list the cut it down to likely things
These are the important ones. These will get installed and configured now.

brew install magic-wormhole

Wonderful tool for moving things securely from one machine to another

brew install pyenv

(stop here uninstall it and go back two steps to install XCode and then the command line tools)

use pyenv to install the most recent python (3.9.0 now) and set it as the global python

pyenv install 3.9.0

This failed with an ugly python error. After consulting the googles I found this that worked:

LDFLAGS="-L$(xcrun --show-sdk-path)/usr/lib" pyenv install 3.9.0 
pyenv global 3.9.0 

brew install bash

Big Sur comes with bash 3.2 installed. I want something at >= 4.x. The personal machine has 5.0. After the install add the new bash to the /etc/shells file and set it with chsh -s /usr/local/bin/bash

brew tap homebrew/cask-fonts
brew install --cask font-fira-code

I like ligatures in editors. This is the font for that. Install the package then configure VSCode to use it and update settings for fonts

Font Family: Fira Code

To enable ligatures, add this to the settings.json "editor.fontLigatures": true,

brew install git

Cannot live on a computer without it

brew install hub

hub makes working with Github nicer from the command line

brew install git-crypt

Which I use to encrypt secrets on some of my repositories

brew install shellcheck

shellcheck is a lint tool for bash scripts. I very much like running lint and other static checks on code I write in any language. shellcheck has proved itself in both catching subtle errors in my bash scripts as well as teaching me better ways to write bash. This package needs to be installed so the shellcheck extension of VSCode will work, which is where I use it most of the time. It also has a command line which lets it be added to build scripts. I highly recommend using it.

There are some others that I will install later or as I find I need them:

  • ccache
  • gcc
  • ninja
  • xz
  • cmake
  • gdbm
  • jq
  • kdiff3


Dot Files


I have a repo full of dot files to bootstrap a bunch of configurations. I’ll get that down and put them where they belong.


Create a ~/projects/ folder, because that’s what I do.

Clone the dotfile repository.

Which requires telling GitHub about my new machine. Which means creating a new ssh key and putting it in all the places.

mkdir ~/.sshcd ~/.sshssh-keygen -t ed25519 -C "your_email@example.com"
eval "$(ssh-agent -s)"
# update the ~/.ssh/config file with a Host 
blockssh-add -K ~/.ssh/id_ed25519
# add the key to Github
git clone <dotfiles repo>`

From the dot files:

  • Copy the ssh config parts that a generic into the ~/.ssh/config file.
  • Copy The bash files that are useful. There might be bits in these that don’t apply yet because something is not install, but it should be harmless to have it there early.
  • .bash_profile
  • .bashrc
  • Copy all of the git config files that are useful (some are specific to old git repositories that are no longer needed)
  • Copy all the other dotfiles that are there (vim, input, kdiff)

There are also some VSCode settings files cached here, but I will look at those and probably manually echo the settings instead of risking copying them blindly.

Utility Scripts

I have a big pile of utility scripts, mostly in bash, in a git repository. Clone that repository down.

Sundry Tools

Rogue Amoeba Tools

  • Loopback
  • Hijack
  • SoundSource

I have found these to be very useful for managing sound and sound-devices on the Mac.

Enough for Today

That gets the machine into basic working shape. That took about 4 hours.

Still left to do are things like

  • get gcc installed (so I can keep working on my Advent of Code)
  • get java installed (i’ll probably wait to make sure I get the one needed for the client gig)
  • getting the desktop apps for some of the office tools (outlook, miro, etc.)

I’ll write about those if anything special happens during the installs.

Changes, Again

16 Dec

I guess one post every 10 years is alright, yeah?

When last I left you, I was in a pause between adventures.

Spoilers: The pause ended and a different adventure began. That adventure is over, and now another begins.

Yeah, sorry to leave you hanging. That’s the way it goes sometimes. I’ll give the the short version to catch you up.

After the pause, I joined about 60 folks at this company:

Pillar Technology

Some interesting work with quite a lot of learning about ways to build and support teams developing products ensued. I helped many clients build many products. I helped open a couple of Forges.

Pillar Technology wants the Forge to support Columbus tech innovation -  Columbus Business First

Particularly the one in Des Moines. I also worked on many projects at the Ann Arbor Forge and the Columbus Forge.

The Forge | MODUS

Des Moines Forge

Pillar grew to about 400 people doing some cool work in many industries. About 2.5 years ago, Pillar was acquired by this company.

Accenture Logo | The most famous brands and company logos in the world

This part of the adventure had some potential. I helped open a new Forge in Chicago.

Chicago Inno - Accenture Opens mHub Tech Studio to Help Clients Make  Physical Products

Chicago Forge

The Chicago Forge was nestled inside a very cool place called mHub

Pillar Technology

mHub

Many interesting things happened and much fun was had. There was, and is, great potential for exciting, interesting work finding much value for great good. It was Mostly Good. Other than the difficulties meshing with a Multinational Corporate Behemoth. Some of the edges were rough and the meshing was not especially smooth.

I decided a short while ago that it was time to move to something other.

So, here we are at a new juncture on the cusp of a new adventure. So, let’s see how this goes.

LeadingAgile SoundNotes: an Agile Podcast

Bacon Three

19 Oct

Another Huge Success. I cured the entire belly this time, again in two halves. I made one half With No Weird Stuff, as the Law demands. The other half had only added brown sugar. Both are really good. The brown-sugar cure definitely added some sweetness and seemed to bring out other flavors as well. Ruhlman notes that extra sugar will make the smoking add more flavor so I’m guessing that is what happened.

This belly was purchased at the local Costco. They had a lot of bellies there and the price was about the same as the butcher shop. I am hoping they will continue to carry them when I want to get them. The belly was a good bit thicker than the one I got before. It also already had the skin removed, which saved me quite a lot of work. It did deprive me of the skin for cracklins, but they were able to leave much more fat on the belly than I had in my earlier effort. Tradeoffs.

At some point, I will seek out higher quality pork. We have had great success and are very pleased with the results using these commercial bellies. It will be interesting to see whether a belly from a small-farm raised hog really does have the difference reflected in the cost to make it worth using for us. Being Food Enjoyers and not Food Connoisseurs might make it a cost not necessary.

I show the smoking setup I used in the photo attached (the two parts of the collage were taken on different days). I use a grill and some hacks to get it to smoke at the temperature I want and still have smoke. A couple of bricks and a rack made a two-level area just right for these half-bellies. The old pan with the wood chunks is sitting directly on the gas burner. You can’t see it here, but I have about 75% of the burner holes covered with foil to be able to keep the temperature below 200ºF. I only light the one burner, mostly covered, and then keep it turned almost as low as it will go to get that temperature. I really like this grill. It has fairly heavy steel, a gas side, a charcoal side, and a side smoke box on the charcoal side. I use the gas side for most smoking because it is less hassle (I am generally really lazy). One thing the gas side does really well is get really, really, really HOT. I have gotten it hot enough that my probe thermometers exceed their maximum possible reading. The, highly inaccurate, dial thermometer on the grill lid shows it going to 700ºF+. The drawback is that it is very difficult to get a temperature below 300ºF with hacks like I describe above. But you can, so there.

Field Notes:

18Oct2020
12.32lbs total. Split 6lb3¾oz; 6lb1½oz.
One half cured with brown sugar added
Other half cured with just the cure mix
Cured 14 days
Smoked with apple chunks at 210º to internal temp of 145º
Smoking took about 3 hours.

Happy surprise: this belly from Costco is much thicker that the previous belly from Fergusons and has a much thicker layer of fat (which seems a good thing right now). It also came with the skin already removed which cut out about 80% of the effort for me.

Bacon, the Other Half

5 Oct

When we were getting to the end of the first half-belly, I thawed and cured the half-belly I had frozen frozen. The skin cut off much easier this time. That was partly because I had a sense of how to work it this time. Mostly it was because I got out the sharpener and put good edges on all the knives. Note: Knives sharp; fingers bleed.

Against all of Mary’s demands, I added brown sugar and pepper corns to the cure this time. I liked it quite a lot, but it caused a new Rule of Bacon Making to be declared: Thou Shalt Reserve Half to be Cured with No Weird Stuff Added. So sayeth the boss; so it shall be done.

Field Notes

24Sept2020
5 lbs (other half of the 5Sep belly) cured with added brown sugar and cracked pepper
3Oct smoked with just apple wood
Started with a fairly strong pepper flavor. After a couple of weeks that has mellowed to a very nice, mild pepper note.

Bacon, a Beginning

5 Sep

I have seen a cousin posting about home-curing bacon and got interested. I like bacon. I like cooking. Seems a match made in the kitchen. He gave me the basics. I researched some more. Settled on generally following the recipe in Ruhlman’s Charcuterie. The results have been outstanding; we are hooked.

Once I had all the necessary curing ingredients (Salt, Curing Salt, Corn Sugar, Big zip-close bags), I went to a local butcher and got a pork belly. This belly had the skin on. Removing that was quite a lot of work for this first go. It will certainly take me a few times to figure out the best way and the best knife to use to do this. Or start getting the butcher to do it for me. Cracklins sound like a good thing to make, though.

Mixed the cure, coated half the belly, put in a bag, put the bag in the refrigerator, and waited. The other half went to the freezer. After about 10 days, with a bag-flip in the middle, the curing belly came out got washed, dried, and smoked. Bacon.

Field Notes:

5Sept2020
4lbs cured with just the curing mix
15Sep Smoked with hickory and apple
Very nice bacon flavor. Mary says this is the only bacon I can make (“Don’t start doing anything weird to it!”)

And how are you, Today?

1 Jun

Geez, I might have some time and some inclination to post some again.

Today begins my last active month at my current employer. I have worked with basically the same group of fine folks for the past 12 years, other than for a few months between when I was out then brought back in.

This time, I think the layoff will stick. My entire team is being cut loose along with other fairly huge changes throughout the company as it tries to adjust to changes in the mobile device markets.

The exit program being offered is very generous and affords me the chance to take some time to consider what I want to do next.

Let’s see where the path leads from here.

Pork – The Good Kind

2 Mar

The weekend before last Nelson and I ate at Pappy Red’s, a truly wonderful barbeque joint in town. At some point the talk to turned to us trying our hand at cooking some meat. Ribs. Pulled Pork. Maybe a whole pig just like we’d seen on the Anthony Bourdain show. Mmmmm. Well….maybe.

Anyway, this weekend we took a shot a pulled pork. We tried two methods of cooking Boston Butts to see which was better, whether we could even tell the difference, and whether the difference was worth the bother.

The short form was a recipe from Food magazine. A very simple and tasty recipe cooked in a Dutch oven in the stove. We used our cast iron pot. It took a total of 5 hours prep, cooking, and pulling (shredding) time. The long form was an Alton Brown recipe (our current cooking crush). This used a 10-hour brine followed by a 10-hour slow cook in a smoker.

We planned on having pulled pork Saturday and Sunday as sort of a taste testing weekend. We invited Vicki and William along for the ride with no complaints heard.

I dragged Nelson out of bed Saturday morning to help with the shopping and off we went. We stopped by Publics to get most of the stuff and check out the meat. The plan was to see what pork they had and compare it to Ferguson’s Meat Market. We ended up with a 4-pound butt from Public’s and 18-pounds of Butt from Ferguson’s. By far, the better deal was at the Meat Market, but the little 4-pound butt we snagged from Publics was on sale for just ten cents a pound more while a dollar a pound less than the others. Makes you wonder why it was on sale, but we cooked it that day so it wasn’t going to matter much. Ferguson’s is pretty amazing. In the 14 years we have lived in Cumming, knowing it was there, and with Mary shopping there sometimes, I have never been inside. I have a feeling I will be there often now.

We got the rub on the small butt with its cider-based baste and put it in the oven. While that cooked, we put the two big butts in a molasses flavored brine to soak for 10 hours. I made some sauce (Emeril) and put it in the fridge to mellow. The little pig came out of the oven and was shredded.

Then we did other stuff. Nothing to do with the kitchen and nothing went as planned so I am not going to talk about it other than to say we did not spend money, which is good for now.

Vicki, William, and the boys came over for dinner. It was good.

The big pigs came out of the brine about 9:00pm. The Alton Brown cummin-based rub went on thick and they went onto the grill about 10:00pm. We had to use the grill as our smoker because our smoker had not seen any use in a couple of years and was DOA when we tried to turn it on.

The grill worked fine after some fine tuning. It held the temperature at just a bit above 200 degrees all night long except for one exciting spell around 1:00 am when some of the drippings caught fire and spread flames over the big pig. That called for some adjustments in the grill. The foil covering the burners was replaced with some heavier and wider pans to keep the fat out of the flames.

Nelson and I set into a schedule with him checking the temp and flamage at the bottom of the hour and me checking at the top of the hour. I kept that up until about 5:00 and the decided that the meat would be good enough or someone would let me know that the porch was afire because I was sleeping for a few hours. Nelson kept checking every hour. At 9:00 I took the smaller of the butts off the grill to rest. The bigger needed a couple more hours. Nelson slept until about 11:00 because he was done, too.

Mary and the kids went to the movies in the afternoon. It snowed. I pulled the pork, and made some cornbread. Vicki, William, and the boys came over for the second round. Everyone ate. It was good.

The consensus was that they were both pretty good. The long form was the winner in taste, but no one would turn down the short form. The short form was the big winner in the taste per effort ratio, although the long form wouldn’t be so bad if we planned it so we were not cooking overnight.

Now I have pork sandwiches for lunch for the whole week and I am not complaining one tiny bit.

Long Drive Home

1 Dec

After an hour and half of driving 25mph on 4-lane wide interstate between Macon and Atlanta we decided that we had to change the route. We got off, took a potty break, got some food and gave the GPS to Nelson. He tapped on it until the routing did not use any interstate highway. It took a few tries, but eventually the GPS-lady got the idea that we really and truly wanted to get away from those roads. Then we drove for two more hours, but at the speed limit, in the dark on curvy roads in the rain listening to CD of the teen vampire romance novel until we finally got home three hours later than planned. The usual five hour trip had turned into eight.

Then Mary got dressed and left for work.

PSA from the Cook

26 Nov

If the the propane powered grill on your back deck has trouble starting when using the built-in automatic starter, be sure to SHUT OFF all of the burners and WAIT a few minutes before trying to light them with a lighter. If you light them right away the resulting fireball will engulf your head and burn off most of your eyebrows. You will be lucky to be able to get away without your entire head being aflame or your clothes catching fire.

Shhlip from the Boy’s Lips

22 Nov

Nelson and I were in car coming home from cheer practice this morning. He was tired. We pulled up to a corner that is overgrown with bushes and stuff that makes it difficult to see  whether anything is coming from that direction especially since the cross road curves away a bit there.

Nelson:  They need to cut that shi..sh..those sh..those weeds don’t they….

Me: What? What did you say? Sh Sh Sh weeds?

Nelson: (laughing now) They need to cut those shrubs .. those weeds.

Me: (laughing) Yeah, that’s what I thought you said.

Nelson:I was trying to say shrubs!

Me: Oh, I just bet that’s what was trying to come out.

Nelson: You’re going to blog this aren’t you?

Me: Oh, yeah.