パッケージ管理システム yum yum

 今まで何となくで使っていたパッケージ管理システムについて、勉強し直したので覚書です。  

パッケージ管理システムとは、OSというひとつの環境で、各種のソフトウェアの導入と削除、そしてソフトウェア同士やライブラリとの依存関係を管理するシステムである。
パッケージ管理システム - Wikipedia

 Windowsではこの手のパッケージ管理システムは無かったように思えるが気のせいでしょうか?  例えばJava.NET Framework上で動いているアプリケーションは多々ありますが、(少なくとも私は)全てを別個で導入していました。

 こういったケースでパッケージ管理システムを用いれば、アプリケーションのインストール時に必要となるフレームワークやライブラリ(=パッケージ)を同時に導入してくれ、かつ依存関係まで調べてくれるという便利なものなのでしょう。

 それぞれのディストリビューションによりパッケージ管理システムは異なっており、コマンドも異なっています。今回触ることになったDebianではaptというコマンドを使いますが、今まで使っていたCentOSではyumを使っていましたし、Macではhomebrewを使ったことがあります。  語感的にはyumが馴染みやすく、意味合いではhomebrewが好みです。aptはなんだか味気無いですね。

 それにしてもこれだけ便利なものが、何故Windowsでは使われないんでしょう?

 

「本当は怖くない」”黒い画面”入門を読みました。

Webデザイナーの為の「本当は怖くない」”黒い画面”入門 を読みました。

こちらのブログを開設する前の段階でコマンドの基礎的な部分は既に経験済みなため、既知の内容がほとんどであろうと高を括っていましたが、知らないことは数え切れないくらいありました。

初歩的なことが欠けている

 普段、何の気なしに打ち込んでいたcdやlsといったコマンド、あれらは全て個別のプログラム(バイナリーファイル)を走らせていたんですね。

 あとはPATHを通すという行為。何がきっかけだったのかは定かではありませんが、プログラミングに触れる前からPATHを通すという行為は行ったことがあります。この作業が何のために必要なのかは全く分からず、マニュアルに記載された手順通りに行ったというのが真実ですが、ようやくその理由の一端が分かりました。

 相対パスの指定に関しても、初めて知ったことがありました。一つ上のディレクトリに移動したい場合に入力するコマンドが

$cd ..

なのは知っていましたが、二つ上のディレクトリに移動したい場合は

$cd ../..

のようにまとめて指定が出来たんですね。毎回、複数回に分けて指定してました。

XcodeとHomebrewの導入

 ここらへんはRuby on Rails Tutorialの開発環境を整えるタイミングで導入済みのため、あまり真新しいことはありませんでした。

SHを用いた作業の自動化

 機会があったら使ってみようと思います。

 

Railsの勉強を始めるまでにこなしたこと。

 様々な理由があり、プログラミングの勉強を始めるに至りました。

 なぜプログラミングの勉強を始めようと思ったか、なぜRubyを選んだのか。

 この理由は追々話していきたいと思いますが、Railsの勉強を始めるにあたって辿ってきた道のりを列挙していくことから初めましょう。

  1. Progateでインタラクティブにプログラミングを学習する
     知り合いの現役プログラマーにオススメされたサービスであるProgateを利用し、HTML, CSS, JavaScript, Rubyを学びました。
     過去に一度プログラミングを学ぼうと思った際には存在しなかったウェブサービスで、取っ掛かりとしては最適でした。
     特に環境構築をする必要が無く、ブラウザ一つで勉強を始めることが出来るのは入門者にフレンドリーです。

  2. ドットインストールで理解を深める
     Progateはインタラクティブにプログラミングに触れることが出来るよいサービスですが、小回りがきかないイメージがあります。言うまでもなくプログラムは文法上の問題点が無ければ動くわけですが、それで中身が理解出来るわけではありません。その点を補強するためにドットインストールを並行的に利用すると、理解が容易になると感じました。

  3. ConoHaでVPSサーバーを構築する
     これは正直、全く気乗りしませんでした。そもそもサーバーサイド言語を勉強する上でLinuxに触れる必要があるということを全く理解していなかったため、この行為そのものが完全な遠回りだと思っていたのです。
     ところがどっこい、今になって思い返してみればこれは非常に役に立っています。サーバーを操作する上で必須であるLinuxのコマンド操作や、ローカルマシンからサーバーに接続するためのSSH接続の方法など、将来的に絶対に避けて通ることの出来ないことを、この段階で触れることが出来たのはプラスに働いています。

  4. Ruby on Rails Tutorialを始める
     ここから先はタイトルと内容が異なるため割愛。

 といった感じで、現在に至るわけです。しかし、ここまで学んできたことはまだまだ序の口なのは言うまでもないことです。ウェブサービスを構成する要素はとてつもなく複雑で、その全てを一通り触るくらいのことが、RoR Tutorialでは求められているようでした。

 上手くモチベーションを維持し、知識を身に着けていきたいと思います。