Monday, 2 January, 2023 —
photography
New Year’s Day was a stellar opposite, weather-wise, from New Year’s Eve. Dry, partly cloudy skies vs. fog. Over the winter, snow geese migrate in and eat among crop stubble for a couple of months.
Snow geese fly just below a waxing gibbous moon.
Around sunset, various groups of snow geese fly over our hill. There are corn fields elsewhere on the hill they might frequent, but they’re also crossing over from New Jersey, and flying between fields in the small valleys.
Snow geese against sunset lit cummulus.
Snow geese individually fly well, but are substantially less well organized as a group than Canada geese. Canada geese have the very formal Flying Vs and, at least as I’ve seen, fly in far smaller groupings than snow geese do. Snow geese formations bend and fold frequently. They’ll change direction, sometimes circling our hill or flying opposed to a second grouping, then ending up in a conflicting, fowl mess.
But, the great thing about seeing snow geese flying are their bright white bodies set against jet black wing tips. Catch them at the right angle with low angle sun, and they’ll all appear to flash in the sky overhead.
Sunday, 1 January, 2023 —
photography
New Year’s Eve was all fog until after sunset, when rain picked up and cleared out the inversion. While flat light of solid overcast rarely makes for good photography, fog changes up available compositions because in a lot of cases, distracting elements for some compositions get hidden.
Fog really enhances some foreground vs. background separation here.
Between bare trees and fog, it’s very easy to visualize in monochrome. The dynamic range isn’t going to be full deep shadow against just short of peaking highlights. Still, I really dig the heck out of it.
This image doesn’t work nearly so well without fog.
It was not a great day for driving, but it was very nice for walking around and photographing.
Thursday, 22 September, 2022 —
transplant
Read Part I
After our day of pre-admission testing in Philadelphia, my donor flew home while Robin and I drove the 90 minutes back to Williams Township. For the rest of the week, work was a whirlwind as I transitioned from development work to focusing my time on wrapping up training and documentation. The best case scenario my transplant nephrologist presented to me was being out of work for a month. August for my team is operationally the busiest month of year, and typically my time in August focuses on addressing emergent issues.
This year, that would be different in that I had to make sure my team understood the sorts of issues that land on my plate in August and similarly, ensure they had the knowledge to confidently address any of those that came up while I was away. I work with a fantastic team, and everyone was enthusiastic about both my surgery and in filling in while I was away.
The day before surgery, we finalized packing (we packed way too much stuff), brought pets to Robin’s folks for caregiving, and drove down to Philadelphia. The drive in was splendid, driving to City Avenue from Lincoln Ave along Wissahickon Creek. It reminded me, in a way, of Rock Creek Parkway in Washington, DC.
We arrive at our hotel, unloaded the car, and brought everything to our room. This would be the last substantial lifting I’d do for weeks. My donor and their post-surgery caregiver were also staying in same hotel, so we dropped by their room for a long-overdue family reunion. The prior week’s pre-admission testing visit presented the first opportunity to see a directly-related family member I’d seen since early Dec. 2019. Knowing my kidney function numbers and how risky Covid has been with organ damage, Robin and I have been staying away from large gatherings, dining in, etc. since mid-March 2020. So, this being only the second such opportunity, and with a few more opportunities through the week, it made sense to take as much advantage as we could.
After a brief visit, it was time for all four of us to head to our respective beds since our call time was 6:45 AM the following morning. My donor and I had a pre-bed shower and anti-bacterial wipe routines to complete, too.
As I fell asleep, my thoughts focused on what surgery would look like in the morning, and the remarkable fortune that brought me to this point. I had similar drifting to sleep thoughts in the weeks leading to now.
Day 0: Wednesday, July 27
Robin and I were up early to get ourselves ready. I had a second round of anti-bacterial wipes to complete. I also had the last liquids I could have until after surgery. A little after six, we headed the few miles across North Philadelphia to Temple. Our route focused on surface streets down to Fairmont Park West, across the Schuylkill River into East Falls and on towards N. Broad Street. I used the opportunity for the last driving I’d be doing for about six weeks.
We parked and headed to the Ambulatory Care Center where I checked in. My donor was already here and we waited for our calls into the prep area. That was soon enough and a registered nurse showed me to a curtained off area with a gurney, a gown, and hospital socks. I changed out of my own clothes, into the gown and pulled a blanket onto my legs in the bed. The pre-surgical registered nurse started an IV and a medical assistant came by and took my vital signs.
Over the course of the next hour and a half, I had visits from my anesthesiologist, anesthesiology residents, my surgeon, Dr. Karhadkar, surgical residents, my donor’s transplant coordinator who’d been helping both of us in the last stages of preparation, my donor’s surgeon, and, once things were far enough along, Robin.
The general process was the medical team working through a set of process paperwork and checklists in a binder that would end up traveling with me to the operating room. I was informed again about my anesthesia treatment , what to expect for IV lines (one or two IVs, a possible central line in my neck, and an arterial line, useful for quick access to my bloodstream for short interval testing to see how well or not the transplant was going.) I was given information about the incision site, and what to generally expect on the other side of surgery. I was briefed that my incision would be closed up with staples, and there was a decent possibility I’d have a surgical drain in place. Another element of prep, going back to the pre-admission testing, was post-surgery pain management.
John, my donor’s transplant coordinator, came over to say hello. Robin and I shared some warm wishes with my donor and his caregiver, and then it was time to go.
My donor and I would be in adjoining operating rooms. The medical team had already wheeled my donor to their operating room. Now, my turn as I was pushed through the hallway to my operating room. My glasses were with my clothes, so my trip was fuzzy, but exciting. I wasn’t nervous about going into surgery. I had’t been nervous ahead of time and I wasn’t now. Getting into the operating room, what surprised me straightaway was how small it was versus what I mentally expected it to be, how filled with equipment it was, and how many people there already where. The OR nurse took the binder and read out my name, my birthdate, and my medical record number, which was cross-checked. He announced the procedure being undertaken, also cross-checked. It was somewhat formal, but I was happy for the checklist formality. Nurses leveled my gurney with the surgical table, and I shuffled off the gurney, onto the table. A nurse took my right arm perpendicular to my body, and not long after that, I was out.
Back during pre-admission testing and my surgical consultation, Dr. Di Carlo gave Robin and I a bit of a briefing about what the surgery would look like. It would take somewhere between four and six hours, even if the actual moving time was substantially less. Dr. Di Carlo would be leading the donor surgery, while I had fellow abdominal transplant team surgeons Dr. Karhadkar and Dr. Lau operating on me. As I found out later, various surgical residents would also be assisting.
Dr. Karhadkar and Dr. Lau would have me prepped and incised before Dr. Di Carlo began the nephrectomy on my donor. Dr. Di Carlo, told me the ordering minimizes the time a donor kidney is unconnected from blood supply. The nephrectomy would be through a lower abdominal incision with additional laparoscopic incisions1. My donor’s left kidney would be disconnected from arteries and veins, nerves, the lymphatic system, and the ureter. Once extracted, the medical team flushes my donor’s kidney with saline, cools it, photographs it2, and then brought into my operating room for the transplant. The goal was a transfer time of about 15 minutes.
In my operating room, the surgical team connects the donor kidney to blood supply, then connects the donor ureter to my bladder. They would also install a stent ending in my bladder to keep the ureter graft open and free from potential scar tissue. I had a Foley cather inserted to drain urine3. Once the connections were all made, Dr. Karhadkar and Dr. Lau would close me up, and then the medical team would transfer me to post-surgical recovery. The anesthesiologist wakes me up. Robin is brought in to see me (TK: check with Robin on the ordering here) and I’d then transfer to a surgical intensive care unit.
By the time Robin received updates on my surgery, the timing was closer to the six hour mark, mid-afternoon. I came to a little after that with blurry vision, without my glasses, to voices discussing how to get hold of her. I remember giving her phone number out loud as the first things I was cognizant of saying. She was brought back to see me.
I think I was back out while I was brought through the hospital and up to the surgical ICU floor. My overriding memory of that early time getting into the ICU room is shivering as I was transferred from a gurney into bed. The RN brought in a warmer and, my memory is fuzzy here, I think additional blankets.
Not long after I’d been in the room, the medical team came in and said the initial post-surgery labwork already looked good. My donor’s kidney, my new kidney, was already producing urine and filtering blood. The pretty crappy results like my creatinine and glutamine filtration rate were showing marked improvement just in a couple of hours. This fortitous result demonstrated a key benefit of getting a preemptive living donor transplant. Deceased donor kidney donations can be “sleepy”, and require post-transplant dialysis before they wake up. My initial results looked like that would not be the case with my transplant. Dinner was due to arrive——chicken broth, fruit-flavored gelatin, some water, and apple juice if I recall——and the surgical team cleared me to have solid food, which was a pleasant surprise. Not having eaten since 10 or 11 pm the night before, two dinners was a luxury.
Robin shared some initial messages and photos with family and friends, letting them know surgery was a success. Thankfully, I was all smiles at this point with the initial post-surgery shivers having subsided.
Not long after I’d been brought to my ICU room. Tired, but smiling.
Everything was thumbs up.
At this point, I had an IV line, the arterial line, the central line in my neck, EKG monitoring, pulse oxygenation monitoring, and the Foley, which drained to a large, graduated container. The RN gave a brief orientation on the time-based morphine pain pump hooked into my IV. I had yet to feel any meaningful discomfort from the surgery itself.
Visiting hours wrapped up about 8 pm, and Robin headed back to the hotel with my donor’s caregiver. I read a bit, then tried my best to sleep. As I would come to find out, sleep in a hospital is a rare and precious quantity.
My IV tree, pumps and vitals monitoring.
In Part III, I’ll cover more of the surgical recovery through going home. Thanks for reading.
Wednesday, 24 August, 2022 —
transplant
Back on Wednesday, July 27, 2022, I became a living donor kidney recipient. As I finish editing this, I am four weeks post-transplant. Transplant surgery was at Temple University Hospital in Philadelphia. I was hospitalized through Saturday afternoon, July 30th. We’ve been back home in Williams Township, PA, near Easton, PA after a couple of out-patient follow-up immunosuppression infusion sessions.
Since then, I’ve been getting follow-up care with the St. Luke’s Hospital system in the Lehigh Valley, as part of Temple and St. Luke’s transplant partnership. Today, I was back at Temple for the first time since August 3 for stent removal.
Everything has gone tremendously well, and I am extraordinarily lucky to be here. My surgical recovery is going well. I am completely off of pain meds and, after day three post-surgery, apart from the IV steroids delivered as part of four IV immunosuppression infusions, the only thing I had been taking periodically was Tylenol.
Because I had not talked about this other than occasionally and obliquely on Twitter, it’s likely this is surprising news. I’ll explain how I got here. Part II will describe the surgery and recovery separately.
My transplant was preemptive. I have a genetic condition called polycystic kidney disease where cysts grow on my two natal kidneys and reduce their function over time. After a surprise PKD diagnosis within my immediate family prompted me to discuss PKD with my primary care physician, he diagnosed me with Autosomal Dominant PKD. A combination of bloodwork and a kidney ultrasound,showing the presence of cysts, were the foundation for diagnosis.
The oddball thing about PKD is that it is a slow progressing disease. Unlike my understanding of folks with more general Chronic Kidney Disease, I’ve never consistently felt low energy or otherwise off. My appetite’s been good, I’ve been able to maintain a good exercise regimen. In general, apart from what my periodic labwork was informing my nephrologist, I wouldn’t know or have guessed my kidneys were slowly failing. I’ll speak more about the specifics of PKD separately.
A new primary care physician referred me to a nephrologist back in the 2017/2018 time frame, primarily because my lab values had progressed beyond where my physician felt he was comfortable treating me as a generalist. Nephrologists are specialists in kidney function, managing various forms of kidney disease. I met with my nephrologist every four to six months.
Eventually, in fall of 2019, my kidney function tested below 20 percent, the threshold for transplant listing evaluation. It’s also around that point that nephrologists will get more serious about contingencies and discussing dialysis. We were living in Raleigh, NC at the time, and my nephrologist referred me to UNC Hospital in Chapel Hill for transplant evaluation. I also completed dialysis orientation at a dialysis center, but did not get a surgical referral for a dialysis catheter.
Transplant evaluation at UNC took place over the course of a couple of intensive visits and some local to Raleigh with lots of imaging (x-rays, CT scans, MRI), and blood work. My results looked good and I was accepted for transplant listing around April of 2020. Around the same time, Robin and I had decided to move to Pennsylvania to be closer to her family. My PKD was as managed as it could be. I was also on an experimental medication, called Tolvaptan, or Jynarque, intended to slow the progression of PKD. Ultimately, my kidney function continued to decline and in late Fall 2020, my prescription insurance company informed me and the specialty pharmacy dispensing the medication to me that they would no longer pay for the drug on my behalf since I no longer met the experimental criteria for the medication.
After the move to Pennsylvania, my NC nephrologist referred me into Temple University Hospital’s transplant program. I also started seeing an Easton, PA-based nephrologist at St. Luke’s. Thankfully, a lot of the medical imaging from UNC was transferrable to Temple and I was actively listed with Temple in June 2021. Multiple listings are allowed, and if you change where you are primarily listed, you can shift your waiting time credit with United Network for Organ Sharing from one transplant center to another. We did that, and that essentially bought me 15 months of credited wait time.
The typical wait for a deceased donor kidney, which is the majority of US kidney transplants is between 3 to 5 years, depending on blood type and listing region. Some transplant candidates get transplants in far shorter amounts of time, but, those are rare circumstances. In my case, there wasn’t an immediate need for transplant since my nephrologist and I agreed that I didn’t need dialysis.
In Summer of 2021, my kidney values were getting to a point where it was time to get serious about soliciting for a living donor. Dialysis wasn’t imminent, but the possibility of needing it wasn’t remote, either. With Robin’s help, I drafted a note to ask family, then friends, if anyone would consider making a living donation when the time was right. But, in a shock, even before I could ask, a member of my family preemptively contacted me to let me know they were willing to be a living donor.
Fall 2021 through to February 2022 was time my family member spent getting screened according to Temple University Hospital’s Living Donor program, but remotely at a qualified hospital close to their city of residence in the Midwest. Thankfully, they qualified to donate and we were identified as a compatible match.
The next piece of the puzzle was determining when to transplant. My transplant nephrologist and I talked about when transplant would be appropriate. At the same time, my donor’s life circumstance were such that there were two optimal times of year for them to donate in consideration of family obligations and care assistance during surgery and recovery. Between the medical considerations and my donor’s circumstances, we determined that the end of July would be an optimal time for preemptive transplant. In March 2022, we formally scheduled surgery, and the process was essentially locked in. At work, I informed my boss and team in early April.
Everything got a lot more real, very quickly. Transplant evaluation and listing were concrete, certainly, but the prospect of major surgery still was very abstract to me. Now, it no longer was.
My acting transplant nurse coordinator at Temple answered tons of questions about the lead-in to surgery and what I could expect in terms of recovery after transplant. Over the course of time between April and early July, I met with my regular nephrologist, my transplant nephrologist, met with a new primary care physician, updated CT scans, echocardiograms, and had a ton of bloodwork done. In the support angles of things, I met with a social worker, transplant dietician, and we made plans with work and family for surgery, recovery, time off from work, making sure our pets were cared for while we were out-of-town, etc.
At work, from April when I informed my team to the Monday before surgery, I kept as much of my normal schedule as I could around sometimes last minute medical appointments. In terms of what I was working on, as my surgery date approached, it became focused on handing off in-flight projects to the rest of my team, and spending several training sessions talking through areas of responsibility I primarily handle on the team.
My donor flew into town July 19 and we drove down to Philadelphia for pre-surgery labwork, meeting with the lead surgeon, getting questions answered by the transplant team, and going through pre-admission testing. Pre-admission testing was satisfying the surgical staff with yet more bloodwork, and, if necessary, any additional testing they wanted to have on hand before surgery. In my case, it was one more EKG. A full morning into early afternoon shuttling around the hospital. Afterward, we drove down to the John Heinz National Wildlife Refugee, hiked a bit, then dropped my donor back off at the airport to return home.
In Part II, I talk about the day of surgery, my memory of going in and coming out of surgery, and landing in the surgical ICU. Part III, will cover my immediate post-surgery recovery. I’ll have other transplant related posts over the coming weeks and months, too. This is nearly 1,500 words! Thanks for reading and thank you for your love and support.
Sunday, 7 August, 2022 —
software
Patrik The Dev, on Twitter:
(W)hat’s your reasoning for PHP? The industry is generally moving away from it (except huge existing codebases) so I wanted to hear your thoughts
Marco Arment on Twitter:
PHP has ALWAYS lived up to its role in my stack as the fast, conservative, ubiquitous platform that just works and needs no server babysitting.
PHP lets me sleep at night, spend time with my family, or go on vacation without worrying that it’ll fail.
It has never failed me.
If your codebase works for you, there are no benefits to trying to rewrite it in a new language or framework.
Scaling horizontally indefinitely would be less expensive than rewriting.
The web app side of the industry has had, for multiple years, a tendency toward rewriting software once a language or framework becomes less popular. Meaningfully, it’s fairer to say, “when a language or framework becomes less meteorically popular.”
A memorable example were teams abandoning Rails applications and reworking them in NodeJS. I think a lot of the growth of front-end frameworks in the last 10 years has similarly encouraged chasing popularity instead of identifying and sticking with something that works.
I started my software career in 2000 and over the past 22 years, I’ve been part of a lot of rewrite projects. Only rarely have any of these projects provided a benefit to the team or organization at large. More frequently, the rewrites were an expensive distraction from operating and enhancing currently working (and generally stable and profitable) software.
There are conditions where rewrites make sense. But, they’re less rewriting the application and more refactoring specific parts of the application to something else. Would I rewrite my Rails application to Go because “Go is more performant”? I would not. I might, however, identify some critical pieces of expensive processing with a well-defined scope that would benefit from a substantial speed increase and that particular piece, I might rewrite. More likely, I would examine my present language and framework for missed opportunities for performance optimization first and then, and only then, would I consider the value of a rewrite.
Again, rewrites are expensive distractions and only in vanishingly rare circumstances are they worthwhile. Refactoring and performance work, however, has higher utility, better odds, and accordingly better payouts.
In summation: Favor refactoring within your application’s existing language and framework before you consider rewriting parts of the application in new languages and frameworks. Favor rewriting select parts of the application over rewriting the application wholesale.