無理なプロジェクトと分かっていながら「できません」と言えず、そもそもプロジェクトの要求仕様からチームの構成、期間まで、管理不能なほどめまぐるしく状況が変転していく中、問題に対する真の対策を取ることができないまま何とかしてソフトウェアをつくりあげていくうちに、なぜか皆、足並みを揃えて「死地に赴いて」しまうということ。そして、そのことが自慢にすらなる不思議なソフトウェア開発の現場で起こる「デスマーチ」を社会学で読み解いていく書籍。
コンピュータへの命令書の記述
ソフトウェア開発が一体どのような作業なのか、まずは、順を追って考えていくことにしましょう。コンピュータは、人間社会のことなど何も知らず、自分から知ろうともしない機械です。人間がコンピュータを役立てようとするならば、どのようにふるまい何をすべきか、逐一指示を与える必要があります。ソフトウェアは、平たく言えば、コンピュータに対する指示が詰まった命令書であり、ソフトウェアを作ることは、膨大な量の指示が記述されたコンピュータへの命令書を作成する作業だということができます。
コンピュータが理解することができる0と1のデジタルデータで表現される機械語を直感的に記述するために、自然言語に近い構文を持つプログラミング言語を用いて人間が記述し、それをコンパイラというツールを使って機械語に変換しソフトウェアが作られる。プログラミング言語を用いてコンピュータへの指示を記述した文書のことをソースコードという。一般家庭ではNECのPC-88シリーズといったパソコンが一般家庭でも使われるようになり、当時のコンピュータ雑誌にはBASICという、初心者にも比較的親しみやすいプログラミング言語で書かれたゲームのソースコードが掲載されていて、プログラミング言語の知識がなくとも、丸写しすることでプログラミングに触れることができた。
ソフトウェア開発産業の「黒歴史」
コンピュータの黎明期、コンピュータに指示を与えるプログラマとして採用されたのは、意外なことに女性たちでした。もちろん、戦時中で女性が貴重な働き手であったことが、第一の理由でしょう。
現在は圧倒的に男性社会なプログラマの世界、ちょっと以外ではあるが、人手不足という点から見てもこれからは女性プログラマが増えていくかもしれない。当時プログラミングという作業は、高度な科学的知識を有する男性管理者が構想を練り、その構想を忠実に実行するだけの単純作業に過ぎないとみなされていた。まずは仕様書という構想を描き、それに酢違って実装・試験という作業を実行していく「ウォーターフォール」モデルは、ソフトウェア開発産業版の「科学的管理法」だと言える。
1950〜 60年代、コンピュータが科学・軍事分野から、ビジネスのツーツとして転用され、産業の急拡大とともに開発者不足が露わになっていく。戦争が終わり男性の働き手が戻ってくるとそこから一気に男性社会となっていく。これは「変わり者」「無精者」「反社会的性向」といったパーソナリティがソフトウェア開発者の適正とされ、いわゆる「男らしさ」との親和性があったことが一因とされる。
一人で問題を抱え込むという常識
何よりも個人の力に信頼を置くソフトウェア開発者の社会に独特な常識は、一人の人間としてのソフトウェア開発者が自分自身にとって働く意味を主体的に追求する行為と、「究極の迷宮」としてのソフトウェア開発作業が避けがたく直面する困難を一人どこまでも抱え込む行為とを表裏一体の者として結びつけることによって、プロジェクトの全責任を、ソフトウェア開発者個人に引き受けさせる装置となっているということができるのです。
外野から見れば頑なとも言える、このソフトウェア開発者の常識、何も一人で仕事を抱え込まずとも分業すればいいじゃないかと思うのだが、それでは寸分の狂いもない完璧なソースコードを書いて自分の能力を誇示したい開発者にとってそれは〝負け〟を意味するのだろう。時には一人で抱え込むことで燃え尽き退職に追い込まれることも少なくない開発者たち、そんな開発者たちへのインタビューは、「それ完全にブラック企業じゃん」と言いたくなるような内容だがそれでも自分に非があるといい会社や同僚のせいにはしない美徳のようなものがそこには存在する。
働き方の改善を任された人事部は、「和」の醸成のため一緒にできるスポーツなどに参加させたりするが、他者との協働よりも個人の力を信頼し、互いの作業に「手出し」「口出し」をしないことこそが、ソフトウェア開発者として「適切に」他者をリスペクトする行為であって、チームの「和」の醸成を謳うこの手の取り組みは、まさに暇人がやることでしかないのだ。
こうして地獄と悦楽が表裏一体となった「デスマーチ」に誘われていく彼ら。ソフトウェアを作ることは彼らにとって「労働」ではなく「遊び」の延長であるのかもしれない。
【サブスク】 Kindle Unlimited
僕が利用している読書コミュニティサイト
【本が好き】https://www.honzuki.jp/
【シミルボン】https://shimirubon.jp/