🕯青灯小馆 · La Lámpara Verde · The Green Lamp

青灯小馆 La Lámpara Verde The Green Lamp

一盏灯,一杯茶,三种语言里写下来的零碎时光。 Una lámpara, un té, retazos de tiempo escritos en tres lenguas. A lamp, a cup of tea, scraps of time written down in three languages.

Valencia, ES · (原 Hangzhou, CN — Londres 一阵 — 2021 落脚) 在做 自由本地化 · 偶尔写代码 建站 2023-04 · 手搓 HTML,没用框架 更新

关于 / Sobre / About #

你好,我叫林知远,朋友叫我"小Q",网上挂着的旧 ID 是 qingdeng(青灯)。1993 年生在杭州城西,离西溪不远的地方,小时候常去蒋村的菜场买毛豆。后来去伦敦念了语言学硕士,写了一篇关于汉西对比中"时态"如何不存在的论文(那玩意现在被我塞在抽屉最深处了,不忍卒读)。

2021 年夏天,我在伦敦把租约退了,扛着两个箱子飞到瓦伦西亚——理由很俗:物价、阳光、海。这一住就是五年。现在白天接本地化的活儿(中文⇄英语⇄西班牙语,最近 Latin American Spanish 的活越来越多),晚上写点自己的东西,偶尔做菜,偶尔在 Ruzafa 的酒吧找朋友喝 vermut。

这个站没有评论区、没有 cookie、没有追踪、没有 newsletter 弹窗、没有 AI 生成的文章。它就是我写字的角落,慢慢更新。如果你正好路过,喝杯茶就走,也好。

— Q.,写于 2026 年春末,瓦伦西亚 Carrer dels Tomassos 42 三楼小书房

Hola, me llamo Lin Zhiyuan, los amigos me dicen "Q", y mi viejo nick por ahí es qingdeng ("lámpara verde" en chino). Nací en 1993 en el oeste de Hangzhou, cerca del humedal de Xixi. De pequeño iba con mi abuela al mercado de Jiangcun a comprar habas frescas. Más tarde hice un máster de lingüística en Londres y escribí una tesis insoportable sobre por qué el sistema de tiempos verbales del español no encaja con el chino. Está en un cajón. Mejor no la busques.

En el verano de 2021 dejé Londres y aterricé en Valencia con dos maletas. Razones poco originales: el precio, el sol, el mar. Llevo aquí cinco años. De día hago localización (chino⇄inglés⇄español, últimamente bastante español de América), de noche escribo cosas mías, cocino, y a veces bajo a Ruzafa a tomarme un vermut con amigos.

Esta web no tiene comentarios, ni cookies, ni rastreadores, ni pop-ups para suscribirte a nada, ni texto generado por IA. Es el rincón donde escribo a mi ritmo. Si pasas por aquí, tómate un té y sigue tu camino. Sin más.

— Q., finales de primavera de 2026, Valencia, Carrer dels Tomassos 42, 3º.

Hi, I'm Lin Zhiyuan. Friends call me "Q." Online I go by qingdeng (which means "green lamp" in Chinese). Born 1993 in west Hangzhou, near the Xixi wetland. As a kid I'd tag along with my grandmother to the Jiangcun market to buy fresh edamame. Later I did a master's in linguistics in London and wrote an unreadable thesis on why Spanish tense doesn't map to Chinese aspect. It lives in a drawer. Don't ask.

Summer 2021 I gave up the London lease and flew to Valencia with two suitcases. Reasons were boring: rent, sunlight, the sea. Five years later I'm still here. Days I freelance localization (Chinese⇄English⇄Spanish; lately more Latin American Spanish than I expected). Evenings I write things, cook, occasionally walk down to Ruzafa for a vermut with friends.

This site has no comments, no cookies, no tracking, no newsletter pop-ups, and nothing generated by AI. It's the corner where I write, slowly. If you happen to be passing through, have a cup of tea and go. That's enough.

— Q., late spring 2026, Carrer dels Tomassos 42, 3rd floor, Valencia.


📮 [email protected] · 🪪 PGP 0xA94F 2C7B

目录 / Índice / Contents #

/now #

nownownow.com 启发的页面。我现在在做什么。 Página inspirada por nownownow.com. Lo que estoy haciendo ahora. A /now page: what I'm up to lately.

最后更新 / Última actualización / Last updated:

  • 在做一本墨西哥推理小说的中译本,作者 Élmer Mendoza。第三遍校对中,截稿 6 月 15 日,已经梦到主人公三次了。
  • 每周三晚去 Carrer de Cuba 那家叫 El Tío Pepe 的小酒馆,跟一个加泰罗尼亚朋友学加泰语。学到第八节课,还在挣扎 l·l 怎么发。
  • 读:Anne Carson《Eros the Bittersweet》,慢得像在啃石头,但很好。
  • 不读:任何讲生产力的书。够了。
  • 身体:去年冬天扭了脚踝,目前每天傍晚沿 Turia 公园慢跑 4 公里,膝盖在抗议。
  • 戒掉:刷视频。已经第 47 天没装 TikTok 了。
  • 没戒掉:咖啡。一天三杯,第三杯一定是 cortado。
  • Estoy traduciendo al chino una novela negra mexicana de Élmer Mendoza. Tercera revisión, entrega el 15 de junio. He soñado con el protagonista tres veces.
  • Los miércoles por la noche bajo a El Tío Pepe (Carrer de Cuba) y un amigo catalán me da clase de catalán. Octava clase. Sigo sin pronunciar bien la l·l.
  • Leyendo: Eros the Bittersweet de Anne Carson. Va lento como masticar piedra. Pero está muy bien.
  • No leo: nada sobre productividad. Ya basta.
  • Cuerpo: torcedura de tobillo del invierno pasado en recuperación. Trote suave de 4 km por el cauce del Turia al atardecer. La rodilla protesta.
  • Dejé: hacer scroll. 47 días sin TikTok.
  • No dejé: el café. Tres al día. El tercero, cortado, sin discusión.
  • Translating an Élmer Mendoza Mexican noir into Chinese. Third pass, deadline June 15. I've dreamt about the protagonist three times.
  • Wednesday evenings I walk down to El Tío Pepe on Carrer de Cuba and a Catalan friend teaches me Catalan. Eight lessons in. The l·l still defeats me.
  • Reading: Anne Carson's Eros the Bittersweet. Slow as chewing rock. Worth it.
  • Not reading: anything about productivity. Enough.
  • Body: still recovering a winter ankle sprain. Easy 4 km jog along the Turia at dusk. The knee complains.
  • Quit: doomscrolling. 47 days without TikTok.
  • Did not quit: coffee. Three a day. Third one is always a cortado.

下次更新预计 6 月底。如果这页面看起来又过时了,那我可能在某个海边发呆。 Siguiente actualización prevista para finales de junio. Si esto parece obsoleto, igual estoy mirando el mar en algún sitio. Next update late June, probably. If this looks stale, I'm likely staring at the sea somewhere.

/journal #

长一点的东西放这里。写得慢,按月算不上日。每篇标了语言。 Aquí van los textos largos. Escribo despacio: meses, no días. Cada entrada lleva su idioma. Long-form stuff lives here. I write slowly — months, not days. Each post is tagged by language.

2026-04-18 zh

第七次搬家,我把那张椅子留下了

关于在瓦伦西亚第七次搬家。一些东西扔了,一些东西没舍得扔,一些东西自己消失了。

→ 读全文
2026-03-02 es

Tarde en el huerto de naranjos

Un sábado de marzo bajamos en bici a Alboraya. Lo que pasa cuando una se sienta debajo de un naranjo y deja de pensar.

→ leer entero
2026-01-29 en

Why I finally deleted Twitter (and what I do instead)

Not a productivity sermon. Just an honest accounting of what I gained, what I lost, and the small awkward gap left behind.

→ read
2025-11-12 zh

用 Rust 重写小工具的失败回忆

一个晚上的冲动,三个月的折腾,最后回到 50 行 Python。但我不后悔。

→ 读全文
2025-09-28 zh

给我妈翻译《海边的卡夫卡》的一个早上

她不读村上,但那天她想知道我每天到底在干嘛。我念给她听。

→ 读全文
2025-08-04 es

Taipéi bajo la lluvia, dos veces

Volví a Taipéi en julio después de seis años. Llovía igual. Yo era otro.

→ leer entero
2025-06-19 en

Notes from the London Underground, six years late

I kept a moleskine on the Piccadilly line in 2019. I found it in a box. Some of it still rings true.

→ read
2025-05-07 zh

母语是什么时候开始变陌生的

第六年了。某个下午我对着"踟蹰"两个字发呆,像看一个不太熟的远房亲戚。

→ 读全文
2025-03-22 es

Una hora en el Mercadona de mi calle

Etnografía del supermercado más previsible de España. Y por qué he aprendido a quererlo, casi.

→ leer entero
2025-02-14 en

On translating a writer who refuses to be translated

What do you do when the author hates the idea of you existing? You keep going, carefully.

→ read
2024-12-01 zh

瓦伦西亚的冬光,和一锅没煮好的粥

第一次一个人过冬至。粥煮糊了。海是蓝的。这两件事不矛盾。

→ 读全文
2024-10-08 es

Por qué las Fallas me dan miedo (y por qué vuelvo cada año)

Fuego, ruido, multitud, y al final, una calma que no se encuentra fácilmente.

→ leer entero
2024-07-21 en

My grandmother's knife

It travelled from a kitchen in Hangzhou to one in Valencia. I don't know how to sharpen it. I'm trying to learn.

→ read
2024-04-30 zh

不看新闻的第三百天

不是逃避,是换个法子知道事情。结果世界没有比我以为的更好或更坏。

→ 读全文
2024-02-09 es

Tres Año Nuevo en una semana

El gregoriano, el chino y uno mío inventado. Tres comienzos no son demasiados.

→ leer entero
2023-11-14 en

Why I made this site by hand

Static site generators are great. I just wanted to remember what it felt like to write a single HTML file.

→ read
2023-08-03 zh

从伦敦走的那天,下了一整天的雨

不是矫情。真的下了。我把围巾忘在了 Earl's Court 的咖啡馆。

→ 读全文

jǐ · 第十七篇

第七次搬家,我把那张椅子留下了

四月的瓦伦西亚已经穿短袖了。十一号那天我把第七次搬家的最后一只箱子推进新公寓的门,是 Carrer dels Tomassos 42 三楼,电梯只到二楼半,剩下半层得自己扛。我坐在地板上喝了一瓶气泡水,看着那只我没带过来的橡木旧椅子在脑子里继续坐着——它还在 Russafa 的旧屋客厅,靠着南窗,前任房东 Pilar 说她会留着,"反正我那间没家具"。

那把椅子是 2022 年冬天我在 Cabanyal 的 Rastro 周日跳蚤市场上买的,10 欧。一个上了年纪的老头卖给我的时候说:"Es de mi suegra. Aguanta." 我婆婆的,能撑得住。它真的撑住了——三次搬家、一次漏水、一只猫在上面磨爪子磨了一整个冬天。坐垫早就塌了,我用一床折成四折的旧毛巾垫着。它不漂亮,木头也不是什么名贵料子,腿上还有一处被烟头烫过的黑印。但它有一种东西,我说不上来——是某种"已经认命"的安稳。

这次新房子小,少了一个房间,我决定不带它走。决定的那天我坐在它上面坐了很久,像在一个老朋友家里待最后一会儿。然后我给 Pilar 发消息说:"La silla se queda. Si no la quieres, regálala a alguien que la necesite." 椅子留下了。如果你不要,送给需要的人吧。

她回我说好。然后又补一句:"Las sillas viejas tienen memoria, ¿sabes?" 旧椅子有记忆,你知道吧?

清单上的取舍

搬家这件事我已经做过六次了,伦敦三次,瓦伦西亚四次(这是第四次)。每一次的清单都比前一次短。

2018 年我从杭州搬去伦敦,行李是 32 公斤箱子两只加一个登机包,里面塞了:八件衣服、四本书(《追忆似水年华》第一卷、《围城》、林达《扫起落叶好过冬》、一本旧版的 Strunk & White)、一台 13 寸的 MacBook Air、一袋我妈非要塞的萧山萝卜干、两块她织的围巾、一只水晶杯——那杯子在 Heathrow 检查行李的时候碎了,我在传送带边上眼眶有点热但没哭。

2021 年从伦敦飞瓦伦西亚的时候,行李涨到了三个箱子加两个背包,里面多了:四年攒下来的笔记本(27 本,全是手写)、一台 ThinkPad、一只磨豆机、四个 LP(其中一个是 Nick Drake 的 Pink Moon 二手版本,封面有水痕)、一套不锈钢锅。书没带,全寄了海运,三个月后才到。

2022 年从瓦伦西亚老城搬到 Russafa,请了一个移民兄弟开面包车帮忙,60 欧搞定,一上午。那次我开始扔东西。扔了:四件不再合身的西装外套、一台坏掉的破壁机、九成的旧笔记(我把里面我觉得还想留的句子抄到了一本新本子上,剩下的整箱送到了图书馆门口的回收站)。

2023 年冬天我搬出 Russafa,搬到 Cabanyal 的海边小屋住了八个月。那次搬的时候,我开始故意不带东西。我对自己说,先看看少了什么活不下去。结果发现:一台电脑、两身换洗衣服、一只锅、一把刀、一床被子、一沓纸——就够了。其他都是装饰。

2024 年的搬家最戏剧化:海边那间小屋夏天天花板开始漏水,房东踢皮球,我两周内打包跑路,搬到 Benimaclet。那次我把 Cabanyal 的所有家具都送给了楼下学西班牙语的智利学生 Camilo。他用奶奶的口音对我说:"Gracias, hermano, esto me cambia la vida." 谢谢兄弟,这改变了我的人生。一张二手床。改变人生。语言有时候大得让人不好意思。

到这一次,第七次,我清单上只剩:

  • 电脑一台、外接键盘一个
  • 书 47 本(已经反复筛选过的)
  • 衣服两箱(其中一箱是冬装,七个月不开)
  • 厨房:奶奶那把菜刀、一只铸铁锅、一只汤锅、八个碗(两套四件,我喜欢成对)、一壶、一只手冲滤杯、一只磨豆机
  • 笔记本若干、纸张一摞
  • 一张床、一张桌、两把椅子(不是 Pilar 那把)
  • 没了

就这么多。三十二岁了,全部家当一辆中型货车装得下,还能再塞个吉他箱。

那些自己消失的东西

有意思的是,搬家这件事不只是关于"扔什么"。每搬一次,总有些东西自己消失。不是丢,是消失——最后一次见到它是在某个箱子的某一层,下次再找已经没了。

2018 年冬天,我妈塞给我的那双毛线手套——粉灰色,左手食指绕了一道补线。它在伦敦第一年的春天消失了。我至今记得它,但完全没法解释它去哪了。

2020 年我在伦敦买的一只小羊驼笔筒,从墨西哥城寄来的,4 镑。它跟我去了瓦伦西亚,在 Russafa 还摆在桌上,后来某次搬家就没了。我搜遍了所有箱子。

2023 年那本写满了 2019 年伦敦地铁笔记的本子(蓝色封面,A6,硬皮),它当然不会被我故意扔,但我现在打字这一刻,它确实不在我的书架上、抽屉里、储物箱里。它哪去了?

每一次搬家,我会发现一两样这种"自己消失了"的东西。我一开始很懊恼,后来不那么在意了。它们去了一个地方。或者,更准确地说,它们成了"曾经有过"。这件事不需要被解释。

椅子留下,重量也留下

新公寓的客厅现在空得有点过分。地板是老式的水磨石,进门那块掉了一角,露出底下灰灰的混凝土。窗户朝西,下午四点开始一片金色。我搬来第三天,在阳台上看到一只白头小鸟(应该是 mosquitero ibérico),它停在晾衣杆上看了我十秒钟,然后飞走了。

我没买新椅子。我决定先这么坐着——地板、靠墙、有时候搬一只凳子到阳台。我想试试看,没有那把已经认命的椅子,我自己能不能也学着那么坐。

Pilar 上周三发了张照片给我,说椅子被 Russafa 楼下的咖啡馆老板娘 Marta 要走了,放在店门口当户外座椅。她说:"Ahora todo el barrio se sienta en ella." 现在整条街都坐它了。

挺好的。一把椅子的下半生应该是这样的:被很多屁股坐过,被阳光晒过,听过更多次的"buenos días"。

而我搬到了一个新地方,重新学着怎么坐着不动。

2026-05-09 补记: 朋友 G. 读完文章给我发消息说:"你写的不是椅子。" 我说我知道。她说:"你知道你知道吗?" 我说大概知道。她回了个表情包。我们就这样过了一个下午。
#搬家 #valencia #物 #长文 ← 回 /journal

apuntes · marzo

Tarde en el huerto de naranjos

Era el primer sábado de marzo y N. me llamó por la mañana diciendo que sus piernas necesitaban salir de Valencia. "Aunque sea diez kilómetros", dijo. Cogimos las bicis a las once y nos fuimos por el carril del Turia hacia el mar, y en vez de girar a Malvarrosa seguimos hacia el norte, por la senda que cruza el río seco y se mete entre los huertos de Alboraya. Hacía un sol de esos que en marzo te engañan: piel caliente, viento frío.

Paramos al borde de un campo de naranjos. Naranjos viejos, troncos retorcidos, ramas tan bajas que una podía sentarse debajo sin agacharse mucho. Era propiedad de alguien, claro, pero la valla estaba caída en un tramo y N. dijo "venga" con esa autoridad tranquila de la gente que creció en el campo. Dejamos las bicis apoyadas en un olivo flaco al borde de la acequia y entramos.

El suelo estaba lleno de naranjas caídas. Algunas reventadas, otras enteras, todas en distintos estados de fermentación. Olía agridulce, como un licor barato pero honesto. Las abejas iban de fruta caída a fruta caída, lentas, gordas, satisfechas.

N. se sentó debajo de un árbol, sacó una manzana de su mochila, y empezó a comerla sin decir nada. Yo me senté a unos metros, apoyado en otro tronco. El silencio entre los dos era cómodo. Hay personas con las que el silencio pesa, y otras con las que el silencio pesa menos que cualquier conversación. Con N. siempre fue lo segundo.

El experimento de no pensar

Llevo unos meses intentando algo que sé que suena ridículo cuando se dice en voz alta: estoy intentando aprender a no pensar. No hablo de meditación zen ni de estado de flujo ni de ningún concepto importado de manuales de bienestar. Hablo de algo más cutre: simplemente parar el monólogo interno por unos minutos al día.

Resulta que es muy difícil. Puedo cerrar los ojos y respirar y al cabo de cuatro segundos ya estoy pensando en qué cenar, o reproduciendo una conversación con mi madre de hace tres años, o calculando si tengo bastante para pagar la fianza del nuevo piso. La cabeza es un perro que no se cansa.

Pero ese sábado, debajo del naranjo, sin proponérmelo, lo conseguí. Un rato. Quince minutos, quizás veinte. No fue místico. No vi nada. No sentí nada profundo. Simplemente: el sol calentando el lado izquierdo de mi cara, una abeja zumbando muy cerca y luego alejándose, el ruido distante de un tractor, una sombra que se movía sobre la hierba, mi propia respiración que yo escuchaba pero ya no pilotaba. Y eso fue todo.

Cuando volví a "estar pensando" (la frontera fue clarísima, como salir de un agua tibia), me di cuenta de que tenía la mano abierta sobre la tierra. Polvo en los dedos. Una hormiga subiendo por mi muñeca.

Lo que dijo N.

De vuelta hacia las bicis, N. me preguntó en qué pensaba. Le dije la verdad: que en nada, durante un rato. Asintió como quien recibe una noticia razonable.

Mi abuela decía que los huertos de naranjos son los lugares más generosos del mundo. Te dejan entrar, te dejan sentarte, te dejan no hacer nada, y encima al irte puedes coger una naranja del suelo si tienes hambre. Pocos sitios son así.

N., volviendo en bici, sin haberlo planeado

Cogí una. Estaba un poco pasada pero todavía dulce, casi licor. La pelé con las uñas mientras pedaleábamos por la senda de vuelta. Las manos me olieron a azahar el resto del día.

Cosas que no son productivas pero deberían serlo

Hago una lista mental, mientras pedaleamos:

  • Sentarse debajo de un árbol que no es tuyo durante veinte minutos.
  • Comer una fruta caída.
  • Dejar que una hormiga te suba por la muñeca sin reaccionar.
  • Preguntar a alguien en qué piensa, esperar la respuesta, no decir nada después.
  • Saber que un huerto es generoso y dejarlo serlo.

Cuando llegamos a Valencia, eran casi las cuatro. N. se fue al mercado de Russafa, yo subí a casa, escribí estas líneas en el cuaderno de cocina (no encontré el otro), y luego me eché una siesta de cuarenta y cinco minutos sin sueños.

Si estás leyendo esto en una pantalla un martes a las ocho de la tarde, en una casa que no es tuya, después de un día que no entiendes del todo, mi único consejo no pedido es: busca un naranjo. No tiene que ser literal. Pero busca uno.

— Q.

#valencia #caminar #amistad #es ← /journal

an honest accounting

Why I finally deleted Twitter (and what I do instead)

I had an account on Twitter for fourteen years. I joined in late 2011, in a Hangzhou dorm room, because a friend with a VPN told me there was a guy named Teju Cole posting "small fates" — one-line news translations from Lagos — and I should read them. I did. They were the best thing I'd read on a screen in months. I made an account that night. I did not post for three years.

Eventually I posted. Translations of Bei Dao. Snippets of Cervantes I was struggling with. A photo of a moth on my window in Camden. Replies to people I would never meet but somehow felt I knew. Over fourteen years I wrote about 19,000 tweets, accumulated about 2,400 followers (a small, weird, multilingual crowd), and got into roughly five real fights, three of which I deeply regret.

I deleted the account on November 7, 2025. I exported my archive first — a 412 MB zip that sits on a dusty corner of my SSD and that I have not opened since. I'm writing this in late January, almost three months in, and I want to do something I rarely see done honestly: an actual accounting. What I gained, what I lost, and the small awkward gap left behind.

I'll start with what I lost. Because it's real.

The first thing was a low-grade hum in my brain. Not pleasant exactly, but familiar. Like a fridge in a room you've stopped noticing. For about six days after deleting, I'd reach for my phone every fifteen minutes and have nothing to do with it. I'd unlock it, stare, lock it. The fridge was off, and I'd been listening to it for fourteen years.

Second: I lost a kind of weak-tie social fabric I had not previously named. There was a translator in São Paulo, a poet in Edinburgh, a copy editor in Lima, a sound engineer in Berlin — people I never met, never even DM'd much, but whose lives I followed in fragments for years. When their child was born I knew. When their cat died I knew. When their book came out I bought it. That fabric is gone now, and there is no clean replacement for it.

Third: I lost professional visibility. I'm a freelance translator. About 30% of my work in the last five years came from people who saw me posting careful little notes about Spanish causative constructions or the way Chinese aspect markers bleed into reportage. That stream is over. I'm not going to lie and say it doesn't matter. Two clients I would have liked to work with this spring went elsewhere because they couldn't see what I was doing.

Fourth, and most embarrassingly: I lost an audience for my own jokes. I think I'm funny in three languages. I am almost certainly only funny in one, but the data was inconclusive and the platform let me pretend.

Now what I gained.

The day after I deleted the account, I read a book for two hours without picking up my phone. This was not impressive on its own — I read books all the time — but the quality of the reading was different. I noticed sentences. I made a margin note. I disagreed with a paragraph and went back to read it again. My attention, which had been a wide shallow river for years, was suddenly a narrow deep one for an afternoon. That is not a metaphor I'm in love with, but I can't think of a better one yet.

By week two I had finished translating a chapter of the Mendoza novel that had been stuck for months. The chapter wasn't hard. I had simply been giving it 12-minute sessions interrupted by 2-minute sessions of refresh-refresh-refresh, and 12-minute sessions don't add up to good translation. They add up to drafts that look fine and read terribly.

By week six I had written four pieces longer than 1,500 words. (One of them is this one.) I had not done that in any six-week stretch since 2019.

I started noticing things again. I noticed the woman who runs the corner bakery is recovering from something — she's slower, holds the counter when she stands up. I noticed my downstairs neighbour has started practicing the tres at six in the evening, and is improving. I noticed I had three ingrown nails on my left foot, which apparently I had had for some time and not registered, because my body had been a thing I checked in on between scrolls.

And — this was the surprise — I started writing letters again. Actual emails, three to seven paragraphs, to specific people. I sent eleven of them in the first month. I got eight back. Two of those eight became the start of conversations I'm still having.

The awkward gap, named

Here's the thing nobody warned me about: there is a hole shaped exactly like Twitter in my day, and nothing I have tried fills it the same way. Reading a book doesn't. Going for a walk doesn't. Even the letter-writing doesn't — not in the same micro-doses, the way Twitter could fill three minutes between two phone calls.

What fills it, sort of, is doing nothing. Standing on the balcony for two minutes. Watching the cat on the roof opposite. Looking at my own hand. I am, in middle-aged seriousness, learning to do nothing. It's a discipline. It has taken me three months to be even slightly competent at it.

What I do instead, in concrete terms

  1. I read RSS through a self-hosted FreshRSS instance. About 80 feeds. I check it once a day, in the morning, with coffee. I close the laptop when I'm done.
  2. I write to people. A real email or letter to a real person, on average twice a week. Some are short. Some are long. None are "content".
  3. I keep a small private blog (this site, journal section) and write on it about every two to four weeks. No metrics.
  4. For news, I subscribe to two weekend papers (one Spanish, one in English) on paper. Reading news once a week, on actual paper, has made me feel — and I know this sounds suspicious — better informed than I felt scrolling daily.
  5. For weak-tie connection, I'm trying Mastodon (a small instance, ~600 users, in Spanish). Honest report: it's quieter, kinder, and slower. I don't yet love it. I no longer hate it. I think we'll be OK.
  6. For professional visibility, I'm doing the dumbest thing imaginable: emailing seven editors a year and saying "hi, I exist, here's my recent work." Six replied this year. Three offered work. The math is at least defensible.

