プログラミングライフスタイル

「最先端」のプログラミングとは?

「最先端のプログラミング」について教えてください。

すごく抽象的なテーマだね・・・

これから学んだ方が良い「プログラミング」

今日は「最先端」のプログラミングについて聞いていきたいと思います。

「最先端」の定義はいろいろありそうだね。

例えばどの開発分野の「最先端」なのかで変わってくると思うよ。

なるほど。カズさんの注目している「最先端」なプログラミングは何ですか?

「量子プログラミング」かな。

前に少し教えてもらいました。あれすごく難しいです。

そうだね。「最先端な技術」だから簡単じゃないよ。

何でそこに注目したんですか?

周りのプログラマでもあまり注目している人がいないからかな。

他のプログラマが注目している技術はかなり普及してきている状態だから「最先端」で無くなってきていることも多いよ。

「最先端の技術」はまだ「研究段階」だからそこに注目する必要があるのかなと思う。

今多くの人が利用している技術が「最先端」なんだと思っていました。

それはサトル君と自分の「最先端の基準」が異なっているからだね。

「現在普及している最先端の技術」という意味になるかな。

「量子プログラミング」は難しすぎて付いていける気がしません。

自分が興味を持ったのは、業務で「物理計算」を行うプログラムの開発に携わっていたというのもあると思う。

「物理・力学」を学んでいて、そこに自然に繋がったからじゃないかな。

それは知りませんでした。

「力学」には「古典力学」と「量子力学」という2つがあって、現在のコンピュータは「古典力学」を利用したコンピュータなんだ。

そして、「量子力学」を利用したコンピュータを「量子コンピュータ」と呼んでいるよ。

その「量子コンピュータ」で動く言語が「量子プログラミング言語」だね。

少し違いが理解できてきた気がしました。

「量子コンピュータ」は計算速度が早いと聞いたことがあります。

それは「問題の種類」によって「量子コンピュータ」が早い場合があるということだね。

全てにおいて「量子コンピュータ」が勝っているというわけではないよ。

例えば「組み合わせ最適化問題」と呼ばれる「大量の組み合わせ」が考えられる事象から「何が一番最適なのか?」を探す問題については「量子コンピュータ」の方が早いね。

それもちょっと聞いたことがあります。

一番最適な「電車のダイヤ」を考えるとかですよね。

そうそう。それは知ってるんだね。

以前に少し話を聞いていたので調べていました。

「量子コンピュータ」とプログラミング

現在の「量子コンピュータ」のプログラムってどんなものがあるんですか?

有名なものだとマイクロソフトが開発した「Q#」じゃないかな。

マイクロソフトは「Azure Quantum」という「量子コンピューティングプラットフォーム」を作っているよ。

そんなのがあるんですね~「Windows」しか無いって思ってました。

今学んでいるような言語との違いはあるんですか?

「量子ビット」を定義してそれに対して操作を行うから、全然違うよ。

「量子ビット」に「ゲート」を作用させたり、「ビットベース」のプログラミングなので、そもそも「量子コンピュータの仕組み」がわかっていないと全く書けないかな。

「量子コンピュータ」を理解するためには「量子力学」を学ばないといけないから学習のハードルが高いと思われているんじゃないかな。

「力学」ってそもそも普通はプログラマは学ばないですよね?

そうなんだ。だから自分みたいに「物理系」のプログラムをやっていないと学ぼうとは思わないんじゃないかな。

まだ実用できるほどまで「実現していないコンピュータ」だから、「実用性が無い」というのもある。

確かに「実用性」が無いなら学ぶ必要性を感じないかも。

「今は」確かに「実用性」が無いけど、将来はわからないよ。

「将来必要になるスキル」ならそれが「最先端」なんじゃないかな。どうなるかはわからないけど。

「今活かせるスキルを身に付けたい」と考えるなら難しいんじゃないですか?

そう考えるとそうだね。「実用性」があるスキルを身に付けるべきだね。

何が目的なのかによって変わると思うよ。

そういえば僕には「目的」が全然無い気がします。

なら無理やり勉強する必要は無いかな。

簡単じゃないし時間もかかるから「学びやすい技術」から身に付けたらいいと思うよ。

もっと成長して「量子コンピュータ」が勉強できるようになるまで、頑張って勉強を続けていきたいと思います。

「興味の対象」や「必要となる技術」は人によって異なるから「自分に必要」だと思うものを学んでいくといいんじゃないかな。

前にも話をしたけれど「興味が継続できる工夫」をしながら勉強した方がいいね。

そもそも「興味が無い」ものを続けられないからね。

「興味が無い」ってことはないんですが「自分の力不足」でまだ勉強できる状態では無いという感じです。

「量子コンピュータ」にもう少し「実現性」が見えてきてからでも間に合うと思うので、少しずつ勉強を進めていくといいね。

→(前へ)これから「学びたいこと」と「学習方法」について

→(次へ)プログラマに必要な「コミュニケーションスキル」

HOMEへ