質問するログイン新規登録

Q&A

2回答

374閲覧

未経験の凡人の場合、AI分野に特化してるPythonを学ぶべき?それとも、別言語を学ぶべきか?エンジニアとして手に職をつけたいと思ってます。

gouzou

総合スコア1

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

2クリップ

投稿2026/01/25 08:59

編集2026/01/25 09:56

0

2

Pythonは今のAIブームですごい目にしますが、結局日本で就職する際に、未経験からエンジニアを目指すなら、Python以外の方がいいのでしょうか?
AI分野のエンジニアってすごい難しいイメージがあります。
ちなみに、地頭自体ごく平均的です。
また、なりたいエンジニアの種類は特になんでもいいです。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

meg_

2026/01/25 10:33

> また、なりたいエンジニアの種類は特になんでもいいです。 特になりたいものはないけれどITエンジニアになりたいということですか?それともプログラマーになりたいというのは決まっていて言語選択に迷っているということでしょうか?
KT001

2026/01/25 14:06

単純にエンジニアになりたいなら案件が多いJava、スタートアップに需要があるTypeScript/JavaScript、Webで安定して需要があるPHP、最近人気があるPythonなど選択肢があります。 選択に悩む場合は、Javaは規模が大きいので(ベテランとのセットで)参加しやすいですが、かなり大変だと思います。入りたい会社から逆算して、決めるとかはどうでしょうか。 (AIに聞いたら、JavaかTypeScript/JavaScriptと答えそうな気はしますが)
dodox86

2026/01/26 06:42

> また、なりたいエンジニアの種類は特になんでもいいです。 ブン投げが過ぎるw(思わず笑ってしまいました)
guest

回答2

0

なりたいエンジニアの種類は特になんでもいいです

何かをするための手段/道具 を選択するという話なのに,何をするのかという目的が無いなら,判断しようがないのでは……

ジャンル次第(?)では何かしらの目に見える成果物を「ポートフォリオ(?)」とかいって見せるとかいう話もあるらしい(??)ので,そういう方向性なのであれば,そのために必要なやつを用いることになるのだと思う.
(未経験状態から何かしらまともなアピールになるレベルの物を自力で用意できる状態になるまでにどれだけの時間と労力を費やすことになるのかは不明だが.)

そういう世界の話ではないのであれば,就職に際して見られる「未経験 or NOT」というのは,「 業務/実務 の 経験」なのであって,独学で言語をちょっと触れてますみたいなことは非常に些末な事柄(どうでもいいレベルの話)でしかないんじゃないかな? とか思ったり.
業務未経験の「〇〇やれます」なんて話はどの程度なのか未知数だし,普通はほぼ期待しないんじゃないかと思う.

それでも「それ,一切知らないです」よりは「いくらか知ってます」という方が若干マシ(?)でしょ?,みたいなところを突いていきたい,ということであれば,入ろうとしている世界において普通に広く用いられている物に触れておけってことになるのでは.

投稿2026/01/26 02:11

fana

総合スコア12363

0

まず、色々とゴチャゴチャしてるみたいなんで、分けて書く。

1. AI

「AIを学びたい」って簡単に言う人が多いが(あなたがそうだ、と言ってるわけじゃない)、ぶっちゃけPythonを学ぶ = AIが学べるわけじゃない。
Pythonが外部ライブラリを利用して「表層的に」AIの機能を「まとめている」だけで、これは「ライブラリの使い方を学んでる」だけであってAIを学ぶ、ってのとは話が全然違うんだけど、その辺勘違いしている素人さんが多い。
実際のAIにまつわる計算は丸投げで、C言語ないしはFortranで計算している。つまり、実は「計算」って意味ではPythonは何もやってないんだ。そしてAIは高速な処理を必要とするが、Pythonはさして速い言語でもない。
「AIを学びたい」のなら、まずは統計学の基礎知識が必要だろう。それが無いと機械学習も意味不明な筈だ。ベースとなる考え方は統計学で言う「判別問題」であり、それを古典的な人口無能でラップしてる、ってのが現在のAIの基本となっている。「判別問題」の処理にニューラルネットワーク等を使ってる、ってのがザックリとした説明となる。
さて、貴方はAIを学びたいのか。ぶっちゃけ「AIを学びたい」のならプログラミングの勉強をしてる暇はないだろう(笑)。いや、マジで(笑)。統計学の基礎を学んでから応用統計学へ、と歩を進めるのはなかなか難儀だろう(「出来ない」とは言ってない)。
一方、ブラックボックスである「AI用ライブラリ」の使い方を知りたい、と言うのならそこまで難易度は高くはならないだろう。正確にそれらを適用できる知識がないにしても、だ。

