2021-04-02 17:56

ゼロからプログラミングを勉強する時に一番最初に手をつけるべき言語は?

このPodcaseも早いもので#20まで来ました。

この話題も結構いろんなところで話されているテーマかもしれませんが、プログラミング初心者にとって一番入門しやすい言語について話してみました。

--- 

Peingで質問できるようになったので、質問がある方は送っていただけるとすごーく喜びます。

https://peing.net/ja/9045551273053f#question-form

See Privacy Policy at https://art19.com/privacy and California Privacy Notice at https://art19.com/privacy#do-not-sell-my-info.

00:02
はい、みなさんこんにちは。TRY-CATCH FM第20回始めていきます。お願いします。
お願いします。
はい、MIYACHINさん、最近Twitterの超一部界隈で話題のウッダボットなのをご存知でしょうか。
何ですか、それは。
ウッダボットというのはですね、京都ユニバーシティが、兄弟がね、開発した仏教対話AIです。
何が出るんですか。
ウッダで悩みを解決っていう感じで、伝統値として人工知能の融合を止めるってやってるらしいんですけど、
流れとして、どんなモデル、どんな形で形作られてるかというと、
専門家とかが仏教の経典の学習データとか一緒にエンジニアとかと一緒に作って、
機械学習っていろいろ学習させて、ちょっともっとよろしく、
一般ユーザーに対して仏教に関する助言とかをね、やっていくわけですね。
ユーザーからはフィードバックとか、感想を取ってられて、
つまり一応、現代の人たちに仏教的な説法なり助言なりをしたら、
フィードバックが返ってくるという環境が得られるので、
それで、そのフィードバックを見て、また機械も学習するし、
専門家たちも、それで現代的にはこういう有用性が仏教的観点に、
宗教性にはあるよねとか、仏教の経典そのものの、
経典の解釈ってやっぱり各宗教さ、いろいろと諸説あったりするわけだから、
そういうものを再開社に役立てたいな、というような研究の全体イメージがあるらしいです。
京都ユニバーシティの公式ホームページにちゃんと書いてあるのでね、気になる方は。
それもそういう学者が作ってるってこと?
学者と一緒にやってるってことだよね。
なるほどね。それもウェブで公開されてるのかな?
えっとね、これはただ3月12日かの国際シンポジウムで公表されたものなので、
パッとアクセスできるのかっていうのは、ちょっとまだなんじゃないかなって感じです。
ただちょっとね、やっぱりメジャーな宗教で、しかも助言とかをするものだから、
なんか間違った方向に導かないようにとか、いろいろ注意が必要らしくて。
なるほどね。
多分ね、ちょっと慎重にやっていくらしいんだけど、とはいえ多分そのうちちゃんと出てくるんじゃないかなっていう。
AIブッダが暴走するとまずいってことですよね。
暴走してやばいことを言うとさ、やっぱその仏教関係者からも怒られちゃうし、
何を信じた人もちょっと悲しいことになっちゃうので。
ブッダの名を勘してるからにはね、ちゃんとして助言をしないといけないってことよね。
03:04
そうなんですよ。
ちなみにね、これ結構なんかいろいろと、だいぶ前から話題になってるけど、
GoogleのBERTっていう、
原稿のやつ?
そうそう。
あれを応用してるとか、
日本のいろんな意味で有名なムーンショット型の研究開発事業にこれで使ったものを、
なんかいろいろ技術、応用技術として応用しようとか、いろんな動きがあるそうで、
なかなかホットな内容を払ったものになってますね。
さすが京都大学です。
伝統値とか宗教とかと人工知能の融合っていうのが結構どんどんなされていくのかなっていうところがあって。
面白いね、それは。
そういうのがね、最近これまでもそれに若干近い内容として、
古文の総書を読み取るAIとかいろいろ出てたと。
だんだんこれでいろんなものをね、昔からあるものを読み取ったり、
なんか今に活かしたり、逆に今からフィードバックされたもので解釈をアップデートしたりとか、
っていうのができて楽しいんじゃないかなっていうお話と、
これは割と、
打足というほどでもない小話なんだけど、
星新一っていうSF作家をご存知の方結構いるかと思うけど、
知ってる?
俺初めて聞いたぞ。
いろんなの書いてるんだけど、有名なジャンルでショートショートっていう、
最短1ページ以内みたいなめっちゃ短いSFみたいなのがあったりするんだよ。
そういう分野の第一人者みたいな人だった人で、
星新一って人がいるんだけど、その人が書いたショートショートの中で、
神っていうショートショートがあって、僕子供の頃読んで面白いなと思ったんだけど、
AIに、コンピューターにめちゃめちゃ世界中のあらゆる宗教の神に関する情報を流し込んだら、
もはや神と呼べるものができるんじゃないかみたいなことを試して、
とんでもないことが起こるよみたいなショートショートなので、
ぜひちょっとこれを見て思い、
僕は思い出したし、実際Twitterにも他に思い出した人がいたので、
合わせて気になる人はそういうAIに関するとか、
AIと宗教に関するSFとかも読んでみると面白いかもしれないですね。
なるほど。
それは探してみよう、まず。
京都のBuddhaBotに関しては。
公開されたら使ってみよう。
BuddhaBotってググると、まず京都大学の講師ホームページが出てくるので、
読んでみるといいんじゃないですかね。PDFで4枚ぐらいで概要が書いてある。
じゃあ今日の本題に移りますか。
06:02
本題が、これ結構いろんなところで会話されているような話題かもしれないけど、
学生とか、これからエンジニアに転職したいですみたいな人が、
プログラミングを勉強し始めるときに何がいいですかっていうテーマで話していこうかなと思って。
永遠のテーマですね。
あと時代によって変わるっていうのはもちろんあると思うけどね。
そう、それはかなりあると。新しいのが出てくるからね。
どうかね、これどういうふうに話していく?
どういうふうに話していくかだよね。
自分としてはこう、こういう人はこう、こういう人はこう、みたいなものがあったりはするけどね。
多分そうだと思う。何をしたいかによって違うかな。
ちなみにひろゆきのYouTubeチャンネルを一時期ちょっと見てたけど、
そこではHTMLを読んでください。
なるほどね。
署名を指定してね、これを読んでください。で、やってみてください。
なんだろうね、HTMLって言ってるのは、何だろう、そこで形あることができるっていうところなのかな、やっぱり。
そこが、例えば僕のこれから始めたらいいんじゃない?みたいなのを言ってしまうと、
あんまりやりたいものが、ちょっとした表示とかをしたいわけじゃないんだよね。
ちょっとした計算をしたいわけじゃないんだよねって人。
で、なんとなくプログラミングってすごくやってみたいみたいな人は、それこそフロントエンドがいいと思うんですよ。
まあね。
なぜかっていうと目に見えるから。
そうなんだよね。
しかも開発環境とかもまあまあ作りやすいのかな、多分バックエンドのJavaとかKodalinとかGoとかに比べると。
そうだね。
JavaScriptってブラウザで動くしね。
ブラウザでポンって開いたらできるし、メモ帳とか書けないんじゃないし、いいぐらい。
そうそう。
普通の処理を書いてるとさ、バックエンドも書けるような言語で、1、2行足してってもさ、何も起こらんわけですよ。
値が2倍になるとかさ、リプの内容が全て合計されるとか、せいぜいその程度のことしか起こらんのだけど、
HTMLって1行足してそこにタグを足すと明確に物体が1個増えるんですよ。
初心者は特に子供とかね、絶対そういうのがいいと思う。
つまり、まず向き不向きで分けるとしたら、Hello Worldって表示して楽しくない人はレシーティングをやろうやったらいいと思います。
09:02
だいたいそういう人だと思うけどね、やっぱり。
まあね。でもなんかさ、プリントをハローワールドって言って、
ハローワールドって出た、すげえプログラム、なんか自分がやったプログラムが動いたら楽しいっていう人は、
ガンガンそのバックエンドの演講をやればいいと思うんですよ、僕としては。
そうね。
で、なんかそれで最初に始めるっていうところで言うと、なんか厳密なところからやった方がいいって人と、楽なところからやった方がいいって人といると思うんだけど、
僕はよっぽどアカデミックで元々結構厳密にやれるって人以外は、もう高級言語からやったら。
まあ、いわゆる不合プログラムですよね。
うまそくポイントが少ない。
うんうん。
なので、何がいいかって言うと分かんないけど、Pythonとか日本語の記事がめちゃめちゃ多いって言うで、やったらいいかもしれないです。
ただ、バージョン違いでいろいろ面倒なのが起きるので、環境構築は楽そうなものを選んでくださいって言う。
うん。具体的な言語で言うとどういうところになるのかな。
そうなんだろうね。どうなんだろう。なんか動かすだけだったら、Pythonとか語言語でも結構楽い。
あ、楽なんだ。俺書いたことないな。
本当にあれなんか、バージョンがいろんな環境で共存しちゃってどうこうとか、ライブラリーのバージョン管理がどうこうみたいなものが、初心者がやる範囲で面倒なことになることは多分ないし、
割とPythonとCの間ぐらい、C++の間ぐらいの書きやすさはあると思うので、ちゃんと型はあるんだけど、C++とかJavaを初心者が初めて見たときほどの面倒くささはない。
なるほどね。
っていう意味で、プログラミングする中身を楽しむ。定格性とかそういうところじゃなくて、中身を楽しむっていう意味では、そういうちょっと高級気味な言語をした方がいいと思ってる。
なるほどね。
っていうのがありますね。あとは、やりたいことが明確にある人っていうのがまた一つ枠があると思って。
うんうん。
今のはやりたいことがなくて、Hello World楽しめる人楽しめない人に分けてたんだけど、やりたいことがある人っていう意味では、それがライブラリーとか調べたとき、自分ができる日本語英語とかいう意味での言語の調べやすさで見ていい。
だから、Rのライブラリーに自分にフィットするものが多い。グラフ描画とか、いろんな1個の研究とか1個の調べ物に対して1パケットで1個1個を描画しながらカタカタやりたいっていうのだったらRがいいし、
大学生のこういうライブラリーが多くて、これやりたいことがマッチするからPythonだしとかっていうのもあると思うんで、それはやりたいライブラリーが充実してる、もしくは調べる環境が充実してるものを選べばいいと思うんで。
12:05
うんうん。
それはやりたい内容とプログラミング言語ってググって、そっか、わかりますって感じです。
結局ググる。
だって、結局ある程度絞られ、どの言語でもできちゃうんだよ。
NP完全動向の話が始まる、全ての処理ができますかみたいな話が始まるんだけど、結局初心者が始めるっていう意味では、始めやすい、調べやすい、描きやすいだと思う。
そうね。
だから結局ライブラリー充実してます、調べやすいですって決めていいと思うっていう、どれって言えないけど、基準としてこれで選んでいいと思うよっていうのが僕の中でも今あるけど。
これはどうかな。
まあ多分やりたいことがあるんだったら、それに合った言語があるんで、それやってくださいって答えになっちゃうけど、どの領域を攻めたらいいんですかっていうところで言うと、フロントエンドなかなかいいかなと思うんだよね。
ね。
なんでJavaScriptから始めてくださいっていうのが回答になるのかなと思って、なんでフロントエンドかっていうと、これもねちょっとメリットデメリットあるんだけど、フロントエンドって他の領域と比べてやっぱ移り変わりが激しいっていうのがあって、だから参入しやすい。
後から入ったとしても。
新しいものに移り変わってるかな。
で、あとまあそういう情報系の大学、学部を卒業した人って、フロントエンドってそんなに学んでないという、最低限しか学んでないはずだと思ってるのよ。
バックエンドが多いね、やっぱり。
バックエンド多いでしょ。
アルゴリズムとかさ、そっちとか学ぶと思うけど、なんかさ、Vue.jsとか絶対趣味じゃない限りでやってないはず。
やんないっすね、マジで。
一旦先でやりましたとかの人ばっかり。
そうそうそう。だから、その情報系の人たちがいる中で戦うっていうんであれば、やっぱりフロントエンド狙っていくっていうのが合理的なのかなっていう気はしてると。
そうだね、そっからなんかデザイン方向になんか寄っていくとか、いろいろと情報系に特化しない広がりができるから、
情報系に特化したいってわけじゃない人は、よりフロント行きたいよねっていう感じで。
しかも、実際にユーザーが使うものを目に見えるものだから、その楽しみもあるし、取っ付きやすいと思うよね、シンプルに。
そうだね。
15:02
あとあれですかね。
あと一つ、未経験からっていうので、多分そこから何かにつなげたいと思うんですよ。
はいはい。
多くが転職とか、つなげたいとなった時に、これできますっていうのをフロントエンド、作ったものを見せやすいんだよね。
ポートフォリオとしてね。
そうそう。こんなウェブサービス作りました、こんなアプリ作りました、こんなサイト作りましたとか、こんなページデザインできますが見せやすいんだけど、未経験バックエンドエンジニア、マジ見せるもん難しいからね。
確かに。
何見せたらいいか分かんないもん、多分。
いい意味ではオススメですね。
そういうことで、ヒロイチさんのおっしゃっている、HTMLっていうのは穴がち間違いでもないのかなっていう。
HTML学んでCSS学んで、ある程度画面が作れるようになったら、そのJavaScript、そのPureなJavaScriptだったり、Vue.jsだったり、Reactとかを使って、
もうちょっとリッチな画面にしていくっていう流れで学んでいくと、面白いんじゃないかと思います。
そうだよね。そこからそれで作ってみたら、じゃあこれでバックエンドの処理、これが必要になるよねって言ってバックエンドにも興味持つと思うんで。
確かに確かに。
入り口としてはそっちがいいよなって感じですね。
今日はそんな感じで、プログラミング言語何から始めるかみたいな話題で話してみました。
あとね、ちなみにコースターに言ってなかったけど、一応このポッドキャスターの質問箱みたいなのを用意したんですよ。
前言ってたやつ。
何だっけ、ちょっと読み方わかんない。pingっていうサービス。
匿名で質問できる。
見たことある。
Twitterとかでよくある。
ボールマークだよね。
そうそう。あれの一応箱だけ作って、ポッドキャストの概要欄、URLだけ貼ってるんで。
今調べたらpingだそうです。
pingね。そのままなのか。
それちょっとURLで貼ってるんで、もし質問したいことがあったらコメントとかいただけると僕たちは非常に喜ぶので。
そうですね。テーマもまだストックあるんだけど、尽きると悲しいことになるので、やってほしいテーマとかあったら全然お聞きください。
いいですね。
今日はそんな感じで終わりますか。
はい。
ありがとうございました。
ありがとうございました。またね。
またね。
17:56

コメント

スクロール