プログラミング

プログラミングって何?ド素人から学習した経験から解説します

プログラミングって、そもそも何?

 

ネット見ても、堅いというか、全く知らない人から見たら全然わからない・・・

 

もう少し、ど素人の目線で解説しているのってないのかな?

 

そういう悩みにお答えします。

 

私も過去同じ経験を持っていて、プログラミング勉強しようって思って調べても、結局なんのこっちゃサッパリわからなくて、とりあえず手を動かすことから始めました。

 

とはいえ、なんのこっちゃわからないものに手出しするのも不安と思います。

 

この記事では、ゼロというかマイナスから勉強し始めた私が、失礼ながらど素人視点で解説しますので、プログラミングって何?と思っている方は理解を深めれると思います。

 

 

プログラミングってそもそも何?

機械を動かす指令みたいなもの

ざっくり説明しますと、人が機械を動かすための指令みたいなものです。

 

例えばスマホでいえば、タップしたらアプリが開いて・・・というのがありますよね。

 

あれも要はプログラミングで動くようになっていて、いろいろな技術がありますが、シンプルに書くと、

 

指でアプリをタップしたら、そのアプリを開きなさい

 

というのを機械すなわちスマホにプログラミングしてあるから、実現するのです。

 

画面を指で触れるだけでアプリが開くのは静電誘導という技術が使われていたりとか難しい(というかよくワカラナイ)ことがありますが、それは一旦おいておきましょう。

 

さらに言えば、機械への指令を、機械がわかる言葉で伝えてあげないといけなくて、それがプログラミング言語と言われるものです。

 

ちなみにプログラミング言語というのは約8,000以上あり、毎年新しいプログラミング言語が作られています。

 

プログラミング言語一覧 ←コチラから確認できますので参考まで。

 

プログラミングを用いて何をするかによって、言語を使い分ける感じになります。

 

厳密に分かればプログラミング言語もいくつか分類がありますが、それはここではまずは省略します。

 

まずは、プログラミングとは、機械(スマホやパソコンなど)に、機械がわかる言葉(プログラミング言語)で指令を送ることだと思っていただければ良いです。

 

 

 

プログラミングの身近な例

ざっとですが、身近な例を記載してみます。

 

スマホとかパソコン

前でも書きましたが、タップしてアプリが開くとかが最たる例ですね。

 

Siriとか音声認識もいわゆるプログラミングの一つです。

 

言ってみればスマホはプログラミングの塊かもですね。

 

時々、アプリのアップデートとかありますが、あれば、プログラミングの内容を変更したり修正したりして、不具合と呼ばれる問題点を解決したものです。

 

 

 

家電などの生活必需品

地味というかすでに当たり前になっているかもですが、例えばリモコンで電源押したらテレビつくのもいわばプログラミングです。

 

あと、電子レンジ加熱1分設定して1分で終わるのも、プログラミングがあるからです。

 

スマホとかパソコンほどではないですが、コンピュータが入っていて、いろいろなプログラミングが施されています。

 

実際、家電メーカーにはそういったプログラミングをするエンジニア(≒プログラマー)がいます。

 

IT企業で仕事をしている私としても、本業で、そういった方々を会話することもあります。

 

家電メーカーとプログラマーって繋がりにくいですよね。

 

プログラマーと言えば、IT企業みたいなイメージと思います。

 

でもそのくらい、実はプログラミングって身近なもので使われているんです。

 

他にも自動車とかバイクとか、結構普段の生活で使っているものには大体プログラミングが使用されているといっても過言ではないかもですね。

 

 

 

人間もある意味プログラミングで動いている(参考)

参考ですが、人間もある意味プログラミングで動いています。

 

脳みそがコンピュータ見たいなものですね。

 

一番良い例が、めちゃくちゃ熱いものを触ったときです。

 

熱いものを触ったら、自分の意志とは無関係、言い換えれば無意識に手を放しますよね。

 

あれば、火傷するかもしれないとか怪我するかもしれないレベルの熱さに触れてしまったら有無を言わさず手を放すように「脳にプログラムされている」というイメージです。

 

正確に言えば、「脳からの指令を待たずして脊髄で判断して手を放すようにしなさい」という感じです。

 

脳の指令を待っていたら火傷がひどくなるからですね。

 

紐解いていくと、プログラミングと同じです。動くものが機械なのかヒトなのかの違いだけです。

 

ちなみにヒトの場合はプログラミング言語のような指令の代わりに電気信号で動いてます。

 

参考まで。

 

 

プログラミングの種類

 

普通の?プログラミング

おそらくプログラミングというので一番イメージがあるのがこれです。

 

パソコンの画面いっぱいに、暗号のようなものがズラズラーっと書いてあって、素人から見たらなんのこっちゃサッパリ・・・みたいな感じです。

 

あれは、プログラミング言語を使って、機械つまりスマホとかパソコンなどのための指令を作っている状況です。

 

これが一番多いですし、プログラミングを知らない人からしても一番イメージしやすい感じでしょう。

 

 

ローコードプログラミング

少ないコードでプログラミングをするという意味で、ローコードと言います。

 

普通の?プログラミングは、モジュール(言い方はいろいろありますが、ある程度の内容がひとかたまりになったみたいなもの)なども使いながら、イチからプログラミング言語を使ってプログラムを作ります。

 

これを「コードを書く」とか「コーディング」とか言ったりします。

 

それに対してローコードプログラミングというのは、この「コードを書く」というのが少ないことを意味します。

 

つまり、プログラミング言語をあまり理解していなくてもプログラムを作れるというものです。

 

ただ、一定内容が固まりになっているので柔軟性は普通のプログラムよりも無いというデメリットもあります。

 

 

ノーコードプログラミング

さらにローコードプログラミングよりももっと「コードを書く」ことが少ないのが、ノーコードプログラミングです。

 

