Given the never-ending quest to keep a toddler amused, combined with an evergreen fascination with shiny lights and microcontrollers, I built what I humbly submit as an incredibly over-engineered “busy board.” Leah dubbed it the Wonderbox, and my toddler and his cousins expressed their approval as best they can.
The parts are a smattering of favorite Adafruit products supplemented with random other parts (details below the break). Inputs and outputs are run through an RP2040 microcontroller development board programmed in CircuitPython, so as children get to an age where they might be interested in coding, the Wonderbox could be their first target.
Fifteen years ago, I was in my second year of medical school at Duke, preparing for the adventure of a lifetime: doctoral research in machine learning and medical imaging at Oxford. I started this blog as a way to keep friends back home appraised of my exploits.
Over the next several years — as I bounced back and forth between Durham, North Carolina; Oxford, England; and Baltimore, Maryland — I posted tales of travel, flying, rowing, running, app programming, and the rare work update. In addition to sharing with friends, I hoped that students considering the NIH-OxCam doctoral program would land here and get a glimpse of what life in the program could look like. I also started to call this my “nostalgia blog,” as I realized that when I grew older and my memory faded, I would return to remember youthful friends and frolics.
After finishing my DPhil and MD, I was privileged to stay on at Duke for anesthesia residency and pediatric anesthesia fellowship. This site continued as a repository of pictures and short accounts of life outside the hospital, now a bit heavier on flying airplanes and occasional travel. While I still used it to share pictures with friends and family, and sought to show that anesthesia residents have a life beyond the operating room, the purpose of the blog tilted more and more in the “I want to remember this moment” direction.
Now, I’m entering a different phase of life. I am settled in North Carolina’s Research Triangle, establishing myself as a faculty anesthesiologist at Duke, and most importantly, Leah and I are starting a family. Our son was born in January, and while the adventures will surely continue over the next many years, they will for the most part be family affairs.
I firmly believe that children deserve privacy online, including and especially as regards their parents’ online footprints. For that reason, I expect that my posting here will decrease substantially. This site isn’t going anywhere — if for no other reason, it seems my thesis template has become the de facto standard for LaTeX theses at Oxford. And I won’t hesitate to write the occasional post about a particularly fun flight, or a random technical note, or a side project gone well. But in the unlikely event you follow this blog for semi-regular life updates, do please reach out separately. We would love to catch up.
Looking for a low-key way to get away for a weekend, Leah and I set off for the Blue Ridge mountains. After stopping to pick some apples along the way, we arrived at a quaint farm house that was lovingly converted to a guest house by the grandson of the original builder and occupant. The property was lovely, from the moment we were greeted by free-roaming chickens to the sunset fire pit sessions. We made it in to Asheville for some delicious tacos, and visited quite a few overlooks and short hiking spots along the Blue Ridge parkway.
Leah and I decided to go fireworks hunting over Durham this 4th of July. The show didn’t disappoint; it seemed like every little neighborhood had some rockets going, the Durham Bulls stadium had the biggest show in Durham, and we could see the big Raleigh, Cary, and Chapel Hill shows on the horizon. Great way to celebrate Independence Day!
Our Cape Cod honeymoon, while absolutely lovely, left Leah yearning for a tropical beach. And as a pilot, I’ve always dreamed of flying to the Bahamas. At the end of fellowship, we decided to bring these ideas to fruition and make our escapade to the islands.
We flew via Jekyll Island and Fort Lauderdale to Great Exuma, where we enjoyed the quiet beach life, did some paddle boarding, and swam with sea turtles. We took a boat tour to see the famous swimming pigs and hopped a water taxi to Stocking Island to hang out at the Chat ‘n’ Chill watering hole.
After a few days in the Exumas, we flew up to Nassau, and checked in to the Grand Hyatt Baha Mar. There, we enjoyed the resort life, and I took a quick scuba diving trip. We made an “island hop” flight out to north Eleuthera Island, where we explored the town and took a ferry to the pink sand beaches of Harbour Island.
Finally, with our tropical beach needs sated and storms threatening to move in, we flew back to the States. We stopped for fuel in Fort Lauderdale and then parked with my brother in Charleston for a few days to wait out the weather before flying back home to Raleigh-Durham.
While 2020 was a dark year for the world, with the COVID-19 pandemic ravaging public life, it was also a bright one for my family. My sister forewent her planned Saturday wedding to be married with immediate family on the prior Tuesday, just before lock-downs took effect. My brother delayed his large celebration and was married in the shadow of the Duke Chapel over the summer. Leah and I, with a little more advance warning and already wanting a small outdoor ceremony, were married in August on the lawn at the Umstead hotel. It was a beautiful ceremony and celebratory evening, with our immediate families cheering us on.
For a subdued, socially distanced honeymoon, we flew up to Cape Cod (flying through New York City along the way) and stayed at a lovely house on the water. For a delightful week, we wandered the beaches (and saw some seals!), cycled the traditional bicycle built for two, and ate more than our share of lobster-based meals. After our respite from the “real world,” we flew back home, with a quick beach stop in Martha’s Vineyard.
For a quick day trip, we flew out to the Asheville Regional Airport, rented a car, and drove north. We took in the scenic views driving, and stopped along the way to take a few hikes. The most notable was Mount Mitchell State Park, the highest point east of the Mississippi River. After exploring a little bit of nature, Leah and I returned to Durham rejuvinated.
Budapest has a long and storied history, with periods under Roman, Tatar, Ottoman, and Austro-Hungarian rule before being occupied by Germany and then the Soviet Union in World War II. The history lends Budapest a resilient spirit and broad culture. During our visit, we were able to see a wide variety of the sites. Sunday, we saw the Dohány Street Synagogue and St. Stephen’s Basilica before taking a cruise along the Danube River and ending the evening at one of the ruin bars, watering holes that sprung up in derelict buildings and evolved into bohemian landmarks.
Monday, we visited Buda Castle, the historical seat of the Hungarian Kings. From there, we explored the Hospital in the Rock, a sprawling hospital complex built into cave systems under the castle. The hospital was built just before World War II, and was most notably used in the siege of Budapest at the end of the war. It was subsequently developed as a nuclear and chemical warfare bunker before being decommissioned in the 1980s and converted into a museum in the 2000s. We ended the day with a visit to the Szechenyi baths, the largest medicinal bath in Europe built on a thermal artesian well. Tuesday, we saw the Great Market Hall and spent some time in the Rudas Baths, thermal baths built under the Ottoman Empire. Wednesday, checked out of our room and climbed up Gellért Hill to the Liberty Statue, which celebrates the liberation of the city from Nazi occupation, before heading off to London.
The London activities started with Leah’s long-awaited graduation ceremony on Thursday. For the rest of the week, I got to meet the friends she worked so hard with during her master’s. Friday, we saw Waitress, one of Leah’s favorite musicals, made extra special by Sarah Bareilles’s reprisal of the lead role. Saturday, we saw a matinée showing of Dear Evan Hansen before going for a dinner cruise on the Thames. Over our lovely meal floating through the middle of London’s beautiful river skyline, I proposed to Leah, and she enthusiastically accepted! Sunday, we flew back home, graduated and engaged.
I’m currently working on a project that involves face tracking, and as a first prototype am using the built-in features in the ARKit library, Apple’s augmented reality API for iOS.
Using a device with a front-facing TrueDepth camera, an augmented reality session can be started to return quite a bit of information about faces it is tracking in an ARFaceAnchor object. One of these details is the face geometry itself, contained in the aptly named ARFaceGeometry object. For those who care about face shape landmarks, the 1220 individual vertices (points) can provide a wealth of information. However, there is little to no published information on which vertex corresponds to what point on the face.
While keeping in mind that this means these vertices could easily change in future versions of ARKit, I’ve taken the liberty of labeling points in case it is helpful for a future developer.
Update: A few people have asked how I generated this map. Details below.