diaryこの広告は、90日以上更新していないブログに表示しています。2018-03-11ブロックチェーンが気になるブロックチェーンという言葉をよく耳にする。いわゆるバスワードだ。気になって仕方がない。「信頼のプロトコル」なんて言い方もあって基本技術だしくみがシンプル思想がフェアな感じがするであることを知ってとても気に入っている。ブロックチェーンの本を読んだり、ネットでの検索もブロックチェーン関連が増えてるので、Googleさんもどんどんお勧めしてくる。考え事の第一優先事項になっている。以下のような特徴の「データ管理のしくみ」だ。いくつかの取引データをまとめてブロックにする。1つ古いブロックと新しいブロックが数珠つなぎ(チェーン)のデータ構造。最初の取引からすべて数珠つなぎで記録されてる。これらの数珠つなぎデータをネットワーク参加者みんなが持ってる。後で改ざんするのが超メンドクサイ(事実上改ざん出来ない)みんながデータ持ってるので単一障害点がない。みんなが取引をチェックして承認する。頑張ってチェックした人には報酬。なんかカッコ良いザックリ言うとこんな感じ。〜初心者のためのわかりやすい解説〜5分でわかるブロックチェーンの基本的な仕組みそして、あるロシア人の少年が「ビットコインでスクリプト使えるようにしようぜ」と提案したけど却下されてイーサリアムが始まったらしい。ブロックチェーンの説明でよく一緒に登場するスマートコントラクトです。スマートコントラクト「効率的な契約」でしょうか。ブロックチェーンに取引データがあるわけですが、その取引データを使ってスクリプトで契約を自動実行して新しい取引してしまおう。ブロックチェーン上にあるので契約(スクリプト)も改竄できない。中間業者/手続き不要。今のところ当たり前である中央(サーバ)で管理されてるしくみをみんなに見えるように晒して、ズルできなくして、面倒くさい手続きや業者やらもいらなくなるかもしれない。ブロックチェーンとスマートコントラクトが普及すると、システムの考え方が変わってきそうです。データとプログラムは各ノード(PCやスマホやIOTデバイス)にあるのが当たり前。スマートコントラクトに書かれた条件を満たせばノードが勝手に処理する。他の取引データかもしれないし、IOTデバイスのセンサーのデータかもしれない。条件判断が難解なら、そこはサーバ(AIとか)を使うためにAPIを呼び出す。なったりするのでしょう。いうことで、ブロックチェーンでスマートコントラクトなイーサリアムを特に意識したい。diaryで触れたAdminサイトについて。Django)を見ていただきたい。言うと以下の作業で管理サイトが出来ます。管理サイトを有効化ER図さえ作れば(操作感や見た目にこだわらず)テーブルをCRUDするだけのWebアプリであれば、1日(もかからない)で出来てしまいます。マスタメンテとしては充分な機能です。SI系の開発(ウォーターフォール)でも、要件定義や基本設計のできるだけ早いタイミング(作成請負部分の見積前)に管理サイトをユーザーに見てもらうことで、後工程の手戻りを減らせるような気がする。期待しすぎでしょうか?(そもそもSI系の開発でPython/Djangoを採用するか?という話はありますが...)上で「操作感や見た目にこだわらず」と書きましたが、ある程度カスタマイズできます。自分でカスタマイズすることもできますが出来るだけ手間をかけたくないのでライブラリ紹介サイトを見てみる。DjangoDjangoで使えるライブラリなどを紹介してます。(http://awesome-django.com/#awesome-django-admin-interface)をザッと眺める。管理Console風のデザインに。Djangoアプリを追加する場合に良いかも。bootstrapに。bootstrapに。カスタムフィールドを簡単に追加。レスポンシブデザインに。ダッシュボードとナビゲーションメニューを追加してカッコ良く。django.contrib.admin→拡張性と適応性に焦点を当て、今風のUIで管理画面を作り直してる(途中)。APIも自動で作れちゃうみたい。