Archives

Blog index

Blog

  • Week of June 12, 2023


    Happy Father’s Day! I’m feeling extra thankful for our little family today. It has been a tough week with Charlie being home from daycare most of the week while we both had to work (all three of us were frustrated and no one had a good time or got enough work/play in), but it has been a nice weekend and I’m looking forward to the family outing we have planned this afternoon.

    Three times this week when Charlie is flopping around and having trouble getting comfortable at bedtime, he has crawled into my arms and fallen asleep. It melts my heart every time.

    Charlie has started to sing to himself recently, and gets excited when we recognize the song and join in. The past couple days it has been Twinkle Twinkle Little Star. Also on the music front, he has been playing music with Amanda on a small music set he has. He stays in beat on the drum while Amanda plays Wheels on the Bus on the xylophone! Thank goodness he got her musical abilities instead of mine. I can’t even keep a beat.

    Charlie has also started to address us directly by saying “Momma” or “Dada” or “Mommy” or “Daddy” and then what he wanted to say. That is new in the last week or so.

    He’s requested going on a walk every day (sometimes multiple), which we are more than happy to oblige. We follow his lead, which usually means going to the end of the street and into the woods, where he likes to pick up and throw rocks. We saw a rabbit on Tuesday and he has stopped every day since at the same spot to look for it again. He brought his first rock home on Saturday. That has to be a little boy milestone, right? I know I had a rock collection. Still do.


    The garden is looking good! Potatoes on the left and tomatoes/tomatillos on the right. No photos of the other garden bed this week, but plenty of peas and kale to pick.


    I went to an art show here in Peekskill on Saturday at the new Center for Machine Arts, started by Bre Pettis. The focus is creating art with machines, and the majority used pen plotters, though one artist used a metal CNC.

    I was most interested in the generative landscapes that Leo McElroy made (I made some generative art last year as well, so I enjoyed chatting with him about his process) and some studies of natural leaf patterns by Jenn Karson, who I think did a great job showing her process and some of her experiments along the way. She also showed some of the same pieces in different mediums, and sometimes inverted (milling the lines vs empty space on aluminum).

    I chatted with Jenn about what it might take to do some of the same work on wood from the same tree species as the leaves, and if done on greenwood what kind of interesting elements the natural drying process would add to the piece.

    Check out Jenn Karson’s Damaged Leaf Dataset, it is pretty cool.

    There is another show on July 22 with a slightly different cohort.

    Going to the show made me start thinking about how I can create art again. One idea I had is to make an ongoing series of bookmarks for places I visit. I love picking up bookmarks from local bookstores, so why not make some of my own? I’ll need to cut some cardstock and leave it in my backpack with some pens.

    Also, perhaps I can start by making some for Peekskill. Perhaps an outline of this section of the Hudson River (I bet I can turn the GIS data from naturalearthdata.com into an SVG that is plottable or cuttable), or maybe a sketch of the view from the waterfront.


    WordCamp Europe happened last weekend and I got a bunch of photos from friends who attended, letting me know that one of my pieces from the Museum of Block Art was included as a postcard for the attendees. Each person got a pack of all of the same kind and was encouraged to trade with others to get a full set. I love that.


    Two meals that turned out better than expected this week:

    1. Whole grilled chicken. I spatchcocked it, then grilled it over direct heat on each side for a little bit, moved it to indirect heat, and finished over direct heat again. We ate it with sauteed chard with garlic and lemon, and orzo rice. Again, I’m pleased with the grill we got last month. The spatchcocked chickens I tried on the old one got burnt to a char from all the flareups and it was too small to set up two zones (direct and indirect heat).
    2. Rigatoni with sausage and kale. The tomato paste/wine/onion/garlic/fennel seed/cream sauce was quick and easy to make. We all loved it. One to remember.

    It is strawberry season. We’ve been getting fruit every week from local farms (as well as our regular veggie CSA), so we’ve been eating a lot of strawberries the last two weeks. some made it into this quick cobbler.


    Off to try pizza at Hudson & Packard and walk across the Hudson with Amanda and Charlie 👋

  • Week of June 5, 2023


    The weather this week was weird. We had a hail storm on Tuesday, then smokey, hazy orange skies on Wednesday and Thursday as smoke from the Canadian wildfires moved in. I didn’t take photos of the smoke, but you probably saw them on the news.


    Thursday night Charlie refused to go to bed without Bunny, who we had not seen for a week. So we turned the house and car upside down looking for Bunny, who I eventually found between the covers at the foot of the bed, where we tuck the covers under the mattress. Bunny had made a little warren down there.


    Saturday morning we had over some parents with kids around Charlie’s age to play and have breakfast in the backyard. We made pancakes out there on the Blackstone and generally had a good time.

    Though after two out of the three families left, Charlie finally opened up. He seems to do better with small groups, so going forward we’ll probably prioritize playdates with just one family at a time.


    It is interesting seeing kids a couple months older than Charlie. It is amazing how much language use and independent mobility (like stairs!) spikes around the 2 year mark. A couple months ago we thought that stuff was still far off for Charlie, but we notice weekly improvements in both areas now. It is so cool watching him grow.


    I spent some time Sunday morning doing yard work (mowing, mending a hole in the mower’s grass collecting bag, watering and fertilizing the plants, pulling out some poison ivy that popped up), and moving some things out of the basement and garage to post on the local Buy Nothing group, and cleaning up two used window air conditioners a friend gave us. Amanda and Charlie played with the hose and washed some stuff outside. Charlie absolutely LOVES playing with the hose.


    Scenes from the garden. Charlie loves helping water the plants. Purple peas are starting to come in.


    Sometimes Charlie likes wearing his cowboy hat around 🤠


    I finished Critical Mass by Daniel Suarez yesterday and started Golden Son by Pierce Brown.


    I started my weekly veggie CSA ideas posts again over at cooklikechuck.com. Here is the first one:

  • Weekly Veggie CSA Ideas Posts


    Back in 2017 and 2018 I wrote about how I planned to use the veggies in our weekly CSA. Writing these weekly posts helped me come up with dinner plans and helped me get out of ruts of repeatedly making the same things, so I’m doing it again this year.

    You can follow along over at CookLikeChuck.com.

    Here is the first week:

  • Weeks of May 22 & 29, 2023


    I prioritized spending time with family and friends last weekend, so I am doing a combined post this week.

    My parents came to visit over Memorial Day weekend, and it was great to spend time with them. The weather was beautiful and we spent a lot of time outside. We got the tomatoes and tomatillos planted in the garden, added more dirt to the potatoes (which are doing great!), washed and folded up a tarp that I’ve been neglecting, and changed the spigot on our bathtub. We didn’t work the whole time… a decent amount of time was spent on the deck, which we just got some new furniture for: A cantilever umbrella, a couch, and some chairs. (We got a rug this week, but no photos of that yet.) We made some pizza and tiki drinks one night, and another they watched Charlie while Amanda and I went out on a date.


    One thing I forgot in the last post: Charlie recapped his day during bedtime. Amanda heard him saying the words he knows for things he did that day, like he was recapping the day’s events. Pizza, Carly, Cupcake, Lella, Drive. We went to a birthday party for Carly, had pizza, ate a cupcake, played with Lianella, and pretended to drive on an arcade game. He amazes us every day.

    Today’s amazement: He started washing one of his bathtoys (a seal), just like I was washing him. Then when it was time to get out of the tub he started handing me his toys so I could put them away, which he hasn’t done before (nor have we asked him to.)

    This week Charlie has been saying Thank You (without being asked!) to people when they help him with things. It is very sweet. It gets our hearts every time.

    Charlie has been a little more independent on the climbing wall lately. He doesn’t want help placing his feet.

    Sometimes you feel more like a parent (taking care of the kid, making sure they are fed and safe, dealing with their tantrums) and other times you feel more like a Dad (the two of you having fun together, they are being very lovey and sweet, and things are just generally going better). This week I felt more like a Dad. Lots of walks, giggles, sweet snuggly reading time, fun dinners out while Mom traveled for work. Charlie jamming to music while eating pizza at Baci’s Woodfired Wednesday, the pure joy on his face when having ice cream at the Blue Pig, sitting on the front porch and giggling together. What a wonderful feeling! ♥️

    We had one of Charlie’s classmates and her parents over for a play date and dinner on Saturday. They played well together, shared better than we expected, had conversations together that the grown-ups didn’t understand, and both mentioned each other’s names the next day. The cardboard house made out of the huge box the patio furniture came in and the big yoga ball were the two hits of the day. It was great to see Charlie playing with a friend. We are actively making plans to hang out again.


    I’ve been listening to The Hold Steady a lot lately. Looks like they are having a cool festival celebrating 20 years of being a band up at Arrowood Farms, a place we really like. I’m not going, but I expect it to be a great time for those who do.


    Our method for getting marginally more vegetables into our diet: Every salad has lots of broccoli slaw mix added, which in addition to nutrition gives it a nice crunch component. And our self-imposed rule is that we have to finish our salad before getting seconds on the main dish. (That rule doesn’t apply to Charlie… it is challenging enough to get him to eat as it is.)

    The veggie shares start this coming week, which we are very much looking forward to!


    Charlie loves playing with the hose.


    I’m pleased with the garden and yard plants in general this year. The peas are blooming right now, the potatoes are growing quickly, and the spinach and kale are putting out lots of leaves. After two years of trying to get some perennials to grow on the side of our house from seed, we finally have some Rudbeckias that are taking off. Looking forward to the blooms brightening up that side of the house.

    An update to the wick irrigation for the tomatoes this year: I buried the buckets and make them stick out of the dirt only an inch or so to minimize the length of rope that is out of the water or dirt so it has less of an opportunity to dry out. So far so good with the couple of 90+F days we’ve had.

    Not all worked out, though. The basil, rosemary, and peppers I planted either didn’t come up or died. Most of the cilantro and spinach I planted didn’t come up either–only a few plants sprouted. So we went to the local greenhouse today and bought some basil, rosemary, jalapenos, and parsley to plant.

    The Mock Orange is blooming right now, and so are the Rose campion.

    Mock Orange plant in bloom

    My weather station showed a high of 104F on Friday. I am certain this was inaccurate, because I was outside at the time and I think it was a lot closer to 92-94F. The sun has been very intense though, so maybe the whole unit got overheated. 🤷‍♂️


    I’ve been pretty much off of social media for the past month and a half, and that has felt pretty good. I did log on to Instagram today to post a story of Charlie and the hose, but I’ll probably delete the app off of my phone again soon. Even new things like getting an invite to Bluesky haven’t been able to pull me back into social media. I’ve also been neglecting the internet in general. My unread feeds backlog is so long that I might have to declare bankruptcy.

    Is it the time of year? Is it wanting to spend as much time as I can with Charlie? Disillusionment? Probably all of the above.

    When I am on my phone, I’ve been reading books in the Kindle app, which is something I never thought I’d do. Nothing beats the convenience of always having your phone on you, though.

    I’m currently reading Critical Mass by Daniel Suarez, book two of the Delta-v series.

    I think I want to start Ada Palmer’s Terra Ignota series next. She has a fantastic blog, by the way.

    This time last year I had just started the Baroque Cycle series. Right now I’m on book 7 of 8. Still listening while I mow the lawn or do the dishes.

  • Week of May 15, 2023


    This felt like a pretty long week, though it is the same length as all the others. Amanda was out of town for a few days and Charlie got sick while she was gone, so I needed to take off work a couple days to take him to the doctor and care for him. Poor little guy has some pretty noticeable chest congestion and a bad cough. He needed to be put on antibiotics. To make things worse, it seems like the rest of his remaining teeth are all coming in at once, so his mouth is sore. Both of those things affect his eating and sleeping, so it has been a tough week for Charlie, and a tiring one for his parents. Also, my allergies are at peak intensity right now as tree and grass pollen fill the air.

    When he was feeling well, Charlie started playing on his own in the backyard with us up on the deck. A first! It is really cool to watch him do things on his own and explore.

    I love when the Black Locust trees are in bloom. So beautiful.

    We had some friends, Chris and Meg (the same ones we met in Poughkeepsie last month) come stay with us on Friday night. We made kabobs on the grill, two of our favorite tiki drinks, and hung out for the evening, and made breakfast the next morning. Unfortunately our plans for the next day were sacked due to the rain (it was beautiful all week and the next day, but Saturday was cold and soggy!), so they went home a bit earlier than originally planned. We’ll try again on a day with better weather.

    I mentioned last week that we got a new grill (Weber Spirit II E-310). I’m very happy with it! The old one had thin metal grates and was prone to flare-ups, but this one has thick enameled cast iron grates, which hold and radiate the heat for much more even cooking. No flare-ups so far, either!

    Amanda and I took Charlie to a birthday party at an indoor kids play area in Danbury, CT, and he had a great time once he opened up and got used to lots of other kids running around. Someone he gets along with very well with at daycare was there, so that helped him adjust. We enjoyed chatting with her parents, so I see some play dates in the future.


    Currently reading Delta-v by Daniel Suarez on my Kindle. I’m also listening to the seventh book in the Baroque Cycle series by Neal Stephenson.

    As soon as I can get to the bookstore, I’ll probably pick up the next book in the Red Rising series by Pierce Brown. I enjoyed the first one, which I finished last weekend.

    I breezed through Dark Matter by Blake Crouch this week, but it was a bit dark for me to read this week. It didn’t help that the main character’s son’s name is Charlie.


    Weather highs and lows for the week:


    High
    LowAverage
    Temperature83.8 °F33.8 °F59.2 °F
    Dew Point63.3 °F20.8 °F42.1 °F
    Humidity99 %16 %59 %
    Precipitation0.06 in
    Wind Speed11.6 mph0.0 mph0.4 mph
    Wind Gust17.7 mph0.9 mph
    Pressure30.61 in29.77 in

    I enjoyed looking back and seeing what we did at this time last year. I was still on paternity leave then and we were trying to get a few things in before I had to go back to work: More woods explorations, West Taghkanic Diner, the Sol LeWitt exhibit at Williams College, helping Jon do some timber framing. It was also the start of our renewed tiki exploration, and I’m happy to report that we are are better versed, have cooler drinkware, and a wide variety of rums on-hand.


    I need to get back to my practice of writing down three things I’m thankful for every day. It makes a noticeable difference in my outlook.


    I have a ragù slow cooking on the stove for dinner. I rarely have the time to prep something like that and let it simmer all afternoon, so I’m looking forward to it. 👋

  • Week of May 8, 2023


    Tuesday we were up and out early because Amanda had to go their NYC office, so Charlie and I ate breakfast outside and watched the trains, walked by the waterfront, and played at the playground before daycare. That was nice.

    Saturday morning we did the same thing as a family, and that was great too.

    We like doing what we call “Charlie walks.” Within reason, he chooses where to go and we follow him. We like seeing him choose and explore. Just because we don’t know the decision-making process doesn’t mean there isn’t one.


    Woodfired Wednesdays are back at Pizzeria Baci.


    I sharpened my mower blades on Friday. Charlie is fascinated by how things work, so he squatted down right beside me while I was taking the blade off the mower and watched my every move. Reminds me of me watching my Dad work on things.


    Charlie and his wheelbarrow.

    Charlie and his wheelbarrow.


    My friend Bob Ewing mentioned me in an article last week. It has been a while, so I scheduled a call to catch up with him next week.


    We are working on re-outfitting our deck. We spend so much time out there in the summer that we want it to be comfortable and nice. Currently searching for a good outdoor rug, an offset tiltable umbrella, and some furniture. We just got a new grill to replace the old small one that the previous owners left here and we’ve been using since. Looking forward to lots of outside time this summer.


    When I can get Charlie to bed on time, I love watching the bats flutter around and eat bugs at dusk 🦇


    I had an idea this week while making margaritas: The favor profile of falernum would work well with the tequila, lime, and Cointreau. It looks like I’m not the first person to think of that, as there is a recipe for a Californian Margarita that includes falernum. I don’t love that specific recipe, so that is something for me to work on this summer.


    Someone I met in California, when learning that I enjoy sci-fi, recommended the Red Rising series to me. I picked up the first one in the bookstore at SFO, which I just finished last night. I liked it and will probably read more of the series soon. I’m not sure I’d give it an open-ended recommendation unless I know you like dystopian space sci-fi.


    Busy next two weeks: Charlie and I are on our own for a couple days this week while Amanda travels for work, then we have visitors the next two weekends. 👋

  • Weeks of April 17-May 1


    I haven’t posted in a couple weeks. We were getting ready for a trip and then on said trip. We are home now and I’m back to my regularly scheduled blogging.

    We spent a week in California. This was Charlie’s first plane ride and he was a champ. No crying, took a decent nap on the plane, and (other than playing peekaboo and trying to hand out stickers) didn’t bother other people on the plane. Amanda packed lots of activities for him and we didn’t even need to break out the videos on the iPad.

    We’ve been talking up airplanes to Charlie all week, so he was super excited to see some in real life. Lots of excited pointing and exclaiming “Airpane!” (sic).

    First up was a wedding in Monterey. The San Carlos Cathedral is beautiful and I love that they left some sections of the original wall paintings when they remodeled. The reception was at a venue right on the bay, which was also beautiful. It was nice to catch up with some old friends at the reception.

    We stayed with our friends Marieke and Brent, who are consummate hosts. Some highlights:

    • Fresh squeezed orange juice from their orange tree every morning
    • A Sicilian-themed dinner party they hosted while we were there
    • Watching Charlie while Amanda and I were at the wedding
    • Charlie had a lot of fun climbing at their local playground
    • Charlie and Evie (Marieke and Brent’s daughter) had some classic toddler rivalry, but had some instances of sweet collaborative play.
    • Visiting the Earthbound Farm farmstand. The cinnamon rolls are wonderful.
    • Excellent food in Salinas, particularly breakfast burritos
    • Albion strawberries, a very sweet variety that doesn’t ship well, so must be consumed locally. Marieke got a text about them and rushed out the door to pick up a whole flat, and they were delicious.
    • Monterey Bay Aquarium. Charlie liked the fish and loved the aquatic birds. I liked the Mackerel and sardines.
    • Seeing Doc’s Laboratory on Cannery Row. I read Steinbeck’s novel of that name on the flight out.
    • A pastry tour of the region led by Marieke.
    • 17 Mile Drive at Pebble Beach and CA 1 to Big Sur
    • Marieke found a book, Trashy Town, that became an instant favorite for Charlie.

    Next up was visiting our friends William and Jenna in Walnut Creek, CA. Charlie had fun playing with their boys and going for a long wagon ride. They made dinner for us and we chatted into the evening, then it was off to the airport for us the next morning.

    Charlie also did well on the flight home, though the airplane novelty wasn’t there on the second go-around and he loudly protested naptime and we had to pull out the iPad to keep him busy for a while. Still, better than we expected, so we are calling it a win. He loved all of the busses around the airport.

    Charlie had an easy time adjusting to California time. He didn’t go to bed until around 9pm California time, which is midnight Eastern. He slept until 8:30 the next day and then was pretty much on California time. Coming home was a bit longer transition, but not awful. We didn’t get home until midnight, then he slept until noon the next day. We skipped our nap that day and went to bed at our normal time, and woke up at our normal time the next day.

    Back home it was time to mow, plant potatoes, clean up the yard a bit, do laundry, and grocery shop. Mostly getting our lives back together. We also visited the garden center and bought some flowers to plant: Coneflowers, Bee balm, Black-eyed Susan vines, and Lemon Slice Superbells.

  • Week of April 10, 2023


    Within the span of a week, the trees went from having no leaves to the majority having leaves! Things are looking pretty green.

    We’ve been spending a lot of time outside this week. Walks in the woods, swinging, climbing, lunches and dinners on the deck, watching the excavator and dump truck working across the street, and generally soaking up as much sun as we can.

    Charlie got to sit in a fire truck this week! We were walking downtown by the fire station and stopped to look at the trucks. The nice firefighters asked if he’d like to check one out, then let him sit in the driver’s seat and beep the horn. They also gave him a little fire helmet and a first aid kit.

    I got out to row on the Croton River Friday after work while Amanda and Charlie were having a play date with Meg and Miles.

    Charlie enjoys sitting in the boat and saying “Row Row!” like the song. I can’t wait to take him out in it this summer. We’ll start with small inland lakes at first and have some friends in other boats close by as well.

    Now that Charlie is getting better at walking on his own, we are venturing further into the woods. Some things Charlie enjoys during those walks:

    • Carrying rocks
    • Watching birds and frogs
    • Watching ants
    • Sitting by the creek
    • Running back and forth across the little wooden bridges over the creek
    • Throwing the rocks he carried into the creek
    • Touching trees
    • Tossing leaves in the air

    I put more holds on Charlie’s climbing wall so he has more options. He is getting the hang of it!

    Trout lilies are blooming!

    We had quite a range of temperatures this week. The weather station measured a high of 96.4 °F and a low of 32.0 °F for the week. It rained a half inch on Saturday night.

    Sleep has been a struggle in the Grimmett house this week. Charlie is having trouble falling asleep and is waking up coughing due to mucus dripping down his throat. Poor little guy.

    Until next week 👋

  • Week of April 3, 2023


    On Friday I built Charlie a climbing wall on one side of his swing set. He took to it immediately and surprised us with how well he climbs. I made the holds a little far apart for his feet, so we help him with his foot placement right now, but he does most of the pulling himself up with his arms. I ordered more holds and will install them this week. I also need to sand the cut sides and cut off & cap the bolts on the other side. Once I do, I’ll get a proper post up about it.


    Charlie had a great weekend. Lots of time outside. Here it is in photos.


    We got to see Chris Johnson and Megan Walter in Poughkeepsie this weekend. I somehow managed to not take any photos, but it was nice to catch up with Chris, meet Meg, introduce Charlie as a toddler (Chris met Charlie a year ago), walk around outside a bit, and have dinner at Millhouse Brewing.

    Planning some time here in Peekskill together soon.


    Finishing the attic probably isn’t going to happen. We had an architect come over and help us navigate what is and isn’t possible to pass code requirements. So much hassle! Sprinklers on the third floor above grade all the way to the exit, 3ft wide stairs with 3×3 landings and a certain amount of headspace that would require dormers, so much insulation that we’d have to extend the rafters out, much larger windows, etc. Long story short, the space we’d add is not worth the amount of work we’d have to do not just on the attic but on the house in general and the associated cost. Kind of a bummer.

    I guess we’ll table that one and instead look at replacing the fence and expanding the deck again soon.

    We’ve been looking into solar, but not having a great experience with solar sales people. We want to buy your product. Stop making it so difficult, folks!


    The high this week on the weather station was 77.7 °F. The low was 26.9 °F.

    Humidity high and low: 98% and 14%


    Spring is in full swing. Lots of flowers and trees blooming and budding out, double the amount of birds compared to two weeks ago, and lots of things sprouting in the garden (peas, kale, spinach, radishes).

    We’ve had lunch and dinner on the deck multiple times. Lovely.


    Amanda has to go into the city twice a week for work now, so we are all adjusting to new morning and evening routines. The baristas at the coffee shop by the train recognize Charlie now and tell all the other customers about how much he likes trains.


    Charlie hit a new milestone this week: He started anthropomorphizing some of his stuffed animals. He moves their arms to make them do things like push buttons, he tucks them in to bed like we do with him, and tries to feed them. It is adorable.


    Until next week 👋

  • Week of March 27, 2023


    Out in the garden, radishes and spinach seeds have sprouted. 🌱

    Inside, tomatillos and tomatoes are doing great, and red lipstick peppers just sprouted.

    Did you know most peppers and tomatoes are perennials? They can’t survive the winter in the north, but they’ll live for many years in the tropics.


    We’ve been quizzing Charlie regularly while we read to him. He picks things up quickly and remembers them pretty well!

    He is trying more words. We think he is on the cusp of making use of phrases, and this is roughly a developmentally appropriate time for that.

    We had a playdate on Saturday with one of his classmates at daycare. It was fun to watch him collaboratively play with someone from daycare. They get along so well!

    We went back to swim lessons this week and he did pretty well, though he did get distracted easily. Sometimes he’d rather watch the other kids than do the exercises.

    Charlie enjoyed going to a diner and using a booster seat instead of a highchair. They also have cool things like crayons and sugar packets to play with. We found it easier to wrangle him in a booth than at a regular table, so diners might be our new preferred genre of restaurants when going out with Charlie, at least until outdoor seating opens up at other places again.

    He loves to request to wear pieces of clothing like his gardening apron, a certain jacket, or one of his hats, which sometimes leads to him wearing a winter hat to the coffee shop when it is 60F/15.5C outside.


    I have a working script to translate my weather station data to an APRS data packet. Now all I need to do is figure out how to transmit it. I’ve been looking for a CWOP server that accepts http connections, but coming up blank. I’ll probably end up POSTing the converted data to a PHP script on another server and then forwarding that to a CWOP server that accepts TCP connections.

    Helpful links:


    I led a discussion on AI with Praxis this week. Here is my post-discussion writeup:

    https://cagrimmett.com/learning/2023/03/28/praxis-chat-on-using-ai-tools-for-learning-and-creating-at-work/

    I also sent them this afterward, which I came across a few days later (h/t Jeremy Felt)

    How to use AI to do practical stuff: A new guide
    People often ask me how to use AI. Here’s an overview with lots of links.
    oneusefulthing.substack.com

    Reading: Not a lot of time to read right now, but slowly making my way through Neal Stephenson’s Diamond Age. I’m about halfway through.


    To be honest, it was a pretty difficult week at work and home, so this is about all I’ve got without complaining. See you next week 👋

  • Praxis Chat on Using AI Tools for Learning and Creating at Work


    My friends at Praxis (where I used to work) asked me to join them for one of their Monday night workshops for folks in the program. I had originally planned to talk about learning out loud, showing your work, and blogging, but I changed the topic at the last minute to something a bit more en vogue right now: Discussing strategies for using AI tools.

    I’m glad I decided to do the session on AI. I was surprised at how few of the participants had even tried out ChatGPT, let alone use it or Copilot regularly. These tools have been transformative in my own work recently, and the space is moving fast. I see using these tools as early investment in your own compound career growth curve.

    Some of my key points:

    1. AI lowers the opportunity cost of trying out new ideas. (h/t Simon Willison)
    2. AI can help you learn the fundamentals of any subject faster.
    3. Don’t have AI do the finished product for you. Use it like an assistant to help you make your own work better.
    4. It is easier to edit than it is to create.
    5. In any kind of work, one of the core skills is communication, and working with AI tools like ChatGPT is no different. You need to learn how to communicate effectively (read: getting the results you want).
    6. You still need to learn the fundamentals of your subject (which ChatGPT and others can help you do!) in order to use it effectively. At the end of the day, the end result is still your work, so you need to understand it and be able to account for it. Hiding behind “well, ChatGPT said…” is no excuse.
    7. You still have to decide what is worth building/working on/investing in. AI can do things, but you have to know what to ask it to help you do.
    8. GPT-4 is leagues better than GPT-3.

    I also spent some time before the session going back through the Praxis bootcamp curriculum and brainstorming ways to use AI tools for each month in the bootcamp, and for each of the main roles Praxis helps participants land jobs at startups in.

    Bootcamp modules

    1. Foundations of each role and the job landscape
      • Use it to learn the basics of each role quickly, then with the time you saved dive deep on two that interest you. Ask for lots of examples, details, specifics.
      • Ask it to ask you questions to test your understanding.
    2. Writing + Personal Branding
      • Writing an essay? Ask it to help you find your weakest arguments and help you find substantiating evidence. Use it like a really great thesaurus. Ask it to play Devil’s Advocate and then use those results to improve your counterarguments.
      • Writing an email? Have it help edit for tone and clarity.
      • Have it help you set up scaffolding and outlines.
    3. Portfolio project + Learning a tech stack
      • Use it to help you come up with a customized learning plan. Think Diamond Age.
      • Use it to help you rapidly prototype a bunch of different projects, then pick the best to double down on.

    Placement Roles

    • Sales
      • Ask it to help you learn how to negotiate. Negotiate with it! ChatGPT can roleplay.
      • Record sales calls, transcribe them with Whisper, then ask it how and where you can improve. Hone your pitches!
      • ChatGPT is a really good scraper. Copy the HTML contents of a page and ask it to pull out everyone’s names and put them in a list, then add their email addresses using their first initial and last name at the company domain (or whatever you find for the company on Hunter.io).
    • Customer Success
      • ChatGPT is great for quick help and debugging.
      • Rewrite emails in a helpful customer voice. Say, “Rewrite this email with the following tone: Helpful, positive, collaborative, empowering, clear, concise, and avoiding trigger words.”
    • Marketing
      • Use it to create and improve copy + imagery + videos + schedules. Set up workflows.
      • Need photography? Instead of taking a chance on hiring a model and photographer, try https://photoai.com as a proof of concept beforehand.
    • Operations
      • Set up automations!

    Afterward, I followed up on a couple questions:


    Here is the recording of the session:

  • Week of March 20, 2023


    Spring is here! Nice to hear the frogs again in the wet areas of the woods. No wildflowers appearing just yet, but Charlie and I are keeping our eyes peeled on our walks.

    I like the woods in early Spring. Warm enough to not need a coat, no bugs yet, and you can see a long distance since the leaves haven’t come in yet.

    We started seeds, both indoor and outdoor this week.

    Indoor: Magic Bullet tomatoes, tomatillos, jalapenos, red lipstick peppers, and rosemary. The tomatillos have already sprouted!

    Outdoor: French Breakfast radishes, lacinato kale, spinach, cilantro, and Sugar Magnolia snap peas.

    I have another type of tomato seeds coming this week, Firminio’s Plum Tomato.


    Charlie is in a bird phase. He loves seeing birds outside. Whenever he does, he excitedly points to them and shouts, even if they are far off. He does the same thing with airplanes – “air pane!”

    Since he has taken an interest, we made a birdhouse together out of a gourd and also hung a small birdfeeder on a window so he can see the birds.


    Strep update: I went back to work on Tuesday and my throat finally stopped being sore on Friday. This is the first time in many years that I’ve taken antibiotics and they’ve messed up my stomach and made my urine smell funny. Not cool, but better than having strep.

    Unfortunately Amanda picked it up a second time over the weekend, so we are still kind of in survival/recovery mode.


    Sometimes you need to know when to say, “no blog post tonight, maybe tomorrow.”


    Projects corner:

    My weather blocks are now mobile friendly. Check them out at https://cagrimmett.com/weather

    I figured out how many boards I need for the rock wall project: 8 of the 5/4 x 6in x 8ft pressure treated boards. I measured the side, divided it in half to make a right triangle, then dusted off my trigonometry to figure out the top angle and then made a Sheets formula for figuring out the length each of the boards will be.

    =SQRT((A2/SIN(1.01913))^2-(A2^2))

    Other projects:

    • I need to measure the second level shutters, which seem like they might be a bit shorter than the ones on the first level.
    • Looking for some patio furniture at a good price and a large corner swing arm umbrella.
  • Week of March 13, 2023


    Amanda and I both got strep throat this week, Amanda early in the week and me at the end of the week. I’m writing this Sunday night in bed with a fever. I was supposed to be on jury duty tomorrow, but I’ll have to call and ask for a deferral tomorrow.

    The nor’easter that came through on Tuesday dumped plenty of snow, but did not give very interesting weather station readings.

    The snow melted off completely by Thursday, when it got up to 60F. Charlie and I went on a nice walk in the woods, then swung in the backyard for a bit. we noticed that daffodils are blooming!

    Charlie remembers so much. We seems to know most of the common fruit and vegetables now. We were quizzing him and he was able to point them out correctly multiple times from a grid of photos. We also got out some from the fridge and he got them right, too. He can’t quite say the words yet, but he is working on it.

    Lately Charlie has been picking things out when we go to the grocery store. The look of pure joy on his face when we say okay and help him get whatever he picked is worth it. Thankfully it has been normal stuff like cheese and muffins.

    I did most of our taxes this week (just need to double check and submit) and we planned a family trip to California for a wedding. It will be Charlie’s first plane ride! ✈️ To quote him, “Wwoooooowww!”

    I added spark lines to my weather station blocks. Check them out at https://cagrimmett.com/weather. Next up: Mobile styling.

    That’s all. I’m going to get some sleep and hope these antibiotics work quickly. Here’s hoping for a week or two without anyone in the house being sick 🤞

  • Week of March 6, 2023


    This week was kind of a blur. I had to go back through photos and text messages to piece it together.

    • Charlie was home sick from daycare on Monday, which made us feel behind at work all week.
    • Tuesday-Thursday had more urgent issues at work than usual. Days that involve regex and database rollbacks are not fun.
    • Amanda was sick Wednesday night and Thursday
    • Charlie has had some tough nights sleeping Wednesday and Thursday.
    • Charlie threw up more than normal this week. We think that he might be overeating, which is new. Hard to tell because only he knows when he is full.
    • Saturday brought some fun playtime with Charlie and a long nap where I got to hold him. I know those days will end soon, so soaking it up while I can.
    • Sunday we went on a nice walk in the woods and then had brunch at a friend’s house for his birthday. I made butternut squash latkes because he has Crohn’s disease and can’t eat regular latkes. Charlie had a great time being the center of attention. In the afternoon we cleaned the house.
    • Charlie is learning lots of new words and made a two-word request this week!

    This week I also spent quite a bit of time planning out some house projects. We want to renovate the attic and turn it into a third floor living space, so I was on the hunt for an architect who could guide us through the local regulations and help figure out key components like where to put the stairs.

    I’m kind of interested in getting solar panels, so I’m getting some estimates this week for that. Also pricing out shutter replacements and buying materials to build a climbing wall on Charlie’s swingset.

    I know that if I don’t take action on these things right away, months will go by without them happening.


    We decided to up our seed starting game this year with grow lights, so I got some set up. Ready to start some in a couple weeks! In the meantime, this week we plan to direct sow some radishes, spinach, and peas.


    In what little spare time I have, I’m trying to make some styling updates to my Wunderground PWS blocks plugin. Here is what I have so far:

    Next: Adding some sparkline trends, trying to figure out whether the pressure is high or low for our area and adding an indicator, and dialing in the color palette a little more (colors change based on the data).


    What a crazy end to the week with Silicon Valley Bank being taken over by the FDIC. This doesn’t affect us or the companies we work for directly, but it does impact some projects we work on with third parties. I expect this will loom large in the tech consciousness for quite some time.

    Unfortunately there are so many bad takes about what happened. When Lehman Bros went bankrupt in 2008 and kicked off the financial crisis, I spent a lot of my free time the next 4 years reading about money and banking and then much of my work time from 2012-2014 focused on it, too. I’m no longer very interested in that space, so I’ll spare you my take. I’m very curious what the FDIC/Fed/Treasury will announce on Monday morning. Do they have a buyout lined up? Are they setting a crazy precedent and making depositors whole without a buyout? Leaving depositors hanging and causing more runs? I guess we’ll see.

    As is common during periods of financial turmoil, it is amusing to watch Nassim Taleb calling people with bad takes imbeciles and ignoramuses on Twitter. Never change, NNT.

  • Week of February 27, 2023


    Monday was my birthday!

    We celebrated the day before with a day trip to Kingston and Woodstock, where we visited a bunch of indie bookstores and two restaurants I’ve wanted to try. It was a really nice day!

    The find of the day was the full Sandman series, each book signed by Gaiman, at regular retail price. I’ve only ever checked these out of the library, so I’m stoked to have the full set on my shelf now.

    Day-of I had to work, but I made a nice dinner for the three of us at home and Amanda and Charlie got me an ice cream cake.

    Check out my birthday post:

    https://cagrimmett.com/thoughts/2023/02/27/thirty-three/

    We had some snow on Tuesday! It was the first major snow of the year. We took Charlie out for a sled ride in the woods.


    Charlie has some new words this week: Open and Taco. He’s been asking us to open various things all week and it is pretty cute. He’s also been pointing out words he already knows wherever he sees (the object) or hears them, and his recognition/noticing is getting pretty good.

    Wheels on the Bus is still his favorite song, but Row, Row, Row Your Boat is closing the gap.

    He and I were on our own for a couple days this week while Amanda travelled for work, which meant some early morning breakfast outings. This little NY toddler loves Bacon, Egg, and Cheese breakfast sandwiches.


    I created a plugin to pull down data from my home weather station and display it in a custom block. The data updates every 10 minutes. I’m also gathering daily summaries behind the scenes for future blocks to come.

    Here is the block in action. It is currently “no frills” and needs some styling and a round of code clean up, but I’m happy with the first working version.

    Data is not available.

    This block will live permanently at https://cagrimmett.com/weather/

    You can find the plugin code on GitHub: https://github.com/cagrimmett/wunderground-pws-wp-blocks

    Some things I have in mind for future updates:

    • Highs, lows, and averages for the past 7 days, past 30 days, and months, quarters, and years.
    • Maybe some historical charts.
    • Styling for better representation of the data.

    I’m also open to ideas for more blocks using this data. Would would be cool to see? The current block is dynamic, but I’m open to some static blocks, too.


    The Carthusian monks, who have been producing Chartreuse since 1605, will be limiting production and allocating their bottles in an effort to devote more time to monastic life. “We look to do less but better and for longer,” reads the memo, which also considers the costly environmental impacts of production and distribution of the beloved herbal liqueur.

    We were pretty well stocked on the yellow Chartreuse, but picked up another large bottle of the green this weekend before the prices sky rocket even more than they already have. Get some while you can!

    I expect to see some more alternatives/knock-offs coming to market over the next year. Lots of boutique bitters and amaro producers are well positioned to do it.

    Heck, I might try making some. The process isn’t that different from making the ginger liqueur, falernum, and pimento dram I’ve made in the last year. Plus it will give me an excuse to go to Kalustyan’s again.


    We got out and did a little bit of yard work this weekend, mostly trimming trees and bushes, and clearing out dead plants to make way for the new shoots. I noticed peonies, lilies, and rhubarb emerging out of the ground this week!

    I also ordered some seeds this weekend. I plan to get seeds started in the next couple weeks. New for us this year: Cherry tomatoes are replacing the heirloom slicing tomatoes that always seem to split and the animals get to before we do, a new variety of pea (sugar magnolia snap peas), and spinach for some additional early season harvesting. Also bought some foxglove seeds to add another perennial to the flower beds.

    I’m looking forward to getting back out in the garden!


    Time for bed. See you next week 👋

  • Thirty-three


    Since I’m working today, we celebrated yesterday with a day trip to Kingston and Woodstock, where we visited a bunch of indie bookstores and two restaurants I’ve wanted to try. It was a really nice day!

    I think this year has gone by faster than any year in recent memory.

    It has been a great year in many ways, especially compared to the three years before:

    • Charlie is thriving. Paternity leave was very helpful for getting through the difficult infant days, and now that he is a toddler things seem like they are settling into a new normal. That means Amanda and I get more time for the two of us to spend together again, which we deeply appreciate.
      • I’ve been reflecting a lot on the last year and it is incredible to me the amount of growth that happens for a baby between 6 months and 18 months. This time last year he couldn’t crawl. Now he is running, climbing stairs, communicating, and very curious about the world. Amazing.
    • Work is feeling really good. I’m in a new position with new challenges and responsibilities more aligned to what I like to work on.
    • I’ve had more time after Charlie goes to bed (and during his naps) to do open-ended exploration. That manifested in major overhauls to this website’s functionality, getting into tiki drinks, and recently going down a weather station data rabbit hole.

    One of the things I tried to follow this year is the idea that I should embrace what this season of life entails instead of wishing for an alternative. That helped me be more content with not doing things in the workshop or paddling on the river, and instead spend that time with Charlie. He won’t be a baby or toddler forever, and I don’t want to have squandered that time.

    Taking stock on last year’s vectors:

    • Spend as much quality time as I can with Amanda and Charlie. Help Charlie learn, grow, and explore the world.
      • I think I did pretty well here, but given how tired I was most of the time, I wasn’t as present as I could have been for some of it. I think that will improve this year now that we are all sleeping through the night.
      • One thing I need to get better about is reminding myself that Charlie is learning, and his learning often looks like meticulously testing where the boundaries are for everything. This is often difficult to keep in mind when he lands on the wrong side of those boundaries. My job is to steer him back and help him learn learn where the boundaries are, even when it is frustrating for me. Getting frustrated means my expectations are not correctly set.
    • Read less news and social media; read fewer contemporary books and more old books.
      • I didn’t do great on the less social media part, especially toward the end of the year.
      • I think I slightly changed the percentage of older books, but not exactly how I had envisioned it. Too many contemporary books caught my attention, and I read less overall this past year than I would have liked.
    • Make more art.
      • This didn’t happen. At the time of writing this I was excited about creating generative art, but once the nice weather hit I only wanted to be outside.
      • This year I think this might look more like sketching.
    • Spend more time outside, tending to the garden, going for walks in the woods, and paddling on the Hudson. Get out in all weather, not just “nice” days.
      • I spent a lot of time outside, not much time on the water: Once on the Hudson river, once on the Croton river.
      • Going for walks with Charlie is wonderful. Even more fun now that he is so confident with walking and running.
    • Make more in the workshop.
      • I made a couple things (dry vase, ring holder, peg people) and fixed a couple things (like the leg to Charlie’s train table), but made less out there than I was expecting. This is okay. I know this season isn’t forever and I’ll probably get more workshop time as Charlie gets big enough to play in the yard by himself.
      • I helped my friend Jon do some timber framing, which scratched a bit of this itch. I also worked on a lot of digital projects (mostly on this website), which fit my desire to make things with the constraint of needing to be inside frequently.
    • Make some improvements around the house and yard.
      • I did a lot in the garden this year and put in new flowers, which were a welcome addition. In the house we did some childproofing, curtain hanging, made a play area for Charlie, put up new bookshelves in my office, and cleared out of some things we don’t need. More on the docket this year.
    • Continue blogging regularly.
    • Take part more in the local community in Peekskill.
      • Also a success. We made more friends with kids locally and have been getting out with them regularly. That has been very nice.

    So, what do I want my thirty-fourth year to look like?

    Much the same as the last year. Keep prioritizing quality, fully present time with Amanda and Charlie, and our family. Keep making things. Keep improving our lives & surroundings. Keep blogging. Keep fostering friendships.

    Check out last year’s post, Thirty-two.

  • Week of February 20, 2023


    Busy week!

    My parents were in town last weekend, so I published my weekly post early and was offline for most of the weekend.

    They helped us put in new bookshelves in my office and moved the chalk board. I love it! This opens up the space and gives it more of a study feel instead of a classroom feel.

    Having a background of books for calls is better than having a chalkboard + pull down map, in my opinion (though I don’t have any screenshots of me on the previous background handy, perhaps some coworkers do):

    They also helped us hang a weather station they gifted me for my birthday and a birdhouse with a camera in it that I got from my aunt and uncle for Christmas.

    I’ll write a full post on the weather station soon, but for now you can see the weather data on:

    …and any app that pulls in one of those sources! I’m currently pulling in the data to CARROT Weather. It has been super cool to watch the rain and wind more closely and know the data is coming from my weather station.

    For fun, here are some weather charts from my station’s observations this week:

    February 20, 2023 – February 26, 2023
    HighLowAverage
    Temperature47.7 Â°F18.4 Â°F35.1 Â°F
    Dew Point38.6 Â°F6.6 Â°F25.8 Â°F
    Humidity98 %35 %71 %
    Precipitation0.27 in
    HighLowAverage
    Wind Speed15.7 mph0.0 mph0.6 mph
    Wind Gust26.6 mph1.2 mph
    Wind DirectionWest
    Pressure30.79 in29.82 in

    My next step is to figure out how to get the weather to CWOP, too. APRS isn’t exactly a REST API that you can post JSON to. In the meantime I plan to work on a custom block to pull in the current Wunderground observations and display them on a page on this site.

    The birdhouse needs electricity, so we set it up on the side of the shed/workshop. No one has taken up residence yet.

    Charlie had a great weekend with his grandparents. It is wonderful watching them love him and seeing how much he loves them, too.

    The aforementioned sleep training improved dramatically last weekend. Since last Friday he has slept through the night until ~5:30-6:30am, at which point he comes to snuggle in our bed for a little while to wake up. This is the first time he has consistently slept through the night (we had some short stretches before, but never like this), so we are all sleeping better.

    The pre-bedtime routine is now more important than ever, and Charlie expects to read at least four books and sing a round of Wheels on the Bus, his current favorite song. He knows all the hand motions.

    He is also taking naps in his bed most of the time now, which means less naps snuggling on us, but more time for us to do the dishes, cook, do laundry, and clean up. Tradeoffs.

    We put up a tent in Charlie’s room this week, which he loves:


    We got snow on Feb 25! I thought for sure we were going to go the rest of the season without snow. Looks like more is coming on the 27th and 28th. Looks like I need to move some stuff so we can get our vehicle in the garage 😬 ❄️


    Unexpectedly had to replace our tires this week. Wheels were out of alignment, so the tire wires were showing on the inside edges and the vehicle wouldn’t pass inspection. I asked the mechanic to see, and they weren’t bullshitting me. Fun.

    It is a year to the week since I popped a tire and had to get a new one. At least I got to keep the new one I bought then as a backup.


    Work this week was lots of racing against the clock to figure out Stripe fraud rules (RadarArchived Link) and evaluating a surfeit of individual transactions. Then planning out a migration away from AWS, also against the clock.

    “One must work with time and not against it.“

    Ursula K. Le Guin

    I finally got to try out my homemade falernum this week. I made a Chartreuse Swizzle. I’m pleased!


    The Tavern included some of my art in a recent post:


    That’s all for now 👋

  • Week of February 13, 2023


    Sleep training toddlers is not for the faint of heart. Unfortunately, while sleep training a toddler this week, I learned that I am faint of heart.

    It did get easier by the fifth night.


    I don’t have a lot to say this week. Work was pretty stressful, which coupled with the lack of sleep was tough. Charlie has been teething all week, too. Despite all that, he has been a lot of fun. He is picking up new things quickly!


    I am concerned about how unseasonably warm it has been, but I have been enjoying it. Nice to take Charlie on walks and use the swingset again. I hope it doesn’t freeze and destroy all the flowers popping up.


    I’ve been using my Micropub Shortcuts a lot this week. They’ve been very handy. One improvement I want to make: Pass highlighted text from a webpage into the action so it can be added to the content body as a quote. I also want to try adding a note with a like.


    I’m publishing this early because I’m going to be mostly offline this weekend. My parents are visiting and we’ll be working on some projects, cooking, and hanging out with Charlie. See you next week 👋


    My weekly roundup

    I realized last week that I could use the Query Loop (I prefer the one from Generate Blocks because you can restrict the query with before and after dates, just like wp_query) to include the Microblog posts and Likes I’ve posted in the last week as a roundup in these weekly posts.

    This week’s Likes

    This week’s microblog posts

  • iOS Shortcut Actions for Micropub posting


    I recently lamented about how few options there are for Micropub posting on iOS now that Indigenous was pulled from the app store. I had a hunch that the Shortcuts app could be a solution since Micropub takes pretty simple cURL requests, and after some testing to figure it out I put together a set of three Shortcuts to do the most popular Micropub actions. You can install them from the iCloud links:

    1. Like, Reply, Bookmark, or Repost a URL
    2. Post a Note
    3. Post a Note with an Image

    The first time you install one of these Shortcuts, you’ll be prompted to provide your Micropub endpoint and an IndieAuth token with the scope create profile update media.

    How do they work?

    They essentially take inputs (a URL or text) and make a curl POST request to your Micropub endpoint with a Bearer token that you provide on initial setup. Then it gives you the option to open up the URL for your post to take a look at it.

    The Like/Reply/Bookmark/Repost action has a bunch of conditionals to handle each action a little differently.

    The Post a Note with an Image action makes two separate curl requests: One to the Media endpoint for posting the image (which is automatically converted to a JPEG since most sites and browsers don’t support HEIF), the URL for which is then stored as a variable, then one to the regular endpoint with your note text and the image you wanted to post. I couldn’t actually get the “photo” parameter to work in the curl request, so I did it the old fashioned way and appended an HTML img tag to the “content” parameter. I also add a class micropub-img for easy styling. If anyone figures out how to get the photo parameter to work with the curl request, I’d be happy to update the action accordingly.

    Some screenshots

    The Like and Reply actions:

    Regular Note action:

    The Note with Image action:

    Videos of the Shortcuts in action

    Demonstrating the Like action on a URL:

    Demonstrating posting a regular Note from a Shortcut added to my Home Screen:

    Demonstrating posting an Image with a Note:

    Syndicated to IndieNews
  • Week of February 6, 2023


    Charlie has been engaging this week. It is fun watching him make the leaps where he wakes up one day and has new skills. He seems to understand more of our language and is trying to string it together himself, doing some solo imaginative play, and noticing even the smallest things. He is saying Momma a lot more, which Amanda appreciates.

    We think moving up to the older toddler room at daycare is rubbing off on him.

    On Saturday we put together a toddler bed for him (one of the low to the ground style that he can get in and out of by himself), involved him in the setup process, and made a big deal about it. Afterward he took a nap in it (after spending some time getting used to it… new things are exciting!).

    That night it was a little rockier. We got him to bed, but he got up five times throughout the night. That said, we were able to soothe him back to sleep in his bed instead of caving and letting him cosleep in our bed, so that is a win. Hopefully it gets easier.

    Amanda reminded me of what some friends said: When they got serious about drawing bedtime boundaries, they decided to only have Dad go in when the kids cry. When Mom isn’t an option, they tend to figure it out quicker. My new term for the regular nighttime cries is Mommafishing.


    Walks with Charlie have been sweet. He reaches up on his own to hold our hand. Playground time, too. He is getting faster and more independent by the day!

    Here is what walks in the woods with Charlie last year looked like vs this year:


    I created some Micropub Shortcuts for iOS and have been using them a lot. Next step is setting up autosyndication for these Micropub posts.

    I’ve also used my Upload Photos to WordPress Shortcut a lot this week and I refactored it to work with the Share Sheet.

    I put in a PR to update the Authentication section of the WordPress.org REST API docs that was approved and merged: https://github.com/WP-API/docs/pull/149 – Here is a link to the new section: https://developer.wordpress.org/rest-api/using-the-rest-api/authentication/#basic-authentication-with-application-passwords


    I upgraded my work computer to the new MacBook Pro with M2 Pro chip this week and I’ve been blown away at how fast it is. UI changes are instant. The battery lasts a long time. The fan doesn’t run like my i7 Intel version. Great update. I do miss the touchbar, though.


    Some new-to-me songs I’ve enjoyed recently:

    https://open.spotify.com/track/20R4HfKloPKgXDqU7UKk3x?si=e0190afde5e84107

    Reading

    I recently finished Recursion by Blake Crouch and Daemon by Daniel Suarez. I’m now working on Freedom by Daniel Suarez (second book in the Daemon series) and listening to Solomon’s Gold by Neal Stephenson, another book in the Baroque Cycle.


    My Weekly roundup

    I realized tonight that I could use the Query Loop (I prefer the one from Generate Blocks because you can restrict the query with before and after dates, just like wp_query) to include the Microblog posts and Likes I’ve posted in the last week as a roundup in these weekly posts.

    This week’s Likes

    This week’s microblog posts

  • Apple Shortcut to upload photos to WordPress Media Library

    UPDATE 11 Feb 2023:

    Good news! I refactored this to work with the Share Sheet and to prompt you for credentials and a media endpoint on the initial setup.

    Here is the new link: https://www.icloud.com/shortcuts/cf31d94107e24e5e947a801fb9d8132c

    Here is how easy it is to use on macOS.

    And here is how easy it is to use on iOS:


    Tonight I sat down and figured out something that has been in my head for months: Uploading photos to my WordPress Media Library with an Apple Shortcut. It works on both macOS and iOS.

    I use the REST API to upload them to the /wp/v2/media endpoint via a POST request. For authentication I use a username and Application Password that I base64 encode.

    Here is the basic workflow:

    • Select the photos
    • Loop through them and convert them to JPEGs. This is necessary because WordPress does not currently handle HEIC images, the default iOS image format.
    • Use a POST request to upload the converted JPEGs to the /wp/v2/media endpoint.

    You currently have to run this from Shortcuts.app. Share sheet support does not work on macOS Monterey, so I still have the step in there to pick images from Photos.app. I know they added this in Ventura, but I haven’t upgraded yet. Once I do, I’ll change this to only take images from the Share sheet so you can start in Photos.app rather than Shortcuts. I know share sheet support works on iOS, but since I blog most on my Mac, I wanted to make a shortcut that works in both places.

    If you’d like to use this Shortcut, you can get it here: https://www.icloud.com/shortcuts/e473f76d1692444896077ebcdbc4c893

    If you use it, you’ll need to make two changes:

    1. In the Text area at the top, put your WordPress Username and Application Password in this format: username:password
      • Application passwords are found under wp-admin -> Users -> your user profile -> Application passwords
    2. Change the domain from example.com to your website’s domain.
  • Week of January 30, 2023


    After I posted last week’s update, we went to Beacon, NY, and had a nice family day exploring parts of Main St that we haven’t gone to yet. Charlie walked almost a mile on his own and overall we had a really good time. We had burgers and fries at Meyer’s Olde Dutch, which we recommend.

    Charlie had a big week! He moved up to a new room at daycare and he got his first haircut. No photos yet because he is teething and kind of grumpy today, so we’ll catch him at a happier time later.

    We got him a learning tower and he has enjoyed helping is make breakfast and dinner all week. Also helping Momma make banana bread!

    Two ways he showed some new skills this week:

    1. We came across one of those “find this object” puzzles in a Highlights magazine (thanks, Grandma and Grandpa!). He was able to quickly find the objects!
    2. While helping me make coffee in his learning tower (he likes to dump the beans into the grinder and help me crank the grinder handle), he pointed to the coffee filters on the wall, which is the correct next step, and put it into the Chemex when I handed it to him. Before we know it he’ll be making coffee on his own.

    Forget improv classes. Drive a car with a grumpy toddler in the back seat. You’ll figure out how to riff off of whatever you see pretty quickly since the stakes are higher.


    I’m still not feeling good consistently, which is very frustrating. Last week I wrote about my eyes and persistent cough. Thankfully my eyes are better, but my cough is still. I also had body aches twice this week (Wednesday and Saturday) and a fever once (Saturday). Today I have a sore throat. Charlie’s cough hasn’t gone away yet either. We are all very ready to be rid of this.


    Amanda and I were able to go have a lunch date this week, which was really nice. We both agreed that we need to prioritize that more.


    The “spy balloon” was such an absurd situation this week. I like Arnaud Bertrand’s take.


    Charging for the Twitter API and the very poor sudden communication without a concrete plan (one week notice, no details), may be Musk’s biggest misstep at Twitter yet other than buying Twitter in the first place.

    Christina Warren said it best: $100/month is not something someone will pay for a small hobbyist project (which is one of the core things that makes Twitter great!), but it is something that scammers with stolen credit card numbers will pay, just like they did with Twitter Blue, another Musk Misstep™️.

    Then the next day, shutting off API access for certain apps without notice? Very nice move.

    My microblog posts may stop autoposting to Twitter, I’m not sure 🤷‍♂️

    I also noticed last week that Twitter removed the card preview from the validator tool. That is annoying because half of the reason to use the validator is that it fetched fresh content from the site, which was a way to force updates on preview cards. I suspect that the preview in Tweet Composer is working off of cached data and there is now no way to force an update. The announcement.

    The person who runs the Year Progress bot also said it pretty well: “Twitter management can eat shit.”


    I already posted about this on my microblog, but since these weekly posts and the shorter ones have different audiences, I thought I’d post it here too:

    The Museu de Matemàtiques de Catalunya (www.mmaca.cat) in Barcelona, Spain, added a photo I took of a cycloid to their interactive cycloid exhibit room!

    I blogged about taking this photo in 2008. I won a physics photo contest with it! My parents helped me take the photo and that is their old Suburban in it. Since then it has also been published in a magazine in Japan. One key reason, in my opinion, is that I put my photos out under a Creative Commons license.


    I’ve been at this consistently for a year now!

  • Week of January 23


    We are on the road to recovery, health-wise. I went back to work this week and when Amanda started showing symptoms on Monday, we immediately got her a telehealth appointment and some Tamiflu, which helped immensely. She avoided the worst of it (still has a sore throat and cough, but no fever or body aches) and was able to work all week.

    I have some residual that I’m still recovering from. Still have a regular cough with phlegm. The worst has been my eyes, though. They are still dry and scratchy and very sensitive to light. I’m also having trouble getting them to focus, so everything is just a bit fuzzier than normal, even with my glasses on. It is almost like my prescription changed overnight. I’m going to give it another week before I call the optometrist.

    Charlie has been a lot of fun this week. Lots of laughs and giggles and fun play times. Also lots of helping us cook—he loves putting things from one bowl into another and dumping things you’ve measured into the proper bowl. We ordered a Learning Tower for him which should arrive next week and make cooking together even easier.

    Sometimes he does sweet stuff like climb up in his chair with a snack and a book, which melts our hearts.

    Lest it sound like things are all fun and sunshine, you should know that between the bouts of fun giggly playtimes, Charlie also has big toddler emotions, melts down, and throws things when he is upset. I know it is developmentally appropriate and he is learning how to process and deal with his emotions, but it is still quite grating. We are mostly choosing to focus on the good times rather than the bad times, but I don’t want to misrepresent. Toddlers are still toddlers.


    Saturday was a beautiful 50F degree day (unheard of in January!), so Jon and I decided to go for a row in our guideboats on the Croton River.

    We went out at high tide and rowed roughly three miles round trip. The water was quite swift and we had some difficulty navigating a few bends in the river where the current picked up. Nice workout!

    Jon got me thinking about better ways of transporting my guideboat. So far I’ve really only been taking it a mile down the road to the Hudson, and I’ve had it rightside up in a cradle on top of my Subaru Forester. Going to Croton is a 15 minute drive down the highway, and I didn’t like how much it moved on the highway, even at a slow 50MPH. It really needs to be upside down for longer distances, but the boat is slightly wider than my roof racks. Getting it on and off of the car upside down is also a bit trickier than sliding it rightside up into the cradle.

    We did some brainstorming and found a possible solution: Reese makes a canoe loader that attaches to your car’s trailer hitch. It looks like a T and swivels, so you put one end of your boat on the loader, then pick up the other end and swing it around 180 degrees to put the other end on your car. I think this might solve the problem of the boat being wider than my roof rack because if the boat is sitting partially back off of the vehicle onto the T, the front of the boat should rest on my crossbars and take the weight. I need to go out and measure the boat and my vehicle to make sure, but this looks promising.


    A few house-related things I’m excited about:

    • I bought some nice wall-mounted bookshelves for my office. Solid oak with adjustable feet. They’ll span the entire wall behind me (if you’ve ever been on a call with me, it is the wall with the chalk board). I’m moving the chalk board to the other wall and moving the shelf that is over there to the basement when the new shelves come in. These shelves will solve some of our current lack of bookshelf space and I think they’ll look really nice on video.
      • I wanted to build them myself, but it would take me a couple full weekends to do it and that is time I’d rather spend with Charlie. Once I factored in the cost of wood right now, the hardware, and my time preference of wanting these up now rather than sometime late summer, we thought it best to buy them.
    • We contacted an architect to help us figure out how to remodel the attic, where to put the stairs, and generally what is feasible with the space. Feels good to get that process started.
    • I hung some windchimes (Corinthian Bells from Wind River) that my parents got us for Christmas. I can hear them from my office, the dining room, and the kitchen. Such a soothing sound.

    I got around to making decent archive pages for the Likes and Notes (I changed the slug to microblog) post types and got them in the menu finally. Also made some home page and global nav updates. Feels good.

    I fixed a PHP error that I think was preventing webmentions from being sent. So if you got a bunch of webmentions from me last night around 11pm Eastern, I’m sorry.

    I’ve also fine-tuned some of the Syndication Links and Share on Mastodon functionality with some of their hooks. Now I need to take those and move them into a mu-plugin instead of keeping them in functions.php – I’d never put things like that in a default theme (I’m using twentytwentytwo) at work, but sometimes the cobbler’s website has the worst metaphorical shoes 😬

    One thing that I’m still struggling with is auto syndicating my microblog posts to Twitter. Syndication Links wasn’t working for me for a while (most of the time it wouldn’t share the post, and when it did, it shared the link despite the setting to not share links) until I finally uninstalled it and re-installed it. Now it shares posts to Twitter without links but doesn’t share images 🤷‍♂️

    So I’m on the hunt for another solution. I know of a solution in the works from a pretty popular plugin that I’d like to try, but it isn’t quite ready yet and I want something now. Since I really like Jan Boddez’s Share on Mastodon, I might try his Share on Twitter, which is no longer being updated, but might work until the other solution I mentioned is ready.

    Last week I published a post about my workflow for posting Likes to my website:

    https://cagrimmett.com/development/2023/01/22/my-indie-likes-workflow/

    There is finally a birria truck in Peekskill! Paradise Taqueria Birrieria, parked on Brown St. Saturdays and Sundays. The standard quesabirria + consume is delicious, as are their salsas. Amanda likes the green salsa and I like the smokey red salsa.


    We are off to have a family afternoon in Beacon, NY. We’ll probably get some coffee at Big Mouth, hit up a big playground or walk down at Long Dock Park, and have burgers at Meyer’s Olde Dutch. 👋

  • My Indie Likes Workflow


    As part of trying to implement a website-first POSSE workflow, I wanted to start with posting Likes to my website and sending out webmentions from them. That is a lot of what I used to tweet out. Why should a record of what I like be stored elsewhere?

    It took me a little while to figure out what I wanted this system to look like, but once I landed on it and verified it could work with a couple quick tests, I got to work building it out and it has been running smoothly for a couple of weeks.

    Inputs and Outputs

    Where do I read content the most and how can I get links from there into my website? This was my research question before Christmas.

    When I’m at my computer, posting likes is fairly painless, though it is a multistep process:

    1. Go to my website
    2. Log in
    3. Click to add a new like
    4. Paste in the URL
    5. Add commentary
    6. Click publish

    There is more friction on mobile, which is where I tend to read a lot of content.

    Jan Boddez pointed out that using Micropub reduces that friction. Unfortunately I couldn’t find clients that reliably worked for me on iOS.

    So, that put me back in the realm of looking for solutions. I did what I do on most projects: Look where the inputs are coming from.

    • I spend most of my time reading articles on mobile.
    • 50% of what I want to post as Likes comes from content already in my RSS feed reader.
    • The rest come from a mix of social, email, general browsing (things like news.ycombinator.com, pinboard.in/popular), and Slack groups.

    Whatever I choose has to incorporate all of these channels and has to work from all of my devices (macOS, iOS, and iPadOS).

    I decided to handle likes coming from the various sources in two ways:

    1. A solution specifically for my RSS reader
    2. A solution for everything else

    From the RSS Reader

    My RSS reader of choice is NetNewsWire (I used it before the Black Pixel era too), and I use Feedbin as my feed syncing service (and the email -> RSS functionality).

    Feedbin and NetNewsWire supports stars, so I decided that anything I star in Feedbin should be posted as a Like on my site.

    Feedbin has an API that makes starred entries available in two ways:

    • As a filter option on the Entries endpoint
    • As its own endpoint that returns a list of IDs, which then need a follow-up API call to fetch the contents

    I thought about a couple ways of fetching those starred items and turning them into posts. What I landed on is a simple plugin that polls the API once an hour, posts new items as Likes, then saves the IDs of the posts it processed so they won’t be processed again.

    This was the first proper WordPress plugin I’ve build and I learned a lot in the process:

    • The proper way to set up and tear down dependencies on install and uninstall hooks.
    • Working with WP Cron.
    • Setting up plugin settings pages and saving options.

    The Likes are posted using Jan Boddez’s IndieBlocks plugin context block, which also handles sending out webmentions.

    Here is the plugin, free to use or remix:

    GitHub – cagrimmett/feedbin-stars-to-indie-likes: Takes starred posts from Feedbin and turns them into Indie Likes on a WordPress site
    Takes starred posts from Feedbin and turns them into Indie Likes on a WordPress site – GitHub – cagrimmett/feedbin-stars-to-indie-likes: Takes starred posts from Feedbin and turns them into Indie Likes on a WordPress site
    github.com

    If I were to remake this from scratch, I’d probably save the post permalinks instead of the post IDs to the database to check. That seems slightly more hardened, and also ensures I’m not posting duplicate Likes if a Feedbin ID ever changes.

    An improvement I’d like to make: Add a filter to load the plugin updates from GitHub instead of WP.org with the new Update URI header.

    Everything Else

    For everything else I decided to piggyback off of a bookmarking solution I use. Bookmarking is pretty fast and shared across all of my devices, so I set up a specific folder called Likes and any time something gets added to that folder it gets turned into a Like.

    I currently use Larder.io for my bookmarking, which supports making folder contents accessible via RSS. This is perfect for my use case: No authentication, just fetch a feed and parse it. WordPress was born for this.

    Side note: I change bookmarking apps as often as I change email apps. I’ve used Pocket, Instapaper, Raindrop, Evernote web clips, Notion, browser built-in options, etc. I know one day I’m going to migrate everything to Pinboard and then it will live there for the rest of my days. For now, I’m still using Larder.

    I made another plugin very similar to the Feedbin one above, except that it fetches and parses an RSS feed with WordPress’s built in fetch_feed function. Like the other plugin, it fetches new posts once an hour and posts new Likes, then saves the permalinks of the posts it processed to the database so it skips those next time.

    Since bookmarks can have a description, it optionally outputs a paragraph block after the Like with the description I created. Again it uses Jan Boddez’s IndieBlocks plugin context block.

    GitHub – cagrimmett/rss-to-indie-likes: WordPress plugin that takes posts from an RSS feed and turns them into Indie Likes on your site.
    WordPress plugin that takes posts from an RSS feed and turns them into Indie Likes on your site. – GitHub – cagrimmett/rss-to-indie-likes: WordPress plugin that takes posts from an RSS feed and turns them into Indie Likes on your site.
    github.com

    The main thing I learned working on this version is the default feed cache when you are using fetch_feed() in WordPress is 12 hours and you can override it with a hook: wp_feed_cache_transient_lifetime

    Both have been running on my website for a couple weeks now without a hitch. I’ve yet to link Likes and Notes in the nav or on the homepage because I want to redesign how they are output, but I linked them here if you are interested.

  • Week of January 16, 2023


    Remember how last week we thought Charlie had RSV? It turns out we were wrong and he had the flu. I know because I got it on Sunday and had to see a doctor on Thursday due to dehydration. It hit me like a truck on Sunday and I spent 90% of my time Sun-Thurs in bed. I vomited from Mon-Weds and kept barely anything down. Stabbing headaches the entire time.

    I had to call in a friend to watch Charlie Tuesday night and ask Amanda to come home from a work trip early because just getting him dressed and taking him to daycare took all the energy I had. It took a lot to make those asks and disrupt their plans. This was a rough week.

    As of Saturday morning I’m slowly getting back on my feet and contributing around the house again. Made breakfast, started cleaning the upstairs, stripped the beds.

    We were planning on getting flu shots this year, but never rescheduled when we canceled because Charlie was sick. That is a mistake we won’t make next year.


    I did nothing besides lay in bed for the first three days, and I only started watching Netflix and listening to audiobooks on the fourth and fifth days.

    I finished season 4 of Ozark (the final season, so I finished the series) and I finished the last couple episodes I had left of Andor. Ozark was dark, gritty, and terrific. Not something you want to watch while in a sensitive state of mind. While Jason Bateman, Laura Linney, and Julia Garner have been in lots of other stuff, I think they’ll be permanently tied to their Ozark roles in my head. The final episode wrapped things up in ways I didn’t expect.

    Andor was okay. I don’t think I really get the twist at the end of the last episode. I’m getting tired of all the Star Wars spin offs and have a hard time keeping them in chronological order in my head relative to the original trilogy.

    On Friday I picked up Blake Crouch’s Recursion again and finished Part I. Really good so far.


    It is such a shame that Tweetbot and Twitterific lost API access to Twitter and that Twitter is being silent about it. What bullshit. That open access to build upon is one of the things that helped make Twitter great.

    Tweetbot was my third party Twitter app of choice, so I’m glad to see them working on a Mastodon client.


    The WordPress Org’s marketing team shared some of my photos this week:

    Dolphins in the Bronx River again! Starlight Park is a good ways from the mouth of the river, almost to the Bronx Zoo.


    I posted meal plans for the last two weeks that have been completely tossed aside, so I’ll go back and revisit those this week. I also have to do the same with my work plans and personal plans for our family and for this website.

    That’s all I’ve got. Here’s hoping for a normal, sickness-free week at the Grimmett house this coming week.