SSブログ

あんまり有用な情報が書けてない。 [web]

このブログは開発をやっていた頃はそこそこ技術情報を出していたんだけど、最近はめっきり開発をすることも減って書くこともスカスカになっています。それと自分から情報を出すよりも、ググって調べた方がためになることが多いし面倒なので自力で解決しなかったりします。ググっても出てこない情報とかを書いたりもするけれども、マイナーなので人が来る要素にはならなかったりはします。

Rustで何かを書こうと思っていたけど、Rustが思いのほかできてなくて、時間はあるんだけど手が動かせていない状態ではあります。おじさんになっちゃったので新しい言語に手を出すのもしんどいしね。それにRust自体はコンパイラに怒られないようにコーディングするのがしんどい言語なので、まともに動くまでが結構大変だったりします。少し前に流行ったスクリプト言語のようにノリで書けません。

Rustは標準ライブラリも薄めだし、他に有名なライブラリとかも多くあるわけでもない(調べてないだけかもしれないが)ので、結構自分で書かないといけないところも多いみたい。Golangとかも標準ライブラリとかは薄めなんだけど、他の人が書いたものを簡単に取り入れることができるし、とにかくメモリのいじくり方で怒られることはそんなにない。

先にRustでLinux互換OSを書いたという人がいて、その人は日本人のようなのでちょっと驚いた。ちょっとしたサンプルでひーひー言っている自分とは雲泥の差だ。

https://seiya.me/blog

Reseaという方じゃなくて、Kerlaっていう方がLinux ABI互換OSなのね。スクラッチで書いたみたいなので、ほぼ神に近いんだけど世の中には賢くて手数が多い人もいるんだよね。深い知識も必要なんだけど、全部自分で書けるから周りのことを気にせずに自由に書けるのはストレスがないかな。




ネットは物事を解決するのにはプログラマーとして必須だけど、ただググって解決しているだけじゃ承認欲求は満たされないよね。なにかみんなの役に立ってこそのネット民的なところはあるから、少しでも有用なことを書きたいみたいな気持ちはある。以前はググっても情報が出てこねぇという状態になったときは、仕方ないから自分で深堀してみんなに伝えようという気持ちになっていたけれど、最近はそういう事も少なくなってしまった。

開発に戻ってきて、わりとつまらないjQueryの使い方とかちょっと古いことなどを調べてきたので、プログラミングスクールのサイト誘導にはウンザリ気味であった。結局、社内システムなどになるとフルスタックエンジニアを求められるので、細かいことまで覚えていられないというか、そもそもPHP、SQL、JavaScript、HTML、CSSと全部覚えていられっかって話ですよね。なのでその都度調べるわけですが、システムが建て増しになっているので、後からメンテする人はしんどいと思います。使っているライブラリは古くなるしね。

そんなわけですが、新規にスクラッチするシステムは少なくなっていて、パッケージをカスタマイズかける程度になってしまっているところはあるんですよね。なので家で自分でやらないとプログラマとしての勘は鈍りまくりなのです。




Linuxの操作を覚えるときには、仕事を関係なしに玄箱にLinuxを入れて遊んでいたんだけど、一冊で操作がわかりやすく書かれた書籍がなかった。Googleが流行り出した頃だと思ったが、調べるにしても結構しんどい思いをして探していた。Infoseekとか良く使っていたなぁ。なので、あまりコマンドの意味が分からなくても同じような操作をすればうまくいくだろうという事を何度も繰り返していた。

他の人にその時の苦労をさせないために、何かを書いてもいいと思ったりするのだが、結局その時に対応する操作しかできないから、潰しのきく知識を与えにくいというのはある。Linuxを使うのにも、UNIX系の基礎的なものと、そのアプリケーションにまつわる知識があったりで、それをどちらに属するのかわかるように説明するのもしんどいのもある。もしそれができたら、少々操作が変わってもできるし、前と違った操作を指示されても同じ事をしているのだなとわかる。

例えば、ファイルのパーミッションの操作とかがあるけど、そのコマンドの操作方法と、実際にアプリケーションで必要となる場面がどういう意味があるのかを説明するのは難しい。詳しく説明してもいいんだけど、結局その場での状況が変わっていくから、固定したシチュエーションで画一化された操作という場面を作りにくい。

なので、Busyboxに入っているような一般的なコマンドをそれぞれ覚えて、それを実際の場面で適用するという段階を踏まないといけない。なのでLinuxなどは初めの入り方がしんどいのだ。それと操作は分かっているけど、実際に何が起こっているのか分かりにくいというのもあるだろう。全てわかる必要はないし、実際自分もまだ分かっていないことも多いわけだが、そこは押さえておくべきだろうという点はある。




Linuxを使いたいのだが、何をやっていいのかわからないという人は多いみたい。根気よくやれれば、それなりに分かるようになるのだが、なるべく最短で学びたいと思うじゃん。その土台を作るのがそこそこ面倒なんだよね。今では依存性をひっくるめてaptやdnfでアプリケーションを入れられるけど、依存性のあるソースをコンパイルするとなると結構しんどいと思うんだよね。ソフトウェアリポジトリで、ライブラリパッケージを簡単に入れられるけど、それがどのパッケージに対応するのか./configureの出力でわかるようになるまでは、少し経験が必要だろうし。

ただそこまでできなくても良いようにはなってきてはいるんだけどね。ディストリビューションの至れり尽くせり感は正直感謝しかない。それに昨今の仮想化の便利さはそれに輪をかけている。それとC言語に角に依存する世界というのはもう少しで終わる気もしている。C言語は自由度が高すぎて、抜き身の刃物を使うようで、初心者どころかベテランだってセキュリティホールを作りやすい言語だしな。

おっさん(わたし)の言っている今までのことはわからないけど、Linuxはそこそこ使えているよと言うならそれはそれで幸福なことだ。ただ、そこまで至るまでにはかなり面倒な道を歩んできたはずだ。どうにか楽に使えるようになる方法がないかなぁ。というか、専門学校の新卒が学校でLinuxを使わずWindowsでWebアプリを作っていたというを聞いて、逆に使いにくいんじゃないかと思ってしまった。でも、現場で全然使えなくて本当にクソッタレだったな。その割には生意気な口を聞くし、自分を知るって事を知らなかったよな。そして、自分をへりくだる能力すらない。有り体にいってクソ。

というか、専門学校でLinuxを教えられる人間がいないんだろうな。そもそもパソコンを使うところから始めないといけないだろうから、プログラミングに至れるだけマシなのかもしれないな。というか、プログラマーの専門学校って、ちょっと前にツイッターで袋叩きにされていた未経験から学ぶプログラミングスクールと同じ程度なんだろうな。教える方のレベルが低いから、おのずと生徒のレベルも低くなる。




まぁ各論的にはググればすぐに情報が出てくる時代だから、分厚い書籍を一通りやってみて、LinuCとか勉強すればいいのかなぁ。資格とかはきっかけとしてはいいよね。会社もそれなりに評価してくれるし、資格に対してお金をもらえることも多い。

プログラミングができるようになるには、自分で切り開く能力は必要だね。そこまで苦労したくない人はプログラマには向いていない。やめた方がいいかも。だけど、面白い世界だとは思うので、興味がある人は少しでも苦労してみる事をお勧めする。


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

コメント 0