1年弱前、Covid-19の封鎖が世界中に広がり始めたとき、ほとんどの人がトイレットペーパーと缶詰食品を買いだめし始めました。しかし、個人的には、検索機能を実装するという別の何かを探していました。
検索機能の目的はそれほど重要ではなく、コーディングする必要がありました。このコードは、世界が混乱に陥っているように見える瞬間に制御を感じることができるため、落ち着きを取り戻しています。基本的に、プログラミングは解決すべき小さなパズルに関するものです。テーブルの上に受動的に横たわっているパズルからだけでなく、神秘的な活力を吸い込むことができるパズルからも。タスクの実行、何かの作成、ルーチンの自動化、または全世界で利用可能なテキストの公開が可能なパズル。
他の多くの作家やアーティストと同様に、私は20年近く運営されている個人のウェブサイトを持っています。コードに取り組むことに決めたので、さびたJavaScriptの知識を捨てて、コレクションからエッセイを見つけやすくするためにWebサイトにプラグインできるあいまい検索ライブラリを探し始めました。
タスクをいくつかの部分に分割します。私たちはそれらをto-doアプリケーションに書き込みます(私はThingsを使うのが大好きです)。そして、これが創造的な宇宙が作成される方法です。日々、人生の外で繰り広げられる世界的な社会崩壊から脱却し、やることをひとつひとつ研究に没頭しています。コビッドは巨大でした。私のやることリストはまともな長さでした。
このプロジェクトの本当の喜びは、検索を実現するだけでなく、粗さを改善、研磨、除去することでもありました。世界で迷子になるために私は自分自身を作りました。私は手ごわいパンデミックを制御することができないかもしれませんが、私はこの小さな一握りのビットを管理することができます。
仕事の全過程は脱出になりましたが、成長への衝動を伴う脱出でした。理想的なキーボードナビゲーションスタイルを設定し、検索ペイロードの送信の瞬間をシフトし、インデックスのサイズと検索の有用性のバランスを見つけます。最も重要なことは、コードを驚くほど軽量に保つことです。まとめて、コードをGitHubの小さな「要点」に変え、コミュニティと共有します。これは、ボールを他の人に渡すようなもの です。これで、Webサイトでこれを使用できるようになります。 Hugoでの超高速でキーボードに最適化されたクライアント検索。
彼は不完全ですが、とても良いです。
肝心なのは、コーディングを試みる習慣はそれ自体が癒されるだけでなく、恐怖感を建設的なものに変えるためのトリックでもあるということです。それは、全体に小さいながらも価値のある貢献を加える機能です。
私は10歳のときにコーディングを始め、それ以来あきらめていません。基本的に私は自分ですべてを学びました。なかでも、とてつもなくぎこちなく、文字通りの機械で安心し、周りの大人でも理解できない世界に連れて行ってくれると約束してくれました。この意味で、コードは私にとって友達になり、決して判断することのない友達になりました。
パターンが発達しました:子供の頃の社会的状況の複雑さにうんざりしていたとき、私はコードに目を向け、隠士になりました。彼女の本の中でエレン・ウルマン 人生のコード:テクノロジーの個人的な歴史は次のように書いています。「私がプログラマーになるまで、私はそのような孤立の有用性を完全には理解していませんでした。たとえば、人との関係が複雑になったときに、暗い部屋に行ってプログラムに取り組むなどです。」
高校でアセンブリ言語の本を読んだり、高校でBBSソフトウェアをプログラミングしたりすることは、私にはまだ命の恩人のようには思えませんでした。コードの癒しの力を最初に意識的に認識したのは、数年前、自分のWebサイトをあるコンテンツ管理システムから別のコンテンツ管理システムにリファクタリングしたときでした。想像を絶するように思えますが、それは本当です。私はCMSによって癒されました。
その時、私は長い間、個人的および職業的な鬱病に苦しんでいました。私は完全に不安でした。自分の状態を考え直し始めたとき、自分が望んでいた、期待していた場所にいないことに気づきました。
これは時々私に起こります。これは一部の人によく起こります。うつ病の重症度が私に降りかかっているのを感じるとき、私はしばしば「目に見える闇」のエピグラフを思い出します ウィリアム・スタイロン:「私が恐れていたひどいことのために、それは私を追い抜いた...」通常、これは私が十分な休息をとらなかったことを意味します。私は数日ではなく、数ヶ月または数年を意味します。川から水が入る船のように、徐々に傾いていきます。しばらくすると、彼は間違いなく溺れるでしょう。私の脳は徐々に沈んでいき、彼は救いとしてサーバーを必要としていると感じました。サーバーは私にとって最も安全な場所の1つであることがわかりました。
薄っぺらで高価なRackspaceサーバーを何年も存続させたいと思っていましたが、怠惰すぎてそうすることができません。これは、絶え間ない集中力を必要とする膨大でありがたい仕事です。
サーバーに関するほとんどすべては、「ターミナル」のコマンドラインで行われます。これは、画像やグラフィカルインターフェイスのない世界です。テキストのみ。すべての行動は、文字通り、要点に磨きをかけられています。1文字のタイプミスは、システムを破壊する可能性があります。実際、管理者モードまたは「スーパーユーザー」モードに切り替えると、サーバーは何十年もの間このメッセージを表示してきました。
おなじみのシステム管理者の講演を聞いていただけたと思います。それは通常、次の3つのポイントに要約されます
。1:他の人のプライバシーを尊重します。
2:キーを押す前に考えてください。
3:大きな力には大きな責任が伴います。
世界のメカニズムの働きがキーボード入力の正確さにどれだけ依存しているかを理解することで、膝の弱さを感じることができます。しかし、これはまさにその通りであり、お気に入りのLinuxディストリビューションの内部を探索すると、Webとほとんどのデジタルインフラストラクチャ(および間接的に)の機能をサポートするフローの交差点の不条理と美しさを口を開けて見ることができます。 、物理的)。
これは、システムの魅力の一部の理由です。ねじれた詩のgrep、 vi、git、 apacheを使用して、 この混乱を 乗り越えます。そして* .ini— *は、キーボード上の指の超高速の動きの助けを借りて、驚くべきものです。あなたは錬金術師のように感じます。はい、あなたはそうです。行ごとのテキストインターフェイスに、ほとんどぎこちない不思議な単語を入力すると、簡単なアプリケーションの準備が整い、世界中の膨大な数の人々がすぐにアクセスできるようになります。
私が愛する人々は、私がバッシュが得意だと偶然見つけたとき、恥ずかしい思いをしたり、疑ったりすることがよくありました 。(コマンドを入力するための一種の端末シェル)。まるで彼らから不快な秘密を隠しているかのように。かつて、テキストの世界に入ると、数回の簡単なキーストロークで、友人の10代の息子がMinecraftのMODをインストールするのを手伝いました。彼の表情から、私はすぐに彼のためにロックスターのようなものになったことに気づきました。 200回のクリックのおかげで、2世代の間に架け橋ができました。
私はこの世界の暗い混沌の中に平和を見いだします。コードとサーバーは私の家であり、この気持ちを彼らが家にいない人に説明するのは難しいです。
それで、傾いた、少し落ち込んだ状態で、私はウェブサイトを古いサーバーから新しいサーバーに移動し始めました。私のタスクは、信頼できるToDoリストに記録されました。古いサイトのURLは、私がかつて自分自身を見たレンズを通して、私の人生のユニークな時代をマークしました。
私の古いウェブサイトは幽霊です。誰もそれらを見たり攻撃したりすることはありません。私は彼らに責任があると感じたので彼らを移しました、私は彼らがビートで人生を続ける権利を持っていると感じました。
サーバーの作業のほとんどは、複雑なサイトの複雑さを軽減することを含みました。つまり、動的を静的に変換します。これらのサイトをPHPコアから削除し、穏やかなHTMLとCSSに戻し、保守と将来の証拠を迅速に作成します。 MYSQLデータベースのような単純なものでも、植物のように剪定と給餌が必要なのはおかしいです。一見無害に見えるPHPスクリプトは、言語のメンタルモデルの進化により、12年後には時代遅れになります。しかし、90年代初頭のHTMLページを取得すると、画面を備えたほとんどすべてのデバイスでレンダリングされます。 ホームページを
移行するときのこのスプリント また、いわゆる静的サイトに変換しました。より単純なバージョンでは、数百年後も機能し続けます。彼女は以前とほとんど同じように見えます。静的な場所に来て、私たちは世界中を旅してあらゆる詩の形式を試した疲れ果てた詩人のように完全な円を描き、最終的に気づきました。私たちの悲劇を通して私たちを見るには、単純な俳句で十分です。
ほとんどのインフラストラクチャ作業と同様に、このような単調な舞台裏のタスクはしばしば無視され、重要でなく資金不足であると嘲笑されます。これは、何かが壊れるまで、またはパンデミックが始まるまで起こります。そうすれば、インフラストラクチャがすべてであり、インフラストラクチャがなければ、私たちの世界は洞窟のトログロダイト状態に戻るか、さらに悪いことになります。
1990年代後半、私たちは彼らのホームページの所有者、クリーナー、そしてシステムエンジニアになる以外に選択肢はほとんどありませんでした。今日、この責任を第三者に押し付けることが可能です。 Tumblr、Ghost、Facebook、Blogger、Wordpress-多くのプラットフォームが登場し、コンテンツのみに集中でき、代わりに制御レベルを下げることができます。
責任のレベルを高くしすぎる可能性があります。それはおそらく私に起こった。システムにいくら努力しても、その効果は一定の値を超えることはできません。しかし、それは私を悩ませません。
この行ごとの問題解決は、私をベッドから出させるものになることがあります。この気持ちを知っていますか? 「隠れたところから出たくない」?昨年の毎朝、全人類にとって、おそらく最大の望みはベッドにとどまることでしたが、この世界は非常に不均衡であることが判明しました。しかし、それからこの毛布の下で私はああ考え始め ます!Xサーバーの問題を解決する方法、またはYの奇妙な動作に対処する方法を知っています。この検索コードを修正する方法を知っています。そしてこれのおかげで、私は立ち上がって人間(または少なくとも部分的に人間)になり、誰もあなたを判断しないこの線の世界に入ることができます。それはあなたとシステムの仕組みだけを含んでいます。あなたがそれらに費やすほど、より美しくなるシステム。私にとって、この責任は治療です。
そして、私はシステムを破壊します。これは、コードの、そしておそらく部分的には世界のための、より優れた、より安定したフレームワークを考え出すために、私が愛し、長年忠実に役立ってきたシステムです。