1739014180
2025-02-07 14:22:00
私は、開発者からCEO、そしてその間のあらゆる種類のポジションまで、私のキャリアで多くの異なる役割を担ってきましたが、私は常に、常に発展してきました。
私にとって、それは喜びの源であるだけでなく、何よりも、私たちが進化する超技術的で超高速な動きの環境を理解し、習得し続けるための不可欠な必要性でもあります。迅速かつ情報に基づいた決定を下すことができる必要があると思います。
私はそれが議論の余地のある主題であることを知っていますが、CTO、エンジニアリングマネージャー、またはさらに、リード開発者は、専門的または個人的なプロジェクトのいずれかをコーディングとコーディングする方法を知っている必要があると思います。
多かれ少なかれ集中的なソフトウェアプログラミングのこれらの20年以上の間、私は幅広い開発ツールを使用する機会があり、 ides。
最近、私は明るさと効率を優先して、最も洗練されたツールから徐々に離れてきました。
私の旅を説明させてください。
2000年代
私は2000年代初頭にプロの市場に参入しました。
インターネットのバブルは破裂しましたが、Web開発はまだ活況を呈していました(この記事を参照してください)。
90年代に開発された「Web指向の」言語(つまり、C、C ++以外のすべて)(JavaScript、Python、Javaなど)は改善されており、開発ツールはこの傾向に従っていました。
これは全盛期でした ECLIPSE IDE (2001年にリリース)、 ビジュアルスタジオ (1997)および多かれ少なかれ消えた他の人。
また、Sunos、HP-ux、AIXなどの独自の環境からのより専門的なツールに対する(無駄な)抵抗の時代でもありました。
当時、私はそれらのいずれかに特に夢中になることなく、それらの多くをナビゲートしなければなりませんでした。
2010–2020
私は2010年に3,000人の従業員を抱える会社のCIOを見つけました。それ自体は、140,000人の従業員を抱えるグループの一部です。
私の義務は経営陣にシフトしましたが、幸いなことに、私は技術全般、特にコードとの緊密なつながりを維持することができました。
これはまた、Javaistsの選択のIntellijを発見した時代でもありました。
確かに、それはちょっとした革命でした。常にフランケンシュタインの生き物のように見えた日食とは異なり、 Intellij 「オールインワン」 /「バッテリーが含まれている」アプローチが付属しています。
非常に長い間、それは市場の他のIDよりも先を行っていました(そして今でも多くの点であるようでした)。
2017年、私は契約上の自動化(救急界の世界のためのUberの一種)で救急系代替品を管理するためのプラットフォームを開発することを使命とするスタートアップを共同設立しました。
初期の私と私のパートナーであった会社のCTOの役割を引き受け、私は集中的なコーディングモードに戻りました。システム全体を設計し、MVPと次のステップを開発する必要がありました。
Intellijは、Javaのためではなく、Scala(非常にうまく処理する方法を知っていた)とGolang(非常にうまく処理する方法も知っていました)の主な作業ツールであり続けました。
「インテリジェント」オートコンプリート関数は説得力があり始め、ツールの範囲が拡大し続けました(データベース管理、コードからのクエリ、データベーススキーマに対するコードの一貫性チェック、HTTPクエリ管理のAPIなど)。
2020年に近づいたとき、これらのすべての機能によって暗示されているツールの面倒な性質が私を悩ませ始めました。
私たちがスタートアップのために採用した開発者の一部は、一緒に仕事をすることを好みました vscode、成熟に達した。
そこで私はツールをテストし、機能性の(相対的な)喪失を補うよりも、ワークフローのパフォーマンスと流動性の向上が増加することに気付きました。
2020–2021
2020年にスタートアップを販売し、主に私がアプローチされた2つのプロジェクトに参加するために、自分のコンサルティング/開発会社を設立しました。
1つ目は、医療イメージングソフトウェア会社の製品カタログの再編成と更新を支援することでした。 2つ目は、バングラデシュの農業国勢調査を実施するために必要なすべてのソフトウェアとインフラストラクチャを設計、開発、展開するプロジェクトでした。
繰り返しになりますが、私は自分が「手を汚して」、主に錆とゴランを使って「多くのクベルネテスヤムルファイルを使用して…)になりました。
VScodeはまだ私の頼りになるツールですが、Intellijと同様に、日々を費やすほど、その小さな遅延、減速、バグに気付くようになります。
古き良きツールは、私のキャリアの開始時に使用する機会があったことがわかりました(vim いくつかの名前を付けるために、おそらく進化しなければならなかったので、すべてのプラグインで日食のように見えるVSCodeを悩ませることなく、同じレベルの生産性を達成することが可能かもしれません。
この期間中、私はスピーカーが説得力のあるデモをした開発者の会議に出席しました ネオン (本来あるべきカスタマイズ)、最終的に私を納得させました。
それで、私はNeovimをちょうど正しく構成しようとして無限の時間を費やし始めました、そしてそれがほとんど全国的なスポーツであることに気付きました(何千ものものがあります YouTubeビデオ Neovimsを構成している人たちが静かに撮影している人たちで、同じテーマにTwitchビデオがあると確信しています)。
今
今日、私は「サービスユニットマネージャー」であり、現在の雇用主に設定した組織に存在するタイプのポジションの1つであり、製品の停滞、チームの再術、所有権の執行の問題を解決しています。
基本的に、私は、もちろん開発を含む、デザインからランタイムまで、製品(この場合はクラウドプロバイダーのIAM)を担当するチームを管理しています。
私の役割は、これらすべての段階を通じて、小規模な(ただしマルチスキル)チームを管理することです。
繰り返しになりますが、私の時間は、管理、製品の定義、インフラストラクチャ管理、そしてもちろん開発に分かれています。
2021年の終わりに、私は発見しました ヘリックス (ほぼ)偶然(私はNeovimの錆びたバージョンを探していました)。
Helixは、一種の「バッテリーが含まれている」Neovim、つまり両方の世界の最高のものです。Neovimが必要とする構成とプラグインの混乱のないターミナルモード(モーダル)エディターの軽さと効率です。
これは比較的最近のプロジェクトですが、コーディング、ドキュメントの執筆、メモ、TODOの作成、人魚の図を作成するなど、日常的に使用するために急速に進化しており、現在では完全に成熟しています。
LSPプロトコル(VSCODEを使用してMicrosoftによって普及している)を介して簡単に拡張できるため、非常に重いIDEと同じ自動完了、診断、およびアクションの提案機能が見つかります。
プラグインシステムはまだ定義されていません。これは、元の哲学に多少反対です。しかし、コミュニティからのプレッシャーの下で、その作成者はついに屈服し、進行中の開発です。
では、なぜターミナルベースのモーダルエディターなのか?
時に カーソル また、他のAI対応IDEはますます洗練されています。この選択は、直感に反したり、逆効果的であるように見えるかもしれません。
それは確かにツールレースの反対ですが、時間(そしてそれに伴う知恵があるので、いくつかの利点が必要です)、私はこれらのツールが私の脳と私のコードの間に「ノイズ」を生成することになったことに気付きました。
これらのツールの目的は、いくつかのタスクを自動化し、複雑さの一部を隠すことにより、開発者の生産性を向上させることです(たとえば、コンピレーションオプションの粗さまたはデバッグまたはユニットテストセッションの開始に使用される議論)。
これにより、最終的には、開発者と実際に対話するツール(主にコンパイラ)との間に距離が作成されます。
この距離はいくつかの懸念を引き起こします:
- 第一に、開発者は、彼の好ましいIDEなしで彼のプログラムを開発またはコンパイルすることができなくなります(後にCIスクリプトを書くのは簡単ではありません)。
- 第二に、これは個人的な意見であり、コード構造の精神的表現に有害であることがわかりました。関数の署名から、ワンクリックでコールに移動し、ツリー構造(非常に混乱する可能性がある)を介して別のクリックでナビゲートし、コードの構造を覚えるために必要な暗記作業を行わないことになります。それでも、この精神的表現は、継続的なコードの改善に不可欠です。開発者は、自分がIDEの前にいるときだけではありません(おそらくわずかです)。
Helix(またはNeovim)などのエディターを使用すると、コードに「近づいている」と感じます。たとえば、Helixには、コードまたはファイル構造の木のような表現はありませんが、代わりに超効率的で高速な検索システムがあります。
この「欠如」は、ファイルとコードの構造をよく考えている場合、実際には非常に効率的であることが判明しました。
もう1つの重要な側面は、慣れ親しんだユーザーが作業できる速度です。
コードをナビゲートし、単語、関数、関数の一部を選択し、それらを同時に編集します。これはすべて、マウスまたはトラックパッドをフェッチするためにキーボードを離れることなく、フラッシュで行われます。
純粋なテキスト編集の場合、モーダル編集者は、数十万行のコードベースでさえ、それらの使用方法を学ぶために最小限の努力をする人にとっては単に無敵です。
しかし、Helixは単なるテキストエディターではありません。LSPプロトコルを介して外部ツールを使用する機能により、関数ドキュメントへの直接アクセス、自動完了、説明のほぼ同じレベルの情報と自動化を提供します。関数の署名、コード構造のインデックス(誰が誰を呼び、誰が使用され、誰が何を実施するかなど)。
単語を閉じる
モーダルのターミナルベースのエディターは、あなたに強制されます 集中 あなたのコードで、 気を散らすことなく。
彼らは非常に効率的で、最近ではますます包括的になっています。
ただし、AIまたは副操縦士がいなければ、脳を使用する必要があります。そして多分それがそんなに幅広い聴衆を狙っていない理由です;-)
#アイデを放棄した理由私はでさまざまな役割を果たしましたBastien #Vigneron #コーデックス