Setting java aliases with zshell on Mac

When I’m working on different versions of Java, I set up a bunch of aliases so I can run commands quickly and compare differences. I recently upgraded my Mac and accepted the default shell as zshell instead of bash. (This change was made a long time ago but I didn’t upgrade for a long time because I didn’t want to incur the risk of being without my computer when everything was closed for the pandemic.)

Since I needed to move this from .bash_profile to .zshenv, I took the opportunity to shed a lot of them. I now have just Java 11 and Java 17 that I am using for comparisons. (LTS to LTS).

My .zshenv now contains this. (Yes, I know I should have patched Java 11, but alas.) I ran “source .zshenv” and am good to go.

Now I can run java11 JeanneTest.java and java17 JeanneTest.java to easily compare differences.

alias javac17=/Library/Java/JavaVirtualMachines/jdk-17-ea.jdk/Contents/Home/bin/javac
alias java17=/Library/Java/JavaVirtualMachines/jdk-17-ea.jdk/Contents/Home/bin/java
alias jar17=/Library/Java/JavaVirtualMachines/jdk-17-ea.jdk/Contents/Home/bin/jar
alias javac11=/Library/Java/JavaVirtualMachines/jdk-11.0.11.jdk/Contents/Home/bin/javac
alias java11=/Library/Java/JavaVirtualMachines/jdk-11.0.11.jdk/Contents/Home/bin/java
alias jar11=/Library/Java/JavaVirtualMachines/jdk-11.0.11.jdk/Contents/Home/bin/jar
alias jshell11=/Library/Java/JavaVirtualMachines/jdk-11.0..jdk/Contents/Home/bin/jshell
alias jdeps11=/Library/Java/JavaVirtualMachines/jdk-11.0.11.jdk/Contents/Home/bin/jdeps
alias jmod11=/Library/Java/JavaVirtualMachines/jdk-11.0.11.jdk/Contents/Home/bin/jmod

export JAVA_HOME="/Library/Java/JavaVirtualMachines/jdk-17-ea.jdk/Contents/Home"

our first toastmasters post-pandemic hybrid meeting

Before the pandemic, our club mainly met over a video conference between our NY and NJ office. Everyone was in one of those rooms. (We had a couple other formats, but they were rare.)

Shortly before the pandemic, we talked about adding a phone option for people who would be telecommuting that day. But we shut down too fast for that to grow legs.

Last week, we had our first post-pandemic hybrid meeting. We used the same WebEx link that we’ve been using for the last 16 months. We also had a meeting room in the invite for anyone who happened to be onsite. (We are doing a pilot where a small number of people are onsite.

How it went

  • We had three people in the meeting room. (spread out). We were all visible in the pane of the WebEx representing the room.
  • We had about a dozen people in their homes.
  • Our club mascot (stuffed animal) also attended the meeting in person. He was super excited to be there after spending all that time alone in a file cabinet :).
  • When we were doing pure virtual meetings, we did introductions by having the Toastmaster say each person’s name (based n the participant list) and that person saying their group (we are a corporate club) and a quick fact. With hybrid, the Toastmaster had the people in the room go in a circle to introduce themselves and then did it based on the participant list. This approach is not ideal for a team meeting because it makes the in person participants seem more “central”, but I think it is ok for a Toastmasters meeting.
  • When we did introductions, I brought the mascot right up to the camera and had him wave so everyone could get a good view. (Anyone who joined during the pandemic was seeing the mascot for the first time.)
  • It so happened that one of the speakers (me) was in the physical room along with the Toastmaster. We also had a table topics speaker in the room.
  • We did not shake hands or touch in any way. (We had stopped doing that a little before we went virtual only)

What did I learn about speaking at a hybrid meeting

First, I learned that public speaking is like riding a bike. It came right back to me. Phew.

Additionally, I treated the conference room webcam as if it was a participant in the room. I stood in a place where I was clearly visible to the webcam. (Which was not the head of the table because it is a very long room and we don’t have zoom working yet.) I also made eye contact with the two people and the webcam. So I treated the webcam as if it were an actual person in the room.

What do I think will happen in the future

I think we will have more than three people in the room. But I think we will stay hybrid forever. The odds of everyone who wants to be in Toastmasters being in the office the day we meet seem low. And public speaking at work will involve a mix of in person and remote. So good to practice it.

We used to have Speakouts on Mondays so that people who weren’t in the office on Thursdays had an opportunity to speak. I think we will go back to something similar. Except rather than it always being Monday, have the day rotate. That way members who are only in the office once a week will still get to practice speaking in person.

I also think we will encourage members to meet in small groups at each give a speech. This will introduce more flexibility in speaking in person days they are in the office. It will also accommodate those who don’t feel comfortable being in a room with a lot of people for health reasons. Three people in a room is less risk than “whomever shows up for Toastmasters that day.” Notice I said health reasons. If someone merely doesn’t feel comfortable speaking in front of a group, that’s something to get over in Toastmasters!

what i learned about working from home from covid

Disclaimer: This is not an anti-WFH post. I think it’s great that many people do well working from home. I hope those people can continue to do so as much as they want indefinitely. At this point in my life, it is not for me.

Background

