About ENOSYS关于ENOSYS關於ENOSYSENOSYSについてENOSYS 소개

ENOSYS扫地僧

About ENOSYS

ENOSYS, also known as “The Sweeping Monk” (扫地僧).

Born in Haidian, Beijing, an alumnus of Haidian Huangzhuang No. 1 High School, and currently based in Silicon Valley, California.

I’m a software engineer by trade. For over two decades, my work has centered on system software, infrastructure, and security. Spend enough years writing code, and you inevitably pick up a few stubborn engineering habits: interfaces should be exactly what they ought to be, never add an extra layer of abstraction when one less will do, and if there is unnecessary complexity, you instinctively want to tear it down. Over time, peers have occasionally joked about me being an “Internet old fart.”

Beyond terminals and systems, though, I’ve always had an interest in sound and music. Compared to code, music is noticeably less reasonable—which is probably why it’s so much fun.

People often ask where the name “ENOSYS” came from. There is no deep philosophy behind it, let alone any brand strategy; it was just a name I threw together many years ago. At the time, I didn’t even realize that for people who don’t write code, these letters are quite a tongue-twister (roughly pronounced eh-NOH-sis or ih-NOSS-iss, IPA: /ɪˈnɒsɪs/).

In Unix/POSIX system programming, ENOSYS is an uncommon error code indicating that the requested function is not implemented or not supported. When a program hits it, it is essentially the operating system shrugging:

“Don’t even bother; this feature doesn’t exist.”

Using it as the name for a music project turned out to be unexpectedly fitting: I’ve never had formal training in composition, my music theory is rudimentary, and my instrument skills are far from professional. Through an engineer’s lens, this musical subsystem lacked plenty of features right from the start—ENOSYS everywhere.

Fortunately, generative models and audio tools have advanced rapidly in recent years. If it’s missing in the kernel, you just patch a layer in user space. What I cannot play, models help play; what I cannot arrange, I tweak by ear. In the end, I’ve managed to piece together things that I actually enjoy listening to on repeat.

Music & Experiments

My initial reason for exploring AI-assisted music was simple: it just seemed fun.

I’ve always had a soft spot for tools that get computers to do things they weren’t originally supposed to do. That was true when I was hacking on code in my younger years, and later with images and audio—it’s largely the same urge. To me, algorithms and compute power are not only tools for solving engineering problems, but also an intriguing creative medium.

Currently, I independently produce and release music under the name ENOSYS the Sweeping Monk. These releases include melodies, arrangements, and performances assisted by AI, alongside experiments heavily driven by generative models from start to finish. There is no strict formula for the genres: ranging from straightforward instrumentals and game music to electronic tracks, all the way to weird, playful experiments that are basically just having fun.

Present Status

Currently based in Silicon Valley, married with one daughter.

By day, I still earn a living by writing code, maintaining systems, and resolving all kinds of strange issues. In whatever time is left, I make music, tweak audio, or tinker with things that nobody asked for in the first place.

This project has no clear finish line, nor any grand ambition.

Outside of work, everyone needs a corner to do things that aren’t necessarily useful, but genuinely enjoyable.

关于ENOSYS

ENOSYS,亦称「扫地僧」(The Sweeping Monk)。

生于北京海淀,海淀黄庄一中校友,现居美国加州硅谷。

我本职是一名软件工程师,过去二十多年主要在系统软件、基础设施和安全领域折腾。代码写得久了,难免养成一些工程上的病态执念:接口该是什么样就该是什么样,能少一层抽象就不多套一层,看到不必要的复杂度总忍不住想拆掉。时间长了,偶尔也会被同行打趣为「互联网遗老」。

不过在终端和系统之外,我也一直对声音和音乐有些兴趣。相比代码,音乐显然没有那么讲道理;大概也正因为如此,反而很好玩。

常有人问起「ENOSYS」这个名字是怎么来的。其实没有什么深意,更谈不上品牌设计,只是很多年前随手起的一个名字。当时甚至没意识到,对不写程序的人来说,这几个字母念起来还颇有些拗口(其发音大致为 eh-NOH-sisih-NOSS-iss,IPA: /ɪˈnɒsɪs/)。

在Unix/POSIX系统编程里,ENOSYS 是一个不算常见的错误码,表示所请求的功能没有实现或不受支持。程序碰到它,大致可以理解成系统摊摊手:

「别试了,这功能没有。」

拿它作为音乐项目的名字,其实阴差阳错地也挺贴切:我没有受过正规的作曲训练,乐理知识有限,乐器也远谈不上专业。以一个程序员的眼光来看,这套音乐子系统从设计之初大概就缺了不少功能,四处都是 ENOSYS

