開発者の最新動向--人気のプログラミング言語やフレームワークは?
コメント
選択しているユーザー
ブロックチェーンとTCP/IPはレイヤが違うので同列に語るのはちょっと...。
ブロックチェーンは必須技術になるかどうかと言われると、結構微妙かなというか。まぁ知っておく事はシステムを実現するための方法論をより多く知っているという事だし邪魔にはならないので良い事だとは思います。
個人的には俗にデータベースと言われてる領域で選択肢になる気はします。
ほとんどRDBMSしかなかったところにKVSという選択肢が出てきて、KVSにもいろいろ実装が出てきて、それぞれの得意不得意を踏まえて用途的な棲み分けがされているなかに、ブロックチェーンという選択肢が増える。
仮想通貨とブロックチェーンという言葉に踊らされて、ブロックチェーンに幻想を抱きすぎてる人が世の中に多い気はしてます...。
何というか、目指すところはユーザ体験だったり利便性だったりの実現なので、目指すところに対してブロックチェーンを使うのが都合が良いよね!と思われるところは使えば良いんだと思います。現状、その最たる例が仮想通貨だと思います。
1つの巨大組織に頼る事なくみんなで価値を証明し合う事に価値があるネットワークなので。
ただ、現状では、他に同様の用途があまり思いついてないというか。
成り立ちとして難しいんですよね。どこかの企業が出したサービスが流行る流れだと、出発地点が社会共通の合意形成を必要としてないのでブロックチェーンで作り始めないですから。
既に今ある社会インフラの置き換えとかで、みんなの合意形成みたいな物がアナログで存在している所を一斉に置き換えるみたいな用途だと合いそうなんですが...。
現状だと流行り物のブロックチェーンを使って何かやりますと言っておけば資金調達に役立つみたいな状態で、仕組みとして都合が良いからブロックチェーンを使うんじゃなくて聞こえが良いからブロックチェーンという技術を使ったものを作ろうと順序が逆になってるというのが現実だと思いますよ。
注目のコメント
「ブロックチェーン技術は、近い将来の技術的な変革に影響を与えるというよりも、インターネットの基礎的な構成要素であるTCP/IPのような、私たちのデジタル体験を支える基礎的な技術になる可能性があり、開発者はこの未来像を形作るにあたって重要な役割を果たすだろう」
サラッと書いてあって本記事の真意ではないけど、Web3に関する色んな議論を収束させられるめっちゃいい1文だと思いました。ブロックチェーンに絡む技術は必須になるんだろうな。
Web3とかDAOの基盤というよりも、社会基盤を支える技術になるように感じます。
エンジニアの皆さんは、色んな意見ありそうで面白い。開発者でない方は、何を言っているやらと思うでしょうから、少し解説したいと思います。
まず、Webの技術については、クライアントサイドと、それと対になる概念としてサーバサイドと言われる技術があります。これは、Webサイトの描画のための処理をクライアント側(手元のパソコンやスマホのブラウザ)で行う場合とサーバ側で行う場合の二つがあります。NewsPicksのサイトでも左上端の横線三つのボタンを押すとメニューが開きますが、これは、長い読み込みなしにメニューが開きますが、これはクライアント側で処理をしています。それ以外の多くのボタンでは、新しいページを表示するためのHTMLがサーバから送信されて描画しますが、これがサーバサイドでの処理と呼ばれるものです。
また、クライアント側で処理を記述する言語Javascriptで、その中で勢いのあるフレームワークがメタが開発したReactだろうと思います。
ここで、フレームワークという言葉が出てきましたが、プログラミングをする上での便利な枠組みです。部品を提供したり、データベースに対する指定をするのはここ、Webページの雛形を置くのはここと決めごとがあり、それに従うことでシステム開発の生産性があがります。
JavaはサーバーサイドのWebで使われる用途と、Androidスマホのアプリ開発に使われる用途の二つがあります。サーバーサイドで使われる場合には、比較的大規模な案件に使われる場合が多く、それに対してPHP(代表的なフレームワークはLaravel)やRuby(on Rails)などは比較的小規模な案件に使われることが多いです。
Pythonはデータ処理やAIに関するフレームワーク(データ処理:Pandas, AI一般:Scikit-learn, AIディープラーニング:Tensorflow, Pytorch)が充実していますのでこれらによく使われます。サーバサイドのWebもDjangoやFlask、FastAPIなどもありますが、地方だとこのような案件は少ないようです。
ブロックチェーンは、データの改ざんが行われていないことを保証する枠組みです。これは改ざんがないかどうかを問い合わせに対して多数決を取ることなどによりセキュリティを担保します。ただし、51%攻撃といったリスクがあることは頭の片隅に入れておくとよいと思います。