I had a lot of trouble working form home during COVID. There were three moments when things made a jump for getting better.

  • Right before Memorial Day when I made concrete plans to see a friend. (For the first time in 11 weeks)
  • “Fully vaccinated” day – I went to see The Office (off-broadway). There weren’t a lot of people there because of social distancing, but it was a nice way to celebrate.
  • The day I got accepted for the pilot at work where I will be able to start working from the office the middle of this month.

So on to the learnings

I have a finite amount of ability to focus at home per day/week

This one really hurt me. I learned that I only have so much energy to do work from home. And it’s a good amount less than I need to do my job to the best of my ability. I was puzzled for months before I properly understood this. After all, I’ve written books from home. (Well partially from home – I outline/proofread on the subway, at parks, at robotics meetings, etc). It took a long time to stop getting super frustrated that I couldn’t perform as well at home as in the office.

Additionally, there’s a quality of life element. Since I was using almost all my ability to focus on working from home, I didn’t have much left over. Which meant I couldn’t do many personal projects that give me joy. And on the occasions where I did use that energy for personal things (ex: moderating the NYJavaSig’s 25th anniversary panel (see YouTube video), it impacted my work for a day or two thereafter.

I’ve always known I get distracted at home. With the book, I can compensate my setting a Pomodoro timer. But for work, I have too much interaction with other people for that to be effective.

Work environment can create an upper bound on productivity

We are computer people, so all we need is a laptop, right? Of course not. I can see other programmers rolling their eyes. In the office, I have two monitors and an l shaped desk so I can have stuff in easy reach and in front of me. On that desk, I have various papers including notes on what i am doing and stray thoughts I have. At home, I have

  • a laptop as my primary screen (which is smaller than the monitor I use at work)
  • a second monitor – sorta – it’s about two feet away. Which is good for seeing people on video, not for working.
  • a place to put papers on the side – I can’t read them but at least I can reach them
  • my lap – yes, when I run the sprint planning meeting, my notes are on my lap

I’m an optimizer. If I can use a keyboard shortcut to save 5 seconds and use it 100 times a week, I’m all over that. My work environment at home is the opposite of optimized. So I leak time. Additionally, not having stuff I can see at a glance slows me down as it forces me to have more things in my head or work slower.

The place on my work on my book is better. My second screen is only six inches away so I can read. But it doesn’t matter there because again – less going on.

Spatial memory and separation of work/life

I’ve always known that I had some level of spatial memory. Having my work at home (in a studio apartment) means I see it constantly. And I see my home stuff while I’m working. This makes it hard to de-stress. And to stop thinking about work. I’m good about having my work laptop off when it isn’t worktime. But just because it is off doesn’t mean I can forget about it.

Early in the pandemic, I thought about using my personal laptop area for work and moving (a lot) of things every day. I’m glad I decided against it. As bad as it associating a spot in my apartment with work, having that be the spot I relax on my computer would be even worse.

Working form home has tradeoffs. For some people (especially those with more space), it is worth giving up space (or even a room) to avoid a commute. By contrast, taking the subway and reading gave me time to focus on reading and separate things.

Fun fact: Scott and I did a brief video chat in the middle of the day once to test something and he said “I think work Jeanne is coming over to tap you on the shoulder.” I’m really good about separating my focus and I miss that.

Reactions can be like earthquakes

When something bad/stressful happens, a good technique is to take a breath or pause or something to not react immediately. There were a lot of times at home that I was so frustrated and stressed that I couldn’t do it and my emotions reacted before my brain could. When this happened, it was like an earthquake. I had a strong initial reaction. But then that or other things would set me off periodically thoughout the day. It was like my mind was broken and unstable.

Open ended’ness is hard

A lot of the problems I had were not knowing when things would get better. So i kept pre-worrying. Shortly before I got accepted for the summer pilot, we started reading about the Delta variant and I started freaking about having to WFH full time for *another* winter.

Compensating only helps so much

There are certain type of work that I minimized of actively avoided. (My teammates knew). I just couldn’t get myself to do it from home. And I felt about about that which created a negative feedback loop. And even with that, I till had problems.

Why I did three months of book errata checking on CodeRanch in one weekend

About three months ago, my team got a high visibility and time critical project. Since it needed to be done quickly and I’m a fast programmer, I’m one of the (4 or so) people who focused on it. I worked 9 hours days during much of that project. [Normally I work closer to 8. I did work 9 for years when I got every other Friday off in exchange for doing so.] In hindsight, this was a poor choice because I didn’t have enough energy/focus for 8 hours WFH.

While I managed to find the energy to check in periodically on CodeRanch, that fell to zero during that period. After that I went on vacation and caught up on life from being on vacation. But I still didn’t go back to checking in on the errata. It was too overwhelming from having two months of data there.

This weekend I was able to do it because it is a three day weekend. I know I have tomorrow to recover energy/focus. And I know I only have to work four more days at home before I go back to the office. That’s a short enough time that I can “defer” some of the harder things til then.

So why did I share this?

As more companys are thinking about plans for “returning to the office”, there is a lot on line about how people are happy at home, want to continue to work from home, will quit if they can’t work from home, etc.

And again, I’m not suggesting those people go into the office. (See my blog post about the location of teams). However, it is just as important to recognize that some people want to go into the office. It doesn’t mean those people are broken. It doesn’t mean there is something wrong with them (and yes, I’ve been told to my face that I’m crazy for not wanting to work from home). It means that people have different needs and preferences. We should be respectful of both points of view along with the ones in between.