非専攻者からバックエンド開発者まで

# 開発者になる方法とは？
>文章を読む前に、この文章は筆者の主観的な意見が多く含まれています。
>個人ごとに考える部分は違うので、正解と見るよりは参考用として見ていただけると助かります。


## 目次.
-  概要
-  プログラミング傾向
-  勉強方法
-  結論

#### 1. 概要
>まず、この文が誰かに役に立つことを願って、この文を書いてみることになりました。
>皆さんは今まで生きてきてどんなことに対して関心を持ったことがありますか?
>たとえば、お菓子はどのように作るのだろうか？ なぜ運動をするのだろうか。以外等々
>おそらく、すべての人々は今まで生きてきてこのような考えを持ったことがあるだと思います。
>そうしたら、皆さんはこのような疑問を持って考える部分を誰から教育を受けて考えることができるようになりましたか?
>いいえ、筆者はそうではないと思います。
>このような考えはどんな分野を専攻しなければならないのではなく、誰でもできることだと思います。
>まるで、非専攻者がバックエンドウェブ開発者になるために必ず大学で専攻をしなければならないか、
>いかなる教育機関で学ばなければならない必要ではなく独学でも可能なようにです。

#### 2. プログラミング傾向。
>今年最後の2022年の月となりました。 その前から着実に成長しているIT系、特にソフトウェアでは飛躍的な成長を遂げています。
>最近筆者の国である韓国でも小学生を対象にITの科目を必須教育を実施していると聞いたし、日本も同じだと聞きました。
>https://www.koov.io/column/842
>https://www.mk.co.kr/news/economy/10431055

>本筆者は話の前に専門大学で2年間日本語を専攻した。
>卒業後、就職活動する時に、海外IT就職というBOOMが起こり、
>筆者も本人が専攻した分野または目標としていた職業とは意図したこととは異なり、日本のIT業界に就職することになりました。
>それだけ最近の現実では非専攻者でも就職ができるし、大きな人気があり、今後の時代は第4次産業革命という言葉があるように、現時代では情報通信という技術の必要性は重要視され、今後もこのまま脚光を浴びている傾向だと思います。

#### 3. プログラミング傾向ウェブ開発に先立ってどのように勉強すれば良いのか???
> ##### 1.脳の中に打ち込む勉強はやめて、グーグルリングで対処して復習する勉強法を身に着ける。
>前述したように、本筆者も文学的な言語を専攻したため、開発言語というものを初めて接した時、同じ言語だから同じように勉強すれば良いと思い、色々な言語の本を買って暗記式に勉強した。（HTML、CSS、JSP、JAVA、SPRINGBOOT、CLEAN CODE、などなど）
>http://www.yes24.com/Product/Goods/84929856
>https://www.hanbit.co.kr/store/books/look.php?p_code=B5476653696
>https://book.interpark.com/product/BookDisplay.do?_method=detail&sc.shopNo=0000400000&sc.prdNo=291334836&sc.dispNo=112975&sc.evtNo=231300&sc.saNo=005112975

>しかし、今考えてみれば、このような勉強方法は役に立つが、効率的な勉強方法とは思ってはないです。
>文学的な言語は相手、環境、または様々な条件によってどのような単語を使うべきかを考えなければならないが、開発言語というのはいつ、どのように知れば終わるため、脳に直接覚える必要はない。 分からなければグーグルリングという単語もあります。
>（韓国にも `GGRKS` なような言葉があります。）

>また、開発言語というのは詰め込み教育でも成り立たないと思います。
>プログラムとは、ユーザーによって千差万別で膨大な量のビッグデータで構成されているが、これを覚えるのは人間の脳では限界があるためです。
>それなら、このような方法よりはどのような方法が良いのか気になると思います。
> #####    1.1オープンソースコードを分析。
>オープンソースコードを分析すれば、この人がどんな技術を使ったのかを知ることができ、後でそのソースコードを活用して自分だけの新しい>技術として誕生させることができるためです。

