見出し画像

駆け出しプログラマ時代に影響を受けた本3冊

プログラミングを本格的に学び始めたころに影響を受けた書籍を3冊紹介します。

音声配信の中で紹介している書籍へのリンクを貼っておきますね。

***

以下はおまけですが、音声から文字起こししたテキストです。

***

00:00
はい、どうも中村心です。今日はですね。僕があのプログラミングを結構自発的にあの勉強をし始める。自分のこう手に職をつけるじゃないですけど、そういう感じでちょっとこれ。プログラミング本格的になんか学んで自分の仕事にしていこうと。
00:22
いう段階という段階で結構影響を受けた。この本はマジで、なんか自分の血肉になってるなというかしにくいなってるやつもあるし、それからなんかこの本があったおかげでやる気になったなみたいなやつが 3 冊ぐらいちょっとあるので、それをね紹介していこうかなと思います。
00:45
はい、 1 冊目はですね。あの初めてのPerlっていうオライリーオライリージャパンが出してる本なんですけど、初めてのPerlっていう言語がもう結構今となってはマイナーな言語に入ってしまうのかなと思うんですけど、これはですね。
01:04
僕何年ぐらいだろうな。まあでも 2000 年代は入ってましたね。 2000 何年だと思います。 2005 年 6 年 7 年そのぐらいだと思うんだけど。そうえーとね。当時ですね。僕は Windows の中で動く言語しか知らなかったんですよ。
01:24
そう、 Microsoft の開発者言語ですね。これ会社勤めでサラリーマンややってる中で覚えた言語で Visual Basic 系のやつですね。そうでなんかその会社何年かして辞めてでいろいろこう転職もしつつ、自分がこう。
01:43
フリーランスというか、独立して働いていけないかな。みたいなこともサラリーマンもやりながらもちょっと考え始めるような感じになってきた時に、その Windows の世界だけ。だとちょっと狭い感じがしたんですよね。
02:00
まああのそれでもね。別に十分ね。仕事がいっぱいあるんですよ。なんだけど、ちょっと Windows 以外の Windows 外の世界も知りたいと。ということで、たまたまその時僕が個人的に使っていたパソコンが MacBook Apple のコンピューターだったので。
02:22
その中でその当時はあんまりよくわかってなかったけど、今だから振り返ってこういう風に説明できるんだけれども、その UNIX 系ですね。ユニックス Linux も似たようなもんなんでユニックス Linux で使うようなプログラミング言語とかコマンドとかはい。
02:43
こういうやつがマックだとそのまますっと使えるわけですよね。うんでこれっていわゆるオープンソース系なんですよ。そう、マイクロソフトがリリースしてる言語っていうのはオープンソースのものも今全部増えてきましたけど、当時はね。
03:02
やっぱりね。あのライセンス買ったりとか。それからその Windows の中でしか動かないみたいな言語が多かったんで、ちょっとやっぱり文化的に違うんですよね。そうでオープンソース系の言語っていうのを当時は意識してなかったけど、なんかマックで仕事ができるのに一つプログラミング言語を覚えてみたいなみたいな。
03:25
ことを考えてどこでPerlに行き着いたかちょっと覚えてないけど。でも多分本屋さんだと思うんだよね。本屋さんでいろいろ立ち読みしてて、おらいりとかの方がずらっと並んでるとこに行ってその中でこれ行けそうかなって思って、手にとって実際にやってみたのが初めてのPerlっていう書籍があるんですよ。
03:50
結構有名な書籍でPerlっていう言語を学び始めるのに、もうあのバッチリ最適の本なんですけど、僕のそのねPerl勉強した。当時は第 3 版とかだった気がするんだよね。さっきちょっと Amazon でチラッと見たらもう第 6 版まで来てますね。
04:08
今でもPerl自体はですね。まあ、えっと昔よりは下火になってますけど、人気的なものはだけど、結構 UNIX 系リラックス系のコンピューターてどのコンピューターでも基本的にPerl入ってるから最初からPerlでガッツリシステム組んだりはもうしないけど、僕も僕自身もそうなんだけど、Perl覚えておくとね。
04:30
色んなとこで便利に使えるんですよね。だからこれあのそのPerlを勉強した当時はやっぱりそのオープンソース系で初めてあなんかこれできるぞって思ったゲームだったから実際に仕事でも使ってました。そのフリーで受けた仕事とかで全然使ってましたね。
04:48
うんなんかPerlやってよかったなと思ってます。はい、もう 2 冊ちょっと紹介します。次 2 冊目がですね。小説聖域表現かな? 正規表現ってレギュラーエクスプレッションですね。はい、うん、これ結構分厚い本なんですけど。パールカーの流れです。
05:12
Perlを勉強してたらPerlの言語っていうのは結構正規表現を使った文字列検索、マッチングみたいなものとすごく相性。相性がいいものにもなんかもう分け隔てがないぐらい言語の一部ぎゅっとなってんですよね。
05:28
だから、正規表現についての知識が深ければ、深いほどPerlの威力をですね。引き出せるわけですよ。そのことはPerlをやってもうすぐ気づいたというか。そうで正規表現ってそれまでやっぱこれもね自覚なく一部使ってたなと思って。
07:07
理屈は一緒です。メタ文字って言うんだけど、正規表現の言い方でそういうなんか、あの具体的に文章のどっかの一部みたいな感じで書いてある具体的な文字じゃなくて、何らかそこに別のものが当てはまるけど。
07:21
でもその当てはまるっていうこと。何かが当てはまるということを意味的に表現する文字。これをメタ文字って言うんですね。うんだからメタ文字を使うってことは SQL とか、あとはその何だろう? パソコンの中でもなんかファイルを検索するときにアスタリスク使ったりしますよね。
07:40
うん、そこもあれだよね。その日付、ファイル名に日付が入っているものを絞り込む時に 2024 年っていうのが頭にきて。でもその後の日付はちょっと任意みたいな。ケースバイケースみたいな時に 20、24 っていう。
07:57
文字の後ろにこう。アスタリスクとかをつけると、 2024 年はマッチする。マッチするっていうやつが加わっと集まってくるみたいな。分析表現の一部ですね。はいで、なんかそのプログラミング、言語Perl筆頭にですね。そのプログラミング言語の中に正規表現がまあ、もう最初から組み込まれてるパールみたいな言語もあるし、あと僕がですね。
08:22
結構今仕事でメインに使っている。 Python とか Go とか。この辺は標準モジュールの中にあるんですよね。そう、あのPerlはね。本当にね。あのコードの先頭の方で正規表現使えます。よっていちいち宣言をしなくてもいきなり書けるんですよ。
08:41
Perlはそうなんだけど、そこそこまで言語にぐわっとこうくっついてはない。けれども、 Python とか GO とかは正規表現あのこのプログラムの中で使うよっていう最初に一言宣言しておけば、あの使えるっていうような感じのやつを今は使ってるんだけど、そういう風に言語ごとに正規表現に対してのスタンスみたいなも違うんですよね。
09:07
なんだけど、だいたいどの言語プログラミング言語でもその正規表現の中の書き方。ですね。かけ方のセオリールールみたいなものはほぼほぼ共通です。ちょっと癖が方言があるみたいなのは多少あるけど。でもそれってすごく特殊なケースでなんかそのよく使う真ん中のところは全部だいたい共通なんですよ。
09:30
で、こういう今喋ってるようなことも、その小説正規表現という結構分厚い本なんだけども、これを読んだのがね。あのやっぱ自分の中で知識とか経験のベースになってますね。この本がまさしく正規表現とはなんぞやっていう理屈の部分から説明始まってで正規表現のそのスタンダードな書き方使い方みたいなものを説明しつつ。
09:54
まあこの本もね。結構ちょっと古めの本だから今流行りの言語ってわけじゃないんだけど、Perlとか PHP とか Java JavaScript。あと C # かなんかあったと思うけど、 C ++ かな。なんかあのそういういわゆるこうシステム屋さんがよく使う。
10:13
プログラミング言語だと。こんな書き方します。Rubyとかも話したかな? こんな書き方しますよ。みたいなので多少この辺このゲームは癖ありますね。みたいなそういうめちゃくちゃマニアックなことがずっと続く本なんですけど、までもね。
10:28
最初は面食らったけど、僕もでも途中から楽しくなってくるっていうか覚えれば覚えるほど正規表現ってすごく便利なんですよね。あのめちゃくちゃ仕事で使えるので、この本は本当にあの読んで読み切ってみて感想してみて良かったなっていう風に思ってる本の一つです。
10:48
はいで、最後 3 冊目なんですけど、これね? On Lispっていうポールグレアムっていう方が書いてる本なんですけど、Lispという言語これ聞いたことねえ。よっていう人も結構多いと思うんだけど。
11:03
僕もね。Lispはめっちゃ勉強しました。なんですけどもえっと仕事でそんなにガッツリ使ってるか? ちょっと別にそんなことはないんだな。なんだけど、本当にLispっていう言語はあの勉強してめっちゃ良かったなって思ってる言語の一つです。
11:18
うん、普段僕が普段使ってる Python とか Go とかさっき話してたPerlとかね。それ以外にも JavaScript とかルピーとかルビーとかいろんな言語時々触ったり書かなくても読んだりすることが多いんですけど、その時にこういう今今バラッと名前を出したような言語って結構その高度実際書いてみるとわかるんですけど、オブジェクト指向とか、あとはまあ書き方的にやっぱこう C 言語が祖先にあるんだな。
11:50
みたいな感じの書き方をベースになってるんですよ。で、これに対してLispってなんか見た目から全然違うね。見た目から全然違うし、なんかプログラムっていうもののに対する思考法。
12:07
発想法哲学みたいのがなんか別世界の言語なんだよ。で実際そんなに流行ってないの? マイナーな言語なのなんだけど、こういうね。今メジャーでみんなが使ってる言語にめちゃくちゃ影響を与えてるんですよね。
12:22
だから現プログラミング言語を作ってるような人たちの哲学にものすごく影響を与えてる言語だからだからあのね。あの本当例えばさ普通にこう自然言語で。あの、英語を学ぼうと思った時に英語だけを学ぼうと思ってもなかなか知識って深まらなくてプラスその英語とちょっと性質の違う。
12:48
外国語、例えばフランス語とかだったらあれってあのロマンス語の方に入るかラテン語系に入るのでそう。ちょっとあの似てるところもあるんだけど、なんか根本結構違うみたいなとこあったりするじゃないですか。
13:01
だからそういう風にちょっと遠回りするような感じだけれども、性質の違う。別の言語も一緒に勉強してみると、いろいろこう共通点があったりなかったりするところがある。意味こう。理解を深めるのに、なんか役立ってより知識が豊かになるみたいなところであると思うんですよ。
13:20
こういう感じですね。Lispを勉強する教養的な意味としてはであと普通にね。なんかプログラム作ってて、あの声ディスプレイだなっていうのを見つけるのに楽しいんですよね。そう、そういうところあるんですけど、このねLispっていう言語を知ったきっかけがOn Lispっていうこのポールグレアムさんの本です。って、今日最初に話した初めてのPerlとかっていうのは本当に。
13:48
なんかPerl全然知らない。オープンソースの言語全然知らないっていう初心者の当時の僕がですね。あの、最初に手に取った本として、すごくラッキーいい本だったなと思うんですよね。うん、なんか変に小難しいやつ、買わなくてよかったなと思うんですよ。
14:02
対してですね。このね、On Lispはですね。めちゃくちゃ難しいんですよね。もう面食らぐらい難しいんですよ。何言ってるか全然わかんない。宇宙語なんですよね。ここが逆に僕は良かったんですよ。先にPerlとか Python も先に出したかな?
14:21
なんかその辺 javascript とかやっててでなんか プログラマーとしてもうちょっと幅広げたいみたいな時にOn Lispにたまたま書店で。見つけてパラパラとめくってみてなんじゃこりゃと思って全然わからんぞと思ってですね。
14:37
そう、そっからですね。なんかある意味ちょっと悔しくてわかんないっていうのが。それでLispの他のもうちょっとこう。分かりやすい本買って読んでみたりとか色々してそう。オラリーにもね。あのLand of Lispっていう別の方が書いてる本があったりしますけど、ああいうの読んでみたりとかね。
14:58
それからマックをね。やっぱり使っていたので、そのマックの中にLispって元々入ってないからうん。なんかそのネットから公式サイトみたいなところからソース引っ張ってきてビルドしてみたりとか色々してそういうのでもね。
15:15
結構経験値進めたなと思うし、いろいろ本当にLispはね。あの仕事で直接扱ってないけど、マジで勉強しようよかったなと思うし、なんかプログラマーとしての何か技術考え方の幅がめっちゃ広がったなと思うから、本当になんか僕がもうなんだかんだ。
15:31
プログラマーっていう肩書きというのはいつからだあ。でもなんかね。 20 年近くなんですよ。なんだかんだ言って 20 年中の後半ですね。前半。の方はやっぱり Windows しか知らないっていうところからPerlみたいなものを勉強してみてちょっとこう。
15:48
あのオープンソースも知ってみる。みたいなことが前半の方で後半のなんか自分が本当の意味でこうえっとフリーランスになったのもね。ここ充電ぐらいっていうのもあるんだけど、そう。フリーランスでなんかやっぱりマイペースにできる反面、一人で仕事しなきゃいけないじゃないですか?
16:04
僕はそういう立場なんですけど、そういう時にやっぱりこう。プログラミングどうせするの?ってやっぱ楽しくやりたい。なんかやってて身になってるな。とか充実してるなって思いながらやっぱり仕事ってしたいので、なんかそういう部分でやっぱなんか教養としていろいろ勉強してめっちゃ大事だなってあの思うんですよ。
16:22
その中でLisp勉強したのは本当に良かったなっていう風に思ったりしてますね。はい、今日はこんな感じで、ちょっと本を 3 冊ぐらい紹介してみました。もしね。あの興味が湧いたら、あの読んでみていただけるといいと思います。
16:37
ちょっと 3 冊もね。今めっちゃ流行ってるナウなトレンドなあの? 分野かっていうと 3 冊ともね。そういう感じじゃないんだけれども、でもね。自分のプログラマー人生振り返るとこの 3 冊は本当になくちゃならなかった。
16:52
本だなと思いますので、ちょっと今日はそんな話をねえっとしていました。はい、今日この辺で失礼します。ではまた。バイバイ


この記事が気に入ったらサポートをしてみませんか?