2. 初めて学ぶプログラミング言語

就職に必要なプログラミング言語については「分からない」としか言いようがない。それは求人で何が書かれてるかに依る、からだ。
例えば任天堂なんかはPython「だけ」知っててもダメで、基本的にはC++を熟知してる人を求めているようだ。それどころか、C++を知りながら「複数言語を操れる」人材を求めてる事が伺い知れる。
一方、CookPadなんかは、分かる範囲ではRubyを重要視してるんだろう。Rubyを操る人材を求めてるのにPython学んで行ってもしゃーない、っちゅうこっちゃ。
まぁ、当然だよな。

つまり、「貴方がターゲットにしてる会社」ないしは「職種」があってそこから学ぶ言語を選ぶ、って事の方が現実的だ。当然だよな。就職だけを考えるなら。

ただ、ハッキリ言うけど、今までWeb上で何人も、「フリーランスエンジニアになりたい」とか言ってプログラミング言語、例えばJavaScriptを学ぶ、とかやりだすけど、結果フェードアウトする人の方が多いんだよ。何故なら「フリーランスエンジニアになりたい」とか言う目的、ってあまりモティベーションを高めないんだよな。既にプログラミングをやってて「プログラミングが面白くて」エンジニアになりたい、ってのなら分かるけど、今まで一回もプログラミングをやった事がなく、面白さも知らず、いきなり「エンジニアになるだけのモティベーションを持つ」って無理なわけでしょ。フツーはそれって無理ゲーなんだ。
例えて言えば、今まで一回も音楽を聴いたことがない、演奏もした事がない、でも「ピアニストになりたい」とか言う人を見ると「発想間違ってね?」となるんじゃないか。多分ほぼ100%、こういう事を言われたら「止めたほうがエエんちゃうの?」って言う人が多いと思うんだけど、どういうわけかプログラマとかエンジニアの場合、「軽く見られてる」のか、可能だ、って考える人が多いんだよな。
いや、あなたがそうだ、って言ってるわけじゃない。でもピーター・ノーヴィク先生が言うような勘違いが流布されているのは事実だろう。

コンピュータというものが、他のどんなものより、学ぶのがどういうわけか信じられないくらい易しい

んなわけねーだろ、って思うんだが。

なお、1990年代前半くらいまでだと、選択肢が今ほど豊富じゃなかったにせよ、「この言語」って決め打ちする事は無かったんだよ。このくらいの時期だと、大体、大学でプログラミングを学んで卒業した人は最低でもPascalC言語の2つくらいは操れた。言語名を出すのは控えるけど、「☓☓言語はプログラミングの基本」とかバカな事を言い出す人はいなかった。当時はもうちょっと「コンピュータ教育」に熱心だったんだよな。コンピュータが高くて、民間に広まってなくて、「キチンとコンピュータを使えるように教育しよう」って人が多かったからだ。
また、家が裕福だったトコのご子息は小〜高校時代に家のPCでBASICやったり、アセンブリ/機械語やってたりして、それから大学入るんで、結果3〜4言語操れる人も結構いただろう。もっとも、アメリカの話だけど、「大学でドロップ(単位を落とす)する」人も結構いたみたいだが。
でも、今は逆に「選択肢は多い」のに「決め打ちしよう」とする。かつてと様相がまるっと変わってきてるわけだ。

個人的には、まずは「就職関係なく」プログラミングをまずは学んでみて、「面白いと感じるかどうか」の方が重要だと思っている。「面白くない」のにプログラミングを苦労して学んで就職したい、って、まぁ否定はしないけど、苦行だよな、って単純に思っちゃう。
でだ。仮に貴方がVisual Basic .NETでもVBAでもまがりなりにもプログラミングをやったことがある、ってのならいきなりPythonでもいいと思う。ただし、そうじゃないのなら、ハッキリ言うけど「Pythonはプログラミング初学者には向いていない」。向いてる、って言う人が多いのは百も承知なんだけど、もう「そうじゃなくなってる」んだ。
Pythonはモダンなプログラミング言語がほぼ持っている重要な機能が欠けている。今は分からんかもしれんが、例えばレキシカルスコープ等だ。他にも色々と欠点と言うより欠陥が多く、「プログラミング初学者向けの言語」としてはあまりにもアレなんだよ。要は「これを基礎として応用力を付ける」にはあまりにも向いてないプログラミング言語なんだ。
また、システム的にも、「要仮想環境」言語になってきて、ここで「仮想環境」が分からないのなら手を出すべきじゃない、って事になる。「気軽に立ち上げて遊ぶ」設計からも離れてるんだ。
言っておくけど「実用性がない」とは言ってない。逆に実用性はありまくりなんだけど、登場当時と違って、ホント性質的には「プロが開発で使う為」のプロ用言語に寄っていってるわけだ。つまり「分かってる人が」使うプログラミング言語へと変貌してきてる。アドホックな改変も多いし、「おかしな挙動」を見ても仕様がないんで、なんとも言えない事が山ほどあるんだ。
よって「最初に手を出すな」が2026年現在では正解だろう。いずれやってもいい、ではあるんだけれども。