好在这些年生成式模型和音频工具发展得很快。既然内核里没有,那就在用户态补一层;不会弹的东西让模型帮着弹,不会编的部分边听边改,最后居然也能拼出一些自己愿意反复听的东西。

音乐与实验

尝试用AI辅助做音乐,最初的起因其实很简单:纯粹是觉得好玩。

我一直很喜欢各种能够让计算机做出一点「本来不像它会做的事情」的工具。年轻时折腾代码是如此,后来折腾图像、声音,大抵也是同一种毛病。对我而言,算法和算力除了拿来解决工程问题,也是一种挺有意思的媒介。

目前,我以 ENOSYS the Sweeping Monk 为名独立制作和发布音乐。这些作品里,有AI辅助完成的旋律、编曲和演奏,也有一些从头到尾都高度依赖生成模型的实验;具体题材没什么固定章法,从比较正经的器乐,到游戏音乐、电子乐,再到一些纯粹出于个人趣味、甚至带有「搞抽象」性质的整活儿尝试。

现状

目前定居在硅谷,已婚,育有一女。

平日里仍然以写代码、维护系统和解决各种莫名其妙的问题为生。剩下的一些时间,则拿来做音乐、调声音,或者继续折腾那些其实没人要求我折腾的东西。

这个项目没有什么明确的终点,也没有特别宏大的目标。

工作之外,总得给自己留一点地方,用来做些不一定有用、但自己觉得有趣的事情。

關於ENOSYS

ENOSYS,亦稱「掃地僧」(The Sweeping Monk)。

生於北京海淀,海淀黃莊一中校友,現居美國加州矽谷。

我本職是一名軟體工程師,過去二十多年主要在系統軟體、基礎設施和安全領域折騰。代碼寫得久了,難免養成一些工程上的病態執念:介面該是什麼樣就該是什麼樣,能少一層抽象就不多套一層,看到不必要的複雜度總忍不住想拆掉。時間長了,偶爾也會被同行打趣為「互聯網遺老」。

不過在終端機和系統之外,我也一直對聲音和音樂有些興趣。相比代碼,音樂顯然沒有那麼講道理;大概也正因為如此,反而很好玩。

常有人問起「ENOSYS」這個名字是怎麼來的。其實沒有什麼深意,更談不上品牌設計,只是很多年前隨手起的一個名字。當時甚至沒意識到,對不寫程式的人來說,這幾個字母念起來還頗有些拗口(其發音大致為 eh-NOH-sisih-NOSS-iss,IPA: /ɪˈnɒsɪs/)。

在Unix/POSIX系統程式設計裡,ENOSYS 是一個不算常見的錯誤碼,表示所請求的功能沒有實現或不受支援。程式碰到它,大致可以理解成系統攤攤手:

「別試了,這功能沒有。」

拿它作為音樂專案的名字,其實陰差陽錯地也挺貼切:我沒有受過正規的作曲訓練,樂理知識有限,樂器也遠談不上專業。以一個程式設計師的眼光來看,這套音樂子系統從設計之初大概就缺了不少功能,四處都是 ENOSYS

好在這些年生成式模型和音訊工具發展得很快。既然核心裡沒有,那就在使用者態補一層;不會彈的東西讓模型幫著彈,不會編的部分邊聽邊改,最後居然也能拼出一些自己願意反覆聽的東西。

音樂與實驗

嘗試用AI輔助做音樂,最初的起因其實很簡單:純粹是覺得好玩。

我一直很喜歡各種能夠讓電腦做出一些「本來不像它會做的事情」的工具。年輕時折騰代碼是如此,後來折騰圖像、聲音,大抵也是同一種毛病。對我而言,演算法和算力除了拿來解決工程問題,也是一種挺有意思的媒介。

目前,我以 ENOSYS the Sweeping Monk 為名獨立製作和發布音樂。這些作品裡,有AI輔助完成的旋律、編曲和演奏,也有一些從頭到尾都高度依賴生成模型的實驗;具體題材沒什麼固定章法,從比較正經的器樂,到遊戲音樂、電子樂,再到一些純粹出於個人趣味、甚至帶有「搞抽象」性質的整活兒嘗試。

現狀

目前定居在矽谷,已婚,育有一女。

平日裡仍然以寫代碼、維護系統和解決各種莫名其妙的問題為生。剩下的一些時間,則拿來做音樂、調聲音,或者繼續折騰那些其實沒人要求我折騰的東西。

