見出し画像

魔法なんてない! それはアルゴリズムだ!

SF ものの海外ドラマをよく見るのだけど、そのなかで出てきたフレーズの出典を見つけた。「クラークの三法則」の 3つ目で、「十分に発達した科学技術は、魔法と見分けがつかない。」というものです。

  1. 高名で年配の科学者が可能であると言った場合、その主張はほぼ間違いない。また不可能であると言った場合には、その主張はまず間違っている。

  2. 可能性の限界を測る唯一の方法は、その限界を少しだけ超越するまで挑戦することである。

  3. 十分に発達した科学技術は、魔法と見分けがつかない。

最近の、クラウドサービスの連携によってもたらされている状況は、まさに「魔法」と表現してもいいのかもしれない…

魔法?

ドラマや映画のジャンルとして、「SF」だけでなく「ファンタジー」もよく見ます。ああいった世界での魔法って、ファンタジーではあるけれど、ある意味で技術(テクノロジー)と同じように論理的なように思えます。
呪文や魔法陣のような手順が必要だったり、効果に応じた魔力が必要だったりするのですから。ファイヤーマリオのように、手のひらから火の玉が出せる手順(アルゴリズム)が解明できれば、誰でも火の玉を投げられるようになるはずです。

魔法使いのイラスト(男性)

残念なことに、わたし達が生活している現実の世界では、少なくとも現時点では、魔力の類が確認されておらず、呪文や魔法陣によって何かしらの効果が発揮できることも確認されていないのです…

発達した科学技術

IoT や各種情報端末などがクラウドサービスで連携するようになったことで、スマートフォンで A という商品情報を閲覧したことによって、パソコンで閲覧しているニュースサイトの広告に A に関連した B が紹介されたりする。このような動作は、理屈を知らなければとても不思議で、魔法のようにも見える。

ビッグデータのイラスト

この辺りは「ビックデータ」といったおぼろげな言葉で説明されていたりもするが、Cookie やログインしているアカウント情報によって、スマートフォンやパソコンでのアクセスが紐づけられることで実現していることがわかってくると、魔法ではないことがわかってくる。必要なのはどのように便利なサービスを実現するかのアルゴリズムなのである。

最近、「ローコード」や「ノーコード」といった言葉を見かけるようになったけれど、これらも魔法ではなく、科学技術がいろんな支援をしてくれているだけ。「何をしたいか?」は自分で考えなければならないし、「どのような手順で解決するか?」も自分で考えなければならない。
科学技術が支援してくれるのは、これまではコード(プログラム)として記述しなければならなかった部分を、コードではなく図示してくれたり、UI によって指定するだけで済むようにしてくれただけである。どのように課題を解決するかは、自身で考えなければならない。

プログラムやシステム開発は、省力化が図れるかもしれないけれど、まだしばらkは技術者が必要な状況が続くんだろうな。

この記事が気に入ったらサポートをしてみませんか?