プログラミング言語で「会話」ってできるんですか? 女子大生、多すぎるプログラミング言語に困惑 - ねとらぼ

Special» 2019年10月16日 10時00分 公開

たくさんプログラミング言語が喋れたらバイリンガルじゃん!

[中山彩歌,PR/ねとらぼ]PR

 プログラミングの「プ」の字も知らないし、書いたこともない。挙句の果てには、「デスマーチ」をプログラミング用語だと勘違いする、とんちんかんな女子大生。そんな彼女のもとにやってきたのは、超おおらかなエンジニアの舘さん。今回は初心者がつまづきがちな「プログラミング言語の種類の多さ」について、引き続きゆる〜〜く教えてもらいました。

IT企業で働く父を持つ大学1年生。ねとらぼ連載「女子高生、『はじめてのパソコン』を買う」でITリテラシーがあんまり高くないことが判明し、おとぼけ回答を連発。その実績(?)を買われて今回の生徒役に抜擢された。もちろんプログラミングの知識はゼロ。

大手電機メーカーでキャリアを培い、現在はフリーランスのエンジニアとして活躍。Webアプリの開発などを行うほか、プログラミングのオンラインレッスン「CodeCamp」の講師も務める。二児の父で初心者にもていねいに伝えるレッスンに定評がある。

 なんとなくプログラミングというものが、薄く、淡く、かすかに分かってきたが、いまいち抽象的過ぎて理解が追いついていない。舘先生、今日もよろしくお願いします!

そもそも、プログラミングが登場したのっていつ頃なんですか?

1960年頃には今のプログラミング言語に近いものができてきましたね。昔のコンピューターって総重量30トンくらいある、化け物レベルの重さだったんですよ。

さ、30トン? 象何頭分……?

すごいよね(笑)。一番原始的なプログラムで言うと1800年代には作られているんです。それは「パンチカード」という紙に穴を開けて情報を記録するもので……。

紙に穴? それがプログラミングなんですか???

あっ、また難しい話をしちゃった。そうだ、オルゴールってポチポチがついていて、それがピンをはじくと音が鳴ってメロディーが流れ出す仕組みですよね。あんな感じの仕組みです。

オルゴールもプログラミングと関係してるんですか? 似ても似つかないじゃないですか!

してるんですよそれが。昔のコンピュータはオルゴールの仕組みによく似ていて、紙に穴を開けて、その穴が開いているところの位置で機械を制御していたんです。

んんん? 穴が開いてるだけで機械が動く???

オルゴールも、突起の位置が少しずれるだけで、違う音が流れたり、テンポが早くなったりするわけです。少しのずれで正しく音楽が流れなくなるでしょ。

ふむふむ。

それと同様今のプログラミングも、書き方を間違えると機能しません。それを突起や穴ではなく、プログラミング言語で書いたのが現代のプログラミングってこと。

おお、なるほど! イメージ湧きました! オルゴールと一緒って結構原始的なんだなー、プログラミング!

そうそう。オルゴールはあくまで例えなんだけど、原理としてはそれと同じなんです。

オルゴールで考えたらちょっと分かったかも!

オルゴールって言われたらなんとなく分かるんですけど、プログラミング言語ってなんか超たくさん種類がありますよね。

そうですね。

それが分かんないんですよ。何が違うんだか分からないし。

なるほど。彩歌さんって、Twitterやってますか?

やってますよ。なんなら毎日いじってるくらいなんで。

Twitterって、今や世界的な大きな会社になっているんですけど、会社を起こした当初は日本人のまつもとゆきひろさんが創ったRubyってプログラミング言語を使ってたんです。今は違う言語に変わってるんですが、当時日本のプログラマーの間だと結構話題になって。

へー。るびーっていうのは聞いたことないですけど、じゃば? っていうのは聞いたことありますよ。もちろん、意味は分かってないですけど。

お! まさにTwitter社が、Rubyから乗り換えた言語が、Javaですよ!

えっそうなんですか!? やるじゃんあたし!

よりTwitterの目的に合う言語を、と考えてRubyからJavaに変えたみたいですね。

とにかくRubyっていう言語とJavaっていう言語があるらしいっす!(精一杯の理解)

へーー。言語が変わるだけで何か大きく変わるもんなんですか?

けっこう変わります。例えば性能。今、Twitterを使っていてストレスを感じたことはありませんが、昔は投稿や検索をするのに時間がかかったりしてたんです。ユーザーにもっと便利なサービスを提供したいっていう思いで変えたんでしょうけど。

