Contents
技術部メンバー
最新記事 by 技術部メンバー (全て見る)
- ブログ執筆ライター募集!1本◯,000円!福岡市博多区(3本目から在宅OK) - 2024年9月14日
- SEO専門メディアのSEO対策研究所に弊社が掲載されました - 2024年8月5日
- 未経験エンジニアの苦労とは?25歳でIT企業へ入社は危険でした…涙 - 2024年8月1日
プログラミング歴10年以上の福岡市で働く40代前半、現役Web系プログラマのトクナガです。
現在はJava+データベース+Pythonでの開発プロジェクトに関わっています。
そんな私がpython未経験なあなたへ
・pythonとは、どんなことができるプログラミング言語のか?
・今のうちにエンジニアがpythonを独学するメリットとは?
・javaとの違いとは?
・pythonの独学で1番苦しんだこととは?
など、AI・機械学習時代の流れを感じて独学しておかなければ近い将来メチャメチャヤバイ!と薄々感じている危機察知能力の高いあなたへ、私が未経験から短期間で独学した方法を公開します。
pythonとはどんなことができる言語なのか?
Pythonは、AI機械学習領域のメイン言語として使用されていて、データの収集、データの分析、通知の自動化、webアプリの開発を行うことができます。ちなみに、私の場合は、JavaとDBとの間を自動化させることができるプログラムとして現在、使用しています。要は、Javaのプログラムの一部をPythonが受け持つという構造です。
他にもwebデータを自動収集(webスクレイピング)してGoogle検索結果からアフィリエイトコードが入っている記事を抜き出せたりできます。私たちスフィアネットのwebマーケティング事業でseo順位を測定する時に使用するツールにも使えるスキルですね。
以上のように、pythonではjavaとDBとの間を自動化させるなど、通知の自動化やデータの収集、データ分析、webアプリの開発ができます。
javaエンジニアがpythonを独学するメリットと独学しないデメリットとは?
Pythonが受持つ箇所は限られますが、Javaを知っていれば広く対応できるため、python案件でもpythonだけのエンジニアと比べるとjavaとpythonができるエンジニアの方が案件先から選ばれる可能性が高いです。
ということで以下のpythonを独学する3つメリットが想像できます。
あなたの付加価値をあげる
javaのエンジニア同士で1つの案件獲得を競う時にjavaだけのエンジニアよりpythonもできるという付加価値が出せることは、案件獲得や単価アップなどにおいて大きなメリットです。
初学者でも独学しやすい
JavaでもできることがPythonでもできるので、java経験者は独学しやすいこともメリットになります。基本的な文法だったり文字列やif文、関数など基礎知識があれば、インターネットでの情報量が豊富でしたので、やろうとしている事は、インターネットで調べて解決できました。
顔認証やディープラーニングを自分のペースで勉強できる
例えば、農家さんが果物の選別作業をする時に今までは重さや形までは機械で選別できても色やキズは選別が難しかったのを、画像認識で教師データを覚えさせて、いく通りもあり何時間もかかる選別作業を自動化して生産性をあげられる技術ですので、エンジニアとしてのお客様の様々な課題を解決するアイディア(選択肢・リソース)が持て、重宝されます。
お客様から喜ばれますので、シンプルに嬉しいし楽しいと思います。
エンジニアとして楽しいことが増えることはあなたの人生にとっても素晴らしいこと=メリットではないでしょうか?
デメリットは、pythonという付加価値を持っていないことで案件獲得時にjavaだけですと、pythonができるエンジニアに負けることと、AI開発など最新のスキルにかかわるチャンスを自ら放棄することになるので、新しい話についていけなくなるため、独学しておけば良かったと後悔する日を迎える可能性が高まることはあるかもしれません。
pythonでできることとjavaでできることとの違いとは?
javaとの違いは、pythonの方がjavaより簡単だと感じました。
プログラムを書いていて、pythonの構造はJavaScriptに似ている気もしました。
python未経験でしたが、javascriptはできることもあり、pythonはjavascriptに似ていてとっつきやすいという印象です。
Java+DB+Pythonのシステムでは以下のことが言えます。
Java+DBでもシステムは作れますが、
Pythonでできることとの違いは、担当の細分化です。
通常担当分けは、『機能』単位になると思います。
例えば、「~商品入力」という機能があったとして、通常はこの単位で機能の担当者を決めます。
私のプロジェクトでは、「~商品入力>Java」という担当と「~商品入力>Phton」という担当に分かれます。
ここまでが、pythonでできることとjavaでできることとのザックリした違いでした。
余談、python未経験だった私が一番苦しんだこと
ズバリは、インデントです。
Javaは、ソースを書くときに、見やすさ(可読性)の為にインデントを書きますが、
インデントを意識せずに間違えても、特に問題はないです。
Pythonは、インデントが意味を持つので、インデントを間違えるとエラーになります。
ちなみに、Pythonはテキストエディタで作る(現場では開発環境が整っていない)ので、
インデント間違いが結構出てきました。
ただ、インデントを間違えないようにしてあげれば、結構サクサク動いてくれます。
まとめ
・pythonとは、JavaScriptに似た言語でjavaとDB間の自動化などができる
・javaエンジニアがpythonを独学するメリットとは、他のエンジニアと比べて付加価値がつけられる。
・pythonでできることとjavaでできることとの違いとは、担当の細分化など。
・未経験から独学した方法は、100%インターネット
・1番苦しんだことはインデント
以上、pythonでできることとは自動化?未経験の私が独学した方法についてお届けしました。
福岡市博多区でシステム開発の請負やSES、ホームページ制作やweb集客サービスを提供するIT業界の中小企業に在籍するエンジニア組が交代しながら発信中