はてなキーワード: フルスクラッチとは
[B! togetter] 2ちゃんねるの開設当初の裏話をひろゆきが発言
この件もそうだが、あめぞう掲示板の話題になると事実を確認せずにテキトーなことを言い始める人が出てくるのはどうしてなんだろうか。
『教科書には載らないニッポンのインターネットの歴史教科書』で有名なばるぼら氏の掲示板考察~あめぞう型掲示板(ウェブアーカイブ)によると
という一連の流れがあり、あめぞう氏も「Terra氏はパイオニアとして師として仰いでおります」と語っている。
よって「あめぞうが発明したスレッドフロート型掲示板をひろゆきがパクった」という定説はそもそも前提が間違っている。
あめぞう氏はスレッドフロート型掲示板を発明していないし、掲示板CGIをフルスクラッチで書く技量があったわけでもない。
あめぞう掲示板はあくまでresbbsやMiniBBSといった既存の掲示板CGIにTerra氏のスレッドフロート機能を移植していただけで、何か技術的に優れたことをやっていたわけではないのだ。
主にDXとかノーコード(ローコード)周りについてコンサル目線で書いておく
表でこんなことを書こうものなら会社クビになる可能性あるのでここに書いておく
(なんでこんな世の中になっちまったんだよw)
DXって別にIT化するだけの意味じゃないんだけど、それすらできてないからIT化って意味で以下注意点かいておく
というより、DXやりたいって言ってる人のほとんどがDXができる状態じゃない
床が見えないほど散らかってる部屋でルンバが使えないように、前提となる条件をクリアできてない
それがもう絶望的にできてない
体感としては8割以上できてない
多分自分たちのやってる仕事が良くわからないし、行き詰ってるからDXという魔法の言葉に救いを求めてるんじゃないかな
まず自分たちがやってる仕事に対して、「どんな仕事をしていますか?」「その仕事をやる理由は何ですか?」という質問に答えられるようにする
人が増えて、長くやってる会社は目的がわからないルール、意味のない仕事が増えていく
これを整理できないと何も前に進められないです
収入印紙を貼る理由なんて良くわからない人がばかりなのにルールだからと貼っている
程度問題ではあるけれども、なんでこの仕事やる必要あるんだ?この会議に出る意味はなんだ?
先にそっちなんとかしてください
次に問題になるのは誰がやるかってこと
「IT部門の若手にやってもらう!」とか気軽に言う人が多いんだけど
これできる人って
ウルトラスーパー超絶優秀な人です
いやマジで
1000人にひとり見つかれば良い方
この業界に20年以上いるけどこれちゃんと出来る人、今まで一人しか会ったことない(その人はさっさと起業してしまいました)
ある程度大きな会社だと一人じゃできないから、仕様策定、運用、試験だったりを分割して誰かに任せる必要があるんだけど
責任感を持ってやってくれて、業務をよく理解している人を選定して説得する必要があります
これすごい難しいです
対人スキルが全方位カンストしてるような人じゃないと務まらないです
IT界隈だとプログラミング能力に秀でた人が優秀な人とイメージされやすいですが、この手の仕事ができる人も同じくらい評価されても良いと思うんすけどね
間接部門だからと出世コースに乗れない閑職扱いになってませんか?
もしそういう認識ならはっきり言って無理です
現場で活躍できなくてもITで活躍出来る可能性もゼロではないかと思いますが、
現場でNG出された方は要領だったり対人スキルに難がある場合が多く、その人がITツールを導入しても混乱を生んで余計な費用がかかるだけです
業務整理が出来て、IT化に着手する場合(まあ実際は役員のメンツとかそういう理由で、業務把握もままならないまま突き進むんでしょうけど)
「やらなくても良い作業を止める」、「SaaSで出来ないか検討する」、「ノーコード開発で頑張る」の順で検討してください
当たり前ですが、やらなくても良い仕事を止めるのが開発もなく、運用費もかからない即効性があって一番良いです
無駄な会議や書類、これらを探して削るところから始めてください
どこもやってる勤怠管理や会計処理等は既存のサービスで充足するはずです
SaaSで実現できなくて、ノーコードで開発する必要がある場合(ほとんどないと思いますが)
ノーコード開発をやってみるとわかるんですが、結構細かいところは出来ない場合が多く100%カバーするようなシステムを作る場合は
すげー大変になることがあります
結局の所ノーコードとは言っても形を変えたプログラミングなので複雑にすればバグも多く発生します
テストしにくい分コードを書くよりも悪くなるケースもあると思います
なので70~80%くらいカバーできれば良い
エッジケースだったり発生頻度の低いオペレーションはバッサリ切る
そんな感じでシンプルになるように努めてください
ノーコードの想定するユースケースを無理やり捻じ曲げてプラグインだらけの独自システムは地獄です
(そうは言っても、こだわりが強いのか、冷蔵庫をエアコンとしても使えるようにしたいみたいな人が多いんだよなぁ・・・・)
ここまで言うと、ノーコードって微妙なの?流行らない?って思うかもしれないですけどノーコードは流行ります
プログラミング言語もセキュリティも覚えることが多すぎて、みんなノリでやってます
セキュリティ対策なんて意味わからんチェックシートを大して理解してない人がYES/NOつけてるだけで実装はボロボロ
たくさんのライブラリは毎日のようにアップデートされ、膨大な工数をかけてアップデートしてます
誰も触れなくなります
というわけでフルスクラッチ開発で内製化とか現実的じゃなさすぎます(金が有り余ってるならやってもいいですが)
ノーコードでも属人化して、ブラックボックス化するのは一緒ですが
セキュリティアップデートとか、セキュリティ対策は幾分楽になるので、まだマシです
ちなみに今SIerにシステム開発頼むのは悪手なので止めときましょう
プログラマーの腕に激しく依存していて、プロダクトの品質が同じ会社でも全然違うみたいな状況はいずれ改善されていくと思います
カンナとノコギリを使って家建てる大工が少なくなって、プレカットの建材を運んで組み立てる家ばかりになったように
(つーか実際もう、ID管理とかメール送信は外部サービス使うのが主流になってきていて、どんどんコード書かない方向にシフトしてる気はしてる)
前述の内容と少し被りますけど、半分くらい作ったらさっさとユーザーに使ってもらったほうが良いです
負荷テストとか、UIとか拘るのは良いんですけど、方針レベルで間違ってた場合は全部やりなおしになるので、
早い段階で使ってもらうようにしてください
多少バグがあっても良いので早めにイメージを擦り合わせたほうが結果的に早く終わります
バグってるものをユーザーに使わせたら怒られるとかいう人いるんですけど、
使う人と作る人が気兼ねなく話せるような関係じゃないと開発はうまく行かないので撤退しましょう
席を隣にして談笑できるくらいには仲良くしてください
いきなりbubble, outsystemsみたいなガチなやつから入らないほうが良いです
kintoneとかairtableみたいなやつから使ってみるのをオススメします
あと選ぶ際に、営業にいろいろ聞く前にまず自分で使ってみること
最初から営業に聞いちゃうと、「頑張ればできます」みたいな回答しか返ってこない
実際に使ってからセミナー行くとか、営業と話して聞いてみるの方が良いと思います
システム作ったあとに、効果があったのかきちんと検証してください
大学受験して合格発表を確認しないようなことあるのか?と思われるかもしれないですが、
ということなのか単にめんどくさいのか分からないですが、ちゃんとやりましょう
いい加減な検証もやめてください
コンコルド効果で捨てられなくなって負の存在として生き続けます
そうならないように作る前から、効果検証の方法と撤退ラインを決めておくと良いと思います
保守なんて誰もできないです
10年もすれば、担当者も業務も変わってドキュメントは不整合だらけ
20年に一度作り直す式年遷宮は技術継承の意味合いが強いと聞いたことがありますが、それと同じでシステムを10年以内に作り直す気持ちでいた方が良いです
最低限のドキュメント更新とかアップデートは必要ですが、維持に多大な工数がかかるとか、修正に時間がかかるようになったら作り直してください
色々書きましたけど、業務把握が一番大変でそれができれば割となんとかなります
自分たちの仕事を管理できないから、システムを作って解決しようとするからおかしいんです
それって業務整理とシステム開発という2つの大仕事を並行してやることになるので、そりゃ混乱もします
あと業務整理を自分たちで出来ないからコンサルにお願いしてやってもらうっていう事言う人いますけど止めたほうが良いです
コンサルからしてみれば他人事ですし、あなたの会社について世界で一番詳しいのはその会社に属している人です
その人たちがお手上げだと、外部の人間だって十中八九うまくできないです
仕様さえ明確に作ることが出来るなら、ツールの違いやら、プラットフォームの違いなんかは些細なことなんですよ
まあそれはそれで、大変ですけど仕様さえ決まってるなら何とかなります
というわけで各位頑張っていただければ
サーバー構築したり、社内システムをフルスクラッチで作ったり、salesforceで社内ポータル作ったり管理者作業とかやってるよ。
リーナスがLinuxを開発したというのは、どれほど「技術的に」すごい偉業だったのでしょうか?
生越 昌己
回答日時: 2022年4月23日 · 執筆者は841件の回答を行い、180.3万回閲覧されています
なんか呼ばれてる気がした。
「技術的に」はどうってことないものです。別の回答で私の書いた記事が引用されているので、その辺の歴史的なことはそっちを読めばわかると思います。「やればできる」範囲のことです。実際、あの記事には書きませんでしたが、そのちょっと前くらいに私の知人(日本人)がフルスクラッチのUNIX互換マイクロカーネルOSを独力で書いてます。これも彼に言わせれば、「教科書通りに実装しただけ」とのことです。なお、UNIX系OSの実装は、いくつか教科書が出ています。また、「NET2」という4.3BSDのフリー(ってことになっていた)な部分のコードも公開された後です。つまり、参考にするものは結構あったんです。
実はOSそのものは、「技術的にすごい」必要はないです。もちろん、いろんな点で「技術的にすごい」ことをする必要性のあるところはありますが、「普通の実装」であれば「教科書通りに実装しただけ」で作れます。「ぼくのかんがえたさいきょうのプロセスモデル」なんてものは必要ありませんし、「マイクロカーネル技術」なんてのも、あればあったでメリットありますが、なければなくても困りません。UNIXのその辺は普通の人達が思っているよりもずっと単純で、実装もそんなに難しいものではありません。ですから、特に「何かの互換品を作る」というのであれば、動かすだけであればそんなに大変ではありません。バランス感覚が要求されて難しい部分は既に他人が実装しているわけですし、「教科書」や「参考コード」はいっぱいありましたから。
Linuxが凄かったのは、一つは「運」です。多くの人が求めているタイミングで、まがりなりにも動くものを出すことができた。これは多分最大最強の「すごいこと」です。
Linuxがリリースするちょっと前に、AST(Andrew Tanenbaum
)はMinixの「次のバージョン」についての「やらないことリスト」を作っていました。野良で作られたMinix386を使っていた人達を始めとする「MinixがもっとUNIXになって欲しいと思っている人達」は、それを見てガッカリしたものです(私も)。Minixを実用品にしようとする流れに完全に背を向けた形で「教材としてのOS」に力点を置いたもので、ASTの立場を考えれば当然とは言え、いろいろ残念な思いをしました。Linuxがリリースされたのは、そのショックから覚めやらぬ時期だったので、それを見た人達は、まさしく
キタ――(゚∀゚)――!!
その次に凄かったのは、「それを実用品に持って行けた」ことです。「動く」ということと「実用品になる」ことの間には、とんでもなく深い「谷」があります。これを超えるのは、「運」も大事だし「技術」も不要じゃないんですが、それだけでできるものでもありません。そもそもLinus自身が「最初はそんなつもりはなかった」的なことを言ってますからね。それでもどこで気が変わったか、あの「隙だらけのカーネル」でも、なんとなく実用品として使えないことはない程度にはなっていた。
そして、「隙」も凄かった。Ver 0.01のカーネルなんて、本当に隙だらけ。たとえば、システムコールのエントリテーブルがあるのですが、その先の「実装」部分には「未実装」ってコメントが1行書かれているだけなんて状態だったのです。これは結構後の版でもありました。でも、その「隙」ゆえに、多くの人に愛され、「俺が何とかしてやろう」と思わせる。当然意図したものじゃないにせよ、これがなかったら「今」はなかったかも知れない。
等々、いろんな「凄さ」はありますが、それは技術そのものではありません。「凄さ」は別のところにあったのです。
独自に似たものを作ってた人達(私も含まれる)が、一斉に自分の作っているものを投げ出して協力しようと思うくらいには「凄く」また、「隙」があったんですから。「マイクロカーネルこそが」とか、まぁとりあえずマトモに他人の使える自前実装作ってから言ってよね。ちなみに当時の私はMach
をいろいろいじくってました。Ver 3.0になっていろいろいじれるようになってて、MS-DOSの上からbootする版を作った人がいたんで、「これでユーザ空間でOS書けるじゃん」って。
そんなわけで、「ぼくのかんがえたさいきょうのOS」を作らなかったのが、Linusの偉かったところ。愚鈍に「どうにかこうにかUNIXとして使える程度のもの」をちゃんと作っていいタイミングでリリースした。そこが全ての始まり。
「毒にも薬にもならない昔話」とはこのことではないだろうか。
老人ならせめて1行くらいは誰かの役に立つ言葉がにじみ出るものだが・・・
そういう生き方としてきたということだろう。
国立大教育学部の小学校社会科の先生になる専攻で入学したけど、
高校ではマンガ家めざして同人誌も出してて、フィギュアのフルスクラッチもやりたいなと思ってたので
卒業には全く必要のない美術の先生を養成するコースの塑像(人体を粘土で作る)の授業を受けてた。
最初の課題(学生同士でペア組んでお互いの顔を作る)で自分には立体の才能が全く無いと思い知らされて、ペアの顔を完成させた段階でフェードアウトして単位は得られなかったが。
思い返せば、教育学部って専攻(教科)ごとに多種多様な研究室の教授・講師の授業があって、もっといろんな授業を無駄に受けとけばよかったなと、社会人になった今更思う。
サークルもいろんなことをやってみたいと、漫研以外にスカイダイビング部・スキューバダイビング部の新勧説明会に参加したけど、遠征や装備に金かかるので貧乏学生の俺には無理だった。
あ、先生にはなってません。
ちょっとプログラミングできる、っていうレベルの人が一番うざい
長い月日をかけて誰にも使われないソフトウェアが完成する
完成する頃にはもう居ない
自分はサーバサイドだから、フロントエンドだから、AIだから、とか言ってその分野ばっかりやる人
ぶっちゃけその分野もこっちでやった方が早いしできるんだけど
まぁそれはみんな一緒かもしれんけど同じことばっかやってて成長しない
最近のQiitaにも多いけど「こうしたら動きました」って言って内容理解してない人
これってどういう意味?って効いたら「コピペしてきました」って言う(意味を聞いてるんだが)
大抵は冗長かつ不十分な実装になっててしばらくして動かなくなる
まぁ誰しも通る道だとは思うので丁寧に指導はするけれど
ソフトバンクがArmの親会社になっているときに、デザインセンターを国内に作ってエンジニア育成しておけばよかったな。
ファブレス会社はプロセス全く知らないで作れるかというと、性能をギリギリまで出すのは作れない。
IP買ってきて取り敢えず半導体作れるようになればいいのだろうか。
富士通も富嶽のCPUフルスクラッチで作ってないし、ノウハウ持っているところからの展開も難しそう。
設計ツール(EDA)を買ってきて、IP買ってきて、取り敢えずつなげれば、それっぽいのは作れるのだろうけど。
規格の仕様書、ツールの説明書、どれもこれも数百ページのドキュメントが複数あって、理解するのも大変なんだよね。
あと書籍がなさすぎる。