What I'm not going to claim

I'm not going to claim I'm happier. The data is mixed and three months is short. I had a bad week in mid-December that had nothing to do with Twitter and everything to do with grief, and I would have spent it on Twitter doomscrolling if I still had one, and that would have been the wrong thing. So in that sense, sure, I'm slightly less worse during the bad weeks. But the good weeks are not measurably better.

I'm not going to claim it's morally superior. Some of my favourite writers are still on there, doing good work, and I'm not going to pretend I've ascended. I just chose to go.

I'm not going to claim everyone should do this. People with smaller networks than mine, people for whom Twitter is the only English-language world they have access to — for them the math is different and they don't need a guy in Valencia telling them to log off.

What I will say

I will say this: I had been telling myself for at least three years that I was going to quit. I never did, because the cost of staying was always slightly diffuse and the cost of quitting was always slightly concrete (lost contacts, lost friends, lost work). And then, on a Tuesday, the diffuse cost became concrete enough — I had spent forty minutes reading replies to a man I'd never met arguing with a woman I'd never met about a movie I had no interest in — and I deleted the account in about ninety seconds, before I could change my mind.

I'm okay. I miss things. I'd do it again.

If you've read this far and you're wavering, I'll only say: try a week. Seven days. Tell yourself you can come back. Most people who try a week do not need a sermon at the end. They will know.

P.S. I am aware that publishing this on my own site, hoping someone will read it, is a small irony. I noticed. I'm doing it anyway.

#attention #social-media #en ← /journal

technical · 自嘲

用 Rust 重写小工具的失败回忆

这事得从 2025 年 8 月一个失眠的晚上说起。

那天晚上我躺在床上,刷到一篇博客(已经忘了哪个),主旨大致是"如果你的命令行工具用了超过 200ms 启动,你就在浪费用户的人生"。我立刻打开终端,给我自己写了五年的那个小工具tlog跑了一遍 time tlog --help。结果是:

real    0m0.247s
user    0m0.198s
sys     0m0.041s

247 毫秒。我浪费了我自己的人生。

这是一个 50 行的 Python 脚本,干的事情极其朴素:扫一个我每天写笔记的目录(约 1,800 个 markdown 文件),找出今天编辑过的、加上昨天到今天 git 修改过的,按时间排序,输出成一行行可点击的路径,丢到 fzf 里让我选。每天大概用 30 次。

大部分时间花在 Python 解释器启动 + 加载 pathlibsubprocessargparse。脚本本身的逻辑大概只跑了 30ms。

那一刻我做了一个事后看来非常 2025 年的决定:我要用 Rust 重写它。

Day 0 - 5:天真的兴奋

第一天我啃完了 The Rust Programming Language 第一到第十章,写了一个能 print "hello" 的二进制。第二天我学会了 clap。第三天我接入了 walkdir。第四天我发现 walkdir 在我的 1,800 个文件上只比 Python 的 pathlib 快 12ms,因为这个数据量根本到不了 IO 是瓶颈。

第五天我开始读 git2-rs 的文档。

第五天晚上我打开了第一瓶酒。

Day 6 - 30:和借用检查器拉锯

下面这段代码我写了三个版本才让 cargo build 通过:

src/scan.rs(第 23 版本)
pub fn scan_recent<'a>(
    root: &'a Path,
    cutoff: SystemTime,
    git_modified: &'a HashSet<PathBuf>,
) -> impl Iterator<Item = NoteEntry> + 'a {
    WalkDir::new(root)
        .into_iter()
        .filter_map(Result::ok)
        .filter(move |e| {
            e.file_type().is_file()
                && e.path()
                    .extension()
                    .map_or(false, |x| x == "md")
        })
        .filter_map(move |e| {
            let p = e.path().to_path_buf();
            let m = e.metadata().ok()?.modified().ok()?;
            if m >= cutoff || git_modified.contains(&p) {
                Some(NoteEntry { path: p, mtime: m })
            } else {
                None
            }
        })
}

这段东西在 Python 里就是:

tlog.py(5 行版)
def scan_recent(root, cutoff, git_modified):
    for p in Path(root).rglob("*.md"):
        m = p.stat().st_mtime
        if m >= cutoff or str(p) in git_modified:
            yield p, m

我并不是说 Rust 写错了——我现在回头看,这两段在表达力上没有差很多,Rust 那段甚至更明确(生命周期、迭代器、所有权全在脸上)。但我花了三个工作日在那段代码上,而 Python 那段我 2020 年某个早上喝着咖啡 8 分钟写完的。

更难绷的是 git 那部分。git2-rs 是 libgit2 的 Rust 绑定,文档严谨但举例稀缺。我想做的事在命令行里是:

git diff --name-only HEAD@{1.day.ago} HEAD

git2 实现是 60 行,包括 reflog walk、commit lookup、tree diff、迭代 deltas、字符串处理。每一步都是合理的。叠在一起就让人想哭。

Day 31 - 60:性能玄学

三十天后我有了一个能跑的版本。cargo build --release 之后跑一次 tlog-rs --help

real    0m0.011s
user    0m0.008s
sys     0m0.003s

11 毫秒。从 247 降到 11。我在心里庆祝了大概 20 秒。

然后我跑了完整的工作流(扫文件 + git diff + 输出排序):

real    0m0.094s    # Rust release
real    0m0.310s    # Python

94ms vs 310ms。三倍多。是的更快。但日常使用上,是不是真的"快得我能感觉到"?我做了个不严谨的盲测:连续 20 次按命令,每次手动数"一千零一"看到第几个数 fzf 出现。

结论:我感觉不出来。两个版本都是"按下回车,fzf 立刻出现"。

更难绷的是,那个 60 倍快的 --help 我每天用 0 次。我从来不打 --help。我打 tlog。两个版本打 tlog 的体感是完全一样的。

Day 61 - 90:维护成本咬人

真正让我崩溃的是九月的一个晚上。我想给它加一个新功能:"如果今天是周一,往前找一个工作日(周五)"。

Python 版本,我打开 tlog.py,加了 4 行:

if datetime.now().weekday() == 0:
    cutoff = cutoff - timedelta(days=2)

保存。下一次运行就是新逻辑。完。

Rust 版本,我打开 src/main.rs。我改完逻辑用了 4 分钟。我让 cargo build --release 编完用了 38 秒。我意识到我得在 cron 里更新二进制版本号、推送到我笔记本和台式机两台机器、还要更新 readme 里的 build 步骤。完整流程 11 分钟。

这事我每两周就会做一次(小调整、新过滤条件、新输出格式)。Python 版本:每次 1 分钟。Rust 版本:每次 11 分钟。

三个月里我累计在维护 tlog-rs 上花了多少?粗略估计 6 - 8 小时。我每天用它节省了多少?94ms 提升 × 30 次 / 天 = 每天 6 秒。三个月省下 540 秒,9 分钟。

我用 6 - 8 小时换来 9 分钟,外加感受到了"我在用 Rust"的快乐。

9 月底我把 tlog-rs 归档。回到 50 行 Python。

但我不后悔

这听起来像一个反 Rust 的故事,但其实不是。我学到了:

  1. 所有权、借用、生命周期,这三个概念现在在我脑子里是具体的,不是抽象的。我用 Python 写代码的时候,对"这个对象什么时候被释放"也开始有了肌肉感。
  2. Result<T, E>try/except 强得让我难受。回到 Python 之后我开始用 returns 这个库的 Result 类型写关键路径——这个习惯会跟我一辈子。
  3. 我对"一个工具值不值得用 X 重写"这个问题的回答从此严谨了。不要用编译时间换运行时间,除非你每天运行远多于编译。
  4. 50 行 Python 是工艺品,不是缺陷。

第四点最重要。我们生活在一个把 "rewriting it in Rust" 当作美德的时代。但工具的本分是被使用,不是被欣赏。我那 50 行 Python 已经服役了五年,每天 30 次,无故障,从未占过我超过 5 秒的注意力。这才是好工具。

那个 Rust 版本最大的问题,倒不是它慢——它快得像闪电——而是它需要我注视它。它要 build。它要部署。它要更新 dependency。它要在 macOS 和 Linux 上各编一份。它有它自己的脾气。

50 行 Python 没有脾气。它就在那里。它是一个仆人。

我现在写代码的标准多了一条:这个东西需要我注视它吗? 如果答案是"需要",那它最好真的值得。

#rust #python #工具 #zh ← /journal

家书 · 翻译

给我妈翻译《海边的卡夫卡》的一个早上

九月底我回了一趟杭州,住在我妈家——她还是西湖区那套九十平的两房,1998 年买的,当年贷款让我爸半夜翻来覆去。我爸三年前走的,房子没换,家具没换,只是我那间从前的卧室现在堆了她织毛线用的箱子。

回去第三天的早上,她在阳台上择空心菜,我在客厅地板上摊着两本书:林少华译本和原文(村上的英译本我没带)。我在翻一段我自己卡了三个月的话。我妈瞥了我一眼,说:"你每天对着电脑到底在干嘛?"

我说:"翻译。"

"翻啥?"

"村上春树。《海边的卡夫卡》。"

她"哦"了一声。然后停了一下,说:"那念给我听一段呗。我想知道你每天在干嘛。"

我妈是 1965 年生的,初中毕业。她最近读的"书"大概是 2012 年的《读者文摘》合订本。她在阳台上择菜,让我念村上春树。我楞了一下,然后翻开林译本,找了一段我自己很喜欢的——大岛先生在图书馆和卡夫卡讲话那段。

第一遍:照念

我念:"星期天下午图书馆几乎没有人。借书的人零星可数。'看书的姿势挺好。'大岛先生说,'你常看书?'"

我妈停下手里的活儿,抬头看我:"看书姿势好是啥意思?"

我说:"就是说他坐得直,专心。"

"那他就这么说不就行了。"

我笑了。我心想这老太太点出了一个我心里早有的不舒服——林译本这句太"翻译腔"了。我自己来肯定不会这么写。

我接着念。又念了三段,关于图书馆、关于猫、关于"另一个世界"。

我妈又停下来:"你说他爸是干啥的?"

"雕塑家。"

"他妈呢?"

"妈跑了。带着姐姐。他四岁。"

她沉默了半晌,把空心菜的根掐掉,说:"这小孩儿挺可怜啊。"

我说:"是。"

"那他后来好了没?"

这就是我妈的反应。她不在意叙事结构、不在意元小说、不在意"两个世界"的隐喻。她只在意那个孩子后来好了没。

第二遍:意译

我换了个法子。我合上书,开始用我自己的话讲。讲卡夫卡为什么离家、讲图书馆里那些人、讲乌鸦少年是谁。讲到中田老人,我妈来了精神:

"识字的事是怎么搞的?被天上掉下来的东西砸的?"

我说大概是这么回事。她说:"我们队里 80 年代有个老张也是这样。被牛踢了头,醒来不会说人话,只会哼曲子,一年才好。"

我说:"那不一样,他是天上落了银光,整片山的小孩晕倒了。"

"哦哟,"她说,"那是日本。日本怪事多。"

她择菜,我讲了一个多小时。讲到田村卡夫卡和佐伯小姐相认那段,她突然说:"停一下。你说她是不是他妈?"

我说:"书里没明说。"

"但是是吧?"

我说:"你觉得是就是。"

她说:"这就是你说的那种,'读者自己想'。我懂了。"

她从来没读过文学评论,但她一句话戳到了核心。我心里某个地方咯噔一下。

第三遍:她讲给我听

讲完之后我们都安静了一会儿,她择完了菜,洗手,倒了两杯凉白开。她坐到我对面的沙发上,喝了一口水,说:

"你知道吗。你爸出事那年,我也常常觉得有两个世界。一个是他还活着的,一个是他不在了的。我每天早上醒来要花两三秒钟分清楚自己在哪个里面。"

我没说话。

"刚才那个小孩,我懂的。不是因为我读过书。是因为人就是这样的。书写得对的话,谁都能懂。"

"妈,"我说,"你这话比我读过的所有评论都靠谱。"

她摆手:"别贫嘴。中午想吃啥?"

那本书后来

那一段卡了三个月的翻译,那天下午我一气呵成做完了。

不是因为我妈给了我什么"灵感"——这种说法太矫情。是因为她让我重新意识到:我翻这本书不是为了显得我懂村上,不是为了在某个译者圈子里得到认可,不是为了让译文优雅得没人挑得出毛病。是为了让一个像我妈那样的人,在某个下午择菜的时候,听到一段,能停下来,问"那他后来好了没?"

这是文学的工作。这也是翻译的工作。

我那天的笔记本上记了一句:

检验译文的标准之一:能不能念给我妈听。

这条标准这两年一直在我桌边。它救过几个段落。我希望它还能救更多。

献给 J.L.,1965-,杭州城西,至今每天清晨择两把菜。

#家 #翻译 #母亲 #zh ← /journal

crónica · viaje

Taipéi bajo la lluvia, dos veces

La primera vez que aterricé en Taipéi fue en julio de 2019. Llovía. Yo tenía veintiséis años, llevaba un máster a medio empezar y un corazón roto por motivos que ahora, con seis años de distancia, me parecen casi cómicos. La segunda vez fue en julio de 2025. Llovía igual. Yo tenía treinta y dos, una vida montada en otra ciudad y, en el bolsillo del abrigo de plástico que compré en la salida del metro, una nota de mi madre que decía: "Acuérdate de comer despacio."

Quiero escribir sobre las dos visitas a la vez, porque por separado no significan nada. Juntas, sí.

Primera vez · julio 2019

Bajé del vuelo en Taoyuan a las once de la noche. Cogí el metro hasta Taipéi Main Station, salí por la puerta equivocada, y me perdí treinta y cinco minutos buscando un hostal de Ningxia Road que estaba a cuatrocientos metros. Llovía. No tenía paraguas. Compré uno transparente en un 7-Eleven por sesenta y cinco TWD, lo abrí, se rompió a los dos minutos.

El hostal era una habitación con ocho camas. Dormí muy mal. Soñé con la chica que me había dicho que no me esperaría, soñé en mandarín, soñé que tomaba un examen al que llegaba tarde. Me desperté a las cinco. Bajé a la calle y caminé sin rumbo. Encontré un puesto de dou jiang (leche de soja salada) en una esquina, lo serví el dueño en un cuenco de plástico, comí de pie. Estaba tan bueno que me dieron ganas de llorar. No lloré. Pagué cuarenta TWD.

Esa primera mañana en Taipéi yo era una persona que se creía rota. Ahora, a la distancia, sé que no lo estaba. Estaba simplemente sin saber. Es distinto.

Pasé diez días. Subí al Elephant Mountain (llovía). Visité el Museo Nacional del Palacio (llovía). Caminé por Yongkang Street (llovía). Comí niu rou mian en un sitio sin nombre detrás de Shida Night Market (llovía y la sopa estaba demasiado caliente, me quemé la lengua, no me importó). Una tarde el sol salió diez minutos exactos. Lo recuerdo porque me quedé parado en mitad de un parque mirando hacia arriba como un idiota.

Me volví a Hangzhou con la sensación de no haber visto bien la ciudad. Era una ciudad de la que había oído hablar todo, en mandarín, en libros, en películas, y al verla me había parecido más pequeña, más cansada, más amable que en mis preconceptos. Eso siempre pasa con las ciudades de uno. Por eso uno no las ve bien la primera vez.

Segunda vez · julio 2025

Esta vez aterricé a las siete de la tarde, con sol, y por supuesto a las nueve ya llovía a cántaros. Cogí el metro, salí por la puerta correcta, y caminé sin perderme hacia un hotel pequeño de Zhongshan que había reservado por dos noches. Las otras siete las pasaría en una casa de Wenshan que me prestaba un amigo de un amigo de N.

Lo primero que hice, antes de deshacer la maleta, fue bajar a la calle a buscar un puesto de dou jiang. No el mismo, no me hagas caso a las simetrías baratas. Cualquier puesto. Encontré uno a tres minutos del hotel. La señora que lo regentaba debía tener setenta y muchos. Pedí el cuenco salado y un youtiao recién frito. Treinta y cinco TWD el cuenco, veinte el palillo. Los precios casi no habían subido. Eso me pareció, no sé, sospechoso y conmovedor a la vez.

Me senté en un taburete de plástico. Comí despacio (mamá, hecho). La señora me preguntó de dónde venía. Le dije: "De España, pero soy de Hangzhou." Me miró un segundo y dijo, en un mandarín muy del sur: "Ah, da igual. Aquí todos vienen de algún sitio." Y me sirvió media cucharada más de soja sin cobrarme. Esa frase la apunté en el cuaderno antes de irme a la cama.

El mismo café

El segundo día fui a buscar un café que en 2019 me había salvado una tarde. Estaba en Da'an, primer piso, ventanas grandes, sirven un oolong frío en jarra de cristal. Yo había estado allí leyendo Bolaño durante cuatro horas, por seis décadas centavos de café, mientras fuera caía un aguacero. La camarera no me había echado. Me había rellenado el agua tres veces. Esa tarde de 2019 fue, ahora que lo pienso, el momento exacto en que dejé de odiarme un poco.

El café seguía abierto. La camarera no era la misma. La música, sí — esa playlist de jazz japonés ambient que parece flotar más que sonar. Me senté en la misma mesa de la ventana. Pedí lo mismo. Saqué un libro distinto (Anne Carson en lugar de Bolaño). Y aquí viene la cosa importante:

No sentí nada.

O más bien: no sentí lo que esperaba sentir. No fue un golpe emocional. No fue un "wow, cuánto he cambiado". Fue, simplemente, una tarde tranquila en un café conocido. La camarera me sonrió cortés. Bebí oolong. Leí treinta páginas. La lluvia volvió y volvió a parar. A las cinco salí.

Caminando hacia el metro pensé: ¿por qué no he sentido nada? Y la respuesta llegó sin ceremonia: porque ya no estoy roto. Porque uno solo siente la simetría dramática cuando todavía está dentro del drama. Cuando ya no, los lugares se vuelven lugares. Esa es una de las recompensas más calladas de envejecer un poco.

Tres conversaciones

Voy a poner aquí, casi sin retoque, tres conversaciones que tuve esos diez días, porque cada una de ellas me dijo algo que no me había dicho a mí mismo aún.

Una. En un mercado de Yongle, comprando tela para un amigo que cose. La señora del puesto me preguntó si era de Taipéi. Le dije que no. Me preguntó de dónde. Le dije la verdad larga: nací en Hangzhou, vivo en España. Asintió. Eligió la tela conmigo, regateó por mí ("este chico es de fuera, no me lo timéis"), y al final, mientras envolvía el rollo, dijo: "Llevas demasiado en la cara." ("你脸上的事太多了") No lo dijo con lástima. Lo dijo como un hecho profesional, como un comerciante que evalúa una mercancía. Le pagué, me incliné un poco, salí.

Dos. En un autobús nocturno hacia Jiufen, un hombre de unos cincuenta años me vio leyendo un libro en español y me preguntó qué era. Le enseñé la portada (Carson). Me dijo: "No conozco. ¿De qué va?" Intenté explicárselo en mandarín, fracasé varias veces, encontré una analogía con un poeta clásico chino que él conocía, le iluminó la cara. "Ah, es como Li Shangyin con saudade europea." Y se rió de su propia frase. Me bajé en mi parada. Llovía.

Tres. En una librería de segunda mano de Wenshan, pasando una tarde entera sin comprar nada, el dueño — un viejo señor con una barba blanca a lo Confucio — me dijo: "Llevas tres horas aquí. Te pones nervioso si te miro. Te quedas si pretendo no mirarte." Le dije que perdón. Me dijo: "No, gracias. Hace tiempo que no veo a nadie quedarse tres horas." Le compré un libro de poemas de Yang Mu sin abrirlo. En casa, esa noche, encontré subrayado en lápiz, por una mano anterior, un solo verso: "我們的時間是我們唯一的鄉愁。" Nuestro tiempo es nuestra única nostalgia.

Lo que aprendí, en resumen

No sé si aprendí algo o si simplemente reconocí cosas que ya sabía. Lista incompleta:

  • Las ciudades no esperan a nadie. Cuando vuelves, no encuentras a la ciudad de antes; encuentras a esta, hoy.
  • Una sopa caliente, comida despacio, hace más por la cabeza que la mayoría de los libros que la cabeza se compra.
  • Cuando uno deja de estar roto, los lugares en los que estuvo roto se vuelven lugares. Esto es bueno y no es bueno.
  • "Aquí todos vienen de algún sitio" es la frase más generosa que escuché en 2025.
  • Llueve siempre en Taipéi. Es parte de su contrato con uno.

Volví a Valencia el 28 de julio. El primer día de vuelta llovió aquí también, lo cual no pasa nunca en julio. Salí al balcón y pensé en la señora del dou jiang diciendo que daba igual de dónde viniera uno. Y por un momento lo creí.

#viaje #taipei #es ← /journal

notebook · 2019

Notes from the London Underground, six years late

I found a moleskine in a cardboard box last Sunday. It had been buried under a layer of folded jumpers I had not worn since the move. Hardback, A6, dark blue, the elastic snapped a long time ago. I knew what it was before I opened it. It was the notebook I'd kept on the Piccadilly line in 2019, riding from Earl's Court to Russell Square every weekday morning, twenty-eight minutes give or take, a master's program eating my brain for lunch.

I hadn't opened it since I packed for Valencia in 2021. I sat on the floor of my new flat for an hour reading my own handwriting from when I was twenty-six. Some of it I do not recognise. Some of it I want to argue with. Some of it I would write again today, almost word for word.

Here are excerpts. I have made tiny edits for clarity. The dates are real.


14 January 2019, Tuesday, 8:42

The man across from me has been holding his coffee for nine stops without drinking it. He knows the cup is empty. He's holding it for the prop. We all need props. Mine is this notebook.

16 January, Thursday, 9:01

A child somewhere down the carriage starts crying and I notice every adult instinctively looks at the floor like the floor will solve it. The mother is already trying. She doesn't need an audience.

22 January, Tuesday, 8:36

"Mind the gap" is the only sentence the entire city repeats in unison. We don't have a national anthem here. We have this.

4 February, Monday, 8:47

The Polish builder I always see at Hammersmith said hello today. He has said hello twice in three months. I think this counts as a friendship in London.

11 February, Monday

Wrote three pages this morning of the dissertation, deleted them on the train, opened the laptop again at the library, wrote two of the three back almost identically. So either I was right the first time, or I am not capable of being wrong about this paragraph. Both possibilities are demoralising.

1 March, Friday, 8:55

Spring smell on the platform at South Ken even though we are still seventy feet underground. Maybe imagination. Maybe a woman with magnolia perfume just walked past. I'll take either.

14 March, Thursday

An older man fell asleep on my shoulder between Knightsbridge and Hyde Park Corner and I sat very still and didn't move for the entire ninety seconds because I did not want to wake him up. He woke himself up at Green Park, looked at me, said "Sorry mate," looked embarrassed. I told him not to worry. He said "Cheers" and got off. I have thought about him at least once a month since then.

27 March, Wednesday, 8:30

Spent an hour yesterday reading a Spanish grammar in a café in Lamb's Conduit Street, the café with the green door. The pluperfect subjunctive made me feel ill. Why does any language need that. I am going to learn Spanish anyway. Stubbornness is the only useful inheritance from my father.

2 April, Tuesday

Got my dissertation feedback. The supervisor said "this is interesting but the thesis is not yet a thesis." I had to look that up to understand what she meant. She was right.

15 April, Monday, 9:10

I have noticed I have a tube face. It is different from my normal face. The tube face is a few millimetres further away from itself. It is what the city has trained me to do.

2 May, Thursday

L. is moving back to Beijing. I helped her pack tonight. We did not talk about the obvious. We talked about her thesis, about a film she had not seen, about whether ginger should go in dumpling filling (yes). At the end she handed me a teacup with a small chip on the rim. She said: "Keep this. So you don't only remember the breakage." I'm going to put that sentence in my dissertation epigraph if I can find a way.

20 May, Monday

The Piccadilly line was suspended this morning between Acton Town and Heathrow. I read for forty minutes on the platform without checking the time. Strangely happy. Forced patience. Maybe I should miss more trains.

4 June, Tuesday, 8:50

A small girl on the train asked her father why the train was talking ("attention please, this train terminates at Cockfosters"). He said: "Because the train is polite." She accepted this entirely. I want to live in a world where that is the answer.

11 June, Tuesday

Submitted dissertation. Walked from the library all the way home, four miles, instead of taking the tube. Did not buy myself a drink to celebrate. Bought myself a samosa from the place on Marchmont Street. Ate it on a bench. Cried for about ninety seconds without warning. Felt fine afterwards.

30 June, Sunday

Convocation. Mother could not come (visa). Watched the ceremony, hugged a few people, took an underground train home with the gown in my bag. The man across from me asked if I had been to a wedding. I said yes, in a way.

4 July, Thursday, 8:22

Walked to King's Cross from Russell Square instead of taking the train. Eight minutes. I have been adding these eight minutes to my mornings for four years and I have only started counting them now.

20 July, Saturday

Last entry on this line. Tomorrow I move to Camden. New tube line, new face. The Piccadilly was the worst-tempered of all the lines but it was mine for almost three years. I'll miss it. I'll miss being its commuter more than I'll miss being a student.


Coda, written 2025

Reading these now, six years later, I notice three things.

First: I was younger than I thought. Not in years — twenty-six is not young — but in a particular self-pitying register that the prose keeps reaching for and that I find slightly embarrassing now. The man holding the empty coffee cup for nine stops is fine; the editorial gloss "we all need props" is the sound of a young person making a thesis out of every observation. I would still write the first sentence. I would not write the second.

Second: I was kinder than I gave myself credit for. The note about the Polish builder, the man falling asleep on my shoulder, the small girl, the father — I don't remember being a person who paid attention like that. I remember being a person who was anxious. Both are apparently true. The notebook holds the better one, which is what notebooks are for.

Third: my Spanish was already plotting its hostile takeover by April 2019. I had no idea. I didn't apply to the Valencia placement until the next year, and I didn't really commit to the language until the move in 2021. But there it is, on 27 March: I am going to learn Spanish anyway. The future, written in my own hand, by a person who didn't know.

