プログラミング言語Pythonを独学で勉強
ここ数ヶ月プログラミング言語Pythonを学習しています。
色々勉強した途中成果、といっても生成物ではなく、ステップを踏んで個人開発をするならと仮定してロードマップを考えてみました。
ロードマップは以下です。
- まずCUI(コンソールからの出力)で色々プログラムを書いてみる(30~50くらい)
- 慣れてきたらモジュールを分けられないか考える
- オブジェクト思考の導入をしてみる
- GUIとCUIの結合でデスクトップアプリが動かせるか試してみる
- ここでも最小機能でデスクトップアプリを沢山作ってみる
- 項番5である程度マスターしたら、読みやすいプログラムになっていないか学習する
- 項番6まで学習したらWeb(html、css、javascript)の学習を開始する
- Webの学習もまずはデザインと挙動含め沢山作る
- ここからDBと性能に関する学習を開始する
- ものができたら今度はそれを販促する学習をする
- Googleなのか、Facebookなのか広告の選定含めて、色々低コストで学習する
あとは人によって異なりますが、このサイクルを高速回転でぐるぐる回します。
道のりは果てしなく遠い
プログラム素人のなんちゃってSEである自分でも、考えただけでこんなにやることあるのか・・・
また日進月歩の世界なので、リアルタイムで情報をキャッチアップしないと、ついていけなくなります。
これを見て挫折するのではなく、1つ1つのステップをいつまでに、どのくらい作ってという目標を明確に立てられれば、独学プログラマでも楽しく勉強できるのではないかと考えています。
個人開発なら最初はデスクトップアプリが一番いいかも
X界隈でやるならWeb系エンジニアだ!と豪語している人は沢山いますが、上記ロードマップを見て、まったくの素人がいきなりできますか?
強靭なメンタルと体力、土日も勉強するほどの好奇心がないと勤まらないと思います。
お金につられてやりたいと考えている人は、自分は「やめとけ」と言いたいです。
そもそもWeb系エンジニアといっても、画面まわりをやるフロントエンドとその後ろで動かすバックエンドなどがあり、個人開発なら両方+DBと性能etcができるフルスタックなどがあります。
自分は個人趣味でフルスタックやろうと思っていますが、その行程はのんびりです。
なので自分の場合は、DBは不特定多数の人が使うから必要なので、個人1人が使うのであればスタンドアロンのアプリ作成から取り掛かると良いのではという結論に至りました。
DB、性能まわりはデスクトップアプリを30~50作ってから
そもそも未経験でDB(データベース)、性能まわりまでやるのは欲張りすぎで、覚える仕事量に辟易するのが関の山です。
まずは簡単なデスクトップアプリを30~50くらい作って自信をつけてから、WebやDB、性能まわりを勉強しても遅くないです。
若さがあれば勢いでいけるかもしれないですが、35歳過ぎるときついと思います。
なので自分は焦らずゆっくりマイペースで学習しています。
かつ売り出し用のマーケティングの学習が必須
もの作ったら終わりではなく、売り込みをしないといけません。
ソフトウェアやシステムは結構無料でも高性能なものが存在するので、まずは比較検討してどのレベルなら無料なのか、お金取れるならどのようなものかを検討する必要があります。
加えて認知させるために、広告運用も必要になってくるはずです。
こちらもマーケティングや画面のデザインなど、色々施策が必要なので自分はかなり先とみて、勉強成果をたまにブログに載せようと考えています。
まとめ
とにかく、やれ稼ぐならWeb系エンジニアだ!という風潮があるので、素人がロードマップをぼんやり考えて、その道のりは茨ではないのですか?ということを提示しました。
結構やること、覚えることが沢山ありますが、これで挫折するようならエンジニアという職業はやめたほうが良いです。
こういうのを寝食忘れるほど熱中できる人でないと、どんどん差が開いて人生の時間を無駄に過ごす可能性もあるからです。
自分のようにマイペースで勉強するのであれば、問題ないのですが仕事になるとお金が絡んできますので、品質と納期がタイトになることはよくあることです。
それを吟味して、仕事にするか検討するとよいです。
ご参考になれば幸いです
コメント