17 ポイント 投稿者 GN⁺ 2024-08-12 | 11件のコメント | WhatsAppで共有
  • Black HatカンファレンスでSignalの創業者Moxie Marlinspikeは、アジャイル開発のせいで過去20年間、ソフトウェア革新が失われていると主張
  • 開発者が「ブラックボックスな抽象化レイヤー」に閉じ込められ、革新に必要な自由を失っていると指摘
  • 「エンジニアリング組織を管理する人なら誰でも、アジャイルの下位概念、派生概念、アジャイルの領域にあるもの、あるいは何らかの形で関連する経営哲学を持っているはずだ」
    • 開発者がエンジニアリングの専門知識と既存技術の新しい機能を見抜くビジョンを結びつけ、ボトムアップで動くのではなく、
      Agileチームは個別にサイロ化され、互いに別々に作業し、他チームが何をしているのか把握できなくなると主張
  • またクロージングセッションで、Thistle Technologiesの創業者兼CEOであるWindow Snyderは、このようなブラックボックス型チームは自社製品が動作する原理についての可視性も不足しがちだと付け加えた
    • Snyderは、プログラミングを学ぶ学生が低レベル言語や機械コードとの相互作用を学ぶのではなく、アプリ開発を円滑にする高級言語ばかり学ぶため、エンジニアがパズルのピース同士がつながるより大きな全体の中でどう適合するのかを理解するのに必要なコンテキストが欠けているとも主張

セキュリティ研究者が革新の鍵を握っている

  • Marlinspikeはまた、過去数十年にわたりソフトウェアエンジニアリングはより速く、より柔軟に、さらに前進するために抽象化されてきた一方で、セキュリティ研究者は抽象化の向こう側を見ようとしてきたと語った
    • 「セキュリティとは、抽象的なものをのぞき込み、実際にどう動いているのか、その下に何があるのか、時には最初にそれを作った人よりもうまく理解するためのプロセスだ」
  • そのため、セキュリティ研究者こそが新たな革新を導き出す鍵を握っていると主張
  • ソフトウェアを理解することは魔法を理解することに似ており、セキュリティ専門家を「図書館に座って魔法を研究する人たち」にたとえる場面もあった

GN⁺の意見

  • アジャイルの根本的な問題点を鋭く指摘した、Marlinspikeによる洞察に富んだ発言だった
  • 抽象化と高速な開発スピードにばかり執着するあまり、開発者が次第に基礎的な概念を知らなくなっているという点に共感する
  • セキュリティ研究者の役割に注目した点が印象的だった。セキュリティは抽象化の背後に隠れた実体を掘り下げる営みであり、革新の原動力になりうる
  • 見方によっては、ソフトウェアエンジニアはより深い理解を追求すべきだというメッセージでもある
  • アジャイルの利点も確かに存在するため、バランスの取れたアプローチが必要だろう。アジャイルの俊敏性と柔軟性を維持しつつ、基礎をしっかり固める方策を模索すべきだ
  • そのためには、開発教育課程からの改善が必要だ。高級言語だけでなく、低レベル言語、コンピュータアーキテクチャなど基礎科目の教育を強化すべきだ

11件のコメント

 
jeokrang 2024-08-20

アジャイルを誤って理解した管理者たちの問題を、アジャイル自体の問題だと誤解しているようですね。

 
yangeok 2024-08-20

時代の流れに合わせて低レベルの知識を学んでもROIが出ないため、高レベルの知識だけを学ぶにとどまっているようにも思えます

 
andrewchaa 2024-08-14

なぜアジャイルに八つ当たりするのか...

 
lordang 2024-08-12

north-southとeast-westの概念を混ぜて話しているので、内容が少し分かりにくいですね。
他のチームが何をしているのか分からないというのは、アジャイルそのものよりもcross-functionalな組織構造のほうが問題なのではないかと思います。

low levelについてよく分かっていないという点も、内容を見ると「そうなるとlow levelもあまり分からない傾向がある」と言っているようですが。

他のチームが何をしているのか分からないことは、多少なりともアジャイルと関係があるとしても、low levelが分からないことがアジャイルと何の関係があるのかは理解できませんね(笑)

 
lordang 2024-08-12

あえて言うなら、オープンソースが広く普及して、わざわざ全部を自分で作る必要がなくなり、reinventing wheelもしなくなって、low levelのほうはそのまま持ってきて使うようになった結果、わざわざ勉強しなくなった、というほうがむしろ近いのでは。