I'm putting the moleskine back in the box. I'm not going to read it again for at least three years. The notebook only earns its weight if I let it sit. That's something it took me a long time to learn.

#london #notebook #en ← /journal

语言 · 第六年

母语是什么时候开始变陌生的

那天下午我对着两个汉字发了大概四十秒的呆。踟蹰。我在校译稿,原文不重要,反正是某段写一个角色站在门口拿不定主意。我打出"踟蹰"两个字之后突然觉得它们看起来不对。不是不认识。是太眼熟了反而陌生,像在一张老照片里看到自己十六岁的脸——你知道是你,但你已经不能从内部体验它了。

我盯着那两个字盯到屏幕保护启动。那一瞬间我想:母语是什么时候开始变陌生的?

事件清单(不完整)

我尽量不矫情。我列一些具体事件:

2022 年春。 给我妈打电话,想说"晾衣服",脱口而出 "tender la ropa",停了两秒才把中文找回来。第一次。我笑了一下没当回事。

2023 年夏。 在 Russafa 楼下买面包,老板问我袋子要不要纸的,我中文脑子里那个回路第一次主动调出"bolsa de papel"而不是"纸袋子"。从那天起,"纸袋子"这个词每次出现,都要绕一下。

2024 年春。 跟杭州的发小视频,他说:"你说话开始有港台腔了。" 我说不可能。他说:"你听你自己。'然后呢'你说成'然—后—呢'。" 我打开手机录音听了一段自己的话。他说得对。我不知道这从哪来。我没看过任何港台节目超过半小时。

2024 年冬。 写一个 LinkedIn 自我介绍的中文版本。我打了三遍,每一遍都觉得"职业"和"自由"这两个词放在一起怪怪的。明明它们都是中文,明明它们组合起来叫"自由职业",是一个完全合法的词。但我读它就像读一段我刚翻译过来但还没润色的英文。

2025 年 3 月。 给我妈写了封信(真的纸信,因为她的眼睛对屏幕越来越累)。写完之后通读,发现我自己用了"思考"两次、"考虑"一次、"想"零次。我妈这辈子说"思考"的次数加起来不会超过三次。

2025 年 4 月。 翻译一段 Mendoza 的西语,里面有个"resabio"——一种"残留的、不太愉快的余味"。我中文找不到对应。"余味"太干净,"残留感"太学术,"残味"像在说菜没洗干净。我盯着白屏盯了二十分钟,最后写了"嘴里那点不肯散的苦",自己觉得太啰嗦但也只能这样。

2025 年 4 月某日。 "踟蹰"事件。

这是什么

不是"忘了"。我没忘。我能用、能读、能写——拿来当饭吃了五年。是别的东西。是中文从我身上的某个地方移开了。它不再是我的呼吸,它变成了我的工具

这两个东西不是一回事。

呼吸是不用想的。你不会"决定"用中文,就像你不会"决定"心跳。它是底下的东西。我十八岁之前的中文是这样。

工具是要拿起来的。它非常好用,可以用得非常熟练,但你和它之间始终有一只看不见的手——你在拿着它。

什么时候从呼吸变成了工具?我说不清楚。也许是某一天我开始"翻译自己"——脑子里先有一个含糊的意思,然后我有意识地把它变成中文(或者西语,或者英语)。在那之前,我有一种语言会先于意思冒出来。在那之后,我的意思先于所有语言。

这件事有好处。它让我成了一个更好的译者。我现在能从外面看中文。我能看到"踟蹰"这两个字的造型、节拍、情态,看到它和"犹豫"的不同("犹豫"是头脑的,"踟蹰"是脚步的),看到它和"徘徊"的不同("徘徊"已经在走了,"踟蹰"还没动)。

这件事有坏处。它让我和母亲之间多了一层薄薄的玻璃。她说"晾衣服",我听得懂,我也用得出来,但我用它的时候我能看见自己在用它。这就是玻璃。

三个语言的内部温度

我有时候自己做一个小实验:把同一句话在三种语言里说一遍,感受它们在我体内的温度。

"我有点累了。"

"Estoy un poco cansado."

"I'm a bit tired."

中文是温的。它从胸口出来,停在喉咙里一秒,再出去。它带着一点点抱怨但又不太敢抱怨,所以加了"有点"作为缓冲。

西语是热的。"Estoy"立刻把我钉在当下——西语的"ser/estar"系统逼你声明这是暂时还是永久——然后"un poco"是个温柔的副词,"cansado"末尾那个 -ado 把整句话拉得有点慵懒。讲完它你想坐下。

英语是凉的。"I'm a bit tired" 几乎不带温度。它是事务性的。在英国说这句的时候它的功能是"信号",不是"诉说"。

同一个意思,三种身体姿势。这件事我以前不会注意到。第六年开始我能感觉到了。

那么我现在的"母语"是什么

诚实地说:我不知道。

它不是中文了。中文是我最熟练、最准确、最能写出复杂句子的语言,但它不再是我的呼吸。

它也不是西语。西语是我每天最多的语言,是我做梦时一半时间使用的语言(另一半还是中文),但我永远会比土生土长的人慢半拍,永远会有一些介词被我用错而我自己听不出来。

它也不是英语。英语是我读得最快、写论文最舒服、专业术语最多的语言,但我用它讲不了笑话。一种你讲不了笑话的语言不可能是你的母语。

所以剩下的是什么?我猜是三种语言之间的那一小片空地。我每天住在那里。三个方向都有窗,每扇窗外是不同的天气。我从这扇看出去能看见我妈在阳台上择菜,从那扇看出去能看见 Ruzafa 中午的喧闹,从第三扇看出去是 Camden 春天的玉兰。我不在任何一面里。我在中间。

这听起来像无家可归。其实不全是。空地也是地。在三个语言之间的人有他自己的家——只是这个家小一点,安静一点,不是每个人都看得见。

"踟蹰"那两个字,我后来还是用了。但我知道我用它的时候,我和它之间隔着一只手。我尊重那只手的存在。它是我代价。

写于 2025 年 5 月某个下午,瓦伦西亚天气晴朗,老太太们在楼下用三种我都听得懂的语言抱怨同一只乱叫的狗。

#语言 #移居 #zh ← /journal

etnografía doméstica

Una hora en el Mercadona de mi calle

El Mercadona de mi calle abre a las nueve en punto. Yo entro a las diez y media de un martes, sin lista, con un café en la mano que no me dejarán dejar en ningún sitio que no sea la papelera de la entrada. Hago una promesa a mí mismo: voy a estar aquí una hora, no a comprar gran cosa, sino a observar. Llevo el cuaderno pequeño en el bolsillo trasero. Al final compraré: tres tomates, una barra de pan, leche, un yogur griego, dos plátanos. Total: 4,73 €. Esto, también, es relevante.

0:00 a 0:08 — la entrada

El Mercadona huele a la mezcla siempre igual: pan tostado del horno de la entrada (siempre demasiado tostado, los empleados deben odiarlo), suelo recién fregado, y un perfume químico floral que viene de los pasillos del fondo y que nunca he identificado. Es un olor que existe en todos los Mercadona de España. Es un olor que probablemente se podría patentar.

Pasillo central. La señora delante de mí lleva un carro vacío y se mueve muy lento, mirando los expositores como si fueran un museo. No me adelanto. Aprendo de ella.

0:08 a 0:20 — la fruta

Tres señoras (años: 70, 70, 75 aproximadamente) están en los plátanos. Discuten en voz baja sobre si los plátanos de Canarias de esta semana están mejores que los de la pasada. Una sostiene: "están más harinosos." La otra: "no, son los mismos, lo que pasa es que los pones en el frigorífico, María." María se ofende. La tercera, neutral, dice: "yo me llevo dos y veré." La conversación dura casi cuatro minutos y termina con María cogiendo cinco plátanos a regañadientes.

Cojo dos. Sin participar.

0:20 a 0:28 — el pasillo de las conservas

Aquí no hay nadie. En todas las visitas que he hecho a este Mercadona, este pasillo ha estado siempre vacío. Las latas de berberechos, las anchoas, los espárragos en bote. Hay algo melancólico en una conserva. Es un alimento que ya ha sido decidido. No le queda ningún margen de elección. Compré una vez una lata de mejillones en escabeche y la guardé seis meses. La abrí en una crisis menor. Estaban perfectos. La conserva sabe esperar.

0:28 a 0:36 — el panadero, el carnicero, el pescadero

El panadero se llama Vicente. Lo sé porque lleva una placa. Tiene unos cincuenta y cinco, manos como cuero. Le pido una chapata pequeña. Me dice: "¿Para hoy o para mañana? Si es mañana, llévate ésta, está más cruda." Le digo que para hoy. Me da la otra. Esto pasa todas las semanas. Vicente no me reconoce. Yo sí lo reconozco a él. Asimetría sana de las relaciones de barrio.

El carnicero, no sé su nombre, está hablando con una clienta sobre cómo se prepara el rabo de toro a fuego lento. Le da instrucciones precisas (3 horas, mínimo, vino tinto pero no del bueno). La clienta toma nota mental. No piensa hacerlo nunca. Pero esa conversación es importante para los dos. Es una transacción de dignidad.

El pescadero, una mujer joven con tatuajes en los antebrazos, está limpiando un besugo con una velocidad atroz. La cuchilla baja por la espina y separa el filete en un solo movimiento. Es belleza, no exagero. Una clienta le pregunta si los mejillones de hoy son frescos. Ella, sin levantar la vista, dice: "Aún se mueven. Tóquelos." La clienta no toca. Compra.

0:36 a 0:48 — la zona Hacendado

Hay que decir algo sobre la marca blanca. Hacendado es el genio comercial moderno de España y al mismo tiempo, en cierto modo, su psicoterapia. Un país que durante cuatro décadas vivió bajo el aspiracional del producto importado descubrió, hacia 2010, que un yogur de Hacendado a 0,32 € era exactamente igual de bueno que el de marca a 0,98 €. Esto cambió algo en la psicología nacional. No me atrevo a decir qué — soy traductor, no antropólogo — pero creo que tiene que ver con dejar de avergonzarse.

Cojo un yogur griego (1,29 €, dos al precio de uno).

0:48 a 0:54 — la cola

En la cola me toca detrás de un hombre con tres botellas de vino, una bandeja de chuletas y un ramo de flores baratas. Mido la cesta y me invento la cena. Pareja, viernes (es martes — me equivoco), aniversario o reconciliación. Probablemente ninguna de las dos cosas. Probablemente solo le tocaron de oferta los tres ítems el mismo día. La narrativa siempre exagera lo cotidiano.

Detrás de mí: una madre con un niño de unos cuatro años. El niño quiere chocolate. La madre dice no. El niño insiste. La madre, sin alterarse, sin condescender, le explica en castellano absolutamente normal: "Mira, hoy no toca. ¿Sabes por qué? Porque ayer ya tocó." El niño lo procesa. Acepta. Esta mujer no necesita un libro de pedagogía. Esta mujer es el libro.

0:54 a 1:00 — la cajera

La cajera se llama Yolanda (placa, otra vez). Yolanda escanea mis cinco artículos en doce segundos. Total: 4,73 €. Le doy 5 €. Me da 0,27 € de vuelta. Me dice "que vaya bien". Yo digo "igualmente". Esto es todo el contacto humano que requiere el sistema. Y sin embargo: fue un contacto humano. La diferencia entre eso y un autoservicio se me hace cada año más grande.

Por qué he aprendido a quererlo, casi

Cuando llegué a Valencia en 2021 yo despreciaba los supermercados. Quería los mercados, las tiendas pequeñas, los productores locales. Hice un esfuerzo enorme por evitar Mercadona durante seis meses. Compraba el pan en una panadería de la calle Sueca, las verduras en el Mercat Central, el pescado los sábados en el Cabanyal. Era romántico. También era caro y agotador.

Cuatro años después: voy al Mercat Central los sábados (sigo, no voy a renunciar a esa felicidad), pero entre semana entro al Mercadona como entra cualquiera, como una cosa funcional, sin culpa, sin ironía. He hecho las paces con la marca blanca. He hecho las paces con la idea de que la vida cotidiana se sostiene en infraestructuras feas. He hecho las paces con Yolanda, con Vicente, con la pescadera tatuada, con las tres señoras de los plátanos. Son la ciudad, también.

El "casi" del título no es retórico. Sigo prefiriendo los mercados. Sigo prefiriendo los pequeños comercios. Sigo creyendo que un sistema económico que aplasta a los pequeños es un sistema económico enfermo. Pero también sé que dentro de la maquinaria fea siguen pasando los mismos pequeños hechos humanos: una madre que enseña a su hijo, un panadero que te recomienda la barra de mañana, una cajera que dice "que vaya bien" como si lo dijera en serio.

Ese "casi" es donde vivo, en realidad. En todo. En España, en el español, en mi oficio, en mí mismo.

#valencia #cotidiano #es ← /journal

on craft

On translating a writer who refuses to be translated

I will not name the author. The reasons will become clear, and they have nothing to do with discretion. I'm calling her R. She is alive, she writes in Spanish, and she has said in three different interviews that the act of translating her work is "a sort of vandalism," her word, used in the same sense one might use it of someone repainting a fresco. She has also forbidden — by contract — any translation of her novels into a particular language she happens to read fluently and have strong opinions about. Mine is not that language. So legally I'm fine. Ethically, I'm not so sure.

I was offered the job of translating R. into Mandarin almost a year ago. I said yes the same evening, slightly drunk on the bus home, and have not been entirely sober about it since.

Three positions one can hold

It's worth laying out the choices honestly. When an author hates the idea of you, you can:

  1. Refuse the work. This is the simplest answer. It treats the author's wishes as a moral veto. It also leaves Mandarin readers without R., which is — I think — a real loss for them, not just for me. Refusal looks principled but is, in fact, a form of letting the author win an argument they shouldn't get to have alone.
  2. Take the work and ignore her. The legalistic position. The text is in the world; once published, it's no longer hers in any meaningful aesthetic sense; her opinion is biographical clutter. This is a defensible view. It is also the view that, in my experience, tends to produce the worst translations — because the translator has decided not to listen to anything, including the author's anxieties, which are sometimes signals about the text and not just about the ego.
  3. Take the work and stay haunted. Accept the contract, do the work, and let her objection sit on your shoulder for the duration. Don't let it paralyse you. Don't let it disappear. Do not write a sentence she would not recognise as hers, even when you're allowed to.

I have taken the third position. Or, more accurately, the third position has taken me. I cannot work otherwise. Some translators can do the legalistic thing. I can't.

What this looks like in practice

Concretely, here is how the haunting affects the work.

I read more of her than I would otherwise. Beyond the novel I'm translating I've read her three earlier novels, two collections of essays, every interview I could find, and a thirty-minute Catalan documentary in which she walks through her childhood town and complains about a fountain. I'm not pretending this gets me access to her. It doesn't. But it gets me the inside of her sentences — the rhythm she favours, the punctuation tics, the particular comma habit she has that her copy editors have evidently fought with for thirty years and lost.

I make my version of her comma habit. Mandarin doesn't have a comma habit problem the way Spanish does. But Mandarin has its own equivalent: the rhythm of phrase length before a 的. R. tends, in Spanish, to write long, breath-stopped clauses that resolve into surprisingly short main verbs. I have decided, working alone in my study, that her Mandarin self should write phrases that grow heavier and heavier before an unexpectedly small verb cuts them. This is interpretive. She did not authorise it. She would, I believe, hate it less than the alternatives.

I leave certain things untranslated. She uses three or four words that come from her grandmother's regional Spanish. They have no Mandarin equivalents. I had three options: footnote, paraphrase, or transliterate. I chose to transliterate them and put them in italics, and then, if a Mandarin reader needs to know what they mean, I explain in a brief glossary at the back. This is the option that makes the Mandarin text the strangest. It is also the option that respects the strangeness she put in. I think she would still object to the transliteration, but I think she would object less than to a clean, smooth, fluent paraphrase.

I do not contact her. Many translators write to authors. Many authors enjoy this. R. would not. To write to her would be to ask permission for an act she has publicly refused permission for. I am keeping the relationship asymmetric, which is uncomfortable but, I think, more honest than a forced cordiality.

What I'm betting on

Here is the bet I am making. I think R.'s objection to translation is, when you read her carefully, an objection to bad translation, dressed up as an objection to translation in general. She has written — in an essay from 2009 — that she finds translations of her work "unbearably tidied up." That word is the key: tidied. She doesn't object to a foreign reader meeting her. She objects to that reader being introduced to her by someone in a starched shirt who has corrected her grammar.

If that reading is right, then the most ethical act of translation here is the one that resists tidying. The translation R. would hate least is the one that lets her be difficult, lets her be regional, lets her sentences twist where they need to twist, and lets the Mandarin reader feel a bit of the friction the original Spanish reader feels. The temptation is always to smooth. I have decided, paragraph by paragraph, to refuse to smooth.

This makes for harder Mandarin. It will, I expect, be reviewed by some critic in Beijing as "stylistically clumsy" or "syntactically uneven." That review, if it comes, will mean I have done my job.

The thing I cannot resolve

None of this answers the deepest version of the question. The deepest version is: does she have the right to refuse? And the answer, after a year, is something like: she has the right to refuse the version that exists in her head. She does not have the right to refuse the readers in another language meeting her at all. The published text is no longer hers in that authoritarian sense. But — and this is the bit I cannot let go of — her refusal is also a piece of information about the text, about her, and about translation in general. To act as if the refusal didn't exist would be to remove a real feature of the work from the work.

So I keep her objection in the same drawer where I keep my paper dictionaries. I open the drawer every morning. I read the objection. I close the drawer. I work.

I don't know whether this is the right way. I know it is the only way I can do it without lying to myself.

What I would say to her

If, somehow, I sat across from her at a café in Barcelona — which will not happen — I would say something like this: "I know you don't want me to do this. I am doing it because if I don't, someone else will, and they will tidy you up. I have read everything you have published. I have spent a year not smoothing your sentences. I do not expect you to thank me. I do not need you to thank me. I needed you to know that I knew."

She would, I imagine, light a cigarette and say nothing. That would be enough.

#translation #ethics #en ← /journal

冬至 · 一个人

瓦伦西亚的冬光,和一锅没煮好的粥

2024 年的冬至我一个人过。N. 回了塞维利亚陪她妈过节,我妈在杭州,我爸的忌日刚过,我谁都不想找。我那天给自己定了一个非常具体的任务:煮一锅白粥。

白粥这件事,我妈做了一辈子。她的方法是:东北米加 1:8 的水,砂锅冷水下米,大火滚开,转最小火,盖子留缝,五十分钟。中间不搅。最后那十分钟才搅,否则粥会"散"。她跟我讲过很多次,我都是哦哦哦地听,没真做过。

那天上午十点我开始。米我用的是 Mercadona 的"arroz redondo",理论上接近东北米的圆粒短米。砂锅没有,我用了铸铁锅。火候我用最小档。盖子留缝。

三十分钟后我打开看一眼。米粒还硬。水还是水。

四十五分钟后我又看一眼。米粒变软了一点点,但水没变浓,两件东西像是分居的夫妻——同一锅,但互不来往。

五十分钟到。我搅了一下。米和水勉强承认对方存在。但这不是粥。这是稀饭。

我又煮了二十分钟。还是稀饭。

我意识到一件事:我家那砂锅有记忆。它煮过太多次粥了。它的内壁早就吸饱了米浆和热度的某种东西,每一锅新粥进去,那个东西会出来,把水变浓。我用的瓦伦西亚的铸铁锅,崭新,干净,没有那种记忆。它能煮稀饭,但煮不了我妈的粥。

窗外的光

就在我盯着锅发呆的时候,我注意到客厅的光。

瓦伦西亚的冬至下午三点多,光是斜的、透的、带一点淡金色的。它从西边的窗户进来,正好落在我桌上那本翻开的书的右半页。书页是白的,但那道光让它变成了一种我形容不出来的颜色——像旧的牛奶,像昏黄的纸,像我外婆家的廊檐。我看着那道光看了大概一分钟,没有动。

我从来没有,在我妈家煮粥的时候,看见过这样的光。我妈家厨房没有西窗。她也没有桌上摊开的书。她那个时刻——五十分钟的小火慢慢炖——是被她忙别的事填满的(择菜、擦灶、洗碗、跟我爸吵两句然后和好)。她那个时刻是的。

我这个时刻是的。我在一个完全静下来的下午,盯着一道光。

那一刻我突然懂了一件事,可能是我那年最重要的领悟:我妈的粥煮得那么好,不是因为她技术好,是因为她生活里有那种能让粥煮好的密度。 她家厨房的砂锅有记忆。她家厨房有家人。她家厨房有事在做,所以小火五十分钟不是"等待",是"伴随"。

而我的下午是空的。所以我的粥煮不好。这件事不是技术问题。

关于一个人

那锅稀饭我后来也吃了。加了一点盐、一根葱、一颗 Mercadona 的腌橄榄(不像样但能吃)。我坐在西窗的桌前慢慢喝完。光从我面前的瓷碗上反进我眼睛里。

一个人的冬至不是悲剧,也不是禅意。它就是一个比平时更安静的下午。我那天吃完饭洗了碗,给我妈打了个电话——她在做萝卜汤,背景里有锅碰锅的声音——跟她说我煮粥失败了。她笑得停不下来。

"你那锅是新的,"她说,"我跟你说过多少遍。"

我说:"你没说过。"

她说:"我说过。你没听。"

我没争。

挂了电话之后我又坐回桌前。光已经斜过去了,落在地板上。我打开笔记本,写下了今天这篇的第一行。当时我不知道我会写完它,更不知道它会一年多后才修完。但开头是那时候定下的:"2024 年的冬至我一个人过。"

有些东西需要一个安静的下午才能开始写。冬光是好东西。新铸铁锅煮的稀饭也是。

— Q.

#家 #一个人 #zh ← /journal

marzo · cada año

Por qué las Fallas me dan miedo (y por qué vuelvo cada año)

Voy a confesar algo que en Valencia no se confiesa fácilmente: las Fallas me dan miedo. No las admiro con reservas, no las disfruto a medias — me dan miedo, en el sentido literal del término. El primer 19 de marzo que pasé aquí, en 2022, lloré dos veces, una en la calle a las dos de la madrugada por agotamiento sensorial y otra a las cinco de la tarde delante de una falla que se quemaba, sin saber por qué. Llevo cuatro Fallas. Cada año vuelvo. Cada año me dan miedo. Cada año me parece que entiendo algo más.

El miedo es físico antes que cualquier otra cosa

Empezamos por lo concreto. Las Fallas son ruido. No "ruido fuerte"; ruido estructural, un ruido que cambia el aire. La mascletà de las dos de la tarde en la Plaza del Ayuntamiento no se escucha — se siente en el esternón, en la mandíbula, en los huesos pequeños del oído interno. Yo, criado en Hangzhou, donde los petardos son una cosa puntual de Año Nuevo, no estaba preparado para esa cantidad de pólvora a esa hora del día como rutina. La primera vez tuve un mini ataque de pánico. Me senté en una acera. Una señora valenciana me ofreció agua y me dijo: "Es la primera, ¿no?" Asentí. Sonrió. "A todos nos pasó."

El miedo es físico. Pero no es solo eso.

El miedo es también culturalmente educado

Yo crecí en una cultura que entiende el fuego como algo que se controla. Una cocina, una hoguera de Año Nuevo Lunar, una vela en el altar familiar. El fuego en mi cultura es doméstico o ritual; no es público y caótico. Las Fallas hacen algo que mi formación interior no procesa fácilmente: queman cosas grandes, hechas con cuidado durante un año entero, en mitad de la calle, delante de los niños, mientras todo el mundo aplaude.

La primera vez que vi quemar una falla infantil no podía respirar bien. La obra era preciosa: una niña de cinco metros sosteniendo una luna. Le habían dedicado, supongo, mil horas. La quemaron en seis minutos. La cabeza cayó primero. Un niño cerca de mí gritó de alegría. Yo me alejé tres calles para llorar a solas.

Ahora, cuatro años después, todavía me da miedo. Pero he aprendido algo que no sabía entonces: las Fallas no queman cosas para destruirlas. Las queman porque la cosa nunca fue el punto. El punto era el año. El año es lo que se celebra. La falla es solo un calendario hecho de cartón, papel y cera, que arde para marcar que ese año pasó. Esto no me lo dijo nadie. Me lo enseñó un viejo del barrio una noche de marzo de 2024, fumando un puro en la esquina, mirando arder a su comissió, sin tristeza. Le pregunté: "¿No le da pena?" Me miró como si le hubiera preguntado si le daba pena que se acabara una cena.

Por qué vuelvo

Vuelvo cada año por tres razones, ordenadas de la más fácil a la más difícil de admitir.

Una. Es uno de los pocos eventos que conozco en el siglo XXI que no se puede hacer por internet. No tiene versión digital. No se puede streamear (técnicamente sí, pero perder el 95%). No se puede experimentar de ninguna otra manera que estando ahí, en la calle, con cuerpo. Esto es, en 2026, casi un milagro.

Dos. Es uno de los pocos eventos que conozco que es verdaderamente popular. La comissió de mi barrio, la de Carrer dels Tomassos, está formada por la frutera, el panadero, dos profesoras del colegio público, un fontanero jubilado, una abogada joven que se mudó hace tres años, el dueño del bar de la esquina, y un montón de niños. No hay directores creativos. No hay brand identity. Hay un grupo de vecinos que decide en una reunión, en septiembre, qué quieren quemar este año. Esto, también, en 2026, es un milagro.

Tres. Vuelvo porque el miedo me hace bien. Esta es la razón difícil de admitir. Las Fallas son, para mí, una cita anual con una versión de mí mismo que no sabe cómo procesar lo que está pasando, que se sobresalta cuando un petardo le revienta a tres metros, que llora delante de una falla que arde y no sabe del todo por qué. Esa versión de mí mismo es importante. La vida moderna está diseñada para hacer que esa versión de uno mismo desaparezca: aire acondicionado, decibelios controlados, fuego escondido, muerte lejos. Las Fallas, una vez al año, traen el miedo de vuelta a la calle, lo hacen comunitario, lo conviertan en algo que se come con paella en familia y luego se va a dormir como si tal cosa.

