はてなキーワード: フレームワークとは
https://zenn.dev/sta/articles/2024-08-10-sat-what_is_si
少し前にブクマの集まっていたこの記事について、SIerでなぜITが軽視されるのか、SIerがしぶとく生き残っているのが何故なのかをもう少し深堀りしてみたくなった。なお俺自身は、もうずっと長いことSIerの中で働いている、現役のSIerの中の人である。
これから書くのはSIerの中でもBtoBの業務システムの中身の構築を主に手掛けていて、なおかつ元請けに近い組織の話だと思ってほしい。
まずSIerでITが軽視されがちな理由である。受託開発を主に手掛けるSIerの顧客は、だいたい以下のような特性を持つ。
このような顧客が日本社会にはまだまだいくらでも存在しており、その市場に特化した業態がSIerだ。このような市場は、いずれ消えると言われながら今でもしぶとく残っている。
こうした顧客の元では、新しい技術にチャレンジしてもあまりメリットがなく、枯れた技術や使い尽くされたフレームワークを使って、すでにどこかで見たようなシステムを生産するのが最適となる。古い技術は長期的には先細っていく運命にあるが、一方で経験者が多く失敗事例が出尽くしている、過去の資産を利用できるなどの利点があり、顧客側も冒険よりはリスク回避を望むため、古くて安定した技術を採用するメリットが大きい。
それを請け負うSIerで重宝されるのは、ITの知識よりも顧客業務を理解してロジックに落とし込むスキル、いわば業務をプログラム可能な形に翻訳するスキルだ。
顧客が自分で説明する業務のルールはだいたい矛盾していたり、条件が不足していたり、例外ケースが考慮できていなかったりするので、それらを整理してプログラム可能な形に変換する必要がある。特に金融などの業務がガチガチに法規制されている分野は業務ロジックを法律や制度に適合させる必要があり、そういう時に業務ロジックを「業務の専門家の立場で」検討できる人材がSIer側にいると顧客は安心して設計を任せられる。だからSIerでは上流工程が重視され、それができる人間が重宝される。
余談だが、俺自身は経理系システムを専門として長い間この業界で働いているが、俺がここに残っているのはIT技術も好きだけど経理の勉強をするのもそれと同じぐらい好きだったことが大きい。いざとなったら経理知識だけでも食いつなぐことができるぐらいには、そっち方面の知識もある。IT技術への興味は趣味で発散させており、仕事でそれを生かせる機会はなくてもいいと割り切っている。そういうタイプが、この業界には向いている。
閑話休題。
SIerでは上流工程が重視される一方、実装のフェーズでは使い尽くされたフレームワークを使って作るので最新技術への理解は必要なく、実装上の創意工夫が必要なほど難しいものや新規性の高いものを作るわけでもないため、設計書に書かれたことをそのまま実装できる人であれば十分、ということになる。そのため、実装要員は単価の安い人を大量に集めればいいという発想になり、かくして派遣ビジネスの隆盛へとつながっていく。
実装フェーズは業界全体で単価が安いため、元請けの比較的高給取りな社員に実装を任せてしまうと、それだけで利益率が悪化する構造があり、ハイスペックな社員はなるべく単価の高い上流工程にアサインしないと勿体ないという話になる。
実装のフェーズを丸ごと外注することも多い。フェーズ単位で外注する方式はウォーターフォールと相性がよく、発注のためにはきちんとした設計書を外注先に渡す必要があり、かくしてSEはドキュメントをひたすら書き続ける。
SIerは「ITを専門とする組織」ではなく「業務をプログラム可能な形に翻訳する専門組織」であり、翻訳した後の作業を自社の社員はあまりやっていないので、そもそもIT企業と言えるかは本来微妙な立ち位置なのだ。実際には翻訳の成果物である設計書でさえグダグダなことは多いのだが。
とはいえ、パフォーマンスチューニングなどで技術面の創意工夫はしばしば必要になるのだが、それが実装の工夫だけでどうにかなるものであれば、大体は現場のエース級の人(自社社員とは限らない)がなんとかしてしまい、経営者を含む大部分の人にはその必要性があまり深く認識されず、エースの人がどうやって解決したかも理解されない、というのが実情ではある。技術のスペシャリストはSIerでは立場が弱く、裏で活躍していてもそれが日の目を見ることはあまりない。
こうした姿勢のためにSIerはたまに来る技術の変化の波に弱く、大波が来た時はしばしば多くの人が新技術に適応できずにドロップアウトしたりする。日進月歩のITの世界で、お前は本当にIT企業かという感じではあるが、そもそもITの専門組織とはいえない組織なので期待するのは無駄である。
ではSIerがしぶとく生き残っているのは何故なのか。
SIerとは「業務をプログラム可能な形に翻訳する専門組織」だと言ったが、もっと大きなことを言うと、総じて日本のSIerというのは、日本社会を現状維持させるために存在する業種なのだろうという気がする。(日本に限定したのは、海外の状況はまったく知らないからだ。)
顧客もIT化の波に対応しないといけないが、かといって現状の業務を変えたくないし、ITのことを学びたくもない。SIer自身も新しい技術を積極的に取り入れない。その両者が結託して、古い技術で社会を現状維持させている。その良し悪しはともかく、多くの人がそれを望み、その望みがSIerという業種を存在させている。まるで邪教徒たちの祈りが邪神を生き永らえさせているみたいな話である。
古い技術を革新しないと社会が変わっていかないとしたら、SIerは変化に対する抵抗勢力であり、SIerの古い技術者が変化の波でドロップアウトするのは、社会にとって必要な新陳代謝といえる。
だからもし、技術で社会を変えようと望むなら、SIerは来るべき業種じゃない。技術の先駆者たちが社会を変えようとして切り拓き舗装した道を歩きながら、すでに出来上がった仕組みを維持するために働いているのがSIerだ。技術で社会を変えようと望む人は、是非他で活躍して、技術変化の波を起こし、俺をドロップアウトさせてみてほしい。
とある企業の面談で、「reactは運用コスト高いと思うんですけどなんで選定したんですか?」って聞かれてめちゃくちゃ困った話→Web開発の運用コストに関する様々な意見が集まる
https://togetter.com/li/2407336
ここでReactが運用コストが高くないって言ってる人は恐らくプロジェクト経験が少ないか運用経験がないかのどちらかだ
WebサービスというのはフロントエンドのJavascriptフレームワークが必須というわけではない
そのため一定のシステムの規模まではバニラのJavascriptやjQueryと比べてReactは明らかに運用コストが高い
バニラやjQueryでは作れないというのであればそれを説明しろというのがこの面接官の質問の趣旨だろう
色々なプロジェクトを経験しているとReactなんて確実に必要ないようなショボいサイトやレガシーなシステムはよく見る
逆にシステムが完成して運用が始まった事でプロジェクトが解散してフロントエンドエンジニアがいなくなり画面の小さな変更やバグを修正する為にフロントエンドエンジニアを探さないといけなくなっているシステムもそれなりに見たことがある
この質問はフリーランスでスポットで仕事を受けてるようなフロントエンドエンジニアやアーキテクチャ選定に関われないような作業者としてのフロントエンドエンジニアなのか、もっとシステムに深く関わってるエンジニアかを確認するためにはいい質問だと思う
前提:この日記は一個人の考察である。この日記で言及する人が全員そうという訳ではないことも十分承知している。その上でこれを読んでほしい(そうでもしないと「自分はそうではない!」というコメントで溢れかえるだろうから)
「絵の作者に価値を見出すか否か」でかなり分断が生まれていると考察している。
自分の価値観が他人にはないということはよくあることだ。(「え、街中で綺麗な文字見かけた時にどのフォントが気になりませんか!?」「え、便利なサービス見かけた時にバックエンドのフレームワーク何使ってるかとか気になりませんか!?」と書けばわかりやすいだろうか?)
おそらく、見出さない人はイラストがAIイラストでも気にしていない。「別にかわいい/萌えるからいいじゃん」と言った感じ。
もしかしたらマイナーなジャンル/CP/性癖なら「供給が増えた!!」となっている可能性もある。
その絵を描いたもの=AIイラストのモデルに対してマイナスの付加価値が設定されており、さらにはそのユーザー=AI術師に対してマイナスの付加価値を設定する。「こいつAI使ってたからこの人の絵嫌い」と言った感じだ。
もしモナリザを描いた人が完全に無名なひよっこだった場合、今ほどの価値は生まれていたのだろうか?もし大罪人だったら?自分はそうはならないと思っている。ダヴィンチが描いているからあそこまでの価値が一般に広まっていると思っている。(正直、自分はあの絵のARG要素くらいしか魅力を感じない)
今のツイッターランドで起こっているであろうことの一つに、フィルターバブルやエコーチェンバーによって「全ての人は絵師を気にしている!」(またはその逆)という幻想が生まれていることがある。絵師界隈、さらにその中の反AI村という村社会の中で情報が更新されていないように見える(一部の過激派のせいで対立が激化している原因の一つにも思われる、こっちはノイジーマイノリティとかの効果もあるが)
もちろんこれは反々AIに対しても言えるが。
ソフトウェアってまず動かすとこまでが大変で素人から初めても9割はそこで脱落しちゃうから、その上ちゃんと常に計算量や適切なデータ構造まで考えて設計してかける人、さらにそれをデータ含めてコンポーネント化して明快にかける人は一握りだと思う
これで言うと、機械学習まわりでは例えばpytorchやjaxみたいなフレームワークを設計・実装できるスキルはSWE的だと思う。
あれはどういう感覚だとできるようになるのか知りたくてpytorch自体のコードを読んだりしてみたけど、全く分からないんだよな。
どういう思想で設計されてるのかもわからんし、抽象化がなぜそうなっているのか、処理の実体がどこに書かれているのかすらわからない。
うーん
MLと競プロってジャンル違うしプロとしても別の仕事なんだよね
俺はML多少わかるしプロダクションに突っ込んだけどそれは趣味だし
MLだとKaggleだけどこれは一般的なCSのアルゴリズムは関係ないし
元増田の何色コーダーとかはML関係なくてそれ以外の探索とか最短経路とかのトラディッショナルなCSのアルゴリズムが問われる
変換や対称性を体系的に扱うための数学的なフレームワーク。そして私の専攻分野だったもの。
「ヴォーガンの分類理論では、単純リー群の既約表現が極大コンパクト群で分解されると思いますが、分岐則の立場から見ると、極大トーラスに既約表現を制限したときの分規則の端が分類の不変量として用いられるじゃないですか」
男がギョッとしてこちらを振り向く。
「ブリリンスキー-柏原の分類理論との関連性がよく分からなくて……りーくんさんならご教示いただけるかと思い」
男の目が泳ぎ出す。小馬鹿にしきった笑みはいつの間にか消えている。一体どこからどう説明を始めればいいのか分からない顔。
物心ついた頃から、こんな顔を数えきれないほど見てきた。女は大学に行く必要はないと言い切った父親、数学コンクールに女が出るなんてと吐き捨てた小学校の斉藤先生、筑附合格を一番に伝えたかった大好きな山田先輩、学振の特別枠を申請したときのゼミ教授、就活に失敗して目の前から消えた元カレ。
要するに、格下だったはずの女に場を制圧されたとき、男たちが一様に見せる顔。
テーブルを沈黙が支配する。男は口をギュッと結び、食べ残した肉を見つめていた。
これでいいのだ。時間が来ると、男は誰とも目を合わせず、逃げ出すように店を出ていった。彼が街コンに現れることは二度とないだろう。
私のせいで自信を喪失した男たち。ペニスをパンツの中にしまうことを覚えた男たち。そんな彼らの姿をみるたび、私は自己満足の微笑みを浮かべるのだ。
実際に仕事をした、このフレームワークを使った、というのにろくに知らないで「なんだっていいんですよー」ってなんとか潜り込もうっていう嘘つきが山ほどいるんだよね
バレバレなんよ
慣れてるの
だからさ、それならなんで「フレームワーク何使ってる?」なんて質問をしてきたのかって話ね
なぜWARCファイルで保存しているかと言うと、その方法なら複数サイトで統一的に書けるから
クローラからデータを抽出する部分は別途作ってあって、その部分だけ使い捨てになってる
言ってること分かる?