Winter Solstice 2024

Winter begins at 09:20 UTC on December 21, 2024, unless you're south of the Equator in which case happy summertime to you. Rendered in Catfood Earth.

Add your comment...

Related Posts

(All Code Posts)

(Published to the Fediverse as: Winter Solstice 2024 #code #catfood #earth #winter #solstice The exact moment (09:20 UTC, December 21, 2024) of Winter Solstice as rendered in Catfood Earth. )

SFO LHR

BA 284

Google Pixel 8 Pro 18mm f2.8 1/25s ISO26

BA284

Add your comment...

Related Posts

(Recent Photos)

(Published to the Fediverse as: SFO LHR #photo #plane #sfo #lhr Photo of BA 284, from SFO to LHR )

Bridgy Fed and A New Social

The Fediverse

I've been Fediverse curious for a while, but even with its decentralized nature I'm not interested in creating content for someone else's platform. This blog has been federated for a little over a year thanks to Bridgy Fed, a nice free service that handles most of the gory implementation for you. I was delighted to learn this week that the project is now part of a non-profit, A New Social. Maybe the decentralized Internet stands a chance of coming back again? I'm cautiously optimistic and will be integrating a bit harder next year.

Add your comment...

Related Posts

(All Etc Posts)

(Published to the Fediverse as: Bridgy Fed and A New Social #etc #ithcwy #bridgyfed #fediverse A New Social is a non profit that is taking on Bridgy Fed and hopefully opening up the Fediverse. )

AI Wishlist: Use email to reply to voicemail

An AI makes a phone call for me

Google tried this with Duplex, but for the solved use case of making a restaurant booking. The restaurants didn't like it and we didn't need it.

What I want is - transcribe my voicemail and send me an email. During that step drop any obvious spam. If I choose to reply to the email phone the person back, repeatedly, until you get them on the line and convey the reply and take down any response.

This looks like Twilio for the telephony, Whisper for the transcription and OpenAI realtime for the conversation. Do I want it badly enough to build it? Maybe. I should do this first though.

Add your comment...

Related Posts

(All Etc Posts)

(Published to the Fediverse as: AI Wishlist: Use email to reply to voicemail #etc #lazyweb #openai #voicemail #email Use LLMs, OpenAI realtime, Whisper and Twilio to prevent the scourge of real time communication. )

I can finish a web page in Android 15!

The Android Activity Lifecycle (approximate)

I have occasionally been critical of Android, so I'm delighted to have something positive to report. For even fairly long articles I can now read the whole thing!

Over the last few updates my phone has become almost useless for reading. I'm probably an edge case in the TikTok era, but reading is important to me. Android has got progressively more psychotic about preserving battery life with Adaptive Battery and the war on background services and numerous other 'enhancements'. If I take my attention away from what I'm reading for a split second Android kills the process, plows salt into the memory it once occupied, and emails the developer to request an environmental impact statement.

In theory none of this should be a problem because Android has an activity lifecycle that tells the app it's going to be hung, drawn and quartered. The app can then save the current state and restore it when the user comes back to the app. Of course many developers can't be bothered with implementing this properly and Google seems to set a very bad example here. Chrome - back to the top of the article for you! Google news - full reload of a fresh slate of stories so the one you were reading isn't even in the list any more.

Android 15 blissfully fixes this and has done more than exercise, diet or beta blockers for my blood pressure.

I hope it's not a regression...

Add your comment...

Related Posts

(All Etc Posts)

(Published to the Fediverse as: I can finish a web page in Android 15! #etc #google #android Android 15 finally fixes background process killing, making it easier to finish reading long articles without frustration. )

San Francisco to Shasta Lake

On the road to Shasta Lake

A hyperlapse of the ~4hour drive from San Francisco to Shasta Lake in California. Shot on Rivian Drive Cam. Details for getting usable footage from that here. Edited in DaVinci Resolve.

Add your comment...

Related Posts

(More Timelapses)

(Published to the Fediverse as: San Francisco to Shasta Lake #timelapse #video #hyperlapse #sanfrancisco #shasta #rivian Hyperlapse of the drive from San Francisco to Shasta Lake, I80, I505, I5. )

Fix Rivian Drive Cam Distortion

Corrected Rivian Drive Cam Frame

Rivians have a drive cam feature that will continually record footage from four cameras (front, rear, left and right) while you're driving. It's a built in dash cam which immediately got me excited to make hyperlapse style movies of interesting drives.

My first attempt was very, very sad. Rivian dumps out the footage in some fisheye format that looks terrible. It also often skips frames, so when imported to DaVinci Resolve the dread Media Offline error pops up all the time during playback. Insta360 Studio handles the dropped frames and so I created the hyperlapse there and tried to zoom in enough to fix the fisheye but overall I was very disappointed. Hopefully Rivian fixes the footage or provides some sort of tool to make this feature usable at some point.

Today I wrestled with the problem a bit more deeply and got something working. The image at the top of this post is a drive cam frame that is dramatically improved. The trick is using the lenscorrection filter in ffmpeg. The filter requires k1 and k2 coefficients which I solved for by generating hundreds of videos and eyeballing them, like the horrifying experience of visiting an optician and suspecting that they're going to write your prescription based on your opinion of which letter looks better. After much juggling I settled on -0.45 and 0.11. In terms of command line this translates to:

This re-encoding also has the happy side effect of fixing the dropped frames.

I would love to have some official numbers to plug in (hint, hint Rivian). My Rivian is a 2025 Gen 2 R1S - I have no idea how much the camera module varies between different Rivian variants so this might work for you or might need more fine tuning. Having cracked this I'm currently processing some footage of a trip to Shasta Lake and will post that soon (update - it's here).

Add your comment...

Related Posts

(All Code Posts)

(Published to the Fediverse as: Fix Rivian Drive Cam Distortion #code #rivian #ffmpeg Using ffmpeg and the lenscorrection filter to fix the fisheye distortion on Rivian Drive Cam footage. )

Affording MUNI

A MUNI (ish) bus in San Francisco

MUNI is headed for a ~$300 million deficit over the next couple of years. A small part of this is my fault. I live where I do for easy access to public transport. I used to take the 28 to work at least three times a week before the pandemic but like many people in San Francisco I now work from home. That's only part of the story though. MUNI decided to let kids ride free, and this is about 15% of their ridership. Many people over 18 decide not to pay as well, and fare dodging is reportedly around 20%. Over a third of passengers are not paying at this point.

As recently as 2021 fares were almost 20% of MUNI's revenue. In the 2024-2025 budget that's down to 8%, $108 million out of a $1.4 billion dollar budget.

In the short term MUNI has to reverse the trend on fares. My kids can afford to pay (at least I can) and a transit system in crisis should not be subsidizing my family's commute. MUNI has added more fare inspectors, and maybe that would help, but other steps could be taken here. MUNI fare gates don't check that you've paid on exiting the system - why not? Busses could enforce boarding at the front and producing payment or proof of payment. We can't have one fifth of users skipping payment. Also, the diverse range of payment methods removes any social pressure to pay. If I board and sit down without tagging I could be a fare dodger or I could have bought and used a mobile pass.

Longer term we need to be less embarrassing. You can't have an It All Starts Here campaign and then install whatever these ugly things are. We're also going to spend $200 million replacing the floppy disks that run light rail (maybe with laserdiscs?). San Francisco is the heart of the AI revolution. We take driverless cars instead of Ubers. MUNI's ballooning costs are largely people. At the very least the light rail system should be fully automated.

Add your comment...

Related Posts

(All Politics Posts)

(Published to the Fediverse as: Affording MUNI #politics #muni #sanfrancisco MUNI is headed for a $300 million deficit. We should make kids pay, make adults pay and invest in driverless light rail. )

Clikapudi Loop

Shasta Lake from Clikapudi Loop Trail

A fairly long loop, just over seven miles, next to Shasta Lake. Clikapudi means 'to kill' in Wintu and the name refers to an 1800's battle between local traders and the Wintu Indians. Great views of the lake and some pleasant forest sections. Probably could have done with knocking off a few miles of going around inlets but worth the visit.

Hike starts at: 40.738557, -122.215905. View in Google Earth.

Add your comment...

Related Posts

(Hike Map)

(Published to the Fediverse as: Clikapudi Loop #hike #hike.map #shasta #map 7.2 mile loop hike next to Shasta Lake in California. Clikapudi Loop Trail. )

Waters Gulch Loop Trail

Shasta Lake from Waters Gulch Trail

Short 3.5 mile loop trail next to Shasta Lake. There is a nice spot to have lunch near the water half way round. The final stretch is on a twisty road with no sidewalk but overall a pleasant hike with a range of terrain and views.

Hike starts at: 40.782201, -122.335434. View in Google Earth.

Add your comment...

Related Posts

(Hike Map)

(Published to the Fediverse as: Waters Gulch Loop Trail #hike #map #shasta Three and half mile loop trail next to Shasta Lake in California. )