Eso es una pedagogía. Una pedagogía cruel y cariñosa.

Lo que hago en mi cuarta Falla

El año pasado (marzo 2025) hice por primera vez algo que decidí mientras volvía a casa por Carrer de Cuba a las tres de la mañana. Decidí que ese año no iba a evitar nada. Iba a estar en la mascletà del 19 a las dos de la tarde sin tapones (mentí — sí los llevé, pero solo por si acaso). Iba a ver arder la falla de mi barrio entera, sin alejarme. Iba a comer paella con la comissió a la que mi vecina Pilar me había invitado.

Fueron las Fallas más difíciles que he vivido y las primeras que sentí mías. Comí paella con once desconocidos que al final del día no eran desconocidos. Vi arder a la niña con la luna (esta vez no era la misma falla, era de 2025) y no me alejé. Ahora cuando alguien me pregunta de dónde soy y digo "Valencia" me tiembla menos la voz que antes.

Esta es, en realidad, la única razón por la que vuelvo: porque cada Falla me hace, un poco, más de aquí.

Y de aquí no es un lugar, al final. Es una manera de no apartarse cuando arde algo bonito que tú no construiste.

#valencia #fallas #es ← /journal

objects · kitchen

My grandmother's knife

The knife is a Chinese cleaver, the wide rectangular kind, with a handle of dark wood that has gone slightly oily from sixty years of being held by the same set of hands. The blade has a thin curve where the grandmother's hand rocked it, ten thousand mornings, on a wooden board, slicing scallions. There is a chip on the right edge, near the heel, from the time my uncle dropped it on a tile floor in 1987. The chip never got fixed. My grandmother said it gave the knife a face.

She gave it to me, indirectly, in May 2017, when she fell and broke a hip and never went back to her kitchen. My mother packed up the apartment over a long miserable weekend and asked me, on the phone from London, what of the kitchen things I wanted. I said, half-joking: "The knife." She said: "Of course the knife."

It came to me in November of that year, wrapped in newspaper, inside a wooden cigar box, inside a padded envelope, inside a customs-declared parcel marked "kitchen utensil – used – sentimental value, no commercial value, please do not seize." The Royal Mail did not seize it. I unwrapped it on the floor of my Camden bedsit and held it in my hand and was, for the first time in my life, in possession of a thing that had outlived a person I loved.

That was nearly nine years ago. The knife has been with me through three countries and seven flats. It has cut: garlic, ginger, scallions, leeks, every kind of root vegetable, slabs of pork belly, two whole chickens (badly), a great quantity of tofu, the occasional onion, an embarrassing number of takeaway lemons. It is, apart from the laptop I write on, the single object I own that I would not replace if I lost it.

The problem of sharpening

Here is the embarrassing thing. My grandmother sharpened that knife herself, by hand, on a stone, every Sunday. She told me, when I was about ten, that the only way to keep a Chinese knife alive was to sharpen it yourself, never let anyone else do it, never use a pull-through. She said it like other grandmothers say never marry someone who is rude to waiters. It was the kind of advice you nod at as a child and forget within hours.

I forgot. By the time the knife reached me, in 2017, I had not held a sharpening stone in my life. The knife arrived sharp — she had sharpened it the week before her fall — and for about two years I lived off that residual sharpness, pretending I knew what I was doing.

Then, gradually, slowly, the knife dulled. Onions started to crush instead of slice. Garlic resisted. The blade, which had once gone through tomato skin in a downward whisper, started to make a small thud. I noticed and pretended not to.

For a year I was paralysed by guilt. I couldn't sharpen it because I didn't know how, and I couldn't take it to a professional because of what she had said, and I couldn't bring myself to use the kind of cheap V-sharpener that ruins a Chinese knife in three passes. So I just used it dull. For about a year I was an inheritor who had failed to maintain the inheritance.

Learning to sharpen

In the spring of 2024 I bought a stone. It was a 1000/6000 grit combination Japanese waterstone from a kitchen shop in Carrer de la Mar. I bought it on a Tuesday, late afternoon, the way one buys something one has been postponing for a very long time. I came home, sat on the kitchen floor, soaked the stone for ten minutes, and tried.

I was bad at it. I held the angle wrong. I pressed too hard. I sharpened one side three times more than the other, which my grandmother had warned me against in 2003 ("a knife is two faces; love them equally"). After forty minutes the knife was sharper than it had been but not as sharp as I knew it could be. I cut a tomato that night. The skin gave way with a sigh, not a whisper. Closer.

I have been sharpening it, badly, every fortnight or so, since. By March of this year my technique had improved enough that I could feel the burr forming under my fingertip — that tiny, almost-imaginary curl of metal that tells you the edge is meeting itself. By June I had stopped pressing too hard. I am still not, by any stretch, good at it. I am about a third as good as my grandmother was.

But here is the thing nobody tells you: the act of sharpening, repeated weekly, is itself a relationship with the knife. I have learned more about that knife in the last fourteen months — its small asymmetries, where the metal is harder, where it's softer, the way it sings differently on coarse stone vs. fine — than I learned in the previous seven years of using it daily.

Maintenance is not the price of inheritance. Maintenance is the inheritance. She did not bequeath me a knife. She bequeathed me a thing that requires my Sundays.

Coda

My grandmother is alive, by the way. She is ninety-one. She lives in a small flat in Hangzhou with a part-time nurse and watches a great deal of bird-watching television. She does not cook anymore. Her hands shake too much to be safe near a stove. When I visited last September I told her I was learning to sharpen her knife. She nodded. She said, in a voice quieter than I remembered, "You should have started sooner."

I should have. I know.

But I have started. And the knife is sharp again. And on a good Sunday morning, in a small flat in Valencia, with the radio playing flamenco and the sunlight coming through the kitchen window at the angle she would recognise from her own kitchen four thousand miles east, I rock the blade against the stone for twenty minutes, and a thin grey paste collects on the surface, and I am — briefly, imperfectly — in two kitchens at once.

#objects #family #kitchen #en ← /journal

实验报告 · 私人

不看新闻的第三百天

2023 年 7 月 4 日早上,我从手机上删了 BBC、The Guardian、El País、纽约时报、路透社的 app,关掉了所有新闻类的 RSS feed,从 Twitter 的 timeline 里把 32 个媒体账号 mute 掉,给 N. 发了一条信息说:"我打算试试看一年不看新闻。" 她回我:"那万一发生大事呢?" 我说:"发生大事的话你告诉我。"

她说:"好,但你别后悔。"

我没后悔。今天是 2024 年 4 月 30 日,这是我"不看新闻"的第 301 天。这篇是个中期报告,有点啰嗦,写给可能正在考虑同样事情的你。

先说什么叫"不看新闻"

我得把术语先讲清楚,否则下面没法谈。

我这里说的"新闻"指的是:每日(或更高频)更新的、以"事件刚发生"为卖点的信息流。具体包括:日报头版、24 小时电视新闻、新闻 app push、新闻类 podcast、媒体 Twitter timeline、Reddit 的 r/worldnews 之类的版块。

我不放弃的有:

  • 周刊和月刊。我现在订一份纸版的 El Periódico de Catalunya 周末版(每周末送),和 The London Review of Books(每两周一次)。
  • 专业期刊。翻译、语言学、出版业的几本小众杂志。
  • 。包括非虚构。我读了不少关于以色列-加沙、关于 AI 监管、关于气候政策的,以"理解"而不是"实时跟进"的姿态。
  • 朋友的口头转述。这是个意外的发现。后面会讲。

所以严格说,我不是"不知道世界发生了什么"。我是"以低得多的频率、用慢得多的媒介,知道世界发生了什么"。这两个状态的差别比我以前以为的大得多。

第 1 - 30 天:戒断症状

前两周非常难受。难受的方式很具体:每天早上醒来后那十秒钟,我大脑会自动伸手去找手机;找到手机后会自动点亮屏幕;看到屏幕上没有红色 badge 之后会发愣两秒。那两秒里我感觉自己漂浮。我不知道今天是什么——既不是好消息也不是坏消息,是没有消息

这种漂浮感持续了大概 18 天。然后就过去了。

另一个症状是 FOMO 的高频小爆发。比如有个朋友在 WhatsApp 群里提到"那件事"——我不知道哪件事——我会瞬间想去搜,想"补课"。前一个月我没忍住,搜过两三次。第二个月开始,我开始有意识地不搜。我对自己说:"如果它在两周后还重要,N. 会告诉我。"

事实证明,绝大多数当时让我抓心挠肺的"那件事",两周后已经没人再提。

第 31 - 100 天:意外发现

这一段时间我开始注意到几件不在预期里的事。

一。 我对我直接周围环境的感知变得更敏锐。我开始知道我们这条街的鸟叫声有几种(至少四种),知道楼下面包店每周二会换橱窗陈列,知道隔壁那对葡萄牙夫妇周三晚会吵架(声音不大,但能听见)。这些是我从前作为"经常看新闻的人"完全没有时间注意到的东西。一个奇怪的等价:你看世界的程度和你看你脚下两米的程度,几乎是反比。

二。 朋友的口头转述变成了一个可靠的过滤器。N. 会在散步的时候说"诶你知道那个 AI 公司被起诉了吗",然后用三句话告诉我。一个朋友 G. 在巴塞罗那做记者,每次喝酒她会抱怨这周她忙的稿子是什么——这就是我最准确的国际新闻输入。一个旧同事 M. 会偶尔发一封邮件,里面有一两段他在以色列朋友处听到的实情。这些转述每一条都是经过一个我信任的人过滤过的。它们的信号-噪声比远远高于任何媒体。

三。 我重新拥有了一种叫做"无聊"的能力。前一百天里我无聊了无数次——在公交车上、在等水开、在排队结账。我发现无聊不是问题,无聊是资源。所有我后来写出来的稍微像样一点的东西,都是从某次无聊里冒出来的。

四。 我对"重要"这个词的意思变了。

第 101 - 300 天:什么是"重要"

这是这次实验最深的一层发现,也是我写这篇主要想讲的。

我以前以为"看新闻"是为了知道重要的事。300 天之后我重新看了一遍这个等式,发现它有问题。看新闻知道的是的事。新和重要不是一回事。

真正重要的事——气候、人口结构、技术变迁的长期方向、几个大国之间的根本张力——它们的"新闻周期"是几十年,不是几小时。每天读 50 条头条、跟踪 7 个突发事件,不会让你更懂这些事;事实上它会让你更不懂,因为你的大脑会被巨量琐碎细节填满,看不见底下慢慢移动的板块。

我反而是从一本(薄薄的)讲气候政策的小书、一篇(10 页的)关于乌克兰战争前因的长文、一次(半小时的)和我那个做记者的朋友的散步——从这些慢的、重的、有结构的东西里,开始真的懂一点事。

新闻不是这种东西。新闻是事件,事件是表面。我以前花了大量时间盯着表面的浪花,以为我在看海。

什么时候这个实验失败过

诚实记录:

2023 年 10 月初,以色列-加沙冲突爆发那一周,我看了新闻。理由是 N. 有一些朋友在那个区域,她那一周非常焦虑,我需要知道我们在谈论什么。我打开了大概十次新闻 app。每一次之后我都更焦虑,更迷茫,更没法帮上她。

10 月 15 日左右我又关掉了所有 app。从那以后我通过 G.(记者朋友)和一份周刊跟进这件事。我对那场冲突的知识反而变多了。我对那场冲突的焦虑反而变少了。两个变化是同时发生的。这件事让我重新确认了实验的方向。

2024 年 3 月底,西班牙地方选举那个礼拜,我也看了三天新闻——那是我作为这里的居民应该知道的事,跟我直接相关。我看完投了票,然后又关掉了。这个例外我不后悔。

第 301 天的小结

这不是一个"戒新闻让我变成了更好的人"的故事。我没变得更好。我只是变得更。我不再被每天的事件浪花拍得晕头转向。我开始能看见更慢的东西。我开始能听见自己。

如果你在考虑同样的事,我说几句不打算劝人的话:

  • 试一周。一周不够。试一个月。一个月之后你会知道你真的需要的是什么。
  • 找一个你信任的人当你的"过滤器"。这是关键。它把"我会错过大事"这个恐惧消解掉。
  • 把省下来的时间真的用在慢的东西上:书、长文、散步。如果只是把它换成短视频,那等于没戒。
  • 对自己温柔一点。我自己中途破戒过两次。没什么。

我打算把这个实验再延长一年。如果到 2025 年 7 月还活着,会写第二篇。

— 写于 2024 年 4 月 30 日下午,瓦伦西亚 Cabanyal 海边一家叫 La Más Bonita 的咖啡馆,3 欧的 cortado,外面下着小雨。

#实验 #新闻 #注意力 #zh ← /journal

cuaderno · febrero

Tres Año Nuevo en una semana

Esta semana he tenido tres comienzos de año.

El primero fue el del calendario gregoriano, el 1 de enero. Lo pasé en casa, con N., comiendo lentejas (porque ella es supersticiosa, aunque no lo admita) y bebiendo cava barato. A las doce de la noche tomamos las uvas. Yo me atraganté con la séptima — siempre me pasa con la séptima — y N. se rió tanto que tuvo hipo durante diez minutos. Decidí que mi propósito de año era no tener propósitos de año. No me lo creo del todo. Pero suena bien.

El segundo fue el Año Nuevo chino, el 10 de febrero, el año del Dragón. Lo celebré una semana entera, lo cual es lo correcto: la fiesta china dura quince días si una sigue las reglas. Empecé el día 9, víspera, llamando a mi madre por WeChat a las dos de la mañana hora valenciana, que para ella era la hora de cenar. Comió delante de la cámara. Yo le enseñé los jiaozi que estaba haciendo. Los míos eran feos — el plegado por la mitad, sin las puntas en abanico que ella hace — pero estaban bien. Me dijo: "Te los he visto hacer mejor." Le dije: "Ya."

El tercero fue uno mío, inventado, sin justificación calendárica. Lo establezco cada año el 7 u 8 de febrero, en función de cómo se alinea con los otros dos. Es un año nuevo personal, privado, sin testigos. Esa noche escribo en una libreta una sola página de balance del año pasado y otra sola página de intención (no propósito — intención, que es distinta) para el siguiente. Después lo cierro y no lo vuelvo a abrir hasta el año siguiente.

Por qué tres

Voy a defender la tesis: tres no son demasiados. Son los justos.

El gregoriano es para la sociedad. Es el año del calendario laboral, el año de los plazos, el año en que las facturas se acumulan en pestañas. Lo necesito para vivir entre otros. No me lo tomo personal.

El chino es para la familia. Es el año en que llamo a mi madre, en que pienso en mi abuela, en que hago jiaozi mal y los como con vino tinto en lugar de vinagre porque estoy en España y no encuentro el vinagre que quiero. Es un año cargado de gente. Cuando llega, la casa es más grande de lo que parece — caben mis muertos también.

El propio es para mí. Sin testigos. Sin cava. Sin uvas. Una libreta y treinta minutos. Es el año en que me digo cosas que no le diría a nadie.

Cada uno de los tres tiene un trabajo distinto. Si tuviera solo el gregoriano, viviría como vive todo el mundo: como si el año fuera una unidad social. Si tuviera solo el chino, viviría sentimentalmente, atado a una familia que está lejos. Si tuviera solo el mío, viviría como un ermitaño pretencioso. Los tres juntos hacen un equilibrio que ninguno solo puede hacer.

El balance del 2023, sin trampa

Por si interesa, aquí va lo que escribí en la libreta esta semana, sintetizado y editado pero no demasiado.

  • 2023 fue el año en que empecé este sitio web. Empezó como un experimento. Sigue siéndolo.
  • Fue el año en que dejé de ver noticias diarias (ver post separado). Sigo sin volver.
  • Fue el año en que aprendí a no llenar el silencio en una conversación. Tardé treinta y un años. No pasa nada.
  • Fue el año en que mi madre cumplió 58 y, por primera vez en mi vida, la vi cansada. No me lo esperaba.
  • Fue el año en que traduje a tres autoras nuevas y a un autor que ya odiaba antes de empezar. Aprendí más de él que de las otras tres.
  • Fue el año en que perdí dos amigos: uno por desacuerdo, uno por silencio. Los dos los echo de menos. Ninguno volverá.
  • Fue el año en que descubrí que se puede caminar tres horas seguidas en domingo sin escuchar nada en los oídos. Esto es información que solo tiene sentido para mí, lo sé.
  • Fue el año en que dejé de fumar. Otra vez. Llevo 11 meses. Vamos a ver.

La intención para el 2024

Una sola, escrita en mayúsculas en la libreta, sin más explicaciones. Está en chino:

慢一点

"Más despacio." No es nuevo. Pero lo escribo cada año porque cada año me hace falta.

Por qué cuento esto

No estoy proponiendo un sistema. Cada uno tiene su propio aparato calendárico interno. El mío es triple porque mi vida es triple — un calendario laboral europeo, una familia china, y un yo que no se reduce a ninguno de los dos. Es probable que el tuyo sea otro. Si tienes uno, escríbelo. Si no, plantéate inventar uno. Tres semanas de balance al año son una de las pocas riquezas que aún se pueden tener gratis.

Mañana volvemos al calendario social. Hay un plazo de traducción el lunes. Pero esta semana ha sido buena. Tres comienzos no son demasiados.

#calendario #familia #es ← /journal

technical · meta

Why I made this site by hand

This site is a single HTML file. As of writing this entry it is around 4,800 lines, which I edit directly in my text editor — no static site generator, no build step, no deployment pipeline, no JavaScript framework. There is some inline CSS at the top of the file. There is some hand-rolled JavaScript at the bottom for two small features (theme switching and language toggling) that work fine without it. When I want to publish a change I save the file, open a terminal, type one line: scp index.html 557555.xyz:/var/www/html/. The change is live in under two seconds.

This is, I'm aware, a slightly performative way of running a personal site in 2023. People will accuse me of nostalgia. They might be right. But I want to spend a few hundred words on why I made this choice — not to convert anyone, but because the reasons are clearer to me now than they were when I started, and I think one or two of them might be useful to one or two of you.

Reason 1: I wanted to remember what HTML felt like

I learned HTML in 2007, in a Hangzhou middle school, on a school computer that had Internet Explorer 6 and a copy of Notepad. I wrote my first webpage as a school assignment: it was a fan page for the singer Faye Wong, with a marquee of song titles, a yellow background, an embedded MIDI of Wǒ Yuànyì, and an animated GIF of a butterfly. It was perfect. It loaded in milliseconds. I felt, for the first time in my life, that I had made something the entire planet could in principle look at.

For the next sixteen years I wrote less and less HTML directly. I used Wordpress. I used Jekyll. I used Hugo. I used Eleventy. I used Next.js. I used SvelteKit. I used Astro. Each of these was, in its way, more elegant than the next. Each of them also moved the actual HTML further away from me, until I was writing JSX components that compiled to MDX that compiled to React that compiled to HTML. The HTML was — eventually, several abstractions deep — still there. But I never saw it.

In the spring of 2023, on a slow Sunday, I opened a blank file in my editor, typed <!doctype html>, and wrote a webpage. By Sunday evening I had this site, in a primitive form, with three sections and an ugly header. I had not felt that good about a piece of code I had written in five years.

Reason 2: a single file is a humane unit

One of the things you stop noticing in modern web development is how much of your cognitive load goes into managing the shape of your project rather than its content. Where does this component live? In which folder? With which sibling components? With which test file? Imported from where? With what naming convention? On what build target?

A single file has none of those problems. The "shape of the project" is: scroll up, scroll down. The "navigation" is: Ctrl+F. The "build" is: save the file. There are no decisions to make about structure. The structure is the file.

I am not arguing that single-file applications scale. They obviously do not. I am arguing that, for a site that is essentially one person's writing, a single file is the correct shape. The site is, in a real sense, the same shape as the person.

Reason 3: it puts an upper bound on me

This is the reason I find hardest to articulate but is, I suspect, the most important one. A static site generator with a build pipeline gives you, in principle, infinite expressive power. You can have plugins. You can have themes. You can have custom shortcodes. You can have a search index. You can have a tag cloud. You can have related posts. You can have an RSS feed in three formats. You can have webmentions. You can have a comments section using a third-party API. You can have a dark mode toggle that respects the user's preferences and remembers their choice in localStorage. You can have, you can have, you can have.

I, personally, faced with infinite expressive power, will spend two years building features no one needs and write almost nothing of substance. I know this because I tried it twice (2018, 2020) and produced almost no actual writing.

A single HTML file puts a quiet upper bound on me. If I want a feature, I have to write it inline, with my own hands, in plain HTML/CSS/JS, in a file I can already feel the size of. That cost — visible, immediate — is high enough that I only add a feature if I genuinely want it. The result is that I add fewer features and spend more time writing.

This is the same principle as the moleskine. The moleskine has 240 pages. You will fill them with what matters, eventually, because there is no infinite scroll.

Reason 4: I wanted my content to outlive my tooling

Every static site generator I used between 2015 and 2023 has either changed its config format incompatibly, deprecated a feature I depended on, or been abandoned by its maintainer. I have three old blogs sitting in cold storage right now that I cannot rebuild without a few hours of dependency archaeology. I do not have those hours. So they sit unrebuilt.

An index.html file from 1996 still works in any browser made since. It will continue to work in 2096, in any browser then existing, with the possible exception of an inline <blink> tag. The cost of building on raw HTML is paid once. The cost of building on a framework is paid every two years.

I want this site to be readable in 2046, by my eventual children, or by no one. The single HTML file is, today, the closest thing I know to that promise.

What I gave up

To be honest about the trade-offs:

  • I do not have automatic syntax highlighting on code blocks. I write the colours in by hand if I want them. Usually I don't bother.
  • I do not have a search. I have Ctrl+F. So far this has been adequate.
  • I do not have an automatically generated RSS feed. I write the entries into feed.xml by hand when I publish. This takes about ninety seconds per entry. So far it has not stopped me from doing it.
  • I cannot trivially have separate pages with separate URLs. I use anchor links instead. Some search engines hate this. I have made my peace with the fact that this site is not optimised for them.

None of these costs has, after eight months, been a real problem. I am, if anything, more productive than I was on any framework.

Should you do this

Probably not. Most people should use a static site generator and stop thinking about the question. The single HTML file approach is for people who have a specific aesthetic objection to modern tooling, or who write infrequently enough that the file will not become unreadable, or who, like me, find that the discipline of the constraint produces better writing than infinite freedom.

But if any of those describe you, I want to make the case that you should at least try it for one weekend. Open a blank file. Type <!doctype html>. See what happens.

What happened to me is: this site. Eight months in, twelve thousand words written, no build pipeline, no deployment failures, no broken updates. Just a file. Mine.

#meta #web #en ← /journal

告别 · 旧文

从伦敦走的那天,下了一整天的雨

这是一篇追记。事情发生在 2021 年 8 月 17 日,我从 Heathrow 飞瓦伦西亚那一天。我那天忘了写下来,后来一直想写但一直没写。两年之后我才坐下来。这种事我之后会越做越多——隔几年回去补一些当时没说出口的东西。我已经不打算装作"事件刚发生"那种语调了。

那天伦敦下了一整天的雨。这不是一句修辞。我有航空公司的行程单可以为证(航班延误了 47 分钟,标注的原因是 "weather")。Camden 地铁站出来到我那栋公寓楼的台阶大约 200 米,我在那 200 米里被淋透了三次。我退了租,房东 Olive 站在门口给我盖章签字,她穿着拖鞋,脚边一摊水。她最后给了我一个不太英式的拥抱,说:"You'll be fine, love." 我说我知道。她说:"No, you don't. But you will."

那天我做的事,按时间

我尽量按记忆复盘,可能有几个点错位,但大体准确。

06:12 闹钟响。我没起。

06:40 起来。早餐:剩下的吐司一片,无糖花生酱(上一份房客留的,我从未确认是否过期),一杯速溶咖啡。这是我那个公寓最后一顿早餐。

07:30 退了水电网。给煤气公司打了个电话,停了 20 分钟,最后那位 customer service 的英国先生用一种近乎哲学的耐心给我念了一段免责声明。

08:15 开始打包。其实大部分东西前一晚就装好了。我只是把最后那些"明明知道用不上但又舍不得扔"的东西塞进缝隙:三本课本、一个我妈织了一半就停手的围巾、一把没有刀鞘的小水果刀(被海关没收,下文交代)、一只用了三年的搪瓷杯(裂了,但没碎)。

09:30 打车去 Earl's Court。我特地绕了一段路,因为 Camden 离 Earl's Court 直接走是反方向,我要先去 Earl's Court 那家咖啡馆。我跟自己说:今天吃最后一顿"伦敦早午餐"。

那家咖啡馆叫 The Troubadour,老式的英国咖啡馆,1954 年开的,有花园,有书架,有一只叫 Edie 的老猫总在角落睡觉。我在那里吃过——我记得——大概 80 顿早午餐。从 2018 年到 2021 年,每个有点重要的日子我都去那里吃。论文交了去吃。约会失败了去吃。第一次拿到客户的款去吃。我妈到伦敦短住那两周我们去吃了三次,她第二次就跟服务员混熟了,第三次他给她免了茶钱。

那天上午我点了 the full English(豆子、蘑菇、培根、煎蛋、烤番茄、香肠、黑布丁、烤面包),一壶 English breakfast 茶,一杯橙汁。20 镑零 60 便士。我吃了大概一半,停下来,掏出一张明信片(我前一晚在 Camden 的旧书店买的,伦敦塔桥的一张老照片),开始写。我写给我自己,写到 Valencia 的新地址。我写:

Q., 如果你三个月后到这张明信片,你已经在那个城市待了一段时间。希望你还记得:你是因为想要一个新生活才走的,不是因为这个生活把你赶走的。那是不一样的。 — 你(伦敦最后一个早晨)

我把明信片塞进信封,贴邮票,准备出门去寄。我把围巾忘在了座位上。这件事我十分钟后才发现,那时已经太迟。

