SSブログ

プログラマとして一からスクラッチするのと、既存のソースを修正するのがうまいのと分かれる気がする。 [プログラミング]

プログラマーは、何もないところから作り上げるのが上手なタイプと、すでにあるソースに手を入れるのを得意とするタイプの二通りある気がする。どちらがどうというわけでもないのだが、相補的な関係ではあるかもしれない。

最終的にできるものを想像するのが得意な人は、一からスクラッチしてコーディングするのも苦ではないだろう。というか、そういう人を尊敬することも多い。やっぱり無から有に移行させるのは難しいことではあるからだ。

ただ、一からスクラッチというのはわりと限られていることかもしれないなと思ったりもする。大体のプログラミング言語には標準ライブラリ的なものが存在するし、スクラッチといってもそれから書く人はそんなにいないからだ。と思っていたらツイッターで、qmailがstdio.hすらも自分で書いているというのを見て、世の中には奇特な人もいるもんだと思った。


qmail懐かしいという話だが、僕もしばらく前にPostfixを仕事で使ってちょっと懐かしい。

https://www.orangeitems.com/entry/2019/10/08/171743

5年前くらいにPostfixの設定について書いた記事がそこそこ人が来ていて(6千PVくらい)、参考になればいいのだけれども、見た感じ直接解決できるような文章じゃないよなw。

https://miff.blog.ss-blog.jp/2014-09-28-1

まぁstdio.hを自作するようなものは狂った設計と言っていいのだろうけど、そこまで自作しなくてもいいよなぁと思うことはないこともない。そもそもLinuxだってminixを見て案外OSなんて自分でも作れるんじゃね?という感じで作ったみたいだし、OSをスクラッチすること自体はやっぱりかなり狂った行為であるとは思うんだよね。まぁgitを2週間で作ってしまう人ですから、OSぐらいは必死こけば作れるんでしょう。

そういえばOS自作入門なる本が出ていた時もあったな。正直ちょっと惹かれた。


30日でできる! OS自作入門

30日でできる! OS自作入門

  • 作者: 川合 秀実
  • 出版社/メーカー: 毎日コミュニケーションズ
  • 発売日: 2006/03/01
  • メディア: 単行本



OSまでは作らないにしても、OSに関連することってのは興味ある。脆弱性のこととか、デバドラのこととか。OSのことを気にしないといけないほどのソフトを使ったことがないというのが悔やまれるところだが、今からでも少しはやっていきたいとは思っている。だがいつも思うだけでやれてない。

Windowsのデバドラは仕様が結構コロコロ変わっているみたいだけど、Linuxはどうなんだろう。そもそもLinuxのデバドラってどういうものなんだろうな。本は買ったけど積ん読だ。ちょっとは読もうかな、遅ればせながら。


Linuxデバイスドライバプログラミング

Linuxデバイスドライバプログラミング

  • 作者: 平田 豊
  • 出版社/メーカー: ソフトバンククリエイティブ
  • 発売日: 2008/06/28
  • メディア: 大型本



かなり前にOSのリブートなしにデバドラなどの変更に耐えられるように作ってあるって書いてあった気がするんだけど、OS側の対応だけで実現できるものなんだろうか。ドライバ側の対応が必要なら面倒な話になっているだろうな。まぁちょっと前対応したカーネルを使っていても、機能をイネーブルにしていなかったみたいだから、今でも一般的に使われているんだろうか。

モノリシックカーネルとかマイクロカーネルとか名前は聞いているものの、結局のところ実際の状況がどうなっているかはわからない。少なくとも人に説明できるだけの知識だけでも仕入れていない。そこまで説明したがる人がいないってのが、わからない理由になっているのだけれど、自分で深掘りできるほどいろいろなことがわかっているわけではないしな。他人のC言語のソースを読むというのはそこそこ苦痛でもあるし。


多くの人は既存のものに手を加えるのが仕事になっていることが多いと思う。Linuxがスクラッチされたと言っても、それはごく初期の話で、そのあとは多くの人がパッチを当ててきたのだろう。確かにやり始めた人は偉いが、周りで寄ってたかっていじる人たちの存在も必要というのは間違いがないことだ。

そもそもプログラミングというものが既存のソースを自分のいいように改造するというスタンスがわりと一般的だと思うので、作っていく過程がそういう改造的なものになっていくってのは必然なのかもしれない。ただLinuxのようなデカいプロジェクトで烏合の衆がうまくまとまっていくのは、論理的な論議が不可欠なんだろうなと思う。


なんにしても切り目をつけて色々しっかりしたい。結果が出ても出なくてもやってみるというのがスタートラインだって今更思った。40過ぎたおじさんの言葉じゃないけど、やりたいことをやるということを改めて実行していきたい。

コメント(0) 
共通テーマ:パソコン・インターネット

Twitterまとめ投稿 2019/10/13 [Twitter]


コメント(0)