ほうほう。いいことじゃないですか、ユーザー思いで。

ただ、言語の乗り換えってまずやらないんです。お金もかかるし人手も必要になってくるしで、色々大変なんですよ。

そこまでの犠牲をはらってでも手に入れたい何かがあったんですか?

まさにそうですね。それが今日の本題。プログラミングって言語ごとに長所短所があるんです。

おっと、本格的な話になってきた……。

難しい話が始まったぞ……

Javaってプログラミング言語が、一番支持されている最大の理由が、どんなハードウェア上でも動くことです。

え、動かないこともあるんですか。……もしかしてですけど、MacとWindowsもプログラミング言語が違ったりします?

もちろん、違いますよ。

ええーー、言語多すぎでこんがらがるぅ!

そう思いますよね? だから共通で動いてくれるJavaに、エンジニアは飛びついたんですよ。

なら、もうJavaだけ覚えていれば何とかなりそうですね。

プログラミング言語で「会話」ってできるんですか? 女子大生、多すぎるプログラミング言語に困惑 - ねとらぼ

ただ、どのハードウェアでも動く反面、プログラムのスピードが遅いっていう短所もあるんです。速さが求められる場合は、違う言語を使う、とかそういう感じ。

え、でもTwitterはそのJavaに変わったんですよね。Twitterを使ってて、遅いって感じたこと一度もありませんよ?

Twitterはね、使われている言語は確かにJavaですけど、速くなるように、相当プログラマー達が頑張っているんです。「言語の性質+プログラムの組み方=そのプログラムの性能」になるわけです。だから慣れていないプログラマーが作るとおそらく遅くなりますよ。

ははーん、そこがプログラマーの腕の見せ所ってわけですか。

ちなみにプログラムって、言語ごとに定められたルールに従って書く作業だから、かなり“カッチリした人”の傾向が高いかな。それとは逆に、フラフラするきまぐれなタイプの人は少ない気がします。

へぇ、理系っぽいですねやっぱり。

もちろん個人差はありますけどね。ちなみに彩歌さんはどちらです?

完全に後者です!

連載終了になってしまう(笑)。

でもどちらかと言えばなんで(笑)。それよりも気になっていることがあるんですが、プログラマーのお給料っていくらくらいなんです?

ピンキリだけど、安くて時給2000円程度。優秀な人だと8000円以上もふつうにありますよ。

え、たっか!!

そこまでいかなくてもそこそこの腕になれば、5〜6000円は余裕です。

ひょえーーーーーー!

プログラミングってすげー!

国の統計だとプログラマーの人手不足は現状でも数十万人にも及ぶらしいんで、身につけておくスキルとして狙い目ですよ。特に若者は大歓迎ですし、パソコン1台でできるので副業にも向いてます。どうです、彩歌さん?

ううむ、プログラマーも視野に入れるかー。

そもそもなんですが、舘さんはどうしてプログラマーになったんですか? 相当なきっかけがない限り、「プログラマーになろう!」なんて思わないのかなーと。

中学生の頃に学校にパソコンが導入されたんですよ。当時、男子は興味津々で、「こんな世界があるんだ!」って思ってプログラミングに興味を持ち始めたんです。

ひょえー、あたしは高校までパソコン持ってなかったのに。

中学生のとき、BASICってプログラミング言語を使って、クラスメイトとゲームを作ったんです。今みたいに凝ったゲームじゃなくて、もっとすごく単純なものですけど。

中学生男子が好きそうな遊びですねー、なんか想像つきます。

男子ってゲームとか好きだもんねー(ちなみにあたしはファミコンも見たことないです)

そのときすごくワクワクしたのが私の原体験ですね。今でも鮮明に覚えています。

その経験がなかったら今は違う職についていたかも?

ですね。あの当時、パソコンが私に与えた影響はとても大きかったです。だから今もプログラミングに関する仕事もしていれば、自分でプログラミングを書くこともあるくらい。

今はインターネットが普及しすぎて、そこまで影響力を感じないのは、やっぱりあたしも現代っ子なんだな。

それですよ。今や、小学生もスマホ1台与えられる世の中になっているんで、プログラミングを勉強する価値とか新鮮さは見えづらくなっている気はしますね。

確かに……。公園に来てる小学生たちが無言でスマホの画面を見ている光景とかを見ると、「いや、ならわざわざ集まらなくてもよくない?」とか思っちゃいます。

2020年から、小学校でプログラミングに関する授業も始まりますけど、そういう部分も教えてほしいですね。プログラミングって便利で楽しいものですから。