11:00 把房门钥匙交给 Olive。她那一拥抱发生在这里。我下了楼,叫了去 Heathrow 的 Uber。司机是巴基斯坦人,话很多,问我去哪。我说西班牙。他说:"Spain. Good. Good food. Bad winter. Trust me. I lived in Madrid one year." 我笑了。

13:00 Heathrow Terminal 5。开始 check in。第一只箱子超重 4 公斤,我当场从行李里抽出三本最重的书(《围城》、《追忆似水年华》第二卷、一本西语词典),塞进随身。书的事先解决了。然后过安检的时候,那把没刀鞘的水果刀被发现了,礼貌没收。我毫不可惜地交了。

14:30 候机楼。我坐在窗边一个吧台椅上,喝一瓶水,看雨打在玻璃上。这时候我突然意识到围巾没了。我没回去。回去也来不及。围巾是我妈织的,2018 年冬天寄来的,灰色,毛线的尾端她绣了一个小小的"远"字。我现在还偶尔会梦见它在 Troubadour 那张椅子的靠背上,被一只我没见过的手随手挂在椅背上,就在那里待着。

16:00 飞机延误的广播。"due to weather"。我看雨。

17:47 起飞。飞机起飞那一秒钟伦敦从灰雨变成蓝色的云海。我没哭。我以为我会哭。我没。

21:30 (CET) 瓦伦西亚机场。出来一推门,热风扑面。23 度,干燥,月亮,蝉。我看着月亮看了大概两分钟,然后才去找出租车。

关于围巾

三年里我给我妈说过两次围巾的事。第一次是 2022 年她生日那天,我喝了点酒,跟她说:"妈,那条围巾我搞丢了。" 她说:"哦。可惜了。" 然后她安静了一会儿,说:"那我再织一条。"

她没再织。我没再问。我们都明白:那条围巾是不能复制的——那是 2018 年的围巾,是她在我爸还没生病的那个秋天,坐在阳台上织的。它有那个时间的颜色。新织一条不是同一条。

第二次是 2024 年冬天,视频里我穿着另一条新买的围巾。她说:"你那个看起来挺暖。" 我说:"我能凑合。" 她说:"明年我给你寄一双袜子。"

这是我和我妈对话的方式。围巾的事再也没有正面提起过。但每一次她说要给我寄什么,我都听见底下那句没说出口的话。

那张明信片到了

那张我在 Troubadour 写的明信片,三个月零四天之后到了我瓦伦西亚的信箱。它经过了:伦敦市内分拣中心、英国海外邮件中心、马德里 Barajas 的国际邮件中转、瓦伦西亚区域分拣、最后送到我家。它在路上某个地方被压过——明信片左下角有一个清晰的鞋印——但字还认得清。我把它贴在书桌前的墙上。

它现在还在。每次搬家我都把它拿下来再贴上去。它在第七次搬家之后,现在贴在 Carrer dels Tomassos 42 三楼的小书房墙上。

"你是因为想要一个新生活才走的,不是因为这个生活把你赶走的。那是不一样的。"

这句话我现在比 2021 年那个早晨更相信。

下了一整天雨的那个伦敦,已经不是我的了。我没有遗憾,我也没有遗忘。这两件事不矛盾。

— Q.,2023 年 8 月,瓦伦西亚

#london #移居 #追记 #zh ← /journal

/notes #

短札。一段话或几行。有的是种子(🌱),有的稍微长出点东西(🌿),少数几条算长成了(🌳)。任何人都可以引用,但请别去掉年份——它们会随时间长。 Apuntes breves. Algunos son semillas (🌱), otros han brotado un poco (🌿), unos pocos están maduros (🌳). Cita lo que quieras, pero deja la fecha — crecen con el tiempo. Short notes. Some are seeds (🌱), some have sprouted (🌿), a few are mature (🌳). Quote freely, but please leave the year — they grow over time.

2026-05-19

关于"等"

我在杭州的时候不知道什么是"等"。地铁三分钟一班,外卖二十分钟,朋友说五分钟到就五分钟到。在瓦伦西亚我重新学习了"等"。公交车晚十二分钟、餐厅上菜要四十分钟、邮局那位 Soledad 太太按她的节奏给所有人盖章——这些不是"差",是不一样的时间观。"等"不是浪费时间,是腾出一段不属于任何人的时间。

2026-05-11

🌱 一个字不够

"乡愁"在中文里有,"saudade"在葡语里有,"morriña"在加利西亚语里有。每种语言里这个词都不一样。一个字不够装下我现在的状态。我现在的状态需要至少三个字,可能要四个。

2026-04-28

Sobre escribir cartas

He vuelto a escribir cartas, en serio, en papel, a mano, con sello. Tres en lo que va de mes. Cosa rara: las tres tardé más en escribir que cualquier email de los últimos cinco años, y las tres me dejaron menos cansado. La fricción de la mano puede que sea, en realidad, descansante. Voy a seguir un mes y veré.

2026-04-15

🌳 检验译文的三个问题

反复确认中。今天的版本:(1) 这句话在原文里走得多远?我的译文走得多远?两者差距大不大?(2) 一个十四岁的、聪明的、母语读者,读到这一段会皱眉吗?(3) 我妈听到这一段会停下来吗?三个问题都过关,这一段才算定稿。

2026-04-02

🌱 morning pages 有用吗

试了 60 天。结论:写出来的内容 90% 没用,但我那 60 天工作产出比平时高了 30%。可能不是 morning pages 在工作。可能只是"早上 25 分钟不开手机"这件事在工作。需要再做对照实验。

2026-03-21

El silencio es una habilidad

Hay personas — y son muy pocas — que pueden estar contigo en silencio quince minutos sin que el silencio se vuelva incómodo. Esta es una habilidad real, ejercitable, escasa. Yo no la tenía hace cinco años. Estoy intentando aprenderla. Por ahora doy aproximadamente nueve minutos antes de empezar a hablar de cualquier tontería para tapar el hueco.

2026-03-08

🌱 Tres cosas que ya no leo

(1) Comentarios bajo cualquier artículo. (2) Hilos de Twitter (no tengo cuenta, pero a veces caigo). (3) Manuales de productividad. Ninguna de las tres me ha hecho falta. Las extraño cero.

2026-02-26

关于"准时"

我妈准时是真的准时——8:00 出门就是 8:00 出门,连袜子穿到脚上的时间都算好。N. 准时是约 8:00 但 8:10 出现,从来不慌。我准时是约 8:00 我 7:50 到,在街角咖啡馆等十分钟。三种准时都是准时。但只有一种让人轻松。

2026-02-14

🌱 我喜欢的"小词"

中文:罢了、恰、终于。西语:vale、apenas、acaso。英语:barely、almost、yet。共同点:它们都在描述一个"几乎"的状态。生活的真实质地大部分是几乎,不是是或不是。

2026-02-02

On lonely vs. alone

English makes the distinction politely. Spanish has solo and solitario (one is fine, the other is heavy). Mandarin uses 一个人 (a person, one) for fine, and 孤独 for heavy. All three languages have the distinction, but only Mandarin makes the fine version sound like a complete sentence on its own. "一个人挺好。" Try saying that in English without sounding defensive.

2026-01-19

🌱 关于"在路上"

开始觉得"在路上"是一种状态而不是一段时间。一些人活到 50 岁还在路上,一些人 28 岁就已经停下了。两种都不是错的。但我希望我至少 60 岁还在路上的轻微版本里。

2026-01-04

El test del cuaderno

Si tengo que abrir un cuaderno para apuntarlo, vale la pena. Si me lo guardo en la cabeza, no era importante o se va a olvidar — y lo que se olvida tampoco era. El cuaderno es el filtro. La memoria sola, sin papel, ya no es de fiar a partir de los treinta.

2025-12-22

🌱 冬至吃什么

北方饺子。南方汤圆。我现在的版本:橄榄油煎一个本地的圆形面包,蘸一点酱油。三种文化的不孝子。但是好吃。

2025-12-08

🌳 翻译四个层次(自用)

(1) 字面:每个词找对位的词。(2) 句法:让目标语言的句子结构合理。(3) 节奏:让句子在目标语言里有同样的呼吸。(4) 温度:让句子在目标语言读者身上引起原语言读者会感到的温度变化。99% 的译者停在 (2)。优秀的译者大部分时间在 (3)。我能想到的几位伟大的——林少华、Edith Grossman、村上春树本人翻译 Carver——他们大部分时间在 (4),并且偶尔成功。

2025-11-29

🌱 关于"贵"

我妈对"贵"的标准是绝对的:超过 30 块的菜就是贵。我对"贵"的标准是相对的:跟我吃这顿能换来的体验比。N. 对"贵"的标准是道德的:如果是剥削来的就贵,公平的就不贵。三种"贵"都对。

2025-11-15

Cosas que me ha enseñado el mar

(1) Que volver no es una contradicción de irse. (2) Que el horizonte no se mueve aunque tú sí. (3) Que el ruido constante puede ser, en realidad, silencio. (4) Que la basura que tira la gente vuelve. (5) Que las gaviotas no son simpáticas, y eso está bien. (6) Que el agua fría en febrero te despierta con más eficacia que cualquier café.

2025-10-30

🌱 我从不点的菜

(1) 在中国餐馆点意大利面。(2) 在意大利餐馆点中国菜。(3) 任何叫"fusion"的东西。这不是原则,是经验。

2025-10-12

关于失败

我做翻译失败过的项目:4 个。其中一个是因为客户付不起钱(不算我)。一个是因为我对那本书一直没找到入口(算我,但属于"老实人式失败")。两个是因为我接活之前没读全书,开始之后才发现我和这本书气场不合(完全算我,纯属贪心)。第三种最贵,最惭愧,最该写到这种笔记里。

2025-09-23

🌱 N. 的一句

"La amistad de adultos es básicamente acordarse de avisar." 成年人的友谊,基本上就是记得说一声。这句话我反复想。

2025-09-04

关于"听不懂"

我学西语的第一年,最痛苦的不是说不出,是听不懂。我能问"¿cuánto cuesta?",但我听不懂答案。"Tres con cincuenta" 在我耳朵里是 "tre con thinkwen ta"。听力比说话晚两年才追上来。说话靠重复,听力靠时间。

2025-08-15

🌱 关于咖啡

我已经一年没在 Starbucks 喝过咖啡了。这不是 snob——是因为我家楼下的咖啡馆 1.30 欧一杯 cortado,老板 Vicente 知道我要少糖。这种关系比任何会员卡都贵。

2025-07-28

Three things I learned from a one-year-old

My friend G. has a one-year-old daughter. I babysat her for three hours last weekend. She taught me: (1) When something is interesting, look at it for as long as it stays interesting, not as long as is socially acceptable. (2) When you fall, the question is whether you can stand up, not whether someone is watching. (3) Communicating is not the same as having vocabulary; she communicated everything with about 40 words and I still have not finished a sentence in 32 years that says exactly what I mean.

2025-07-04

🌱 关于物

买的东西 - 用过的东西 = 浪费。我把这条贴在购物车上一年了。每年还是浪费,但比从前少。

2025-06-19

Sobre el español que aprendí en la calle

"Vale" no significa "está bien"; significa "te he oído y prefiero no discutir contigo ahora." "Ya" no significa "ahora"; significa "antes de que sigas hablando, déjame interrumpirte amablemente." "A ver" no significa "vamos a ver"; significa "tengo que decir algo y todavía no he decidido qué." Los tres me los enseñó la frutera de Russafa, no un libro de texto.

2025-05-31

🌱 工具

我现在用的笔:Pilot Kakuno F 尖,黑墨。我现在用的本子:Midori MD 文库本,无线装订。我现在用的编辑器:Helix(vim 派衍生)。这些都是我用了至少两年的。我换工具的频率从一年三次降到三年一次,写出来的东西反而多了。

2025-05-09

关于"忙"

"我最近很忙"是一句我已经一年没说过的话。不是因为我不忙,是因为我意识到这句话从来不传达任何信息。每个人都"最近很忙"。说出来等于没说。我现在尽量说具体的:"我最近在赶一本三万字的稿子,截稿三周后。" 别人能听见。

2025-04-22

🌱 写得不好的几种

(1) 怕被误解,所以解释太多。(2) 想被喜欢,所以加佐料。(3) 没想清楚,所以绕。(4) 想清楚了但不敢说,所以含糊。这四种我都写过。第三种最常见,第四种最伤。

2025-04-01

Una cosa que no es broma

El mejor regalo que me ha hecho un amigo este año: un sobre con una factura impagada de hace seis años, ya prescrita, que él había guardado desde 2019 sin que yo me enterara, "por si la necesitabas". No la necesitaba. No la necesité. Pero saber que alguien lo guardaba por mí durante seis años — eso es la amistad. No la falta de fricción. La presencia paciente.

2025-03-12

🌱 关于"完美"

我做翻译的标准已经从"完美"降到"诚实"了。完美是给客户的承诺,诚实是给自己的。前者会逼出焦虑,后者会逼出工作。两个都重要,但只有一个能持续二十年。

2025-02-20

On homesickness, recalibrated

I used to think homesickness meant missing China. Five years in, I notice it's more local than that. I miss the specific way the elevator in my mother's building hesitates between the third and fourth floors. I miss the particular smell of the bookshop near West Lake on a rainy October afternoon. I miss a noodle stall that closed in 2019. Homesickness is not for a country. It's for a thousand small textures, most of which no longer exist even in the place itself.

2025-02-02

🌱 我对"自由"的新定义

能说"不"。能说"我不想"。能说"这件事对我太贵"。这就是自由的全部内容。剩下的是文学。

2025-01-15

Cocinar como meditación

Cocinar para uno mismo, despacio, sin música, sin podcast, sin teléfono — es la forma de meditación más asequible que conozco. Picar una cebolla bien picada requiere atención plena. No hay app que te lo enseñe. Y al final hay sopa.

2024-12-30

🌱 年终

2024 年我说过最多的一句话:"明天再说。" 2025 年我想说更多:"今天就好。" 不是为了效率。是为了不积。事情积起来比事情本身重。

2024-11-18

关于"专家"

我现在比较信任的专家有一个共同特点:他们说"我不知道"的频率比说"显然如此"的频率高。如果一个人在他的领域里从来不说"我不知道",那他要么撒谎,要么没在认真思考,要么领域太窄。三种都不值得信。

2024-10-25

🌱 散步的最低剂量

22 分钟。低于这个数我大脑还没启动。高于 90 分钟我开始想回家工作。22-90 是散步的可用区间。最佳长度大约 45 分钟,配合一段看不到熟人的路。

2024-10-04

Un pequeño descubrimiento

Si pides un cortado en cualquier bar de barrio de Valencia y miras al camarero a los ojos al darle las gracias, en aproximadamente el 60% de los casos te van a regalar dos minutos de conversación que no esperabas. En Madrid el porcentaje baja a quizá el 25%. En Londres, a cero. Estas son estadísticas no oficiales pero las he comprobado durante cinco años.

2024-09-12

🌱 我现在每天必做的三件事

(1) 散步至少 30 分钟。(2) 读至少 10 页非屏幕文字。(3) 跟至少一个人有真实的、不是工作上的对话。三件都做到的日子,年内大概 60% - 70%。我对这个比例满意。

2024-08-21

Sobre la lentitud

La lentitud no es una virtud, es un método. Trabajo despacio porque he descubierto que es la única velocidad a la que produzco cosas que no me dan vergüenza al cabo de tres meses. La rapidez del trabajo de los demás no me preocupa. La vergüenza propia, sí.

2024-07-30

🌱 翻译里我最怕的

三个东西:(1) 双关。(2) 韵脚。(3) 一句话同时承担三个意义。前两个有技巧能解。第三个只能祈祷。

2024-06-14

🌳 关于"成熟"

我从前以为成熟是知道得多。现在我以为成熟是: 当一件你以为你懂的事情发生时,你能停下来一秒,承认你可能没那么懂。这一秒钟里你会犹豫,会显得不够利落,会被旁人解读为软弱。但这一秒就是分水岭。它把"反应"和"回应"分开。"反应"是动物,"回应"是人。我每天还在练这一秒。我有时候做到,有时候没做到。但我现在至少知道哪一秒是哪一秒。

2024-05-08

🌱 关于"懂事"

这是个中文专属的词。"懂事"被用来表扬孩子,但它的真实意思是"懂得替成年人省事"。我小时候被反复表扬"懂事"。我今年三十二,正在学着不那么懂事。这件事比戒烟难。

2024-04-19

Lo que sí pasa con el tiempo

Sí mejora la pena, no como te dicen, no por amnesia. Mejora porque dejas de tener tantas conversaciones interiores con la persona o cosa perdida. La pena requiere mucho diálogo. Cuando uno se cansa del diálogo, la pena se sienta a un lado, sigue ahí, pero deja de exigir.

2024-03-08

🌱 关于"该读的书"

没有"该读的书"。只有"我现在读得动的书"和"我现在读不动的书"。后者三年后可能成为前者。也可能永远是后者。两种都没问题。

2024-02-12

关于安静

我家附近有一座老教堂(San Valero),周一到周五上午十点到十一点没人。我有时候进去坐二十分钟。不是为了信仰——我没有。是为了安静。安静是免费的,但你得知道去哪找。瓦伦西亚的安静都在教堂里,因为不收门票,没人去。这事让我有点伤感。

2024-01-23

🌱 我的写作时间

早上 7:30 - 9:00,最好的时间,没有之一。9:00 之后世界开始派任务给我。在那之前我属于我。

2023-12-12

Sobre dejar a la gente

He aprendido — tarde, mal — que dejar a alguien irse no es lo mismo que dejar de quererle. Pueden coexistir las dos cosas. La gente que no acepta esto sufre más. La gente que sí lo acepta también sufre, pero con menos ruido. Yo estoy en el segundo grupo desde hace poco.

2023-11-04

🌱 关于"老朋友"

老朋友是少数几个人。你不联系十个月,再联系,能从上次断的地方接着说。这种人一辈子能攒到五个就不错。我有三个。

/cocina · 厨房 · kitchen #

食谱写给我自己看。所以会有具体克数、具体牌子、具体哪家店买的。如果你照着做不一定对——你的盐不是我的盐,你的火不是我的火。但这是我的版本。 Las recetas las escribo para mí. Por eso pongo gramos exactos, marcas concretas, dónde compré qué. Si las copias quizá no salgan igual — tu sal no es mi sal, tu fuego no es mi fuego. Pero esta es mi versión. Recipes are written for me. That's why everything is in grams, with brand names and the shop I bought it at. If you follow it your version won't match — your salt isn't my salt, your stove isn't mine. But this is my version.

外婆的葱油拌面(瓦伦西亚版)

两人份 · 准备 5 分钟 · 烹饪 25 分钟 · 我每两周做一次

这是我外婆的方子,我妈传给我,我搬来瓦伦西亚之后改了三处(找不到细香葱、找不到那种酱油、找不到她的那把铁勺)。但骨架还是一样。

难度: 关键:葱油的火候 设备:一只小炒锅,最好不粘
  • 瓦伦西亚的细面 240 g(Mercat Central 二楼 Pastas Felisa 那家,1.80 €/250g)
  • 大葱 1 根(约 80 g),西班牙的 cebolla tierna 也行;细香葱在这边找不到,我已经放弃
  • 葱白部分要 60 g,葱绿部分留 20 g
  • 香葱头(chalota)2 颗,约 30 g(用来加深底味)
  • 姜 一小块(约 8 g),切丝
  • 菜籽油 60 ml(中国超市的"金龙鱼"或"福临门"是首选;找不到就用 Coosur 的一种叫 "aceite de girasol alto oleico" 的,效果接近)
  • 生抽 2.5 大勺(我用李锦记薄盐生抽,35 ml 左右)
  • 老抽 半小勺(提色,不能多)
  • 白糖 1 小勺(4 g 左右,平衡咸味)
  • 盐 一小撮(煮面用)
  1. 葱白和葱绿分开切。葱白切 4-5 cm 长段,葱绿切 1 cm 段。香葱头切薄片。姜切丝。这一步先做完,因为下锅之后没空切。
  2. 冷锅倒油 60 ml。冷锅。这是关键。下香葱头片和姜丝。开中小火,慢慢加热。油温起来的过程中香葱头会从生白变金黄。这个过程大约 5-7 分钟。耐住性子。如果你嫌慢提前开大火,香葱头会外焦里生,葱油就毁了。
  3. 香葱头变金黄之后下葱白段。继续中小火。葱白下去之后会"吱"一声释放水分,油温会暂时降一点。葱白要煎到边缘焦黄、内部还保留一点点白色。大约 4-5 分钟。
  4. 这时候油已经成了"葱油"——颜色金黄微深,香气出来了。下生抽和老抽。注意:酱油下去会剧烈起泡。我每次都被吓一跳。
  5. 加白糖。搅匀。葱绿全部下锅,关火,靠余温烫一下。这一步 30 秒,不要久。
  6. 另起一锅水,烧开,加一小撮盐。下面 240 g。瓦伦西亚的那种细面我煮 4 分 20 秒(包装写 5 分钟,我故意减了 40 秒,因为还要拌)。
  7. 面捞出,沥水,但不要沥太干(留一点点煮面水帮助拌开)。
  8. 把面倒进葱油锅里,拌。要快,要匀,要让每根面都裹上酱色。第一筷子最香。

外婆的版本和我的版本,区别在哪:

  • 她用的是杭州本地的葱(细而长),我用的是西班牙的 cebolla tierna(粗而短)。香气方向相似但浓度不同。
  • 她用的酱油是镇江老抽和生抽各半,我用的是李锦记。她那种我在瓦伦西亚的中国超市偶尔有,但贵到让我心疼,所以平时不用。
  • 她用的是熟猪油 + 菜籽油的混合(她自己炼的猪油),我只用菜籽油。她那一勺猪油是真的"魂"。但我现在没本事自己炼。
  • 她最后会撒一点白胡椒粉。我有时候加,有时候不加。看心情。

2024-03 第一次写下来 · 2025-08 修订(修了葱白下锅的时间) · 2026-02 又修订(加了香葱头)

El arroz que me enseñó Pilar

2-3 personas · prep 10 min · cocción 20 min

No es paella. Pilar (mi vecina valenciana, 71 años) se enfadaría si lo llamara paella. Es arroz al horno casero, versión rápida, hecho en sartén porque mi horno es traidor. Me lo enseñó en mayo de 2024, una tarde de domingo, sin receta escrita. Tomé apuntes después. Esto es lo que recuerdo y lo que he ido refinando.

Dificultad: media Clave: el sofrito y no remover el arroz Sartén: 26-28 cm, fondo grueso
  • Arroz bomba 200 g (cualquier marca de las buenas; la que me gusta es la de un pequeño productor de Albufera, Arroz Tartana, 4,80 €/kg)
  • Aceite de oliva virgen extra 4 cucharadas (yo uso Castillo de Canena, sí, soy un poco snob con esto)
  • 1 cebolla mediana, picada fina (~150 g)
  • 2 dientes de ajo, picados
  • 1 tomate maduro, rallado (~120 g de pulpa)
  • 100 g de panceta o costilla de cerdo en trozos pequeños (la del Mercadona vale; la del carnicero del Mercat de Russafa está mejor pero cuesta el doble)
  • 1 morcilla pequeña (de cebolla, no de arroz; ~60 g)
  • 1 cucharadita de pimentón dulce de la Vera
  • Una punta minúscula de pimentón picante (opcional; yo sí)
  • Una hebra de azafrán (en serio, una hebra; no me hagas explicar por qué)
  • Caldo de pollo 500 ml (casero si tienes; si no, el brick de la marca Aneto, 2,30 €, no es bueno pero es honesto)
  • Sal, al final, al gusto
  1. Pon la sartén a fuego medio-alto con las 4 cucharadas de aceite. Cuando esté caliente pero no humeante, echa la panceta. Dora bien por todos los lados, unos 4 minutos. Saca y reserva.
  2. Baja el fuego a medio. En el mismo aceite (que ahora tiene grasa de cerdo, esto es importante) pon la cebolla picada con una pizca de sal. Quieres que se haga lenta, hasta transparente y un poco dorada. 8-10 minutos. No metas prisa al sofrito. Pilar me lo dijo cinco veces ese domingo.
  3. Añade el ajo. 1 minuto.
  4. Añade el tomate rallado. Sube el fuego a medio-alto. Deja que se reduzca hasta que pierda el agua y el aceite empiece a separarse. 5-7 minutos. Esto se llama "estar el sofrito", y es la única cosa que separa un arroz aceptable de uno bueno.
  5. Apaga un segundo el fuego (para que no se queme el pimentón). Añade el pimentón dulce y el picante. Remueve. Vuelve a encender el fuego.
  6. Añade el arroz. Sin lavar. Remueve durante 1 minuto, hasta que cada grano esté brillante de sofrito. Esto se llama "perlar".
  7. Echa el caldo caliente (calentado aparte). Añade la hebra de azafrán desmenuzada con los dedos. Reparte por encima la panceta reservada y la morcilla cortada en rodajas.
  8. Sube fuego al máximo 2 minutos. Después, baja a fuego medio. No remuevas más. A partir de aquí el arroz se hace solo.
  9. Total cocción del arroz: 17-18 minutos. A los 12 minutos prueba un grano. Ajusta sal si hace falta.
  10. Cuando ya casi no queda caldo visible, sube el fuego al máximo 1 minuto y medio para hacer el socarrat — la costra dorada del fondo. Vas a oír cómo cambia el sonido (de borboteo a chisporroteo). Ese es el momento de apagar.
  11. Tapa con un paño limpio (no tapa de metal). Reposa 4 minutos. Sirve en la sartén. Come con cuchara.

Pilar dice que el azafrán de verdad cambia el plato. He hecho la receta 14 veces. La he hecho dos veces sin azafrán por olvido. Pilar tiene razón. Cambia.

One-pot Mum's tomato-egg noodles, jet-lag version

For one tired person · 12 minutes · the meal you make at 11pm after a flight

The dish my mother made for me every time I came home from boarding school in 2008. I've reconstructed her version with what's available in Valencia in 2025. There are six ingredients. Five if you skip the spring onion. Four if you really, really have nothing. It is the most forgiving recipe I know.