> #####    1.2繰り返しコードを作成。
>コードというのはデータを持って何らかの行動を示すので、そういう部分では全部同じだと思います。
>ならば、そのような条件に合ったデータを構成することになるだろうが、このような部分の技術はほとんど似ています。
繰り返しソースコードを作成すれば、後で考えなくても自然にパターンが出てくるはずです。

> #####    1.3アルゴリズムを勉強して理解すること。
>プログラムというのは何らかの行動を示すためにパターンというものが存在するが、すべてアルゴリズムで構成されています。
>アルゴリズムについて詳しく知ることができれば、後でシステム的な把握とか、構築する部分でも役に立つだと思います。


> ##### 2.目標を決めて、その当時に必要なスキルを探して見る。
>ウェブであれアプリであれ、様々な分野で開発することになれば、最も重要なのが目標を設定することだと思います。
>計画がない状態でプログラム言語を勉強するよりは、本人が何を作るのか、どのように作るのか、なぜ作るのかを考えて勉強することが頭にももっと暗記されてそのような部分が途中であきらめない道になると思います。
>ほとんど開発者に挑戦して1年も経たないうちに辞める理由が興味を感じなかったからだと思います。
>それなら、そのような興味が持てるように目標を持って開発言語を学べばどうですか？？
>また、興味が生じれば、新しい分野でスキルを学ぶ時に拒否感が少なくなり、必要のないスキルを学ぶ時間を減らすことができると思います。
>どうせ言語というのは使われる形態だけ違って意味的には統一されているので、一つの言語をある程度身につけば、後で学べばもっと簡単に学>べると思います。

> ##### 3.失敗と絶望は持ってもいいが、あきらめることはNG。
>この筆者と同じように非専攻から外国に来てITをする人を見れば、プログラミング世界に足を踏み入れ、1年内に80%が辞めます。
>日本も多分外国でもないけど、やめる人も多いと思います。
>理由は何ですか？
>おそらく、二つの理由に分けるだと思います。
>`1.ほんとに自分がやりたいことを探した。`
>`2.難しいから一旦やめる。`
>前者の場合はむしろ応援してあげたいが、後者の場合は計画を持つ前に辞めるのなら、このような方法はどうだろうか？
>プログラムは人間と違って非常に正直であるため、少しでも誤差が生じた場合、エラーが表示されます。。
>このようなエラーが現れた場合、ほとんどの人は失望感を感じると思います。
>またエラーを解決できるかという恐れも感じ、それに対して絶望してあきらめると思います。
>そうしたら、自分ができる範囲をまずやることはどうですか？
>時間が薬という言葉があるように諦めずに地道に探してみると、いつか解決方法が出たり、他の方法を通じてでも問題が解決されるのであきらめなければならないと思います。
>開発という部分は皆さんが一緒にやることなので、自分一人で全部解決することより周り、またはネットのサイトとかを利用して解決をしましょう！
>https://stackoverflow.com/

#### 4. 結論
>今日、プログラミングの障壁は低いです。 しかし、学ぶべきこと、学ぶべきことはすべて山積みです。
>皆さんは数多くの開発者の方々と競争することになるでしょう。
>しかし、難しいからといって挫折しないでください。
>皆さんが難しければ他の人にも難しいことです。
>開発から学ぶ速度はグラフだと思います。
>誰かにとっては垂直かもしれないし、 誰かにとっては上がったり止まったり、また上がったりする姿かもしれないし
>誰かにとってはゆっくり上がる姿かもしれません。
>しかし、決して下がる姿はありえません。
>重要なのは学ぶ速度ではありません。
>あきらめないと思います。
>非専攻者、専攻者、関係なく、みんなで楽しく開発しましょう！

>最後に筆者の好きな韓国運動YouTuberの映像をアップしながら終わりにしたいと思います。
>キム·卵：成功の反対は失敗ではなく挑戦しないことです。
>https://www.youtube.com/watch?reload=9&v=Qd1MBEhkWU8&skip_registered_account_check=true



#  あとがき
>運動とかカラオケも好きなので、いつでも声かけてください。笑笑
>韓国語も教えます。（한국 서울 토종인~)