ところで「プログラミング言語」って言語って言ってますけど、会話とかできるんですか?

か、会話?

例えば、「今日の昼飯どうするー?」「じゃあ今日は寿司にするか!」的な感じで。

それは無理があるかな(笑)。言語と言っても全体像とか完成図がある上でそれを組み上げていくパズルのピースみたいなものなので。

なんだー。言語と言われると、文系だとどうしても「言葉」のイメージがありまして。

意味合い的には、数式が近いかな。旅行のプランを立てるときに、「何時」の「飛行機」で「アメリカ」に行くとか、そういうことを決めるためのものって感じです。

うーむ、日常会話みたいに言語として話せたら面白いのに。

発想は面白いですけどね(笑)。ちなみにプログラミング言語で使うのは、ifとかcatchとかの中学レベルの英語なので慣れてしまえばそんなに難しくはないですよ。

へー。英語だと単語、熟語、文法とかを学びますけどプログラミング言語だと何を勉強すればいいんですか?

どのプログラミング言語もまず覚えるのは文法ですね。何を作るかによって使う言語が変わりますけど基本は文法。

言語って何種類くらいあるんですか?

いくつだろう……。Webページを書くための言語がHTMLやCSS、AndroidはJava、iOSはswift……50とか100とかあるかもしれないです。

うわー言語量が半端ないな。舘さんは何言語使えるんですか?

数えたことなかったなあ。まあ10言語はできますかね。

え、うわ、10カ国語喋れるのと同じですよね。ちょーバイリンガル(※)じゃないですか舘さん!

(※編注 バイリンガルは「2言語」なので正しくは「マルチリンガル」ですね)

そうかな(笑)。といっても、言語によってはパターンが似ているので、1つ覚えると同じ感覚でさくさく覚えられますよ。

それでもリスペクトだな〜。やっぱり多い方がすごいんですか? 俺は10言語できるぜ、的な?

いやぁ、それは場合によりけりで例えばゲーム業界は全くの逆ですよ。1言語をペラペラになる勢いで極める方が伝説のプログラマーみたいになったりしますし。隅々まで知っている人とそうでない人とでは、できる内容が違うので。

へーー。じゃあこの世で一番使われているプログラミング言語って何なんです?

あ、それはもうC言語が圧倒的に多いです。歴史が長くてさまざまなところで使われているので。

ほう、しぃーげんごなんですね〜(よく分かってない)。

そうなんです(よく分かってないな)。

よく分かってなくてすいません

いろいろ教えてもらったんですけど、結局あたしは何から学ぶのがいいんですかね〜。

そうですねえ、まずは彩歌さんがなじみのあるものから入るのがいいかもしれません。

ホームページを作るのもプログラミング言語ですか?

お、それはHTMLというプログラミング言語ですよ!

そうなのか! 前にわけのわかんない文字列をカタカタいじってサイトの更新してるところを見たことがありますよ。

じゃあ次はHTMLで彩歌さんの簡単なホームページのようなものを作ってみましょうか。実際に形になるところを見たほうが理解しやすいと思うので。

いよいよプログラミングが始まるのか……。

今回は結構多くのことを学んでもらったかと思いますが、どうです、プログラミングに対して興味の度合いは。学ぶ前をゼロだとしたら、今は何点になりましたか?

100点満点中ですか?

そうです。正直に、辛口で構いませんよ。

うーーーん、12点!

だいぶ上がった! ……と思っていいのかな?(笑)

でも舘さんと話すのは楽しかったですよ!

 今やっと「よいこらしょ」と腰を上げた程度の理解でしょうか。前回は、何も見えなかったプログラミングのイメージが、やっと薄く見えてきた気がします。

 と言っても、まだプログラムを書けるわけではないしパターンも文法もさっぱり。おそらく、プログラミングの0.4割程度しかまだ理解し切れていないと思うので、それはこれからですね。この先、長い旅になると思いますが、ちょっとだけお付き合い願います(笑)。

まだまだプログラミングがどういうものか分かったような分からないような状態の女子大生。もう実際に触ってみたほうが早い(かも)! ということで次回ははじめてのホームページ作りにチャレンジします。

Copyright © ITmedia, Inc. All Rights Reserved.

