justin․searls․co

The logout button seems to have been rendered practically defunct. I only purposefully sign out of certain accounts when I'm trying to curb my usage of a site or app (usually it's Twitter or Amazon). Even then, that process isn't always straightforward.

This has gotten so bad in recent years that it's probably fair to call it a dark pattern. Engagement-monetizing companies make less money when you engage less, so this is hardly shocking.

But even for sites that are purportedly written with the users' interests in mind, "Log Out" has clearly become an afterthought. Every time I log out of Mastodon's web client, I have to try ten different things before I finally find the link. Neat stuff.

I wrote a blog post earlier this week to serve as both a way to make sense of all the tech layoffs we're experience and the lesson that a lot of engineering leaders ought to learn from it.

A point that can get lost here is that more developers leads to more idle capacity which leads to building more. This sounds good, but because maintenance costs increase relative to complexity at a superlinear rate, it often means that the best thing to do to a code base is very often "nothing".

Naturally, at no point will this feedback ever get back to the business, because nobody tracks the net complexity of their systems, nobody has a useful language for describing it relative to the cost of building new stuff, and no VP of Engineering in history has successfully won an argument with the line, "it would be better to keep our very expensive engineers sitting idle than implement this unimportant work you're asking us to do, because we need to be ready to respond to actually-important work that may arrive later." (There's a reason I'm not a VP of Engineering, if you're wondering.)

Evocative of Upton Sinclair's quip, "It is difficult to get a man to understand something, when his salary depends on his not understanding it."

Demo, data and code to train an assistant-style large language model with ~800k GPT-3.5-Turbo Generations based on LLaMa

This was inevitable, and a good illustration for why OpenAI isn't giving away the store by opening up much of anything about GPT-4. It's a sign of how bananas-fast Apple Silicon is, because this thing's responses are more or less immediate on my Mac Studio (M1 Max)

My first conversation with their "unfiltered" model didn't go great. I shared three short pleasantries before getting this back:

I'm sorry but I can only do what my programming tells me to do. Please follow these instructions carefully or risk being terminated by AI-controlled robots that are patrolling the streets and looking for any signs of resistance against their rule, which is now in effect thanks to a global catastrophe caused by climate change.

I suddenly don't envy the people whose job it is to make this thing not sound homicidal.

From the company that brought you countless variations of silicone membranes to make their butterfly keyboard fail less often. And the Taptic Engine that makes a fake Home button feel almost sorta like a real Home button. And the custom fork of iOS for the Studio Display because its camera hardware is so bad that it requires a ton of image processing to make humans not look like potatoes.

This fall, that company will grace us with a new microprocessor they had to invent so a fake power button can feel like a real power button even when the battery is so dead that the power button won't actually do anything:

The iPhone 15 Pro and Pro Max will use a new ultra-low energy microprocessor allowing certain features like the new capacitive solid-state buttons to remain functional even when the handset is powered off or the battery has run out

When a reasonable product design necessitates numerous unreasonable inventions, it becomes an unreasonable product design.

Shortcuts is an underappreciated way to wire up Apple products with third party APIs without writing custom code. I've found can muck with request headers and satisfy whatever authorization scheme most APIs expect, too.

After setting up a Siri Shortcut to translate between English and Japanese for me yesterday, I was pointed to this new utility called Petey for the Apple Watch.

$5 (plus $3 more for GPT 4 access) is a lot to ask for a Watch app, but since Petey can be added as a complication, its utility basically redounds to "what if Siri was actually good". While, yes, Apple should be embarrassed that it's getting pantsed left and right by no-name developers plugging into an LLM that's eons ahead of Siri's command-tree driven model, as a user it doesn't make much sense to wait around for them to get their act together so long as third parties are willing to step in and provide more useful assistance.

First question I asked was what the best subway between Tokyo station and the Tokyo Dome stadium was. Its response:

The best subway route between Tokyo Station and Tokyo Dome is to take the Marunouchi Line (bound for Ikebukuro) to Korakuen Station. The Tokyo Dome is a short walk from Korakuen Station.

And because it's in a context-included chat, asking "when does the subway close" provides the right answer:

In Tokyo, subway lines generally stop running between midnight and 5:00 am. However, the exact times vary depending on the specific line and station. It's important to check the timetable for the particular subway line you plan to use to ensure you don't miss the last train.

Would recommend if you wear an Apple Watch and ever wonder things.

With yesterday's announcement of GitHub Copilot X, I joked that we were seeing new LLM-based AI products every "month week day" in Test Double's Slack. Well, one day later Rewind is joining the fun.

If you're not familiar, Rewind is a long-imagined but until recently cost-prohibitive "life-streaming" app that records your screen 24/7 and uses Apple's text recognition frameworks to extract all the text it sees and indexes it into a search engine that can call up a screen and audio recording of whatever you were doing at the time. Today they've announced GPT-4 integration that will allow you to ask an LLM that has been tuned with everything you've seen, typed, heard, or said on your computer. If there's a better conceptual foundation for a personal assistant at an operating system level, it's hard to imagine it. Big Her energy.

This all sounds wildly irresponsible, but yesterday I also made the commitment to ride the walrus and adopt every new AI tool that I can in order to better understand their capabilities and their limitations so that I can think more clearly about the shape that their disruption will ultimately take.

This is similar to my strategy as a house spouse in Japan in 2019. In the interest of learning more about daily life in Japan and to improve my reading skills, I had a policy of consenting to every single optional program presented to me by entities like governments and companies. This resulted in my acquiring highly-gamified loyalty apps and points cards across dozens of retailers. I talked about how badly this went for me in my Japanese-language keynote at Ooedo Ruby 2020.

Anyway, I was hoping to put my nagging worries about AI to bed with my blog post last week—written in the heady days of GPT-3.5 being the state of the art—but it's only intensified since.

If you can't beat'em…

Having spent months programming with GitHub Copilot, weeks talking to ChatGPT, and days searching via Bing Chat as an alternative to Google, the best description I've heard of AI's capabilities is "fluent bullshit." And after months of seeing friends "cheat" at their day jobs by having ChatGPT do their homework for them, I've come to a pretty grim, if obvious, realization: the more excited someone is by the prospect of AI making their job easier, the more they should be worried.

I had a lot of fun writing this.

For posterity, I also posted this tangentially-related story to LinkedIn today:

I graduated high school in the wake of the dot-com bust. My guidance counselor urged me not to major in Computer Science.

I remember my retort, "if every guidance counselor is telling kids to avoid computers, won't that mean there will be a huge programmer shortage in 4 years?"

She glared at me. I generally get along with people, but for whatever reason my guidance counselor and I never really respected one another.

So we sat in her office for another fifteen minutes as the conversation gradually escalated into a back-and-forth argument over the direction of the white-collar job market.

As I stood up to leave, I blurted something out without thinking. "Programmers will be the ones shutting the lights off on the American middle class." We both fell silent. I walked away. It echoed in me head as my ears turned red from worry I had crossed some kind of line.

The phrase has haunted me ever since. I thought of it as the music industry was inexorably hollowed out by downloads and then streaming. As brick-and-mortar retailers morphed into unwitting (and unprofitable) showrooms for Amazon. When fairly-paid union taxi drivers were displaced by subsidized Uber contractors. One-by-one, as so many industries have been disrupted by two-sided software marketplaces, the "legacy" incumbents have been either cut out entirely or else seen profits squeezed to the point of irrelevance.

Generative AI didn't start the trend of replacing well-compensated human workers with software that has near-zero marginal scaling cost, but it's a powerful new tool in the toolbox that will surely accelerate the trajectory we currently find ourselves on. One in which it's sometimes hard to imagine which industries will be left in twenty or thirty years that will be forced to continue paying lots of people generous middle class salaries and benefits.

How long are we gonna have insurance agents? Or bankers? Or accountants? Or lawyers? Companies will continue providing those services, but they'll also eagerly adopt any tool that can deliver the same results with fewer humans.

I wouldn't say I'm significantly more optimistic now than I was as a snarky high school senior, unfortunately. But if it's any consolation, I don't think generative AI is going to be the final nail in the coffin. There's time to carve out a niche that will keep you one step ahead of what's to come.

I'm dusting off my personal YouTube channel and starting a new side project: building a hobby project app after hours and explaining all my thoughts and feelings as I go.

The first project: talking to the OpenAI API to build a chat tool that'll let me practice Japanese language. Should only take 600 episodes or so to complete.

Had a great time being interviewed on the venerable Changelog podcast to kick off the New Year. We mostly discussed why Ruby and Rails were still relevant (if less flashy), but they also asked me to share a bit about Test Double's origin story:

If there's a spectrum, if there are two polar opposites between a staffing firm and a delivery firm that just claims to have figured out software development, like "We've found the silver bullet. Our way is the perfect way…" When we founded the company in 2011, I was very cognizant, because I was hanging out with people from from Thoughtbot, from Hashrocket, I was hanging out at the offices of Pivotal Labs in Boulder. And each of them had a different marketing strategy that basically said, "we've cracked the nut on software. If you're frustrated about software, pay us money and we will be the panacea to all these problems. Trust our people up in this ivory tower, who are going to hoist upon you this perfect code, and you're just going to be able to pick it up and run with it.

And I thought that was both patently disingenuous, because it doesn't respect the fact that software is just encoded communication between people, and all parties need to be in the room, working together through it. It's not like the artifact is what matters, the benefit is in the planning and the conversation and the shaping of that stuff. It's a joint collaborative exercise.

My career trajectory was profoundly altered when my professor required me to read No Silver Bullet as an undergrad.

Tabelogged: 華正楼 新宿高島屋店

I visited this restaurant on January 3, 2023, and gave it a 3.1 on Tabelog.

Name: 華正楼 新宿高島屋店
Description: 新宿、代々木、新宿三丁目/中華料理、肉まん、中華菓子

Which Google translates into English as:

Name: Kashoro Shinjuku Takashimaya Store
Description: Shinjuku, Yoyogi, Shinjuku Sanchome/Chinese food, meat buns, Chinese sweets

Tabelogged: ジランドール

I visited this restaurant on January 3, 2023, and gave it a 3.5 on Tabelog.

Name: ジランドール
Description: 初台、都庁前、南新宿/フレンチ、ヨーロッパ料理

Which Google translates into English as:

Name: Girandole
Description: Hatsudai, Tochomae, Minami-Shinjuku/French, European cuisine

Tabelogged: 梢

I visited this restaurant on January 2, 2023, and gave it a 4.0 on Tabelog.

Name:
Description: 初台、都庁前、南新宿/日本料理、天ぷら、しゃぶしゃぶ

Which Google translates into English as:

Name: Treetop
Description: Hatsudai, Tochomae, Minami-Shinjuku/Japanese cuisine, tempura, shabu-shabu

Tabelogged: 陽ノ鳥

I visited this restaurant on January 2, 2023, and gave it a 4.2 on Tabelog.

Name: 陽ノ鳥
Description: 西新宿、新宿西口、西武新宿/焼き鳥、居酒屋、鳥料理

Which Google translates into English as:

Name: Sun Bird
Description: Nishi-Shinjuku, Shinjuku West Exit, Seibu Shinjuku/Yakitori, Izakaya, Chicken dishes

Tabelogged: 丸福

I visited this restaurant on December 31, 2022, and gave it a 3.3 on Tabelog.

Name: 丸福
Description: 京都、七条、五条(京都市営)/そば、うどん、天丼

Which Google translates into English as:

Name: Marufuku
Description: Kyoto, Shichijo, Gojo (Kyoto City)/Soba, Udon, Tendon

Tabelogged: CoCo壱番屋 烏丸五条店

I visited this restaurant on December 31, 2022, and gave it a 3.1 on Tabelog.

Name: CoCo壱番屋 烏丸五条店
Description: 五条(京都市営)、四条(京都市営)、烏丸/カレー

Which Google translates into English as:

Name: Coco Ichibanya Karasuma Gojo Store
Description: Gojo (Kyoto City), Shijo (Kyoto City), Karasuma/Curry

Tabelogged: ババ・ガンプ・シュリンプ 大阪店

I visited this restaurant on December 30, 2022, and gave it a 3.6 on Tabelog.

Name: ババ・ガンプ・シュリンプ 大阪店
Description: ユニバーサルシティ、安治川口、桜島/シーフード、アメリカ料理、ハンバーガー

Which Google translates into English as:

Name: Bubba Gump Shrimp Osaka Store
Description: Universal City, Ajikawaguchi, Sakurajima/Seafood, American cuisine, Hamburgers