Difficulty: low Mood: tired, hungry, slightly homesick One pot: a 22-24 cm saucepan
  • 2 eggs (the eggs from Granja San Miguel in Mercat de Russafa are excellent; supermarket eggs are fine)
  • 2 medium ripe tomatoes (~250 g) — they need to be ripe; pale supermarket tomatoes will not give you the broth
  • 1 spring onion, chopped (white and green separated)
  • 120 g of thin Chinese-style wheat noodles (the "guajiao bok" brand from Asia Perú on Carrer de Cuba; they cook in 3 minutes)
  • 1.5 tablespoons of light soy sauce
  • 1/2 teaspoon of sugar
  • 3 tablespoons of neutral oil
  • 500 ml of water
  • Salt to taste
  • Optional: a pinch of white pepper, a few drops of sesame oil at the end
  1. Cut a small cross at the base of each tomato. Drop into boiling water for 30 seconds. Peel. Chop into rough chunks.
  2. Beat the eggs with a tiny pinch of salt.
  3. Heat 2 tablespoons of oil in the saucepan over medium-high heat. When shimmering, pour in the eggs. Let them set for 10 seconds, then break into large soft curds with a spatula. They should be just set, not browned. Remove and set aside.
  4. Add the remaining 1 tablespoon of oil to the same pan. Add the white parts of the spring onion. 30 seconds.
  5. Add the tomato chunks. Press them down with the spatula. Cook on medium-high for 3-4 minutes until they break down into a rough sauce and the oil turns red-orange. This is the moment your kitchen begins to smell like home.
  6. Add the soy sauce and sugar. Stir.
  7. Add the 500 ml of water. Bring to a vigorous boil.
  8. Add the noodles. Cook for 3 minutes (or per packet).
  9. 30 seconds before the noodles are done, return the eggs to the pan. They will warm through and pick up tomato.
  10. Taste. Add salt if needed. Off the heat, add the green parts of the spring onion, a pinch of white pepper, and the few drops of sesame oil if you have it.
  11. Eat from the saucepan, in a chair, with no phone. The bowl can wait.

My mother's version uses Hangzhou-style fresh noodles, which I cannot get here. I've experimented with three brands of dried noodles. The one above is the closest in texture. The dish is, as I said, very forgiving — I have made it once with udon (works), once with spaghetti (doesn't), and once on a camping stove with a single pot and no spring onion (works, of course it works).

Crema de calabaza con jengibre y leche de coco

2-3 personas · 35 min · invierno

Una receta híbrida que me salió por accidente un domingo de noviembre de 2023. Tenía media calabaza moscada, una lata de leche de coco que llevaba meses en el armario, y un trozo de jengibre que había comprado para otra cosa. La he hecho ya más de treinta veces.

Dificultad: baja Equipo: batidora de mano
  • 700 g de calabaza moscada (la cacahuete, esa con cuello largo), pelada y en trozos
  • 1 cebolla mediana, picada gruesa
  • 1 trozo de jengibre fresco del tamaño de un pulgar (~25 g)
  • 1 diente de ajo
  • 200 ml de leche de coco entera (la marca AROY-D de la tienda asiática es la que uso; supermercado, en último caso, la de Mercadona)
  • 500 ml de caldo de verduras (o agua + 1 cucharadita de miso blanco)
  • 2 cucharadas de aceite de oliva
  • Sal, pimienta blanca, una pizca de nuez moscada
  • Opcional: zumo de medio limón al final, semillas de calabaza tostadas, un hilo de aceite de sésamo
  1. En una olla mediana, pocha la cebolla con el aceite y una pizca de sal a fuego medio-bajo, 8 minutos.
  2. Añade el jengibre y el ajo finamente picados. 1 minuto.
  3. Añade los trozos de calabaza. Saltea 2 minutos.
  4. Añade el caldo (o agua con miso). Lleva a hervor. Baja el fuego, tapa parcialmente, cocina 18-22 minutos hasta que la calabaza esté completamente blanda.
  5. Apaga. Añade la leche de coco. Tritura con la batidora de mano hasta crema fina.
  6. Vuelve a encender. Caliente sin hervir 2 minutos. Salpimienta. Una pizca de nuez moscada.
  7. Sirve. Encima: un hilo de leche de coco, semillas de calabaza tostadas, un poco de aceite de sésamo (sí, en una crema "occidental" — confía en mí). Si te apetece, unas gotas de limón al final levantan el plato.

Variación que hago en enero, cuando hace mucho frío: añado al final una cucharadita de pasta de curry rojo tailandés. Cambia el plato entero pero está buenísimo. No es purista. Yo tampoco lo soy.

三个人凑合的火锅(瓦伦西亚冬夜)

3 人份 · 准备 20 分钟 · 涮 1 小时 · 12 月才做

瓦伦西亚一年有四个真正"冷"的礼拜,大概是 12 月底到 1 月初。这四个礼拜我会做一次火锅。锅子是宜家最便宜那种厚底锅,电磁炉是 30 € 的 Mercadona 单灶,配料都是 Carrer de Cuba 上那家叫 Asia Tianjin 的中国超市买的。

难度:中(主要在汤底) 关键:汤底要熬,不能图省事用包 设备:带电磁炉的厚底锅 + 一张大餐桌

汤底:

  • 鸡骨架 1 个,约 400 g(Mercat 的家禽店 Polleria de Pepe,1.50 €)
  • 猪筒骨 2 块,约 600 g
  • 姜 一大块(约 30 g),拍碎
  • 葱 2 根,打结
  • 料酒 50 ml(找不到我用的是干雪利酒 Manzanilla,意外地合适)
  • 白胡椒 5-6 粒,整粒
  • 八角 1 个
  • 水 2.5 L

涮料(自由组合,下面是我们仨那次的清单):

  • 肥牛卷 300 g(Asia Tianjin 冰柜里那种"Hot Pot Beef Slice",4.50 € 一盒)
  • 羊肉卷 200 g
  • 大虾 8 只(带壳,有头)
  • 鱼丸 一袋约 200 g
  • 豆腐 一盒,切大块
  • 金针菇 2 把
  • 香菇 8 朵
  • 娃娃菜 1 棵(Mercadona 没有,去中超买)
  • 菠菜 一大把
  • 粉丝 一小袋(红薯粉丝最香)

蘸料(每人一碗,自己调):

  • 芝麻酱 1 大勺(瓦伦西亚买不到中式的,我用希腊的 tahini 兑香油)
  • 香油 半小勺
  • 韭菜花酱 1 小勺(Asia Tianjin 有,1.20 €/瓶)
  • 红腐乳 半小块(捣碎)
  • 葱花、香菜、蒜末 适量
  • 生抽 2 勺
  • 醋 几滴
  • 辣椒油 自己看
  1. 骨头先飞水:冷水下锅,烧开 3 分钟,捞出冲洗。
  2. 另起一锅 2.5 L 冷水,下骨头、姜、葱结、料酒、白胡椒、八角。烧开后转小火,盖子留缝,慢炖 1 小时 30 分钟。
  3. 炖汤期间洗菜、切菜、调料。
  4. 汤底炖好之后捞出所有大块东西(骨头、姜、葱),保留清汤。尝一下,几乎不需要加盐——蘸料咸。
  5. 把清汤倒进锅里上桌。开电磁炉烧到滚。
  6. 顺序:先下耐煮的(豆腐、香菇、娃娃菜白色部分)。再下肉(一片一片涮,七秒就熟)。最后下不耐煮的(菠菜、金针菇)。粉丝放最后吸汤。
  7. 吃的过程中不停加汤——会蒸发,会被涮料吸——所以另一只小锅烧着热水备用。
  8. 结束的时候,汤已经成了"火锅高汤精华",里面所有东西的味道都进去了。这一锅汤,泡一小碗米饭,是整顿火锅的最后高潮。

2025 年 1 月 4 日的那次:我、N.、还有一个加泰朋友 Marc。Marc 第一次吃火锅,对芝麻酱蘸料不太适应,但吃了第三块牛肉之后就上瘾了。那天我们吃到 11 点半,喝完了一瓶 Manzanilla 和一瓶 Cava。瓦伦西亚那晚 4 度,外面雨大。锅气在窗户上凝成水。这是我搬来之后最像家的一晚之一。

/lecturas · 读过的书 · books #

2024 年开始记的,半年一更。⭐⭐⭐⭐⭐ = 改变我;⭐⭐⭐⭐ = 很好;⭐⭐⭐ = 不亏;⭐⭐ = 有可取之处但我不会推荐;⭐ = 我读完了为了不浪费已经投入的时间。"读不动"列表写的是我半途放弃的——这不是它们的错。 Lo llevo desde 2024, actualizo cada seis meses. ⭐⭐⭐⭐⭐ = me cambió; ⭐⭐⭐⭐ = muy bueno; ⭐⭐⭐ = vale la pena; ⭐⭐ = algo de valor pero no lo recomendaría; ⭐ = lo terminé por no tirar el tiempo ya invertido. "Abandonados" son los que dejé a medias — no es culpa suya. Tracking since 2024, updated semi-annually. ⭐⭐⭐⭐⭐ changed me; ⭐⭐⭐⭐ very good; ⭐⭐⭐ worth it; ⭐⭐ has some merit but I wouldn't recommend; ⭐ I finished it not to waste the time already sunk. "Abandoned" lists what I gave up on — not the book's fault.

2026 — en curso

títuloautoridiomanotanota corta
Eros the Bittersweet Anne Carson EN ⭐⭐⭐⭐⭐ 每天读三页,已经读了七周。我不打算快。
Plagas Élmer Mendoza ES ⭐⭐⭐⭐ 正在翻它。读三遍,看法不同。
Diccionario amazónico varios ES ⭐⭐⭐⭐ 不是为读完,是为查。这种字典越查越爱。
The Long Take Robin Robertson EN ⭐⭐⭐⭐⭐ 诗体小说。1948 年的纽约和洛杉矶。读完那晚没睡着。
九故事 塞林格(李文俊译) ZH ⭐⭐⭐⭐ 重读。第一次读是 2009 年高二。书没变。我变了。

2025

títuloautoridiomanotauna línea
Stoner John Williams EN ⭐⭐⭐⭐⭐ 读完的那天我在 Cabanyal 海边坐了两个小时不想说话。
Las cosas que perdimos en el fuego Mariana Enríquez ES ⭐⭐⭐⭐⭐ 阿根廷恐怖短篇集。让我想起为什么我一开始要学西语。
百年孤独 García Márquez(范晔译) ZH/ES ⭐⭐⭐⭐⭐ 对照读了一遍中译和原文。范晔译本是我读过的最好的西译中之一。
The Argonauts Maggie Nelson EN ⭐⭐⭐⭐ 她改变了我对"真诚"这个词的理解。
Cómo viajar sin ver Andrés Neuman ES ⭐⭐⭐⭐ 拉美 19 国巡回的笔记。每篇短,读着不累。
The Fraud Zadie Smith EN ⭐⭐⭐⭐ 她写 19 世纪比她写 21 世纪还自信。
翻译的危险 沈志佳 ZH ⭐⭐⭐⭐ 专业书。但每个译者都该读。
The Vegetarian Han Kang(trans. Deborah Smith) EN ⭐⭐⭐⭐ 关于翻译争议读了三篇文章。译者做了一个选择。我理解它。
Nocturna Alfonsina Storni(poesía completa) ES ⭐⭐⭐⭐ 读了三个月,每晚两首。
How to Live on 24 Hours a Day Arnold Bennett (1908) EN ⭐⭐⭐ 1908 年的"生产力"书。意外地比 2025 年的同类好十倍。
Pájaros en la boca Samanta Schweblin ES ⭐⭐⭐⭐ 短篇集。读完每一篇都得停五分钟。
The Story of My Teeth Valeria Luiselli EN ⭐⭐⭐⭐ 它本身就是一个关于翻译的玩笑。我笑了。
看见 柴静 ZH ⭐⭐⭐⭐ 重读。十年前的我没读懂多少。
The Dawn of Everything D. Graeber & D. Wengrow EN ⭐⭐⭐⭐ 700 页。慢慢读。值得。
El infinito en un junco Irene Vallejo ES ⭐⭐⭐⭐⭐ 书的故事。读完想拥抱每个图书管理员。
Convenience Store Woman Sayaka Murata EN ⭐⭐⭐⭐ 三个小时读完,三天回不过神。
The Tartar Steppe Dino Buzzati EN ⭐⭐⭐⭐⭐ 关于"等待没发生过的事"的最好的小说。每个 32 岁的人都该读。

2024

títuloautoridiomanotauna línea
Tomb of SandGeetanjali Shree (trans. Daisy Rockwell)EN⭐⭐⭐⭐难。但当它进来你会知道。
Vidas conjugalesBernhard SchlinkES⭐⭐⭐我妈会喜欢。我喜欢三分之二。
BluetsMaggie NelsonEN⭐⭐⭐⭐⭐关于蓝色的 240 段。
The YearsAnnie Ernaux (trans. Strayer)EN⭐⭐⭐⭐⭐她写她那一代人,结果写到了我。
边城沈从文ZH⭐⭐⭐⭐第三次读。每次少看到一点情节,多看到一点光。
Sin novedad en el frenteErich M. RemarqueES⭐⭐⭐⭐⭐1929 年的书。今天读起来更可怕。
The IdiotElif BatumanEN⭐⭐⭐⭐关于一个靠误解学语言的女孩。我懂她。
Suite francesaIrène NémirovskyES⭐⭐⭐⭐未完成的杰作。未完成本身是杰作的一部分。
The Master and MargaritaBulgakov (trans. Pevear & V.)EN⭐⭐⭐⭐读到 200 页放下,3 周后回来。值得回来。
李笠翁曲话李渔ZH⭐⭐⭐⭐明末的"如何写戏"。今天读还是 sharp。
TrustHernan DiazEN⭐⭐⭐⭐四个版本讲一件事。结构本身是 argument。
La uruguayaPedro MairalES⭐⭐⭐读得很快。后劲也很快。
EducatedTara WestoverEN⭐⭐⭐故事让我哭三次。文笔让我皱眉两次。
红楼梦(前八十回)曹雪芹ZH⭐⭐⭐⭐⭐我每三年重读一次。每次发现新章。
The Argonauts(重读)Maggie NelsonEN⭐⭐⭐⭐⭐和 2025 年读的不是同一本书。我又变了。

读不动 / abandonados

这些书我没读完。理由不一定是它们不好。也可能是我那时候没准备好,或者我们就是不合。我留下书签,标了页数,可能五年后回来。

  • Infinite Jest(DFW,2024 年 9 月,停在 287 页)— 不是书的错。
  • Ulysses(Joyce,2024 年 1 月,停在 168 页)— 我已经放弃过三次。
  • 2666(Bolaño,2025 年 4 月,停在 第二部 中段)— 第三部劝退。准备 2027 年再试。
  • The Recognitions(Gaddis,2025 年 11 月,停在 412 页)— 太累。
  • Being and Time(Heidegger,每两年试一次)— 我可能这辈子都不会读完。我已经 OK 了。
  • 《追忆似水年华》第三卷(普鲁斯特,2024 年夏天,停在某个晚宴中段)— 卡夫卡说的:人不能两次进入同一个晚宴。或者别人说的。反正我退了。

关于"该读但不想读"的清单

我现在没有这个清单。

三十岁之前我有。它列着卡尔维诺全集、托马斯·曼、福克纳、帕慕克某几本、本雅明的拱廊计划。我每过半年都对着这个清单焦虑一下。

三十岁之后我把这个清单撕了。我相信一件事:好书会找到你。如果我现在还没读卡尔维诺的某一本,要么是我还不需要它,要么是它和我没缘分。两种都不是悲剧。

/código #

业余写代码。50 行能解决的事我不写 500 行。下面是一些我自己每天还在用的小工具,全部可读、可改、可窃。许可证:MIT,但请你在读了的基础上做选择。 Programo por afición. Si algo se hace en 50 líneas, no lo escribo en 500. Abajo hay herramientas pequeñas que uso a diario. Léelas, modifícalas, róbalas. Licencia: MIT, pero por favor decide después de leer. I code on the side. If something fits in 50 lines I don't write 500. Below are small tools I still use daily. Readable, hackable, stealable. License: MIT, but read it first and then decide.

1. tlog.py — recent notes for fzf

那个我用 Rust 重写过最后回归 Python 的 50 行。每天用大约 30 次。

tlog.py · 49 lines · MIT
#!/usr/bin/env python3
"""
List recently edited markdown notes from $NOTES_DIR plus
those changed in git within last 24h. Output is fzf-friendly:
  <mtime>\\t<relative-path>\\t<first-line-of-file>
Usage:  tlog | fzf
"""
import os, sys, subprocess, time
from pathlib import Path

NOTES = Path(os.environ.get("NOTES_DIR", Path.home() / "notes"))
HOURS = int(os.environ.get("TLOG_HOURS", "24"))
CUTOFF = time.time() - HOURS * 3600


def git_modified(root: Path) -> set[str]:
    try:
        out = subprocess.check_output(
            ["git", "-C", str(root), "log",
             "--since", f"{HOURS}.hours.ago",
             "--name-only", "--pretty="],
            stderr=subprocess.DEVNULL,
            text=True,
        )
    except subprocess.CalledProcessError:
        return set()
    return {line.strip() for line in out.splitlines() if line.strip()}


def first_line(p: Path) -> str:
    try:
        with p.open("r", encoding="utf-8", errors="replace") as f:
            for line in f:
                line = line.strip().lstrip("# ").strip()
                if line:
                    return line[:80]
    except OSError:
        return ""
    return ""


def main() -> None:
    if not NOTES.is_dir():
        sys.exit(f"NOTES_DIR not found: {NOTES}")
    git_set = git_modified(NOTES)
    rows = []
    for p in NOTES.rglob("*.md"):
        try:
            m = p.stat().st_mtime
        except OSError:
            continue
        rel = str(p.relative_to(NOTES))
        if m >= CUTOFF or rel in git_set:
            rows.append((m, rel, first_line(p)))
    rows.sort(reverse=True)
    for m, rel, head in rows:
        ts = time.strftime("%m-%d %H:%M", time.localtime(m))
        sys.stdout.write(f"{ts}\\t{rel}\\t{head}\\n")


if __name__ == "__main__":
    main()

用法:

$ export NOTES_DIR=~/notes
$ tlog | fzf --preview 'cat ~/notes/{2}'

维护笔记:2020-04 写的初版(35 行)。2022 加了 git 集成。2023 加了 first_line 预览。2025 用 Rust 重写失败之后回到这里。从那以后没改过。


2. now.sh — generate /now timestamp

每次更新这个网站的 /now 部分都要打日期。我懒。

now.sh · 12 lines · zsh
#!/usr/bin/env zsh
# Replace the <time> tag inside #now block of index.html
# with today's date. Idempotent. Backs up to .bak.
set -euo pipefail
F="${1:-index.html}"
TODAY="$(date +%Y-%m-%d)"
cp "$F" "$F.bak"
sed -i.tmp -E "s|(id=\"now\".*<time datetime=\")[0-9]{4}-[0-9]{2}-[0-9]{2}|\1$TODAY|" "$F"
rm -f "$F.tmp"
echo "→ /now updated to $TODAY"

3. cuenta.py — accent + char tally

本地化时检查一段中译里"的"出现频率、一段西译里 "que"-连用是否多得离谱。简单但救命。

cuenta.py · 39 lines
#!/usr/bin/env python3
"""
Show the 30 most frequent words and the most frequent 2-grams
in a text file. Stopwords NOT removed (intentional — we want
to see if 'que' is choking the prose).
"""
import sys, re
from collections import Counter

if len(sys.argv) != 2:
    sys.exit("usage: cuenta.py FILE")

text = open(sys.argv[1], encoding="utf-8").read().lower()
words = re.findall(r"[\\w'’-]+", text, flags=re.UNICODE)

print(f"total words: {len(words)}")
print(f"unique:      {len(set(words))}")
print()

print("--- top 30 words ---")
for w, c in Counter(words).most_common(30):
    print(f"{c:5d}  {w}")

print()
print("--- top 20 2-grams ---")
bigrams = Counter(zip(words, words[1:]))
for (a, b), c in bigrams.most_common(20):
    print(f"{c:5d}  {a} {b}")

2024-11 我用它发现自己一段译文里"实际上"出现了 14 次(共 3000 字)。改完是 3 次。这是它救命的那种用法。


4. weatherbar — minimal status-bar weather

给我的 dwm 状态栏用。AEMET 的 API(西班牙气象局),免费但需要注册。

weatherbar.py · 28 lines
#!/usr/bin/env python3
import os, urllib.request, json, sys
KEY = os.environ["AEMET_KEY"]
MUNI = "46250"  # Valencia

def fetch(url):
    req = urllib.request.Request(url, headers={"api_key": KEY})
    with urllib.request.urlopen(req, timeout=8) as r:
        return json.load(r)

def main():
    meta = fetch(f"https://opendata.aemet.es/opendata/api/prediccion/especifica/municipio/diaria/{MUNI}")
    data = fetch(meta["datos"])[0]["prediccion"]["dia"][0]
    tmax = data["temperatura"]["maxima"]
    tmin = data["temperatura"]["minima"]
    estado = data["estadoCielo"][0]["descripcion"] or "—"
    sys.stdout.write(f"{estado} {tmin}/{tmax}°")

try: main()
except Exception:
    sys.stdout.write("☁ ?")

5. regex-de-bolsillo — 我每周还在查的几条

不是 regex 教程,是我每周还在抄的那十条:

# match a Chinese character
[\\u4e00-\\u9fff]

# match Chinese OR Latin word boundary (mixed text)
(?:[\\u4e00-\\u9fff]|\\b[a-zA-Z]+\\b)

# strip leading/trailing whitespace including unicode
^[\\s\\u3000]+|[\\s\\u3000]+$

# Spanish opening punctuation followed by capital
[¿¡][A-ZÁÉÍÓÚÑ]

# email (boring but you'll need it)
[\\w.+-]+@[\\w.-]+\\.[a-zA-Z]{2,}

# ISO date
\\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12]\\d|3[01])

# trailing whitespace (the enemy)
[ \\t]+$

# accidental double space
(?<=\\S)  +(?=\\S)

# RTL marker chars (paste invisible)
[\\u200e\\u200f\\u202a-\\u202e]

# any non-ASCII (audit a "should be English" file)
[^\\x00-\\x7f]

6. git aliases — 我的 ~/.gitconfig 摘录

[alias]
  s   = status -sb
  co  = checkout
  cm  = commit -m
  ca  = commit --amend --no-edit
  l   = log --oneline --graph --decorate -20
  ll  = log --pretty=format:'%C(yellow)%h %C(green)%cr %C(blue)%an%C(reset) %s' -25
  d   = diff --word-diff=color
  ds  = diff --staged
  unstage = reset HEAD --
  last = log -1 HEAD --stat
  # the only one that matters
  oops = !git reset --soft HEAD~1 && git status -sb

7. 一个我喜欢的 vim 配置片段

init.vim 节选 (Neovim)
" --- prose mode for translation work ---
function! ProseMode()
  setlocal spell spelllang=en,es,zh
  setlocal wrap linebreak nolist
  setlocal textwidth=0 wrapmargin=0
  setlocal noshowcmd
  setlocal scrolloff=999
  setlocal conceallevel=0
  silent! colorscheme paper-light
  echo "→ prose mode"
endfunction
command! Prose call ProseMode()