昨日の総合アクセスTOP10

  1. マイクラ上の建築で再現した“郊外の街並み”がリアルな日本の風景 驚きの作り込みに「写真だと思った」「変な声出た」
  2. 歌い手「まふまふ」が潤羽るしあ契約解除の件でコメント 「今後関わることはやめましょうという結論」
  3. はじめしゃちょー、“10年以上の推し”との対面ドッキリで言葉を失う 「ガチのファンの反応」「リアクション取れてない」と好感の声
  4. バレー日本五輪代表・藤井直伸、ステージ4の胃がん公表 盟友らがエール「絶対乗り越えられる!」「ずっと待ってるよ」
  5. 「イケメン街道まっしぐら」「ジャニーズ入れます」 アレクサンダー、4歳息子の“パパ似”美男子ショットに反響
  6. 「い、生きてる天使や」「可愛すぎるって表現がぴったり」 ママと赤ちゃんウサギのお披露目にもん絶する人続出
  7. アレク、中学3年生時の写真に妻・川崎希もびっくり 「1000年に1人の美少年じゃん!!」
  8. バレー日本代表・藤井直伸、胃がん公表から一夜明け「元気、勇気をいただきました!!」 同期選手は“丸刈り”でエール
  9. 「真犯人フラグ」衝撃の展開に視聴者悲鳴 明かされた猫おばさんの正体と“黒幕”「人間不信レベル」「完璧なクソ野郎」【ネタバレ注意】
  10. 「とにかくユーザーを楽しませたい」という意思が随所ににじむ快作 Switch「刀剣乱舞無双」が想像以上に楽しかった

先週の総合アクセスTOP10

  1. ワリエワ問題、平昌メダリストが坂本花織のため激怒「なぜ彼女が罰せられるのか」 米では計3種の薬物使用が確認されたと報道
  2. 篠田麻里子、結婚から3年で年下夫をYouTube“初顔出し” 「そのイケメン顔は反則」と注目集まる
  3. 「お姫様抱っこキター」 羽生結弦選手、シンユー・リウ選手にお姫様だっこされた“イチャイチャ”ショットにファン歓喜
  4. 水ダウ出演の西山茉希、輪ゴム10本で“想定外”の変貌 唇がめくれ上がった顔面に視聴者「衝撃で涙出そう」
  5. 高山一実、10年間秘密にしていた“ほんとう”の名前明かす「今まで隠しててすみません」 本名が載った卒アル公開
  6. 「地上でもこんなことできるんですね」 りくりゅうペア、五輪マークバックの記念写真が“金メダル”級
  7. 全部まぼろしだったのか……!? 「どん兵衛」新CM、衝撃的すぎる展開に「どんぎつねさあああぁぁぁぁぁーーーん」「泣く」と動揺広がる
  8. 「スキージャンプ・ペア」が20年の時を越えTikTokで再飛躍 当時5歳の天才キッズに再び熱視線
  9. 織田信成、ザギトワ&メドベージェワと決めポーズで“何させとんねん” 五輪公式「最高にいいツーショット」
  10. 小林陵侑「パンダしか反響ないんだが」 “感謝のインタビュー”でのマスコットの扱いが気になって仕方ない

先月の総合アクセスTOP10

  1. 「初めて目にした名字」「剣士のような本名」 つるの剛士、本名公開で“漢字のつる”に驚きの声
  2. プロレスラー竹田誠志、元アイドルの妻が急死 「現実を受け止められません」「小さい子供も居ます」と活動休止へ
  3. ワリエワ問題、平昌メダリストが坂本花織のため激怒「なぜ彼女が罰せられるのか」 米では計3種の薬物使用が確認されたと報道
  4. 「ものすごい量」「こんなにたくさん!」 羽生結弦、世界中から届いた“山積みファンレター”が話題に
  5. 篠田麻里子、結婚から3年で年下夫をYouTube“初顔出し” 「そのイケメン顔は反則」と注目集まる
  6. 「お姫様抱っこキター」 羽生結弦選手、シンユー・リウ選手にお姫様だっこされた“イチャイチャ”ショットにファン歓喜
  7. 「大怪獣のあとしまつ」レビュー 見た後に怒りの後始末が必要な全方位にスベり散らす怪作ギャグ映画
  8. 「ワンオク」Taka、イケメンぞろいの写真で1人だけ様子がおかしい 三浦翔平&城田優&佐藤健との“合成”4ショットに反響
  9. 織田信成、ザギトワ&メドベージェワと決めポーズで“何させとんねん” 五輪公式「最高にいいツーショット」
  10. 東京の都心部まで「だいたい45分」で行けるのはどこらへんまで? を可視化した地図が面白い 意外なところも「45分圏内」に

提供:Sky株式会社アイティメディア営業企画/制作:ねとらぼ編集部/掲載内容有効期限:2019年10月22日

関連記事