這個專案沒有什麼明確的終點,也沒有特別宏大的目標。

工作之外,總得給自己留一點地方,用來做些不一定有用、但自己覺得有趣的事情。

ENOSYSについて

ENOSYS、別名「掃地僧」(The Sweeping Monk)。

北京海淀生まれ、海淀黄庄一中出身。現在はカリフォルニア州シリコンバレー在住。

本職はソフトウェアエンジニアで、過去20年余りにわたり、主にシステムソフトウェア、インフラストラクチャ、セキュリティの領域で手を動かしてきました。長くコードを書いていると、どうしてもエンジニア特有の執念のようなものが身についてしまいます。インターフェースはあるべき形にしておきたいし、抽象化は1層減らせるなら余計に重ねたくない。不必要な複雑さを見ると、つい解体したくなる。そんな調子なので、同僚から冗談めかして「インターネットの長老」「老人会の生き残り」とからかわれることもあります。

ただ、端末やシステムの画面から離れたところでも、昔から音や音楽には興味がありました。コードに比べると、音楽はどう考えても理屈通りにはいきません。おそらくその分、純粋に面白いのだと思います。

「ENOSYS」という名前の由来をよく聞かれます。深い意味など何もなく、ブランディングでもありません。何年も前に思いつきで付けた名前にすぎません。当時は、プログラムを書かない人にとってこのアルファベットの並びがどれほど発音しにくいか(発音はおおむね eh-NOH-sis または ih-NOSS-iss、IPA: /ɪˈnɒsɪs/)すら意識していませんでした。

Unix/POSIXのシステムプログラミングにおいて、ENOSYS は要求された機能が実装されていない、あるいはサポートされていないことを示すエラーコードです。プログラムがこれに遭遇したとき、システムが肩をすくめてこう言っているようなものです。

「試すだけ無駄だ。そんな機能はない。」

これを音楽プロジェクトの名前に選んだのは、奇しくもぴったりでした。私には正規の作曲教育を受けたわけでもなく、楽理の知識も限られており、楽器演奏もプロには程遠い。プログラマの目から見れば、この音楽サブシステムは設計段階から多くの機能が欠落しており、至る所が ENOSYS だらけでした。

幸いなことに、ここ数年で生成AIモデルや音響ツールは急速に進化しました。カーネルに機能がないなら、ユーザー空間に互換レイヤーを挟めばいい。弾けないパートはモデルに手伝ってもらい、編曲できない部分は耳で聴きながら手直ししていく。そうして試行錯誤するうちに、自分でも繰り返し聴きたくなるようなものが形になってきました。

音楽と実験

AIを使った音楽制作を始めたきっかけは単純で、純粋に面白そうだったからです。

昔から「コンピュータに、本来やりそうにないことをやらせる」ための道具が好きでした。若い頃にコードをいじり倒していたのも、のちに画像や音をいじるようになったのも、結局は同じ癖です。私にとってアルゴリズムや計算リソースは、エンジニアリングの課題を解決する手段であると同時に、触っていて面白い表現媒体でもあります。

現在、私は ENOSYS the Sweeping Monk という名義で自主制作の音楽をリリースしています。これらの楽曲には、AIの補助を受けながら制作したメロディや編曲、演奏もあれば、最初から最後まで生成モデルに大きく依存した実験的なトラックもあります。ジャンルに決まった枠はなく、オーソドックスなインストゥルメンタルからゲーム音楽、エレクトロニック、さらには個人的な趣味から生まれたちょっとしたネタ枠のような実験的な試みまで、気の向くままに作っています。

現状

現在はシリコンバレーに拠点を置き、既婚、一女の父です。

普段はコードを書き、システムを保守し、原因不明のトラブルを解決して生計を立てています。残った時間で曲を作り、音を整え、誰からも頼まれていないものをいじり続けています。

このプロジェクトには明確なゴールも、大層な目標もありません。

仕事の外側に、必ずしも役に立たなくても、自分が心から面白いと思えることをやるための場所を少しだけ残しておく。それだけで十分だと思っています。

ENOSYS 소개

ENOSYS, 혹은 ‘소제승’(掃地僧, The Sweeping Monk)이라 불립니다.

베이징 하이뎬 출생, 하이뎬 황좡 일중 동문이며, 현재는 미국 캘리포니아주 실리콘밸리에 거주하고 있습니다.

