AVAVAVAVA
@AVAVAVAVA

Are you sure you want to delete the question?

If your question is resolved, you may close it.

Leaving a resolved question undeleted may help others!

We hope you find it useful!

わからないことがあったときの対処法

解決したいこと

例として今、dockerを使用してubuntuにphpを入れてmsmtpをインストールしてメールを送受信できるシステムを作っています。
教材となるサイトを見ながら進めているのですがわからないことを調べていても教材に書いてある回答のような記述を一向に見つけられず訳がわからなくなっています。

発生している問題

教材として使っているサイトのこのページ
https://zenn.dev/suzuki_hoge/books/2022-03-docker-practice-8ae36c33424b59/viewer/3-2-image
を見ているのですがなぜmail.iniをphpのconf.dディレクトリに保存しているのか、どこら辺でmsmtpの実態がわかって
php.iniにsendmail_path = /usr/bin/msmtp -t
と記述できたのか、調べても全然わかりません

聞きたいことのまとめ

1.調べるときのコツ
2.周りに聞ける人がいないことを前提として、「100%理解してから進む」と「一旦進めてわかるようになるまで周回する」もしくはその他の良い学習の進め方

0

3Answer

1.調べるときのコツ

検索するのであれば「php mail.ini」とか「php conf.d」とか「php msmtp settings」とか「php.ini sendmail_path」のように、言語名と色々なキーワードで探してみるといいです。

AI が使えるなら聞いてみてもいいでしょう。試しに ChatGPT 4o に聞いたら1だいたい正確な答えが返ってきました。しかしもっともらしい大嘘を平気でつくことも多々あるので、答えからキーワードを抜き出して改めて検索し、公式ドキュメントなどを探して裏を取るべきです。

PHP や Docker の公式ドキュメントは目次だけでも上から下まで眺めてみてください。調べたい概念がドキュメントのあのあたりにありそうだ・このキーワードと組み合わせれば検索で見つけやすそうだとアタリをつけられれば早く探せるようになります。

2.周りに聞ける人がいないことを前提として、「100%理解してから進む」と「一旦進めてわかるようになるまで周回する」もしくはその他の良い学習の進め方

最初のうちは1つ1つ完璧に理解しようとせずに一旦進めてみるのがいいと思います。広く浅く覚えるとそのうち点と点が繋がってきます。

たとえば今回の問題について、私は PHP を使ったことがありませんが、他のいくつかのソフトウェアでも名前に .d がつくディレクトリを見たことがあります。慣習的にそのようなディレクトリは任意のファイル名の設定ファイルを入れるもので、たいていは名前順に自動ロードされるようになっています。 PHP でもそうだろうと考えて、マニュアルで設定ファイルについて調べると、 PHP は特定のディレクトリから .ini ファイルを探して読み込むことが分かりました。

msmtp は独立したコマンドラインアプリケーションのようなので名前で探せば公式サイト にドキュメントがあるでしょうし、 sendmail_path は php.ini の設定項目なので説明はマニュアルに書いてあるはずです。

このように色々と触ってみてありがちなパターンを覚え、勘を養ってからのほうが深掘りもしやすいのではないかと思います。

  1. 「PHP でメール送信に関する環境を作っていて、設定ファイルを Dockerfile で COPY ./docker/app/mail.ini /etc/php/8.0/cli/conf.d/mail.ini のようにコピーしている例があったけど、このコピー先に置けば読み込まれるってどのように決まってるの?」と聞きました。環境や前提を明示すると精度が上がりやすいです。

1Like

例として今、dockerを使用してubuntuにphpを入れてmsmtpをインストールしてメールを送受信できるシステムを作っています。

この文章からは「Dockerを使用してubuntuマシンにPHPをインストールした」と読み取れますがおそらく違いますよね。「メール送受信システムを構築する環境をDockerで構築した。プログラミング言語はPHP。」ということですよね?
ネット検索や生成AIに質問する際のキーワードや文章が適切ではなく効果的な回答が得られていないのではないでしょうか?

また、参考書や参考サイトの説明が分からない場合は、前提条件(知識レベル)が不足している可能性もあります。意味が分からない用語が多数出てきたり説明の意味が分からないことが散見される場合には、それに挑戦するのは未だ早いのかもしれません。他に参考になるものが無いのであれば仕方ありませんが、もっと入門者向けのものを探すのも手だと思います。

0Like

教材にしているページですが、DockerのHowToであってLinuxのあれこれが書かれているわけではないようです。

調べるときのコツ

ひとつのサイト、ひとつのAIだけに頼り切らない。

情報源が正しいかどうかの判断は、あなたにしかできないので、判断に迷うときは複数のサイトで疑いが晴れるまで探せば良いです。
AIは平気で嘘をつきます。AI相手に鵜呑みにするのがいちばん良くないです。あくまで軽く参考程度で扱い、適度な距離を保つ。

「100%理解してから進む」と「一旦進めてわかるようになるまで周回する」もしくはその他の良い学習の進め方

私もそうですけど100%は理解してませんし、希に嘘書くときもあります。

というより現実的に無理なので、軽めに解ったのならそれ以上追求しすぎないことですね。
じゃないと今のように解らないことづくしで手が止まるのはこの先も同じ事になりそうです。

0Like

Your answer might help someone💌