機械系大学生が、他分野のプログラミングを独学でやり続けた感想
この記事の対象となる人
-
プログラミングをやってみたいけど、不安を感じて始められない人
-
独学はしているけど、「実践レベル」がわからなくて、社会進出に不安を抱いている人
-
他、プログラミング全般に不安を持っている人
上記に当てはまりそう、またはこの記事そのものに興味が湧いた方は、読むことをお勧めします。
先に結論
基礎を目いっぱい勉強して,成果物を持って色んな所でアピールすれば,「実践レベル」の経験を得られるようになる.
書こうと思った経緯
大学に入学して、約5年間(現在、修士学生です。)プログラミングをやり続けているのですが、その内3年間は完全独学、成果物も自身で昇華するような状況でした。その後、初めてのスタートアップでのモック開発、インターンでのチーム開発を経験するなかで、意外にも自分の力は通用するのでは…?と感じています。そこで、自分と同じように独学でやっていたり、そもそもなんだか怖くて踏み出せない方に向けて、「実践レベル」ってこんな感じだよ!や意外とできることいっぱいあるよ!を主観込み込みで伝えたく、書きました。かと言って経験が豊富とはいえないので、一つの参考程度に読み進めてもらえると幸いです。
自分のプログラムに関する簡単な経歴
これまでに学んだ言語
- Python(ずっと触ってます。)
- PHP(モック開発で使ってました。)
- TypeScript(絶賛勉強中。)
- MySQL(PHP、Python開発の中でたまに触ります。)
- HTML、CSS(TS、PHPに昇華されています。)
- JavaScript(TSに昇華)
- C、C++、C#(授業、サークル活動や友達とのお遊び)
齧った程度で言うと、Java、XML、Ruby、Rあたりもやりました。
経歴
1年目
- 授業でのライントレーサーロボット開発をきっかけに興味あったプログラミングを勉強し始める。
- Pythonって初心者言語なんだと知って、やり始める。
2年目
- Pythonでおもちゃをいっぱい作る。(ゲームやExcelいじるシステム等)
- 授業、サークル活動ではC言語系統を学ぶ。
- HTML、CSSをやったのはこの頃。
3年目
- モチベーションの持ち場所がわからず、離れていく。
- 年末に授業内でシステム開発の課題があり、やる気が再燃する。MySQLに触れる。
4年目
- スタートアップでのモック開発の話が転がり込み、PHP、MySQLを用いた開発を行う。
5年目
- 研究でPythonを使用する。これまで別言語で書いてあったプログラムを書き直す。
- TypeScriptでの開発に携わる。
どんな勉強をしていたのか
とにかく基礎を周回
最初に買った本(初めてのPython 第三版 オライリー社)はおそらく5周しました.その後Pythonに関する本は4,5冊は買いましたが,どれも最低2周しています.(おすすめはこちら)
これは多言語の基礎レベルはできるようになった今だから言えますが,どれか1つの言語の基礎を固めれば,ほかの言語の基礎もイチコロです.さらに言うと,一部では多言語も同時に学ぶことが推奨されているくらいなので,1つの言語の基礎をとことん理解していくことは,とても効率的な勉強法です.
モジュールやライブラリに頼り切らない
自分はとにかくモジュールやライブラリの中身を見るように習慣づけていました.どんな仕組みで動いているのか,自分のプログラムに生かせる記述法はないかと目を凝らしていました.おかげさまで,人に聞かれたら説明できるし,プログラムの書き方も徐々にスマートになっていきました.
しかし,ここが非常に敷居が高い.ですがこれをできるかどうかは,今後のプログラミングスキルに大きくかかわります.
近年,基礎的な知識が足りておらず,ただ配布されてるモジュールやライブラリを利用している方が増えています.そういった方にいざ質問をすると,製作者に訪ねてくださいまたはこの記事が参考になるんじゃないですかね?が決まった返答です.この状況を簡単に例えると,足し算を知らずに掛け算の九九は暗記できている.しかし,原理を聞くと,掛け算を考えた人に聞いてくださいまたは教科書のこのあたりが参考になるんじゃないですかね?と言っているようなものです.この現状に対し,プログラミングスクール等で基礎を意識した教育がされているようですが,まだまだ普及され切っていないのが現状です.
つまり,モジュールやライブラリの中身を理解しているだけで,周りと差がつきます.モジュールやライブラリを使った処理がうまくいかないとき,製作者にわざわざ問い合わせるのとあなたがいることで,新たなモジュールを作成できるのとでは,大きな生産性の差があります.
使っているだけでわかった気にならず,勇気を出してモジュールやライブラリの中身を見てみましょう.
成果物を決めて作りきる
勉強成果のアウトプットとして,必ず目標となる成果物を決めて,作り切りましょう.本を通して作れる成果物,自分で思いついた成果物,人に作ってほしいといわれて作った成果物,なんでも大丈夫です.自分が胸をはって「これを作ったんです.」といえるものを作りましょう.
また,目標があるのとないのでは,モチベーションも変わってきます.スポーツでゴールのないところにシュートは打てないように,目標のないプログラミング勉強をしても培ったスキルは無駄になりますし,スキルをそもそも培う気が起きません.
自分の達成目標をもって,それを成果物として「実践レベル」の開発に飛び込む準備をしましょう.
「実践レベル」の開発って?
ここで再度伝えておきます.ここでいう「実践レベル」は,初学者,新卒等の学生が対象です.
私の思う「実践レベル」は,「誰に相談しても,どんだけ検索してもいい,どんなにコードが汚くてもいいから,求められた成果物を期限内に出せる」だと思っています.
実際のところチーム開発では,レビューや修正が相次ぐので,修正点があるのは当たり前です.(人によって好き嫌いなどありますし…)それは恐れずに,まずは作りきれる力.それが初学者にとっての実践レベルです.それ以上の力は経験でこれから補っていけばよいです.
プログラミングを行なっていく上で、必須級なこと
下記のリスト、当たり前のようでできてないことが多いです。できるだけで初学者としては重宝されます。
-
最初からプログラムに触らない!!
-
とにかくログを出す!!
-
コメントアウトはとっても重要!!
-
困ったら、まず検索する!!
-
それでもわからなければ、相談できる人がいる場合は相談を行う!!
これらを徹底していれば,「実践レベル」の開発は何とかうまくいくと思います.
結論
必須級なことの習慣が身につけば、どこでも「実践レベル」の開発は行なっていけます。よっぽどのブラック企業、ひどいPMではない限り、開発に合流するときは自分のレベルに合わせて簡単なタスク、挑戦的なタスクを用意してくれるはずです。
自分の力を伸ばすには、「知識」を蓄えることとアウトプットとして「経験」を積み重ねていくことが大切だと思います。
基礎を目いっぱい勉強をしたら、積極的に世に出すような開発に携わっていってください。
追記:開発に合流する上での注意点
開発合流前
経験がない。という一つの足枷により、一向に採用されずじまい、、、なんてことはよくあることです.初めての開発は友達とでも企業でもどこでも大丈夫です.めげずに成果物,ポテンシャルと論理的なコミュニケーションをアピールできるように頑張っていきましょう!
初めの1文は裏を返せば、経験があればチャンスはガンガン掴みに行けるということです。とにかく「経験」を積んで,新たな「知識」を蓄えていくことが大切です.
開発合流後
ここではあまり触れませんでしたが,エンジニアにおいて最も重要なスキルはコミュニケーション能力です.顧客,チーム,上司,後輩等々,とにかく人と話す機会が多いです.互いを思いやった明るいコミュニケーションをとることで,チームもよくなり,周りから頼られ,自分が困ったら頼れてといいことずくめです.明るく密なコミュニケーションを心がけましょう
本当にあった笑い話|アンジャッシュ
研究室の歓迎会でのこと。コロナ時代、集まれないのでオンラインで行っていました。会では自己紹介があるので、名前、趣味、写真などを載せたスライドを一枚作りました。その写真は、友達と遊んでた時の写真で、いわゆるヤンキー座りをしてる写真でした。
会が始まり、近づいてくる自分の番。家でやっていたのもあり、椅子にだらしなく座り、会に参加していました。どうせ気づかれないだろう、と。
そして、自分の番。話終わり安心していると、教授から一言。
「なんでこんな座り方してるの?」
ビクッとしました。まさか、カメラも調整したのにバレてるなんて、、動揺しながらも乱してはいけないと思い、放った自分の一言。
「この座り方が楽なんです。」
「え?、、」
固まる教授。騒つく生徒たち。
「これは外にいるの?」
いやいや、何を言ってるんだ。
「いえ、家の中です。」
「そ、そうですか、、ありがとう。」
ふぅ、終わった、なんとか乗り切ったぞ。そう思った時チャットには、
「いや、写真の話だよw」
「アンジャッシュみたい笑笑」
とても恥ずかしくなりました。まさか、写真の話をしてるなんて、、
お陰で、先輩方にはオンラインでも名前と顔を覚えてもらえたし、こういう話が増えたので今はプラスに考えてます笑
NPOで活動していて思うこと|自分を知ること。
私は今、NPO法人に所属しています。
学生団体とは違い、ミーティングなど組織的な活動内においても、様々な年代の様々な価値観による影響を受けられる今の場をとても心地よい場所だと感じています。
さて、そんな場所で活動をしていて思うのですが、未来を信じること、可能性を信じること、自分を見つめ直して考えることってとても難しいですよね。
未来を信じること、可能性を信じること。これができないと、どんなイノベーションも起こせないし、踏み出すことすらできません。そのためには自分を知り、自分を信じることがとても大切だと私は考えます。
そのためには、自分を見つめ直して考える必要があります。これって、正直日本の教育方針として、(勉強、人生含め)振り返る機会が全然ないことが起因して、とても難しいことになってしまっています。実際、初めて活動に参加する大学生と話をすると、文言化が苦手、そもそも難しくてよくわからない、と言われることが多いです。
そしたら、どうやって振り返ればいいのか。簡単に出来ることといえば、自分のこれまでの人生で印象に残っていることを思い返してみてください。その時のことは、とても強く覚えてるはずです。何があったのか、その時自分はどう感じたのか、そういったことが今のあなたを作り上げている可能性が大いにあります。そこから徐々に自分という人間像が紐解かれていくでしょう。
自分を知ることは、可能性を感じられるきっかけになる。可能性を感じることは、可能性を信じるきっかけになる。可能性を信じることは、未来を信じるきっかけになる。とある歌の歌詞に、「この世界中でたった一人だけの私を、もっと好きになってあげたい。この世界中の全員がNoと言ったって、私は私を信じていたい。」というフレーズがあります。このフレーズはまさにこの記事で題材にしたものにとてもつながるものだと思います。
恋愛とは|自分には答えが全然見つからない
恋愛って、難しいですよね。
自分もうまくいかずに悩んでいます。
肌に気を使って、服装も気にして、コミュニケーションも意識して。
彼女は一度いたこともありますが、別れて以来、そういった関係は音沙汰なしです。
出会い系、マッチングアプリなども試していますが、中々出会えません。
やっぱり、真剣な恋愛って難しいんだなと思います。
前に付き合っていた彼女とは約一年ほどで、喧嘩もなくとても安定した、幸せな一年でした。しかし、唐突に別れ話を持ち出され、自分に興味がないと思ってしまった、と言われ、途方に暮れたのを今でも覚えています。
一年とは言え、高校生。自分は一線を越えるのは一年経ってからと決めていました。それが既に彼女に対する選択として、違う選択だったのだな、と痛感しました。
自分は奥手なのか、しかし今の自分を強く肯定してくれる人もいる。女性の友達に、早すぎても驚かれるだけで良くない、とアドバイスをもらったこともある。実際、早すぎて距離が空いてしまった人も何人かいる。その度に後悔してしまう。
今の自分は、考えすぎなのかもしれない。とにかく恋愛がしたいだけなのかもしれない。とにかく性的なことをしたいだけなのかもしれない。自分にとって本気で一緒にいたいと思う人がいないのかもしれない。
そんなわからないことにモヤモヤしながら、今日も生きていく。
久しぶりの肩慣らし
どうもトニーです.久しぶりにブログ更新しようかと.
最近コロナ自粛で嫌になったりもしますが,新しく始めたこともいろいろあり,
それなりに充実している日々を過ごしています.
今後,少し更新していこうと思っているので,この記事を見つけてくれた方は,
お時間ありましたら,ぜひ訪れてみてください.
それでは.
しゃろとも,始めました|~今や第二の推し~
これが日本縦断旅行の要因です...そう!
CYaRon! 1st lovelive!
Brave heart coaster!!
いや~,最&高でした!!
キャストの三人には本当に感謝です...!
今回の会場は,西日本総合展示場でした
周りには,あるあるcityというオタクをターゲットにした建物もあり,
過ごしやすかったです
↑あるあるcityのanimateの一角
↑プレミアショップもやってました
今回は友達複数人と参戦していて,物販も割とすぐに買えました
↑このくらいの位置で待ってました
Twitterのフォロワーさんにもエンカして,友達のフォロワーさんにもエンカして,
結構いろんな人と知り合いました笑
そんなこんなでライブも始まり,
最後列から(w)全力で叫び,
ライブも最高の盛り上がりを見せ,終わりを迎えました
閉演後に流れる,元気全開DAY!DAY!DAY!に後押しされ,(コールがやまなかったw)出口へ
建物と記念に写真を撮っていく
その後,友達がパーティーを開いてくれたので参加
もつ鍋,餃子,お刺身って最高かよ!!
さらには,プレゼントもたくさんいただいて...ありがとう
さらに最高のプレゼント...銀テープ!!
最後列だったのに,手に入るなんて...最高だ~!!
友達からプレゼントをたくさんもらい,最高のライブを味わい,
この日本縦断旅行は幕を閉じたのでした
ぜひ,この記事から見た方は,他の記事も読んでみてください笑
写真引用
一週間日本縦断の旅|~食べ過ぎ,博多編~ Day2
宿に泊まり,次の日
起きて,まずは朝食の準備
うん,我ながら頑張ったと思う
この日も大荷物をもって,博多をぶらぶら
それっぽいの二枚載せておこう
博多駅で昼ご飯を食べようと思い,いったん駅へ
はい,これでこの旅行三杯目!!!
いちいち豚骨ラーメンがうめぇ!!
知らなかったけど,このお店有名どころだったんですね
次の日,友達に勧められました
この後,目的もなくぶらぶらしていると,キャナルシティ博多に到着
なんかいた...!
結構大きいショッピングモールでしたね
最後はこの日の大本命,めんたい重!!
一時間待ちの予定...並ぶか...
30分後...
いや,もう来るんかい! 嬉しいんだが!?
呼ばれるがままに,店前の列に並び10分後,店内へ
迷った看板メニューがこちら
結局,飯麺吸セットを注文して,出てきたものがこちら...
いや,すごすぎるし,うますぎ!! 天才か!?おい!!?
このおいしさ,二度と味わえんなぁ
そんなこんなで,友達と合流するまでぶらぶらと歩いて
あんなものやこんなものを見つけました
animateもあるし,らしんばん他中古店もあったのでウィンドウショッピングしました
あ,大学生らしく,服も一応見てました...笑
天神周辺は,これまたオタクにやさしい町でしたね
てな感じで,友達と合流し
二日目は幕を閉じました