본업은 소프트웨어 엔지니어입니다. 지난 20여 년 동안 주로 시스템 소프트웨어, 인프라, 보안 분야에서 일해 왔습니다. 코드를 오래 작성하다 보면 자연스레 엔지니어링 특유의 완고한 집착이 생기기 마련입니다. 인터페이스는 본래 그래야 하는 모습이어야 하고, 추상화는 한 층 줄일 수 있다면 굳이 덧붙이지 않으며, 불필요한 복잡성을 보면 어떻게든 걷어내고 싶어집니다. 그러다 보니 동료들로부터 농담 반 진담 반으로 ‘인터넷 원로’라는 소리를 듣기도 합니다.

하지만 터미널과 시스템 밖에서도, 저는 늘 소리와 음악에 관심이 많았습니다. 코드와 비교하면 음악은 확실히 논리대로만 굴러가지 않습니다. 아마 그렇기 때문에 더 재미있는 것일지도 모릅니다.

‘ENOSYS’라는 이름의 유래를 묻는 분들이 종종 있습니다. 사실 거창한 뜻은 전혀 없고, 브랜드 전략 같은 건 더더욱 아니었습니다. 그저 오래전에 별생각 없이 붙인 이름일 뿐입니다. 당시에는 프로그래밍을 하지 않는 사람들에게 이 철자 조합이 발음하기 꽤 까다롭다는 것조차 인식하지 못했습니다(발음은 대략 eh-NOH-sis 또는 ih-NOSS-iss, IPA: /ɪˈnɒsɪs/입니다).

Unix/POSIX 시스템 프로그래밍에서 ENOSYS는 요청한 기능이 구현되지 않았거나 지원되지 않음을 나타내는 에러 코드입니다. 프로그램이 이 에러를 마주치면, 시스템이 어깨를 으쓱하며 이렇게 말하는 셈입니다.

“애쓰지 마라, 그런 기능 없다.”

이것을 음악 프로젝트의 이름으로 삼은 것은 어쩌다 보니 꽤나 절묘하게 맞아떨어졌습니다. 저는 정식 작곡 교육을 받은 적도 없고, 음악 이론 지식도 얕으며, 악기 연주도 전문가와는 거리가 멉니다. 프로그래머의 시각에서 보면 이 음악 서브시스템은 처음부터 온갖 기능이 빠져 있어 온통 ENOSYS 투성이였던 셈입니다.

다행히 근래 들어 생성형 모델과 오디오 도구가 빠르게 발전했습니다. 커널에 기능이 없다면 유저 공간에 호환 레이어를 얹으면 됩니다. 직접 연주하지 못하는 악기는 모델의 도움을 받고, 편곡이 막히는 부분은 귀로 들으며 고쳐 나갔습니다. 그러다 보니 어느새 제 자신도 반복해서 듣고 싶은 음악들을 제법 만들어낼 수 있게 되었습니다.

음악과 실험

AI를 활용해 음악을 만들기 시작한 계기는 단순했습니다. 순수하게 재미있어 보였기 때문입니다.

저는 예전부터 컴퓨터로 하여금 ‘원래 할 것 같지 않던 일’을 하게 만드는 도구들을 좋아했습니다. 젊은 시절 코드를 파고들 때도 그랬고, 이후 이미지와 소리를 다루게 된 것도 결국 같은 성향 때문입니다. 제게 알고리즘과 컴퓨팅 파워는 엔지니어링 문제를 해결하는 수단일 뿐만 아니라, 그 자체로 흥미로운 표현 매체이기도 합니다.

현재 저는 ENOSYS the Sweeping Monk라는 이름으로 음악을 독자적으로 제작하고 발표하고 있습니다. 이 작업물들에는 AI의 도움을 받아 완성한 멜로디, 편곡, 연주도 있고, 처음부터 끝까지 생성 모델에 크게 의존한 실험적인 트랙도 있습니다. 장르에는 딱히 정해진 틀이 없습니다. 담백한 기악곡부터 게임 음악, 전자음악, 그리고 순전히 재미 삼아 저질러 본 장난기 어린 실험들까지 자유롭게 다루고 있습니다.

현황

현재 실리콘밸리에 거주 중이며, 기혼으로 딸 한 명을 두고 있습니다.

평소에는 여전히 코드를 짜고, 시스템을 유지보수하며, 온갖 원인 모를 문제들을 해결하며 살아갑니다. 남는 시간에는 음악을 만들고, 소리를 다듬고, 아무도 시키지 않은 것들을 계속 만지작거립니다.

이 프로젝트에는 정해진 종착점도 없고, 대단한 목표도 없습니다.

일 외에, 굳이 유용하지는 않더라도 스스로 재미있다고 느끼는 일들을 할 수 있는 공간을 남겨두는 것. 그것으로 충분합니다.