んで、プログラミング自体が未経験なら、あとは教科書次第、なんだけど、残念な事に「全くのプログラミング未経験者向けに書かれた」入門書もこの世にはほぼ存在しない。1980年代ならベーマガのプログラムリストを打ち込んでプログラミングを覚えました、的な環境が整ってたんだけど、今はそんな世の中になっていない。また、そんな事が可能じゃないくらい、コンピュータ(厳密にはOS)が複雑化してるんだ。単純には例えばモニタのピクセル一個一個を直接操り、入力も直接操るようなプログラミングは現代では許されていない。

そんな中で、日本国内で書かれた唯一推薦出来る初学者向けの本がプログラミングの基礎だ。これは、お茶の水女子大学の二年次で使われてる教科書で、お茶の水女子大学の先生によって書かれたモノだ(元々は一年生用に書いたらしい)。
まぁ、あなたの真剣度に依るんだけど、この本を推薦しておく。使用する言語はOCaml、あるいはマイクロソフトのF#だ。F#OCamlの方言で、若干違いがあるけど、今なら違いにツマってもChatGPTGeminiがちょっとした文法の差異を教えてくれるだろう。学習環境が整ってラクになってる。
Windowsを使ってるならマイクロソフト F#の方がいいんじゃないか。オールインワンでIDE込みで一括ダウンロード/インストール出来るんで手間がない。逆にMac辺りを使ってるのなら本家OCamlの方が向いてるだろう。
いずれにせよ、OCaml/F#は非常に高機能でプログラミング初学者向けだ。人によっては「初学者には最低限の機能のものを」と、ミニマリズムがいい、と言うが、個人的には逆だと思ってる。高機能なプログラミング言語は高度なコンセプトを多数保持してるんだけど、最初にそれらに触れていた方がいい。最初に「ミニマルな」言語に触れていると、「高度なコンセプト」を理解しづらくなるケースが多いんだ。また、「高度なコンセプト」は「使い方が難しい」を意味しない。プログラミング言語は「道具として設計されている」ので、「使いづらくややこしい機能の組み込み」は、理想論だけどあり得ないんだよ。従って「高度なコンセプトを持った機能」は「使いやすい」のが前提となる。むしろ初学者向けなんだ(逆に低レベルな言語の方が、記述がややこしくて困る事になる)。
もう一つ、「最初に高機能なプログラミング言語を学ぶ」利点は、他のプログラミング言語へと移りやすい。その「他の」プログラミング言語が持ってる「高度なコンセプトを持つ機能」のアタリを付けやすくなるわけだ。これが最初に「低レベルで」「ミニマリスティックな」言語を学んでると、高度なコンセプトをそもそも理解出来なくなる。それじゃマズい。
いずれにせよ、OCaml/F#を使い続けろ、と言う意図はない。まずはプログラミングの基礎でプログラミングを学んで、あとはPythonに引っ越ししようがPHPに引っ越ししようがお好きなように、ってのが趣旨だ。最初にしっかり基礎がためをする事。応用力を付ける事。それさえ出来れば二番目に学ぶ言語以降はどうにでもなる。そしてそれを可能にするのがOCaml/F#の高機能性なんだ。

なお、プログラミングの基礎は大学の教科書用途で書かれてるんで、1学期分の内容だ。つまり、目安としては大体半年、ってトコだな。それより長くかかるか短く済むか、はあなた次第、となる。

また、お茶の水女子大学の方で、プログラミングの基礎を使ったビデオ講座が公開されているんで、それも合わせて自習向きだと思う。

ま、僕のオススメはそんなトコかな。

投稿2026/01/25 19:43

cametan

総合スコア252

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.29%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問