1: 以下名無しさんに代わりまして管理人がお伝えします 1848/01/24(?)00:00:00 ID:money_soku

yaruyarapc2









 こんばんは、管理人です。
 本日も何通かメッセージを頂きましたのでそのうち何件かをこちらの記事でご紹介致します。

 今回は前回に引き続き、ランサーズ関連です。
 その中でもプログラミングスキルを必要とする大きな案件を受注するためには、まずは頼れる先輩や、バイト先などで勉強してみるのが一番との回答を行いました。

 しかしながら、それ以前の何をどのように学べばよいか・・・に関しては解説していなかったため、それに関しての質問が来ています。
 今回はそれに関しての内容です。


Authored by 稼げるまとめ速報管理人



2: 以下名無しさんに代わりまして管理人がお伝えします 1848/01/24(?)00:00:00 ID:money_soku

pc














 管理人「それじゃ、メッセージ内容を見てみるだろ。」


 やる夫「了解だお、じゃあ書いておくお。」


3: 以下名無しさんに代わりまして管理人がお伝えします 1848/01/24(?)00:00:00 ID:money_soku

以前ランサーズについて質問して記事に起こしてもらった大学一年です。
記事(とそのコメント欄)を読んで、色々と思考してみました。
 
結局受注に関する細かな規約等を学ぶため、実際の開発現場を経験するためにバイトやインターンなどで開発をしている会社に潜り込むのが必要という風に解釈しました。
そして、自分でバイトの情報サイトやインターンの情報サイト等を調べて見た結果わかったのは雇ってもらう際に完全に未経験者歓迎というのはほとんどないこと。
つまり、今自分が働きながら学ぶことはむずかしいということです。
そこで質問なのですがある言語(C++等)を雇用される前に自分のスキルとして学ぶ際に

 ①どのようなプロセスが適切か(どのような本を読んで、◯◯を作ってみて等)
 ②どの程度を以て「スキルがある」と言えるのか 周りにプログラミング出来る人もおらず、また勉強会よりは自分でガツガツ進めたいのでできれば独学でやりたいです。

 自分で試行錯誤もせずに教えを請うのは失礼かと思いますがどうか始めのガイドラインとして教えていただければ嬉しいです。

 やる夫「こちらになりますお。」


 管理人「じゃあ、順番に答えていくだろ。」


3: 以下名無しさんに代わりまして管理人がお伝えします 1848/01/24(?)00:00:00 ID:money_soku

008









 おっと、その前に一つ。

 管理人はこうやって何でも答えてしまっているが、新人教育という観点からするとあまりよくない。
 本当に後輩に成長して欲しいと思っている先輩からは、そこは自分で調べましょう・・・と言われる可能性は高い。
 いずれは上に立つにあたって、自分で最初から最後まで調べるスキルは超重要だからな。
 ランサーズではさらに厳しく、本当に自分で全部出来ないと話にならないぞ。

 お忘れなき用に。


 (やる夫「管理人がいつもググレっていってくるのはそういう事かお・・・。」)


 (管理人「ググッて必要なドキュメントを読むことも仕事だからな。」)


4: 以下名無しさんに代わりまして管理人がお伝えします 1848/01/24(?)00:00:00 ID:money_soku

007









 では、ご質問にあったC++について・・・でお答えしますだろ。
 他言語に関しては似たようなものなので、そちらはご自信でお調べください。

 ちなみに、この回答は何もしらない人がとりあえず触ってみました・・・に最適化されてあります。
 ある程度学んだ方には物足りないかもしれません。


・ステップ1
 猫でもわかるプログラミング c言語、c++の項を全部学ぶ
 http://www.kumei.ne.jp/c_lang/
 無料ですが書籍も出ていて、そちらはより詳しく解説してくれています。
 感謝の意をこめるなら購入、お金が無いなら図書館でいいでしょう。

・ステップ2
 アルゴリズムcの1巻、2巻を全部読んでおく
 c言語におけるアルゴリズムの基礎基本です。
 このあたりが出来ずして先に進んでも、後で戻ってくる事になります。

・ステップ3
 Effective C++、オライリー関連書籍を読み込む
 Effective C++を読んで、なるほど、とか、それくらい常識だろ、と言えるようになれば、結構成長してきています。この本に書いてあることはプログラマが守るべきルールであり、無視すると(もしくは知らないと)後から痛い目を見る可能性が出ます。必ず読んでおきましょう。

・ステップ4
 作りたい物の書籍を読み込む(例えばゲームの制作本とか)
 どういった手順で製品が作られているか・・・が書かれてあります。
 ただ、一冊の書籍でその手の全てを語りつくす事が出来るわけではなく、数学であったり物理であったり、突き詰めればコンピュータの仕組みやメモリリーク検知を行うためのアロケーターの作り方など、書かれていないことは山のようにあります。
 またサンプルコードは解説するためにあえてこうしました・・・と言われればそれまでですが、あまりいいコードではないな・・・と思う事が多いです。
 何故よいコードではないと思うかは、実際に書籍を手にとって、コードを解析して理解してみてください。

・ステップ5
 今までの知識を元に、ゲームでも作ってみます。
 何故ゲームかというと、ゲームにはプログラムで仕事をするために必要な知識がある程度が詰まっているためです。
 (ファイルの入出力、管理、データベースの作成、グラフィックデータのアウトプット、ユーザー入力処理、サウンド処理、シーケンス制御、etcetc)
 大体どんなゲームを作ったか、そのソースコードはどうなっているかを見れば、その方がどれくらいのスキルを持っているのかがなんとなくわかります。

・ステップ6
 企業に作った物を見せ、雇用してくれそうならばソースコードも(一部でいいので)公開します。
 雇われれば良し、雇われなければまだまだ力不足でしょう。(ここが②で問われていたスキルの有無だと思ってください)
 ステップ3かステップ5に戻って、再度良いものを作ってみてください。

・ステップ7
 入社後は必ず先輩のソースコードを解析してみること。
 どのようなコーディングスタイルで、何をやっているかを時間が許される限り確認してください。

5: 以下名無しさんに代わりまして管理人がお伝えします 1848/01/24(?)00:00:00 ID:money_soku

008


 






 以上となります。
 あと、周りに本気のプログラマがいないなら、勉強会とかはほぼ無意味です。
 「絶対」でない理由は、こちらは教える側なので、100%に近い理解力が必要となります。
 そのため、自分が説明する、プレゼンを行う内容に関して、どんな質問が飛んできても返答できるように準備する必要が出てくるため、ちゃんと勉強をするようになります。

 ただし、本気な人がいない勉強会は質問もあまり来ないので、厳しい言い方をしてしまうと時間の無駄です。

 以上でガイドラインの説明を終わります。
 ご意見、ご質問ありましたらコメント欄、もしくはまたメールフォームにてお願い致します。


6: 以下名無しさんに代わりまして管理人がお伝えします 1848/01/24(?)00:00:00 ID:money_soku

034






 管理人は上記ステップは全部こなしてきた・・・と。
 管理人って本当に本職じゃないのかお?
 本職じゃないのにここまで知ってるって・・・、いや法律関係とか会社、投資関係も・・・、謎だお。。。マジで。


(管理人「マジでガチで本職じゃないだろ。ただ勉強はした。」)