もはやプログラミングしません。

 

それはプログラミングなのか?と思ってしまいますが、これもある意味プログラミングです。

 

具体例でいうと、ペライチというサービスは良い例ですね。

 

簡単な1枚もののホームページを作れるサービスですが、前で述べたような暗号のような文字列は一切書かずに、ドラッグアンドドロップとか、これ追加あれ削除みたいな感じでHPを作っていきます。

 

ある一定の範囲、つまりローコードプログラミングと同様に制約があり、細かいところまで好みに合わせて作るというのは無理です。

 

しかし、手軽に作りたいとか、細かいことは気にせず用意されたフォーマットでOK!という感じなら、ノーコードで何ら問題ありません。

 

 

 

プログラミングを活用した仕事

ウェブ制作

プログラミングと言って、パッと浮かんだり、あるいはプログラミングを学ぼうとか学び始めた方が目にするのがこのウェブ制作でしょう。

 

いわゆるホームページを作ったり、スマホでダウンロードするアプリを作ったりというような仕事になります。

 

会社でいうと、サイバーエージェントとか、楽天とかですね。ほかにもたくさんありますが。

 

 

システム開発(業務システム)

プログラミングだけではありませんが、いわゆる会社で使ういろんなシステムを作る仕事になります。

 

例えば、勤怠入力システムとかありますよね。

 

法人向けの仕事になります。

 

SIer(エスアイアー)とかシステムインテグレータとかいう風に言われます。

 

IBMとか、NTTデータとかですね。

 

この領域も、フリーランスは多いです。

 

このシステム開発(業務システム)と、前のウェブ制作では、フリーランスの方向けに、仕事を紹介しているエージェントサービスもあります。

 

それくらい企業としてもフリーランスを活用するのです。

 

 

システム開発(組み込み)

前にご紹介している家電製品の中に入れるプログラムを作ったりするような仕事になります。

 

メーカーに多いですね。

 

家電メーカーでいうと東芝とか日立とかですね。

 

自動車メーカーでいうとトヨタとか日産とかですね。

 

他にも色々あります。

 

 

 ゲーム開発

スマホのアプリにも近しいですが、ゲームを作るのも、プログラミングです。

 

メジャーなところだと、あつ森とかドラクエとかありますよね。

 

あとマリカーとかも一緒です。

 

会社でいえば、任天堂とかスクエアエニックスとかですね。

 

他にもゲーム系はたくさんあり、格闘技系とかぷよぷよとかもありますが、あれももちろんプログラミングです。

 

 

プログラミング関連の仕事を目指すには

ゼロスタートで全然OK

プログラミングはゼロスタートで全然OKなので、これまでのキャリアとか大学で学んだこととか一切関係無いです。

 

理系のイメージありますが、文系でも全然いけます。

 

何なら、社会人になってから目指すのもアリです。

 

20代ならば、無料でプログラミングを学び、転職まで支援してくれるというサービスがありますから、参考にしてみてください。

 

無料というと怪しい気がしますが、転職サイトとか転職エージェントも無料ですが、怪しさを感じませんよね?仕組みというかビジネスモデルは同じです。

 

以下が無料で学べて転職も可能なサービスです。無料説明会とか体験会もありますので、一度肌で感じてみるのもおススメです。机上で色々考えてもイメージ沸かないですからね。

 

GEEK JOB:20代なら無料。転職支援サービスあり。

無料相談会・体験会があります。>>無料相談会はこちらから

 

プログラマカレッジ:こちらも20代なら完全無料。転職支援サービスあり。

無料相談会・体験会があります。>>無料相談会はこちらから

 

 

独学で学ぶのもアリ

上記の無料のサービスだと、時間や場所に縛られることもありますし、これまでの経験上、独学というか、授業形式ではない方が良いという人もいますよね。

 

方法は別にどっちでも良いです。合う方を選べば良いです。

 

雑というか厳しい言い方ですが、どっちも頑張らないといけないことは変わりません。

 

授業形式でやったら絶対身につくかと言われたらNoですし、何なら有料で高いお金払って学んでもあなたが本気で取り組まなければ身につかないですからね。

 

独学向けであれば、Progateなど無料で始めれるところからやってみて、そのあとPyQなどの有料サービスで演習問題こなしていくみたいな感じです。

 

教えてもらわずに、自分で四苦八苦しながらやった方が身につくということもありますからね。

 

参考書をこなしていくのもの良いです。

 

ベストは、とにかく色々試してみて、あなたに合う学び方を見つけることです。

 

どれも無料で体験できたり、参考書は図書館行けば借りれたりもしますから、まずは手と頭を動かすことですね。

 

 

まとめ:プログラミングとは機械向けの指令を作る事

まとめますと、プログラミングって何か?ということに対しては、ざっくりと、機械に対して指令を出すこと、という感じです。

 

そして、その指令を出す方法がいくつあかって、それがプログラミング言語という感じです。

 

また、プログラミングは、上記のプログラミング言語を用いて作っていく一般的なイメージのプログラミングと、モジュールなどと言ってある一定の機能を持ったものを組み合わせていくローコードプログラミングやノーコードプログラミングといったものもあります。

 

正直、専門知識が無くてもイチからしっかりと学べば身に着けることができると思います。

 

実際プログラミングを仕事としている人も、一番最初から、サクサクっとプログラム作れる訳がないですからね。みんな積み上げてきています。

 

楽ではないですし、技術の進歩が速い分野ですから日々勉強が必要ですが、仕事にできれば、フルリモートだとか、月額100万円以上稼げるとかも可能です。

 

プロラミングは将来性もありますし、あなたが思うほどとっつきにくいものではないです。

 

まずは食わず嫌いせずに取り組んでみることをお勧めします。