あえてその言葉を理解してみるなら、アジャイルのせいで早く作ることばかりになってlow levelを勉強しなくなる、というふうには解釈できるけれど、必要ないからやらない、のほうがより正しいのではないかと思います。

 
bbulbum 2024-08-12

アジャイルによって、広い視点で問題を見て長く持続可能にするような選択が軽視されつつあると思いますし、これはソフトウェアの観点でも目の前の問題を解決することだけに集中するようになっているとも思います。
やみくもにとりあえず動くようにすることがアジャイルなのではないにせよ、非常に速度重視の選択をする傾向は生まれている気がしていて、これが深い理解を追求しにくくする要因になり得ると思います。

 
savvykang 2024-08-12

エンジニアリング組織に意思決定権がない問題の原因を、なぜアジャイルに求めようとしているのか分かりません

 
galadbran 2024-08-12

他のチームが何をしているのか分からない状況が、アジャイルと何の関係があるのか……;;;

それにしても、Window Snyder という名前はかなり珍しいですね……

 
xguru 2024-08-12

元の動画を見たいのですが、まだないですね。しばらくすれば公式YouTubeにアップされるのではないかと思います
https://www.youtube.com/@BlackHatOfficialYT/

 
GN⁺ 2024-08-12
Hacker Newsの意見
  • 現代の企業構造が問題の根源である

    • 責任と意思決定は企業の階層構造に従って上へ上げなければならない、という現代的な管理理論がある
    • 下位の従業員ほど製品について最も知らないと見なされがちである
    • しかし実際には、現場の従業員が最も多くの情報を持っている
    • ソフトウェアエンジニアリングを組み立てラインのプロセスにしてしまうと、イノベーションは止まる
    • フラットな管理階層が答えではないにせよ、現場の従業員を無力化しない方法が必要である
    • <i>Reinventing Organisations</i> という本が革新的な企業構造について説明している
  • アジャイルの良いアイデアは一般的なソフトウェアエンジニアリングに吸収された

    • アジャイルのプログラマーは、厳格なスタンドアップミーティングやカンバンボードなどに従うものだと考えられている
    • アジャイルが知識の分断やソフトウェアエンジニアリングの技術低下を引き起こしたとは思わない
    • 大量生産の傾向によって生じた問題である
    • 自動車会社や家具工場でも似たような現象が見られる
  • アジャイル、スクラム、OKRへの不満

    • これらはどれも自由と責任を下位の従業員に委ねると約束するが、実際には中央集権化される
    • OKRを逆向きに適用してみたい
    • すべての従業員が自分の領域で主要な結果を定義し、管理者はそれを基にチームの方向性を定めるべきである
    • トップダウンではなくボトムアップのアプローチが必要である
    • よい採用を行い、よく訓練し、従業員を信頼しなければならない
  • バックログ整理会議での経験

    • 慣れていないコードのバグ修正を見積もらなければならなかった
    • 見積もりが難しく、適当に数字を言った
    • アジャイルは3か所で似たように運用されていた
  • アジャイルの問題点に関する理論

    • 作業を小さな部分に分けることは有益だが、プログラミングには創造性が必要である
    • 作業を分割する過程で多くの情報が失われる
    • 開発者は創造的な解決策を見つける必要があるが、必要な情報を得られない
    • 経験豊富な開発者、あるいはより良い設計図やドキュメントが必要である
  • ソフトウェア品質の低下

    • この数十年でソフトウェアは悪くなった
    • より強力なマシンを使っているのに、応答性は低くなっている
    • アジャイルの台頭と関係があるかもしれない
  • エンジニアがコードの一部を「所有」できるようにすべきである

    • そのチームのソフトウェアが最高だった時期である
  • 毎日のスタンドアップ会議を避けた経験

    • 継続的な振り返りと作業分割は非効率だった
    • 非技術系の管理者にしか有益ではなかった
  • 大規模組織の問題

    • 開発者がもはや主導していない
    • 上層部でビジョン、プロダクト、UX、プロジェクト管理が決められる
    • 開発者はクラウド技術を使って作業する
    • 全体像を理解したり、重要な提案をしたりできない
  • ソフトウェア開発の「魔法」を取り戻すべきだという意見

    • 20年以上この業界にいたことがうかがえる
    • 若いプログラマーたちと時間を過ごすと、今でも魔法は存在する
    • 20年前にも似たような不満はあったが、それでも楽しく仕事をしていた
 
savvykang 2024-08-13

> 責任と意思決定は企業の階層構造に沿って上へ上げなければならない、という現代の管理理論がある。

これは官僚化した組織が示す特徴ではないでしょうか?