" --- jump to last edit ---
nnoremap <leader>. `.

" --- Chinese-friendly word motion ---
set iskeyword+=12353-12435,19968-40895

" --- save and source for quick config tweaks ---
nnoremap <leader>rs :w<CR>:source $MYVIMRC<CR>

我用 Neovim 写翻译稿。:Prose 是我每天早上敲的第一个命令。


关于"我不写"的事

  • 我不写 web 后端。我不喜欢。
  • 我不学 Kubernetes。我没有理由。
  • 我不再追新框架。React → Vue → Svelte → Solid → 下一个。我在 2022 年底就退订了所有 JS 周报。世界没坏,反而清静了。
  • 我会的:Python(10 年)、bash(凑合)、一点 Rust(见 /journal 的失败回忆)、足够看懂别人 JS 的 JS、足够看懂 SQL 的 SQL、HTML/CSS(这个站就是证据)。
  • 我够用了。

/viajes · 旅行碎片 #

不是攻略。每次去一个地方我会留几个具体的小切片——一句话、一个名字、一份账单。回头看很受用,比"去了哪些景点"靠谱十倍。 No son guías. De cada viaje me llevo unas cuantas viñetas: una frase, un nombre, una factura. Releerlas vale diez veces más que recordar "a qué sitios fui". Not guides. From each trip I keep a handful of vignettes — one sentence, a name, a receipt. Worth ten times more than the list of monuments visited.

Lisboa · 2025 · 6 días en abril

  • El barbero de la Rua do Salitre se llama Mário, tarda 22 minutos, cuesta 9 €, y no quiere conversación pero la tiene si tú insistes.
  • La ginginha en el sitio detrás del Rossio cuesta 1,50 €. Es asquerosa la primera vez. La cuarta es perfecta.
  • Conté siete iglesias abiertas en miércoles a las 4 de la tarde. Solo en una había alguien rezando. En las otras seis había alguien escondiendo el sueño.
  • El Tejo tiene un olor que cambia tres veces entre Belém y Santa Apolónia. No sabría describirlo. Pero camina.
  • El portugués que me intentaron enseñar en una academia en Madrid hace dos años no sirve para nada en Lisboa. El portugués que aprendí en cuatro días sirve. Tardé más de la cuenta en aprender que la inmersión es la única gramática real.
  • Una bica (café) costaba 0,80 € en 2018, 1,20 € hoy. Mi sueldo subió 3% en seis años. Los cafés ganaron.
  • El fado bueno no se anuncia. Si la calle dice FADO TODOS LOS DÍAS en tres idiomas, no entres.

Berlín · 2024 · 4 días en septiembre, con N.

  • Un tipo en Kreuzberg me preguntó si yo era el dueño de un restaurante chino que había abierto cerca. Le dije que no. Me dio igual durante 24 horas. Después me molestó. Después se me pasó.
  • El currywurst del Imbiss debajo del puente Oberbaumbrücke es decepcionante. Lo digo aquí para que no caigas tú.
  • La librería Pro qm tiene una sección entera de libros sobre tipografía. Compré uno por 32 €. Lo leí dos veces en el avión de vuelta.
  • N. lloró durante 8 minutos en el Holocaust-Mahnmal sin que yo me diera cuenta hasta que salimos. Cuando le pregunté qué pensaba, dijo: "que la palabra monumento está mal usada el 99% de las veces."
  • El metro huele a algo distinto del de Madrid. No sabría decir qué. Pero distinto.
  • En el café Bonanza pedí un V60. La barista me preguntó qué grado de ácido prefería. Era una conversación seria. Lo agradecí.

东京 · 2024 · 11 月底,9 天,独自

  • 第三天才看明白:在车站走路要走在你的左侧(西班牙刚好相反)。我撞了七次人才校准过来。
  • 在中野的一家叫"煮干中華そば 凪"的拉面店排队等了 50 分钟。值得。汤的咸度是我吃过最精确的。
  • 下北沢一家叫 Cow Books 的旧书店店主问我从哪来,我说西班牙。他说:"Ah, Borges." 我说"sí"。我们用三句英语完成了那次对话。后来我想了三天那"是的"包含了什么。
  • 地铁里有一种 11 点之后才出现的气味,是西装、红酒和疲惫混的。这种气味我熟。三种语言里都熟。
  • 在筑地外市场(不是卖鱼那个,是吃东西的小街)一家"鳥めし"的店,一份饭 850 日元。老板七十多岁,一个人开店一个人收银一个人煮。我吃完离开的时候他说"ありがとうございました",鞠躬 90 度。我一辈子没被人这么认真地说过谢谢。
  • 我在 Kanda 旧书街买了一本 1962 年的小津安二郎家庭照片集。3,800 日元。海关没问。我在飞机上看了一路。

Marrakech · 2024 · 5 días, mayo (con G.)

  • El primer regateo me lo hicieron a mí: estaba pidiendo el precio y el vendedor sacó un número 30% más alto del que sé que era el precio justo. Pagué el alto. Luego me arrepentí. Luego me arrepentí menos. Mi paz vale 4 €.
  • El jus d'orange de Jemaa el-Fnaa es un milagro reproducible: 5 dirham, fresco, no diluido. Volví tres veces.
  • G., que es marroquí de origen pero nacida en Cataluña, tradujo durante cuatro días entre nosotros y el mundo. Vi de primera mano lo que es ser el puente. La cuarta noche estaba agotada. Le dije "déjalo, ya hablo gestos". Lo agradeció.
  • En la medina perdí el sentido cardinal a los siete minutos. Se queda perdido durante toda la estancia. No es un fallo del visitante. Es el diseño.
  • El té con menta del Café des Épices: 35 dirham, vista a la plaza, una hora sin que nadie te eche.

Nápoles · 2023 · 4 días

  • Una pizza margherita en Da Michele: 5,50 €. He pagado 18 € por mucho menos en muchos sitios. Hay una justicia en Nápoles que no sé explicar.
  • El italiano que entiendo (un 40% por mi español) y el napolitano que se hablan en la calle son dos lenguas distintas.
  • Vi a un señor de unos 80 años discutir con un repartidor de Glovo durante 12 minutos sobre el orden correcto de meter las cosas en una caja. El repartidor escuchó. Aprendió. Lo hizo bien.
  • La basura en algunas calles era exactamente como me la habían descrito. Y al lado había una iglesia del XV con un fresco que me hizo callar 20 minutos. Las dos cosas viven juntas. La ciudad no ha decidido entre las dos.

Granada · 2023 · 3 días, con mi madre (su única visita a España)

  • Mi madre, de 58 años, en su primer vuelo internacional, durmió en el avión Madrid-Granada como si lo hiciera cada semana. La envidio.
  • En la Alhambra le impresionó más una fuente pequeña en un patio lateral que cualquiera de los salones grandes. Me dijo: "esta fuente es la que usaron las criadas." Tenía razón. La placa lo confirmaba.
  • Comió un plato de jamón ibérico por primera vez. Lo masticó dos veces. Se le iluminó la cara. Dijo en mandarín: "Esto es como nuestro jīnhuá huǒtuǐ pero con menos sal y más alma."
  • Subimos al Albaicín al atardecer. Lloró sin avisar. Me agarró del brazo. Dijo: "Tu padre habría amado esto." Ese fue el momento más importante del viaje.
  • De vuelta a Madrid, en la T4, me dijo: "ahora entiendo un poco por qué te quedaste."

Hangzhou · 2025 · 9 días, septiembre, casa

No es un viaje. Es ir a casa. Pero apunto:

  • El barrio cambió un 35% en cinco años. La panadería de mi adolescencia ya no existe. La barbería de mi adolescencia, sí. El barbero está más viejo. Yo también.
  • Mi madre cocina exactamente igual. Esto es, posiblemente, la noticia más reconfortante del año.
  • Un día caminé 18 km solo, alrededor del lago, sin móvil. Era el camino que hice los sábados durante toda mi adolescencia. La diferencia es que ahora me dolían las rodillas.
  • Mi prima de 24 años me preguntó si volvía. Le dije: "no, ya no es esa la pregunta." No me entendió. Está bien. A mí también me llevó tiempo.
  • Un puesto de xiao long bao que llevaba 35 años abierto cerró en julio. Cuando llegué se llamaba ahora "boba tea & coffee". Compré un boba. Sabía a derrota.

Estocolmo · 2022 · 4 días en febrero (-12°)

  • El frío sueco no es como el frío chino. El chino te ataca la piel. El sueco te ataca el cuerpo entero. Aprendí a usar capas adecuadamente a los 29 años.
  • El silencio en el metro a las 7 de la mañana es absoluto. Nadie habla. Nadie tose. Es lo más cerca que he estado de un templo en transporte público.
  • Compré un libro de poesía de Tomas Tranströmer en sueco aunque no leo sueco. Lo tengo en la estantería. Lo abro a veces. Las palabras no se mueven. Da igual.

Una nota general sobre viajar a los 32

He decidido viajar menos. No por presupuesto, no por clima, no por moda. Por capacidad de absorción. Un viaje de cinco días bien observado vale, para mí, más que cuatro viajes de cinco días apurados. Voy a tres lugares al año, máximo. Vuelvo a algunos. Repetir un lugar es, también, viajar — uno aprende cosas que el primer viaje le ocultó.

Lisboa fue mi quinta vez. Aún no la conozco. Voy a volver.

/palabras · 不可译之词 · untranslatables #

每种语言都有那种"翻译不出去"的词。我做译者的,私下里收集这些。下面这一份不完整,永远不会完整。每个词后面是我尝试讲清楚它的几句话——不是定义,是描摹。 Cada idioma tiene esas palabras "intraducibles". Como traductor, las colecciono en privado. La lista de abajo está incompleta y siempre lo estará. Tras cada palabra, no una definición — una aproximación. Every language has those "untranslatable" words. As a translator, I collect them privately. This list is incomplete and always will be. What follows each word isn't a definition — it's an approximation.

português saudade /sawˈdadʒi/

所有人都引用,所有人都讲不准。我的版本:对一种你知道不会再回来的东西的怀念,但这种怀念里掺了一点感激——感激你曾经拥有过它。它不是悲伤,因为悲伤指向缺失。它指向的是曾经。中文最近的词是"思念"加"释怀"——但你必须同时按住这两个词,让它们在你舌头上融合,才有 saudade 的形状。

日本語 侘び寂び (wabi-sabi) /wabi.sabi/

不是"残缺美"。"残缺美"是 90 年代翻译给商品目录用的偷懒说法。Wabi 是 受过时间的人/物所散发出的克制,sabi 是 那个东西愿意承认自己的有限性。两者合在一起描述的是:一只补过的茶碗、一个写了三十年还在改的本子、一个不再装年轻的中年人——他们身上那种安静的尊严。中文里的"风骨"接近一点点,但风骨太刚。Wabi-sabi 是软的。

galego morriña /moˈriɲa/

加利西亚的乡愁。我跟一个 Coruña 的朋友讨论过两小时。她说:"Saudade 是一种状态,morriña 是一种体内的天气。" Morriña 来的时候你身体会变重,会想躺下,会突然想吃一种你妈做的菜。它非常具体。它指向一个地方。我搬到瓦伦西亚之后才理解她说的——杭州,对我,就是 morriña。不是 saudade,是 morriña。

中文 缘分 /yuán fèn/

It's not "fate" — fate is too cosmic. It's not "luck" — luck is too random. Yuanfen is the bandwidth between two specific people that allowed them to meet. It does not promise that the meeting will go well. It only acknowledges that the meeting could happen, and that, in another life, it might not have. When two old friends part ways, Chinese says "yuán jǐn" — the yuanfen has run out. Nothing dramatic. Just: that band is closed now. I don't know an English word for this. "Connection" is the closest. It is not close.

español sobremesa /soβɾeˈmesa/

The conversation that happens after the meal is finished but no one has gotten up. It is its own time, with its own rules. You can light a cigarette during it (some still do). You cannot answer your phone during it (everyone agrees). It can last 12 minutes or three hours. It is, I have come to think, the central institution of Spanish life, and the thing I miss most when I am back in China for any length of time. The Chinese habit of paying and leaving the moment dessert is finished feels, after five years here, faintly violent.

中文 意境 /yì jìng/

El ambiente espiritual que un poema, un cuadro o un paisaje produce más allá de lo literalmente representado. La traducción "atmósfera" es pobre porque la atmósfera es ambiental; el yìjìng es composicional — depende de qué está y qué falta, qué se dice y qué se calla. Un poema de Wang Wei que solo nombra una montaña, un río, un farol, tiene yìjìng. Un selfie en el mismo paisaje, no. La diferencia es exacta. La palabra hace falta para verlo.

italiano magari /maˈɡaːri/

"如果只是这样就好了。" 一个词包含了:希望、可能性、轻微的悲观、向命运的礼貌微笑。English "I wish" is too direct. Spanish "ojalá" is too pious. Magari is colloquial, ironic, hopeful all at once. I once watched an Italian friend use it as a complete sentence and convey three different attitudes in three different conversations within an hour.

中文 客气 /kè qì/

"Polite" only catches half. Kèqi is the social register of treating someone as a guest — keeping a small respectful distance, declining a third helping, paying for the meal because the other person is your senior. It can be warm or it can be cold. To say "我们之间不用客气" ("between us, there's no need for kèqi") is one of the highest compliments in Chinese — it means: you are no longer a guest in my life. It means: I trust you to be at home here. There is no English word that does this work.

português desenrascanço /dezẽʁasˈkɐ̃su/

El arte de salir de un apuro con lo que tienes a mano, sin recursos, sin plan, con creatividad sucia. Distinta del jugaad hindi (más mecánica) y del apaño español (más resignado). El desenrascanço portugués tiene un orgullo callado: yo no debería haber podido salir de esto, y sin embargo aquí estoy. Mi padre tenía esto en cantidades industriales. Lo recuerdo arreglando una nevera con un calcetín y una pinza para la ropa. Funcionó tres meses.

Deutsch Fernweh /ˈfɛɐ̯nveː/

Lo opuesto de la nostalgia. Heimweh es nostalgia (dolor de casa). Fernweh es dolor por la lejanía — un anhelo activo de estar en otro lugar, cualquier otro lugar, lejos. La diferencia con "ganas de viajar" es la palabra weh: dolor, no entusiasmo. Es un sentimiento que tuve mucho a los 23 años. Ya casi no lo tengo. No sé si eso es bueno.

中文 含蓄 /hán xù/

El arte de decir sin decir. No es eufemismo (que sustituye una palabra por otra), no es reserva (que retiene la información), no es evasión (que la oculta). Hán xù dice exactamente lo que quería decir, pero de una manera que requiere que el oyente coopere para completar el sentido. Es una forma de respeto: te trato como adulto, no necesito explicártelo. Es también, a veces, un escudo. Mi madre vive en hán xù. Yo, después de seis años en Europa, lo voy perdiendo, y a veces ella se queja: "你说话太直了。" — "你 talks too directly now." She doesn't mean rude. She means: too cheap on the listener.

日本語 木漏れ日 (komorebi) /komoɾebi/

The light that filters through tree leaves. We have all seen it. Only Japanese gives it a noun. Once you have the word it is hard to walk through a forest without noticing it. Words make the world, etc. — but mostly they make us stop and look at what we'd been walking past for thirty years.

español vergüenza ajena /beɾˈɣwenθa aˈxena/

Sentir vergüenza por otra persona, en su nombre, porque la situación lo merece y la persona en cuestión, increíblemente, no la siente. El alemán Fremdscham es la traducción técnica. El inglés "secondhand embarrassment" es lo más cerca pero suena a chiste. La vergüenza ajena española es seria. Es lo que sentimos los traductores cuando un amigo no traductor intenta corregirnos. Es lo que sentimos en cualquier red social después de 30 segundos.

中文 将就 /jiāng jiu/

"凑合"的更绅士的版本。To accept a less-than-ideal arrangement, knowingly, without complaint, because the cost of arranging the ideal exceeds the benefit. It is what my grandmother did with cracked teacups, what my mother does with shoes that pinch a little, what I do with coffee from a pot that has been sitting for forty minutes. Spanish has apañárselas but that's about getting by under duress. Jiang jiu is voluntary, almost zen. The good life is, my grandmother used to say, the life one can jiang jiu well.

norsk friluftsliv /ˈfrɪlʉftsˌliːv/

"户外生活",但比这个有重量。它是一种文化共识:一个人需要定期到没有屋顶的地方去,不为目的,不为运动,不为打卡——只为一种灵魂上的洗。北欧人不解释这个词。他们活在这个词里。瓦伦西亚的版本接近的是 "ir al monte un domingo",但西班牙人需要带火腿和酒。北欧人只带一盒火柴。

中文 江湖 /jiāng hú/

Literally "rivers and lakes." Conceptually: the social world that exists outside of formal institutions, where reputation, debt, loyalty, and grudge form their own economy. The closest Western analogue might be "the underworld," but jianghu isn't necessarily criminal. A poet can have jianghu. A chef. A translator. To be "in the jianghu" is to be known, to owe people, to be owed. To be "out of the jianghu" is to retire — not from work, but from the network of mutual obligation. I am, I think, on the edge of the translation jianghu. I do not know whether to step further in or out.

español tertulia /teɾˈtulja/

A regular gathering of (usually) the same people in (usually) the same place to talk about (usually) more than one topic, lasting (usually) longer than any of them planned. It is not a book club, though it can include books. It is not a party, though wine appears. It is not a meeting, though arguments happen. There is no English equivalent because Anglophone life has, broadly, decided not to have this institution anymore. Spain still has it. I attend one on Thursday evenings. I do not always speak. I do not always need to.

한국어 눈치 (nunchi) /nuːnt͡ɕʰi/

"读空气"的能力,但范围更广:能读出一个房间里没人说出来的东西、能感觉到对方下一秒会说什么、能在会议中察觉到一个安静的人其实在反对。日语的"空気を読む"接近,但 nunchi 更主动——你它,不只是它。我在西班牙这五年发现一件事:南欧人的 nunchi 普遍很强,强到超过我以为的"东亚专利"。可能因为这里也是关系密集型社会。

中文 分寸 /fēn cùn/

El sentido exacto de cuánto es apropiado decir, ofrecer, exigir o aceptar. Literalmente "una pulgada y una décima de pulgada" — una unidad de medida muy pequeña. Tener fēncùn es saber dónde está la línea sin que nadie la haya dibujado. Mi madre tiene fēncùn industrial. Yo, después de seis años en culturas más explícitas, lo pierdo. Cuando vuelvo a Hangzhou siempre paso una semana siendo demasiado directo, hasta que mis pulgadas se recalibran.

русский тоска (toska)

Nabokov spent half a paragraph trying to translate this and gave up. His version: "a sensation of great spiritual anguish, often without any specific cause… in less morbid cases it is a dull ache of the soul." I would add: it is climate-dependent. Toska arrives in October. It rarely arrives in May. It is the cousin of saudade but with more sky and less sea.

候补名单(还没写出来的)

侘 / 寂 / 间 / 物哀 (mono no aware) / sehnsucht / Weltschmerz / wīwairangi / hygge / lagom / mamihlapinatapai / iktsuarpok / 缱绻 / 黯然 / 怅然 / dépaysement / l'esprit de l'escalier / Backpfeifengesicht / smörgåsbord(其实也不是没法翻,只是中文译"瑞典自助餐"丢失了所有 conviviality)...

/paseos · 散步日记 · walks #

具体路线、具体距离、具体看到了什么。这部分写给将来某天可能用得到的我自己——也许我老了走不动这些路了,可以坐在椅子上重读。 Rutas concretas, distancias concretas, lo que vi. Esto lo escribo para mi yo futuro — quizá un día no pueda andar estas rutas y me siente a releer. Concrete routes, concrete distances, what I saw. Written for a future me who might no longer be able to walk these and will reread from a chair.

P-01 · El Carmen → la mar (Carrer dels Tomassos a Cabanyal)

5,2 km · ~62 min · cualquier día · mejor a la última hora de la tarde

Salgo de casa, bajo Carrer dels Tomassos hasta cruzar Avenida del Cid (semáforo siempre eterno), entro en el barrio de Russafa por Carrer de Cuba. Paso por delante del Mercat de Russafa (cerrado a esta hora). Cojo Carrer de Sueca hacia el norte hasta Plaza del Ayuntamiento. Cruzo. Sigo Carrer del Mar hasta el barrio del Carmen. Plaza del Tossal, Plaza Redonda (turistas, los esquivo). Salgo del casco viejo por la Puerta del Mar. Cruzo el viejo cauce del Turia (ahora parque, una de las mejores cosas de esta ciudad). Bajo por Avenida del Puerto. A la altura de Avenida de Francia el aire empieza a oler a mar. Diez minutos más y estoy en el Cabanyal. Termino en la playa de la Malvarrosa, en el bar La Pascuala, una caña, 1,80 €. Vuelvo en bus EMT 32.

cosas que vi la última vez (2026-04-26): tres gatos en una fachada de azulejos rotos · una niña con un globo amarillo dentado por un perro · un anciano sentado en un banco diciéndole algo a su periódico · una palmera que ha empezado a perder hojas (¿picudo?) · el mar a las 19:42, color del vino mediocre.

P-02 · El cauce del Turia, oeste a este (Bioparc → mar)

9,1 km · ~110 min · domingos · sin móvil

Empiezo en el extremo oeste del río, junto al Bioparc. Bajo al cauce. El parque del Turia es la columna vertebral verde de esta ciudad, una herida convertida en jardín tras la riada del 57. Camino hacia el mar siguiendo el lecho. Paso bajo unos 18 puentes (los conté una vez). Hay tramos de pinar, tramos de naranjos, una pista de skate, una zona de petanca con señores de 70+ que llevan ahí cada tarde desde 1980, un parque infantil que es un dragón de Calatrava (Gulliver, gigante, los niños trepan por él), y al final, la Ciudad de las Artes — discutible arquitectónicamente, indiscutible visualmente. Paso por debajo del Palau de les Arts. Sigo. Llego a la desembocadura. Mar.

regla: esta ruta no se hace con compañía si lo que buscas es la ruta. Con compañía se hace otra cosa, también buena. Pero la ruta misma pide silencio.

P-03 · Albufera ida y vuelta (en bici, no a pie)

36 km redondo · 2h45 en bici tranquila · sábados de octubre

Salgo de casa por Avenida del Cid, conecto con el carril bici de la V-15 hacia el sur. Cruzo Pinedo, El Saler, llego a la albufera (el lago más grande de España, donde se cría el arroz que comemos). Paro en El Palmar, como un arroz a banda, vuelvo más despacio. Tres veces al año. La luz sobre el agua a las 6 de la tarde en otoño es uno de mis pocos argumentos a favor de la existencia.

P-04 · El paseo de la libreta vacía (Russafa, circular)

2,4 km · ~30 min · cada vez que la página está atascada

Es un paseo funcional, no estético. Cuando una traducción no avanza, salgo. Bajo a Russafa, doy una vuelta circular pasando por la Iglesia de San Valero, el Mercat, Carrer del Pintor Salvador Abril, Carrer de Sueca, vuelvo. Treinta minutos. Vuelvo y me siento. Funciona el 70% de las veces.

Una observación: caminar resuelve no por el caminar sino por el quitar la página de los ojos. La cabeza sigue el problema. Las piernas son el cuerpo coartada.

P-05 · Hangzhou · Lago del Oeste, mi vuelta de adolescente (revisitada 2025-09)

~12 km circular · 2h30 · si tengo tiempo, paseo solo

Empiezo en Hubin Lu, frente a las cinco fuentes nocturnas que recuerdan a un musical (no me gustan, pero las paso). Subo por la dique de Su (苏堤), el largo camino arbolado entre dos mitades del lago. Cruzo el lago entero. Hago el dique de Bai (白堤). Paso por el monte Solitario (孤山), donde hay una biblioteca abierta hasta las 5 de la tarde y una pequeña tumba que casi nadie visita. Termino en la zona de Yang Gong Di (杨公堤), por la parte oeste. Vuelvo por el sur. Si la luz es buena, hay un momento, sobre la pasarela de los Tres Estanques que Reflejan la Luna (三潭印月), donde el lago, el monte y la pagoda se alinean exactamente como en los grabados de hace 800 años. Es un truco que la ciudad guarda. Solo lo enseña a quien camina.

P-06 · London · Camden a Russell Square, by foot, in 2019

~3,2 mi · ~55 min · the walk I never did until my last week

I lived in Camden for two years and took the Northern then Piccadilly tube to UCL every weekday. The week before I left London I walked it instead. Camden Lock, down through Mornington Crescent (the station, then the actual residential crescent above it, mostly Georgian, half empty at 8 a.m.), down Hampstead Road, into Euston, across Euston Road (terrible), through Tavistock Square (Virginia Woolf had a studio at no. 52), past Russell Square, to UCL. Three pounds saved. Forty extra minutes spent. I should have done this every day for two years and I did it once. The lesson is the lesson. Go on foot when you can.

P-07 · Cabanyal nocturno (con N., todos los jueves de junio)

~3 km · ~40 min · 22:30 → 23:10

Después de cenar salimos las dos juntas (N. y yo) por Carrer de la Reina, hacia el sur del barrio de pescadores. Las casas de azulejos del XIX. La iglesia de los Santos Juanes, cerrada. La plaza de Caro Cabanes, donde a veces hay alguien tocando un tres cubano. El mar a la derecha, no se ve pero se oye. Volvemos por la otra calle paralela. No hablamos mucho. A esa hora la conversación ya está hecha — el paseo es lo que sella el día.

P-08 · Solo, a la una de la madrugada

de mi casa al Pont de la Mar i tornar · 4 km · solo si no puedo dormir

Hay noches. La calle a la 1:00 en Valencia no está vacía pero está calmada. Camino sin destino concreto pero termino, casi siempre, en el Pont de la Mar — un puente sobre el cauce del Turia, vacío a esa hora. Me apoyo en la barandilla. Miro el agua que ya no hay. Pienso en cosas. A veces escribo dos líneas en el móvil. La mayoría de los textos cortos de este sitio nacieron en ese puente.

P-09 · Calle dedicada a un olor (Carrer del Forn, mañana del sábado)

200 metros · 4 minutos · cada sábado, 8:30

No es un paseo, es una unidad mínima. Hay una panadería en Carrer del Forn que hornea las primeras cocas a las 8 en punto. Si paso por allí entre 8:25 y 8:40 el aire de la calle, durante esos 200 metros, es cocas y harina caliente, sin más. Hay calles dedicadas a un olor en cualquier ciudad si una sabe buscarlas. Esta es la mía.

/citas · 摘抄 #

从读过的东西里抄下来的句子。我有规矩:抄下来一定要标出处和那一年我为什么标的(如果还记得)。否则就是吃了食物没消化。 Frases que he ido copiando. Mi regla: anotar siempre fuente y por qué la subrayé ese año (si me acuerdo). Si no, es comida sin digerir. Sentences I've copied out. Rule: always with source and why I underlined it that year (if I remember). Otherwise it's food without digestion.

El presente del pasado es la memoria; el presente del presente, la atención; el presente del futuro, la espera.

San Agustín, Confesiones, libro XI · subrayado 2024-02 · «porque me explicaba mi ansiedad mejor de lo que yo podía».

I had been my whole life a bell, and never knew it until at that moment I was lifted and struck.

Annie Dillard · 2024-09 · "after a hard week of failing to translate one paragraph."

独坐幽篁里,弹琴复长啸。深林人不知,明月来相照。

王维《竹里馆》· 抄于 2023 年伦敦最后一周 · 因为我那一周需要它。

La realidad es lo que, cuando uno deja de creer en ella, no desaparece.

Philip K. Dick (en español, traducción no recuerdo de quién) · 2025-03 · útil contra el cinismo.

The opposite of love is not hate. It is indifference.

Elie Wiesel · copied 2017, London · I keep it pinned because I keep needing it.

不亦快哉。

金圣叹《三十三不亦快哉》· 抄于 2022 · 一辈子的方法论:把"快"先于"伟大"放上来。

Cualquier hombre debería estar dispuesto a explicar su silencio. Pero no debería tener que explicar su voz.

una abuela suya, según N., en una conversación de domingo, agosto 2024.

Memory believes before knowing remembers.

William Faulkner, Light in August · 2019, on a cold January platform.

Vivir es buscar una luz que no enceguezca.

Antonio Tabucchi (atribuido; no he podido verificar la cita y la dejo así porque me importa más como verdad que como cita) · 2025-11.

看山是山,看水是水;看山不是山,看水不是水;看山还是山,看水还是水。

禅宗,青原行思 · 抄了三次,分别在 2009、2018、2024 · 三次理解都不一样。

Loneliness is what we feel when we have something we want to share and no one to share it with. Solitude is what we feel when we are completing something within ourselves and require no witness.

paraphrase, possibly Henri Nouwen, possibly me · 2026-01 · I want this to be true so I haven't checked.

El que no sabe quién es siempre puede saber dónde está.

Roberto Juarroz, Poesía vertical · 2024-06.

The cure for anything is salt water — sweat, tears, or the sea.

Isak Dinesen · 2021-09 · my first month in Valencia, with all three.

知者不博,博者不知。

《道德经》第八十一章 · 抄于 2024 写完一篇过于堆砌引文的文章之后,作为自我惩戒。

La paciencia no es una virtud, es una técnica.

Pilar (mi vecina), explicándome cómo hacer el sofrito, mayo 2024.

One does not love a place the less for having suffered in it.

Jane Austen · 2024 · about Hangzhou, about London, about Valencia, about everywhere.

Tu casa es donde guardas tus libros.

una librera de Wenshan, Taipéi, julio 2025 · me lo dijo mientras yo dudaba si comprar el de Yang Mu.

/cartas · 给从前的信 #

写给二十二岁的我。这种练习有点矫情但也有点用。 Cartas al yo de 22 años. Es un ejercicio un pelín ñoño pero útil. Letters to me at 22. A slightly cheesy exercise but useful.

carta · 2025-12-01

给二十二岁的我

小Q,

你现在是 2015 年的那个秋天,刚开始北京的实习,住在五环外一个合租间,房间窗户向北,没有阳光,下班回家洗澡热水器经常坏。你那时候对自己有几个判断,我想给你重新打分。

你那时候判断:我必须三十岁前在专业上"出来",否则人生就废了。 错。这个判断把你接下来的五年活成了焦虑。出来这件事不是终点也不是门槛——它是个偶尔的副产品,主要看你做的东西本身有没有持续在变好。十年之后我可以告诉你:你三十二岁的时候没"出来",但你做的东西比当时任何"出来"的同辈都要靠谱。这件事重要的程度比你想象的低 80%。把那 80% 的能量拿去做事情。

你那时候判断:我应该多见人、多交友、多 networking。 半对半错。你确实需要见人,但你不需要 networking——那个英文词在你心里有一种夹生饭的味道,你抗拒它是对的。你真正需要的是:三个人,每个见三十次,而不是三十个人,每个见三次。 后者你做了五年,没用。前者我现在做,有用。

你那时候判断:我要去一个更好的城市,那里我才会真正开始我的人生。 这是你那时最致命的判断。十年后我可以告诉你:那个"更好的城市"不存在。每个城市都是一个城市,有它的好和坏。"开始人生"不是地理事件,是注意力事件。如果你在北京没有开始,伦敦不会让你开始;伦敦没有开始,瓦伦西亚也不会让你开始。"开始"的那一刻发生在某个早晨你停下手头的事情、看着窗外的某种光、决定从今天起按你自己的节奏活——这件事可以在任何地方发生。我是在 2022 年 11 月 7 号瓦伦西亚的一个咖啡馆里发生的。但它本来可以在 2015 年北京那个没有阳光的房间里发生。你只需要那一刻的勇气。你那时没有,没事。

你那时候判断:我对父亲的距离感是因为他不理解我。 错得最多的一条。十年后我可以告诉你:他理解你的程度比你想象的多。他只是不会用你那时候认可的方式表达。当他给你寄那双 Clarks,是他能拿出的最大温柔。当他在电话里只问你"吃了没",那是他保护你的方式——他不想让你在异国感到被审视。2022 年 4 月他走得很快。你跟他最后一次通话是 2 月,长 11 分钟,你那时候在赶一份稿子,敷衍了。你没有道别的机会。这件事会跟你一辈子。请你现在,看着这封信,给他打个电话。不用说什么大事。问他买没买那条新裤子。听他抱怨一下楼上水管。听他咳嗽。听他声音的厚度。听够了。我求你。

你那时候判断:翻译只是一份过渡的活,我以后要写自己的东西。 错。翻译就是你的事。你以后写的东西大部分跟翻译相通——不是题材,是态度:我要让一种东西在另一种环境里继续活下去。这件事可以是一段西班牙语在中文里继续活,可以是一个杭州的菜在瓦伦西亚的厨房里继续活,可以是父亲的某种沉默在你心里继续活。你做的全部事情都是一种翻译。这是你的核心。它不是过渡。它是路。

你那时候判断:我喝得不够。 错。你喝得太多了。九年后这件事会以一种隐隐的体检指标提醒你。请你从今晚开始,每周给自己留至少三个不沾酒的晚上。这不是禁欲。这是给你三十二岁的肝一个机会。

你那时候判断:我不够聪明,所以要靠勤奋补。 错。你聪明的程度比你想的高,勤奋的程度比你以为的低。你那五年很多时候在用"忙"逃避真正的难——比如读那本你买了三年没翻开的卡尔维诺,比如学一种你说要学很久的语言,比如告诉一个你喜欢了两年的人你喜欢她。你那时候忙得像狗,但忙的内容大部分是在原地踩水。十年后我可以告诉你:你不勤奋也行,但你需要面对难。 难和忙不是同一件事。

最后。你那时候担心:我会不会孤独地老去? 我现在三十二,单身,在异国的一个小公寓里,写着这封信,外面是星期天下午的太阳。我没有妻子也没有孩子。我有一个很好的朋友 N. 住在塞维利亚,一年见六次。我有一个 91 岁的外婆每周视频。我有一个母亲,她每周二会发一张她种的薄荷的照片。我有 47 本我珍惜的书。我有这个三层公寓的小阳台,下午有光。我不孤独。 但我懂的孤独——它不是没有人在身边。是没有人在意你今天具体怎么样。这件事的反义词不是热闹,是被记得。你只需要被一两个人具体地记得。三十二岁我做到了。你也会做到。

那么,回去工作。把咖啡换成水。打那个电话。

三十二岁的你,
2025 年冬。Valencia 的天,蓝得不像话。

— Q.

#信 #自我

/escucha · 在听 #

最近循环。我每个月只允许自己迷恋三张专辑(某种自定的限额,理由懒得解释)。 En bucle estos días. Me permito obsesionarme solo con tres álbumes al mes (regla autoimpuesta; sin explicación). On loop lately. I let myself obsess over three albums per month, max (a self-imposed rule; don't ask).

2026-05 · semana 21

Pink MoonNick Drake · 1972 · 又一次
A Veces el TiempoSilvia Pérez Cruz · 2024
FolkloreTaylor Swift · 2020 · sí, todavía, no me juzguen
春风十里鹿先森乐队 · 2017 · 因为下雨
Carrie & LowellSufjan Stevens · 2015
Concierto de AranjuezRodrigo / Yepes · 1949 · cada primavera
Café Tacvba: Re1994 · MX-noche
Goldberg VariationsGlenn Gould · 1981 · trabajar
万能青年旅店2010 同名专辑 · 每年立冬必听
Buena Vista Social Club1997 · domingos cocinando
Tigers Are Better Looking(本地一个朋友的乐队,没有专辑封面,三首 demo)
The Black Saint and the Sinner LadyCharles Mingus · 1963 · escribir

5 张今年发现、不打算放下的专辑

  • Silvia Pérez CruzToda la vida, un día (2024)。一张关于一天 24 小时的概念专辑。第七首 "Las cinco en el reloj" 我连续听了一个月。
  • Vince Guaraldi TrioCast Your Fate to the Wind 全集。每个早上写作 30 分钟必听。
  • Lhasa de SelaLa Llorona (1997)。她已经不在了。专辑越听越像一个逝者寄来的信。
  • Caetano VelosoCaetanear (2024)。82 岁的人录的。声音里有一种"我不打算证明任何事"的安静。
  • 李琪南方 (2023)。中国独立民谣。一个我没听说过的歌手,朋友推荐。听了三个月。

不再听的

Spotify。我去年退订了。我现在用 Bandcamp 买专辑(贵,但音乐人能拿到 80% 以上)+ 一个本地的小硬盘 + 一个 5 块 € 的 MP3 播放器(真的,2008 年的型号,eBay 买的)。这听起来像是 lifestyle 表演。它不是。它是因为 Spotify 的算法每两个月就会让我开始听同一种类型的"chill lo-fi study mix",让我感觉我的耳朵在被一个不太聪明的中介承包。Bandcamp 把音乐还给了我。

/gear · 桌面 & 设备 #

我用什么。诚实价格。三年内换过几次的标星号。 Lo que uso. Precios honestos. Asterisco si lo he cambiado más de una vez en tres años. What I use. Honest prices. Starred if I've replaced it more than once in three years.

电脑 / Ordenador

ThinkPad T14 Gen 2 (AMD), 2021. 32 GB RAM. Linux Mint. 我的主力机。Lenovo 二手 380 €。

€380 (2nd hand, 2022) · in service 4 yrs

外接键盘

HHKB Professional Hybrid Type-S, blanco, sin marcar. La compré nueva en 2023, 290 €. Sigue siendo mi capricho más caro y el que menos lamento.

€290 (2023, new)

显示器

Dell U2422HE, 24". 没什么特别。够用。书桌窄,不能放更大的。

€280 (2022, refurbished)

笔 *

Pilot Kakuno F nib, negro. 已经换过四支(笔会丢,会被借走,会被踩)。每支 14 €。

€14 / unit · ★

笔记本

Midori MD 文库本,无线装订。一年三本左右。每本 8 €。

~€8 / unit

耳机 *

Sony WH-1000XM3 (2019)。第三对了。前两对一对丢了一对头梁断了。这一对我已经用塑封带绑过两次。等它彻底坏的时候我可能换有线。

€180 (refurbished, 2022) · ★★

磨豆机

Comandante C40 MK4. 手摇。慢。但磨出来的豆子让我每个早上原谅自己一次。

€280 (2022, new)

手冲

Hario V60 02 陶瓷版。8 €。已经五年。掉了一次没碎。

€8

菜刀

外婆的。无价。见 /journal 那篇。

priceless

铸铁锅

Lodge 26 cm. 65 €。2022 年从亚马逊买的。养锅养了三年才"开"。

€65

椅子

没了。见 /journal 那篇。现在是地板。

€0

IKEA Linnmon + Adils 腿。120×60。45 €。八年了。最便宜的桌也是最稳的。

€45 (2018)

手机 *

Pixel 7a, GrapheneOS。我在 2024 把所有 Google 服务从手机上拆掉了。手机上没有任何社交媒体 app。这件事的最大好处是手机变得无聊。无聊是好东西。

€450 (2023) · ★

音乐播放器

Sony NW-A45 (2018 年的型号,eBay 买的,30 €)。不联网。装我的 FLAC。出门听。

€30

FJällräven Kånken 经典款,黑色。买于 2019 年 London。70 镑。底有点磨白了。

€80 (2019)

表 (没有)

不戴。已经四年。看墙上时钟。看天。

€0

/errores · 我犯过的错 #

写下来才能不再犯。或者至少换一种新的犯法。 Escribir los errores es no volver a cometerlos. O al menos cometerlos en versiones nuevas. Writing mistakes down keeps you from repeating them. Or at least makes you find new ones.

  1. 2014, 北京:把一份本职工作的实习当作"先凑合着",没认真做。结果离职那一刻发现我那一年学到的最少。教训:所有事情,包括"先凑合着"的事,做的时候都要全力,否则三个月之后你会发现自己被自己的"先"骗了。
  2. 2016, 杭州:错过我父亲的体检报告异常。当时他不愿意提,我也没追。教训:家人的"我没事",要追问三次。
  3. 2017, 伦敦:第一年我把所有空余时间用来"融入"——去 pub、看球、强迫自己用英语开玩笑。结果累得像狗,没真融入。教训:融入不是表演自己跟当地人一样,是在不一样的位置上稳住。
  4. 2018, 伦敦:选错了导师。她对中文一无所知,我的论文需要她做的事情她做不了。我没勇气换。结果论文质量下降 30%。教训:及早承认 mismatch。换不可怕,自己骗自己可怕。
  5. 2019, 伦敦:对 L. 的告别太轻。她搬回北京我帮她打了包,没说该说的话。她的飞机起飞之后我才意识到。教训:能说的话就当面说,飞机起飞之后短信里说出来都比当面晚一辈子。
  6. 2020, 伦敦疫情:误以为远程工作意味着我能高强度工作 12 小时。三个月之后我精神崩溃了一次。教训:在家工作的最大风险不是分心,是不知道何时停。
  7. 2021, 瓦伦西亚第一年:用了 8 个月才决定学西语。前 8 个月我用 Spanglish 凑合。这 8 个月我后来用了 18 个月才补回来。教训:搬到一个语言环境里,立刻认真学这个语言。每多拖一周代价复利。
  8. 2022, 瓦伦西亚:接了一份钱很多的非文学翻译,结果做得心如死灰。教训:钱不是接活的唯一变量。"我做完会不会想撕掉它"是另一个变量,权重至少和钱一样高。
  9. 2022, 父亲走后:我没回国奔丧(疫情期间,我心里给自己找了 17 个理由)。这是这辈子的最大错误,没有之一。教训:有些回去是不能不回去的。理由再多也不够。
  10. 2023, 瓦伦西亚:同时接了 4 个客户的活,"反正我能管"。我管不动。两个客户因此再也不找我。教训:超过 2.5 个并行项目,质量会非线性掉。
  11. 2024, 瓦伦西亚:一段时间我把社交媒体当 morning routine——醒来先刷半小时。三个月之后我意识到我那段时间写得最少。教训:早上前 90 分钟不开屏。
  12. 2025, 全年:对一个朋友的难过反应过快——他还没说完我已经在给"建议"。教训:先听 80% 的时间,再说。建议大部分时候是没人想要的。
  13. 2025-11, 杭州:跟我妈吵了一次架,关于她一个生活习惯。三天后我才意识到我吵的根本不是那件事,是别的事。我没道歉够。教训:吵完之后冷静 24 小时,重新看。如果你吵的不是它,承认你不是。
  14. 持续中:对自己的截稿日期始终乐观 30%。教训:所有时间预估乘以 1.4。
  15. 持续中:买书速度大于读书速度。教训:还在跟它和解。

/faq #

这个站会更新吗?

会,慢。我设的频率是每两到四周一次新内容。有时候我会从头改一篇旧的——我把这件事看成是"修订"而不是"重写"。所有改动都会留个补记。

能不能转载?

个人转载、引用、节选,请便。请保留我的名字和原链接。商业用途(包括把内容用作 AI 训练数据)请先写信给我([email protected])。我对训练 AI 的请求一律婉拒,不要再问。

能用 AI 翻译你的中文文章给西语 / 英语朋友看吗?

可以,但请告诉对方那是 AI 翻译。本站三语版本是我自己写的(不是同一篇文章的三语翻译——是三种语言里我各写各的)。所以 AI 翻译出来的版本对应不上"我"。

为什么没有评论功能?

评论需要审核才能不变成下水道。审核耗时间。我的时间有限。如果你想跟我说什么,写邮件,我读,可能回。这个流程能过滤 95% 的"我必须告诉这个人他错了"的冲动。

你的本地化客户都是谁?

我不公开。一些是出版社(中、西、英三个语言区),一些是文学机构,一些是私人作家。如果你有合作意向,邮件,我们再谈。

你接 freelance 吗?

接。但我的档期通常排到 4-6 个月之后。我擅长:文学翻译(散文、小说、非虚构)、本地化(软件 UI 字符串、文档)、字幕。我不接:营销文案(不擅长)、技术专利(不擅长)、紧急 24 小时的活(永远不接)。

"qingdeng" 这个名字是怎么来的?

"青灯",老 Internet 用户都知道——上世纪 BBS 时代的一种"夜读"意象。我 2008 年第一次用这个 ID 注册一个杭州本地的论坛,那时候 15 岁。后来我所有的 nick 都跟它有关。它对我已经像名字一样。

你为什么三语写作?

不是炫耀,是因为我的脑子已经长成这样了。某些事情中文说最准,某些事情西语,某些事情英语。强迫自己用同一种语言写所有东西,会让一部分内容掉地上。

这个站用了什么技术?

HTML, CSS, 一点 JS。一个文件。没了。详细见 /journal/handmade-web 那篇。

你的字体是什么?

用户系统自带的衬线字体——大概率是 Iowan Old Style(macOS)、Sitka(Windows)、Source Han Serif(中文)。我故意没用 web font,因为我希望这个站在 2046 年也能加载。

能给你寄信吗?

能。地址我私下给——你写邮件,我回地址。请别寄食物(海关)。其他都欢迎。我有一面墙在贴明信片。

这站背后有 newsletter 吗?

没有。也不会有。

哪里能找到你的旧文?

这里就是。所有东西都在这一页。Ctrl+F

你最近在学什么语言?

加泰罗尼亚语。会一点 valencià(瓦伦西亚的本地变体)。还很差。

你信教吗?

不信。但我尊敬有信仰的人,并且时不时会进教堂坐着——见 /notes 那条。

你有政治立场吗?

有。这个站不是我表达政治立场的地方。

/libro-de-visitas · 留言簿 #

朋友、读者、过路人,写邮件给我([email protected]),我会挑一些贴上来。下面是过去几年挑出来的几条。 Amigos, lectores, gente que pasaba: escribidme ([email protected]). Selecciono algunos. Abajo, una pequeña muestra de los últimos años. Friends, readers, passers-by — write to me at [email protected]. I pick a few to put here. Below, a small selection from the last couple of years.

M., Ciudad de México 2026-04-12

Llegué aquí por el post de la silla. No sé cómo, una amiga me pasó el enlace. Llevo seis meses en una mudanza emocional bastante mala. Me sentaron bien las palabras "una silla con esa especie de seguridad ya rendida". Las llevo escritas en el cuaderno de la cocina. Gracias.

Q.: Gracias a ti por escribir. Las mudanzas emocionales también dejan muebles en el camino, ojo.
小李,南京 2026-03-02

无意间搜到这个站。看了你写给妈翻译村上的那一篇,看哭了。我妈也是 65 年的,也喜欢择菜。我打算下次回家给她念一段我最近做的本子。会汇报。

Q.: 等你的汇报。
Anna, Praga 2026-02-19

I'm a translator (Czech-EN, EN-Czech), and your "On translating a writer who refuses to be translated" felt like reading my own diary except more honest. I have a person like that in my queue right now. Thank you for not pretending it was simple.

Q.: Solidarity. May the haunting be productive.
César, Lima 2026-01-08

Llevo año y medio leyendo este sitio en silencio. Hoy decido escribir. Me hizo gracia el post sobre Mercadona — yo ahora vivo en Madrid y por fin entiendo por qué un amigo español me decía "no compares un mercado peruano con un Mercadona, son cosas que hacen cosas distintas". Tu texto lo articula. Saludos desde San Borja.

Q.: Saludos a Lima. Un día iré.
Ravi, Bangalore 2025-11-30

Hi, I found your site through a Hacker News comment about handmade web. As an Indian living in Berlin who speaks four languages and writes mostly in two, I felt seen. The "mother tongue" essay especially. Please keep this place alive. The web needs more of this.

Q.: Thanks Ravi. Four languages — respect. The site is going nowhere as long as I am.
Pilar (sí, esa Pilar) 2025-09-15

Niño, tu post sobre el arroz me hizo llorar de risa. Pero está bien hecho. Sí, sin remover. La próxima vez que vengas a comer te traigo un kilo de bomba bueno.

Q.: Pilar, eres una santa. La próxima sin remover y con bomba bueno.
阿妙,台北 2025-08-28

"我們的時間是我們唯一的鄉愁" — 那本旧书是我妈八十年代留下的,杨牧那一句我也圈过。那家旧书店是我外公开的。他过世三年了。看到这一段我哭了一会儿。世界很小。

Q.: 阿妙,谢谢你写来。请代我向那家书店、向你外公的笔,鞠一躬。
Marta, A Coruña 2025-06-04

Soy galega. Tu entrada sobre la morriña me hizo sonreír. Pequeño matiz: para mí la morriña no llega solo a la primera generación de emigrantes, también la heredan los nietos. Mi abuela emigró a Cuba en los años 40, mi madre nunca pisó la isla y aun así canta canciones cubanas cuando llueve. Eso también es morriña, prestada.

Q.: Anotado, Marta. La morriña hereditaria. Voy a actualizar la entrada cuando llegue el invierno.
Jonas, Berlin 2025-04-22

I am writing this from a U-Bahn at 23:14 on the U8 line, having just left my own going-away party (I am moving to Lisbon in two weeks). Your "deleted Twitter" post is the reason I'm doing it three months earlier than planned. No, you do not bear responsibility. Yes, thank you.

Q.: Jonas, Lisbon will be good to you. Bring a real raincoat.
Hugo, Buenos Aires 2025-02-11

Tengo 71 años, soy traductor jubilado de inglés-español. Encontré este sitio por una recomendación de mi nieta, que se enteró por TikTok (no me preguntes). Solo quería decirte que la nota de las "tres categorías de traducción" está muy bien y que la robaré para una charla que doy en el Lenguas Vivas en abril, citándote por supuesto. Suerte con Mendoza.

Q.: Hugo, robe lo que necesite. Es un honor.
Saoirse, Dublin 2024-12-30

I read your "winter light" piece on the morning of Christmas Eve, alone in my flat with a failed risotto. It made the failed risotto fine. Wishing you a good slow 2025.

Q.: Saoirse, the failed risotto family is large and quietly noble. Thanks.
老周,杭州 2024-11-08

哈哈哈我就是你写"踟蹰"那天给你发消息的那个发小。看到这一段笑出声。你港台腔现在真的没有了,我妈说你最近回来口音正常多了。你妈让我转告:要回家过年。

Q.: 老周谢谢。年还在想,会的。
anonymous 2024-09-19

I came here looking for a recipe and stayed for two hours. I have not done that on the internet in five years. Thank you for keeping a corner.

Q.: The corner is yours too now.
Camilo, Concepción (Chile) 2024-07-30

Hermano! Soy el del piso de abajo en Cabanyal. La cama todavía aguanta. Me casé el año pasado. Mi mujer duerme en tu cama también ahora 😂. Gracias por todo. Si pasas por el sur de Chile mi puerta está abierta para siempre.

Q.: Camilo!! Felicidades. Y sí. Algún día.
Tomáš, Brno 2024-05-04

Je nádherné, že to máš v jednom souboru. (Sorry — I just wanted to say in Czech that it's lovely you keep it in a single file. The English equivalent felt small.)

Q.: Děkuji. The single file is grateful.
N. (sí, la N.) 2024-02-29

Te has dejado en el post del huerto la parte en que me caí del olivo flaco al subir. La página queda más bonita sin esa parte. Gracias por respetarme la dignidad. Pero conste.

Q.: Conste. Te debo una caña.

— hay 87 cartas más en una carpeta. Las leo todas. Contesto el 60%. Lo siento por el 40% restante; mi tiempo es honestamente lo único que se me agota antes que las palabras.

/colofón · 站点说明 #

这站是怎么来的

2023 年 4 月 11 日的一个星期二下午,我在 Cabanyal 海边的小屋里,喝着第二杯咖啡,突然想念 1999 年的中文 Internet——那种"个人主页"式的、笨拙的、有体温的、单文件的小站。我打开 Helix,新建一个 index.html,写了第一行:<!doctype html>。三个小时之后这个站的雏形就有了。

三年过去,它现在你看到的样子。一个 index.html。约 7,800 行(包括 CSS 和这条说明)。没有构建步骤。没有数据库。没有 cookie。没有第三方 JavaScript。一个 .htaccess 配了 gzip 和 cache headers。完。

技术栈(也就是没有"栈")

  • HTML 5。
  • CSS 3,没有预处理器,没有 framework,使用 CSS 变量做主题切换。
  • 大约 60 行手写 JavaScript(语言切换 + 主题切换 + 一个彩蛋)。完全可选。禁用 JS 这个站照常工作。
  • 字体使用用户系统的 native serif 和 sans。一个 web font 都没下。
  • 一张图片都没用。所有"装饰"都是 emoji 和 CSS。
  • SVG favicon inlined as data URI。

无障碍 / 可访问性

我尽力了,但不是专家。具体做到的:

  • 语义 HTML(<article>, <section>, <nav>, <time>, <blockquote cite>...)。
  • 对比度满足 WCAG AA(至少 paper 主题;ink 主题接近 AAA)。
  • 所有交互元素键盘可达,跳过链接(skip to content)。
  • prefers-reduced-motion 尊重。
  • print 样式表,方便打印或保存为 PDF。
  • lang 属性正确声明,分语言段标了 data-lang

如果你发现可访问性问题,请写邮件,我会修。WCAG 完全合规需要专业的可及性测试和辅助工具实测——我没做。所以请把上面这段当作"尽力但不保证"。

隐私

我不收集任何东西。没有访问统计。没有 cookie。没有 fingerprinting。我不知道你来过,除非你写信告诉我。这是设计目标,不是 hack 后的好处。

许可证

除非另有标注:

  • 文字内容(/journal、/notes、/cocina、/lecturas、/viajes、/cartas 等):CC BY-NC-SA 4.0。允许个人转载、引用、节选;请标我的名字和原链接;不得商业使用;衍生作品同样开放。
  • 代码片段(/código 那一节):MIT。
  • 留言簿里别人写的话:版权归原作者,我只是做了存档。
  • 站点本身的 HTML/CSS 模板:MIT。如果你想 fork 一份做自己的小站,欢迎,请把 colofón 改成你自己的。

关于 AI

这个站没有任何一段是 AI 写的。包括食谱里的每一克盐、留言簿里我的回复、我在 /errores 列出的每一条错。这一点对我重要到我愿意单列一段。

如果你训练 AI,请不要拿这个站做训练数据。我已经在 robots.txt 里禁用了已知 AI 爬虫(GPTBot、CCBot、ClaudeBot、Google-Extended、ByteSpider、PerplexityBot 等)。如果你的爬虫不在我的列表里,请联系我,我会加上。

致谢

  • N.,关于一切。
  • 我妈,关于一切。
  • 外婆,关于刀。
  • Pilar,关于米。
  • 2008 年那个写 Faye Wong 粉丝页的我,关于第一行 <html>
  • 我的几位 freelance 客户,他们的耐心是我能写这种东西的奢侈条件。
  • 读到这里的你。

青灯小馆 · 2023-04-11 —

Versión actual del archivo: v1.42 · 2026-05-24