We may earn an affiliate commission when you visit our partners.
Course image
酒井 潤 (Jun Sakai)

このコースではブロックチェーンの技術とPythonを用いて仮想通貨の送金システムを構築しながらブロックチェーンの根幹にある技術、考え方とその応用方法をハンズオンで学びます。

Blockchain技術は難しい技術資料が多い上に、ブロックチェーン=仮想通貨=怪しいというイメージを持たれがちですが、ブロックチェーンの技術はIT業界の常識を覆し、次世代のネットワーク分散システムのプラットフォーム上で未知なる可能性を秘めています。

ブロックチェーンネットワーク上では、もちろん送金決済、地域通貨、ポイントサービス、その他のデジタル資産のやり取りがインターネット上でできるようになりますが、資産の所有権を記録することもできるため、ブロックチェーンが信頼するIDとして、土地管理、財産の所有権、その他物的財産の所有権を示すこともできます。また、投票やパスポート取得、権利やサービスへも使えます。また、日々書類で行われている行政サービスや不動産契約などの信頼も証明することができます。ここで挙げた以上に多くの分野で使用される可能性が高いのです。

FacebookがLibraの仮想通貨を発表し、Amazon、Microsoft、IBMなどの大企業ではブロックチェーンのプラットフォームを提供し始めました。これは、今後ブロックチェーンのインフラが使用される機会が増えることを予測しているからこそかと思います。

Read more

このコースではブロックチェーンの技術とPythonを用いて仮想通貨の送金システムを構築しながらブロックチェーンの根幹にある技術、考え方とその応用方法をハンズオンで学びます。

Blockchain技術は難しい技術資料が多い上に、ブロックチェーン=仮想通貨=怪しいというイメージを持たれがちですが、ブロックチェーンの技術はIT業界の常識を覆し、次世代のネットワーク分散システムのプラットフォーム上で未知なる可能性を秘めています。

ブロックチェーンネットワーク上では、もちろん送金決済、地域通貨、ポイントサービス、その他のデジタル資産のやり取りがインターネット上でできるようになりますが、資産の所有権を記録することもできるため、ブロックチェーンが信頼するIDとして、土地管理、財産の所有権、その他物的財産の所有権を示すこともできます。また、投票やパスポート取得、権利やサービスへも使えます。また、日々書類で行われている行政サービスや不動産契約などの信頼も証明することができます。ここで挙げた以上に多くの分野で使用される可能性が高いのです。

FacebookがLibraの仮想通貨を発表し、Amazon、Microsoft、IBMなどの大企業ではブロックチェーンのプラットフォームを提供し始めました。これは、今後ブロックチェーンのインフラが使用される機会が増えることを予測しているからこそかと思います。

また、ブロックチェーンができるエンジニアの求人はシリコンバレーでも増えており、今後ブロックチェーンが開発できるエンジニアの希少性が高まることが期待できます。

プロックチェーンのエンジニアにならなくとも、ブロックチェーンを実装された経験はきっと就職や転職の際に提出する履歴書の中でも目立つものとなるので、この機会にブロックチェーンの実装をしてみしょう。

それでは、今後とも皆様のご活躍お祈りしております。

Enroll now

What's inside

Learning objectives

  • ブロックチェーンの仕組みを理解することができます。
  • Pythonを使ったブロックチェーンの基本となる開発を学べます
  • ブロックチェーンのトランザクションの認証を理解することできます。
  • ブロックチェーンを繋げるハッシュの仕組みができます。
  • プロックチェーンのマイニングでのナンスを導き出すコンセンサスアルゴリズムが理解できます。
  • ブロックチェーンの分散された合意形成のコンセンサスの仕組みが理解できます。
  • 仮想通貨の送受信の仕組みが理解できます。

Syllabus

ナンスを導き出す
マイニング
トランザクションの合計を計算する
はじめに
Read more

Traffic lights

Read about what's good
what should give you pause
and possible dealbreakers
Uses Python, a popular and versatile language, to build a blockchain, making it accessible to a wide range of developers
Explores the underlying technology and concepts behind blockchain, which is essential for understanding its potential applications beyond cryptocurrencies
Covers topics such as consensus algorithms and mining, which are fundamental to understanding how blockchain networks operate and maintain security
Includes hands-on exercises to build a cryptocurrency transfer system, providing practical experience in blockchain development
Focuses on building a blockchain from scratch, which provides a deeper understanding of the underlying mechanisms and allows for customization
Teaches how to create wallets, generate blockchain addresses, and sign transactions, which are crucial skills for building blockchain applications

Save this course

Create your own learning path. Save this course to your list so you can find it easily later.
Save

Reviews summary

実践的なpythonブロックチェーン開発入門

学習者によると、このコースは現役シリコンバレーエンジニアが教える実践的なハンズオンが特徴です。特にPythonを使ってブロックチェーンを一から構築するアプローチは、ブロックチェーンの仕組みを深く理解するのに役立つと多くの受講生から高く評価されています

入門コースとしては分かりやすい説明で、ブロックチェーンの全体像を掴むのに適している一方で、一定のプログラミング知識がないと難易度が高いと感じる学習者もいます。環境構築や実行時の技術的な問題に直面する可能性があり、解決に時間がかかる場合もあるようです。基礎固めには最適ですが、より発展的な内容最新技術については別途学習が必要という声もあります。
より深い応用は別途学習が必要
"ブロックチェーンの基本的な仕組みを学ぶには良いですが、実際の開発や応用にはこれだけでは不十分です。"
"入門としては非常に満足ですが、最新のブロックチェーン技術やエコシステム全体についてはカバーされていません。"
"自分で一から構築する経験は貴重ですが、より大規模なシステムや他のフレームワークは別途学ぶ必要があります。"
"基礎固めには最適ですが、実務で使えるレベルになるには更なる学習が必要です。"
プログラミング経験者向けの内容
"Pythonでの開発経験が多少なりともないと、コードの理解に苦労するかもしれません。"
"全くのプログラミング初心者には少しハードルが高いと感じました。"
"入門コースとありますが、基礎的なPythonの知識は前提として必要だと感じました。"
"環境構築やエラー解決で躓きやすく、自力で調べる力も必要になります。"
信頼できる実践的な情報が得られる
"現役シリコンバレーエンジニアの方の講義ということで、現場感のある話や視点が学びに説得力を持たせていました。"
"インストラクターの実績があるため、安心して学習に取り組めました。"
"単なる技術解説に留まらず、実体験に基づいたアドバイスもあり参考になりました。"
"この道のプロから学べる機会は貴重だと思います。"
ブロックチェーンの基礎が明確に理解できる
"ブロックチェーンの基本的な仕組みや考え方が、初心者でも分かりやすく解説されていました。"
"ハッシュ、ナンス、コンセンサスなどの専門用語が、具体的な例を通して理解しやすかったです。"
"このコースのおかげで、今まで曖昧だったブロックチェーンの全体像をしっかり掴むことができました。"
"難しい技術ですが、解説が丁寧なので入門には最適だと思います。"
手を動かしながらブロックチェーンを構築
"実際にPythonでコードを書きながら進めるので、ブロックチェーンの仕組みがただの説明よりも深く理解できました。"
"ハンズオン形式で送金システムを作っていく過程が非常に実践的で面白かった。"
"理論だけでなく、自分で手を動かして実装することでブロックチェーンの概念が腑に落ちました。"
"自分で書いて動かす体験ができるのは、他の座学コースにはない大きな強みだと感じました。"
セットアップで時間を要する場合がある
"開発環境の構築部分で少し手間取りました。OSや環境によっては追加の設定が必要かもしれません。"
"講義通りに進めているつもりでも、エラーが出てしまい解決に時間がかかりました。"
"使用するライブラリのバージョン問題か、コードがうまく動かない箇所がありました。"
"環境構築のサポートがもう少し手厚いと初心者には助かります。"

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in 現役シリコンバレーエンジニアが教えるPythonで始めるスクラッチからのブロックチェーン開発入門 with these activities:
Pythonの基礎を復習する
コース開始前にPythonの基礎知識を復習することで、ブロックチェーン開発の学習がスムーズに進みます。
Browse courses on Python
Show steps
  • Pythonの基本的な構文(変数、データ型、制御構造など)を復習する。
  • 関数とモジュールの使い方を理解する。
  • 簡単なPythonプログラムを作成して実行する。
「Pythonスタートブック」を読む
Pythonの基礎を固め、コースへのスムーズな導入を支援します。
Show steps
  • 書籍を購入または図書館で借りる。
  • 書籍の目次を確認し、興味のある章から読み始める。
  • サンプルコードを実際に実行してみる。
簡単な仮想通貨の送金システムを構築する
コースで学んだ知識を応用し、実践的なスキルを身につけます。仮想通貨の送金システムを構築することで、ブロックチェーンの仕組みをより深く理解できます。
Show steps
  • 送金に必要なデータ構造(トランザクション、ブロックなど)を設計する。
  • Pythonでデータ構造を実装する。
  • 送金処理のロジックを実装する。
  • 簡単なUIを作成して、送金システムをテストする。
Three other activities
Expand to see all activities and additional details
Show all six activities
ブロックチェーンに関するブログ記事を書く
学んだ知識を整理し、アウトプットすることで理解を深めます。ブログ記事を書くことで、ブロックチェーンの仕組みを人に説明できるようになります。
Show steps
  • ブログ記事のテーマを決める(例:ブロックチェーンの仕組み、仮想通貨の未来など)。
  • テーマに関する情報を収集する。
  • ブログ記事の構成を考える。
  • ブログ記事を書く。
  • ブログ記事を公開する。
「詳解 Bitcoin」を読む
ブロックチェーン技術の理解を深め、より高度な開発スキルを習得します。
Show steps
  • 書籍を購入または図書館で借りる。
  • 書籍の目次を確認し、興味のある章から読み始める。
  • 難しい箇所は、インターネットで検索したり、他の書籍を参考にしたりする。
ブロックチェーン関連のオープンソースプロジェクトに貢献する
実践的な経験を積み、コミュニティに貢献することで、スキルアップと知識の定着を図ります。オープンソースプロジェクトへの貢献は、他の開発者との交流を通じて、新たな知識や視点を得る機会にもなります。
Show steps
  • GitHubなどでブロックチェーン関連のオープンソースプロジェクトを探す。
  • プロジェクトのドキュメントを読み、貢献方法を理解する。
  • 簡単なバグ修正やドキュメントの改善から始める。
  • 徐々に貢献の範囲を広げていく。

Career center

Learners who complete 現役シリコンバレーエンジニアが教えるPythonで始めるスクラッチからのブロックチェーン開発入門 will develop knowledge and skills that may be useful to these careers:
ブロックチェーン開発者
ブロックチェーン開発者は、ブロックチェーン技術を使用して分散型アプリケーションを構築し、維持する役割を担います。このコースでは、Pythonを使用して仮想通貨の送金システムを構築することで、ブロックチェーンの根幹にある技術と概念、そしてその応用方法を実践的に学ぶことができます。特に、ブロックチェーンクラスの作成、ブロックのハッシュ算出、トランザクションの追加、Proof of Work、コンセンサスアルゴリズム、秘密鍵と公開鍵、ブロックチェーンアドレスの生成、トランザクションの署名と証明など、開発に必要なスキルを習得することができます。また、Flaskを使用したサーバーの立ち上げや、ブロックチェーンネットワークの構築、コンセンサスの実装など、実践的な知識も身につけられます。これにより、ブロックチェーン開発者として必要な技術と知識を総合的に習得できます。
仮想通貨エンジニア
仮想通貨エンジニアは、仮想通貨のシステム開発、運用、保守を行う専門家です。このコースでは、Pythonを用いて仮想通貨の送金システムを構築することで、仮想通貨の根幹技術を深く理解することができます。トランザクションの認証、ハッシュの仕組み、マイニングにおけるナンスの導出、分散型合意形成のコンセンサスアルゴリズムなど、仮想通貨システムに不可欠な要素をハンズオンで学べます。また、ウォレットの作成、秘密鍵と公開鍵の取り扱い、トランザクションの署名・証明など、セキュリティに関する知識も習得できます。さらに、ブロックチェーンサーバーのAPI作成や、ブロックチェーンネットワークの構築を通じて、実際の仮想通貨システム開発に必要なスキルを身につけることができます。
分散型アプリケーション開発者
分散型アプリケーション(DApps)開発者は、ブロックチェーン技術を活用して、中央集権的な管理を必要としないアプリケーションを構築します。このコースでは、Pythonを使用してブロックチェーン技術の基礎を学習し、仮想通貨の送金システムを構築することで、DApps開発に必要な知識とスキルを習得できます。特に、ブロックチェーンの作成、ブロックのハッシュ算出、トランザクションの追加、コンセンサスアルゴリズムの実装など、DAppsの基盤となる技術を深く理解することができます。また、ブロックチェーンネットワークの構築やAPIの作成を通じて、DAppsのバックエンド開発に必要なスキルも習得できます。このコースを通じて、DApps開発者として必要な知識と実践的なスキルを身につけ、革新的なアプリケーション開発に貢献できます。
ブロックチェーンコンサルタント
ブロックチェーンコンサルタントは、企業に対してブロックチェーン技術の導入や活用に関する戦略的なアドバイスを提供する役割を担います。このコースでは、ブロックチェーンの仕組みや仮想通貨の送金システムを構築する過程で、ブロックチェーン技術の基礎と応用を学ぶことができます。これにより、ブロックチェーン技術が様々な分野でどのように活用できるかを理解し、コンサルタントとしてクライアントに適切なアドバイスを提供する上で役立ちます。特に、ブロックチェーンが信頼するIDとして、土地管理や財産の所有権、投票やパスポート取得などに活用できる可能性について学ぶことは、コンサルタントとして多角的な視点を持つ上で重要です。また、FacebookのLibraやAmazon、Microsoft、IBMなどの大企業がブロックチェーンプラットフォームを提供し始めている現状を踏まえ、企業のブロックチェーン導入を支援することができます。
スマートコントラクト開発者
スマートコントラクト開発者は、ブロックチェーン上で自動的に実行される契約(スマートコントラクト)を開発する専門家です。このコースでは、Pythonを用いて仮想通貨の送金システムを構築する過程で、ブロックチェーンの基本的な仕組みやトランザクションの処理方法を学ぶことができます。これらの知識は、スマートコントラクトのロジックを理解し、実装するために不可欠です。特に、トランザクションの署名と証明、コンセンサスアルゴリズムの理解は、スマートコントラクトのセキュリティを確保する上で重要です。このコースで得られる知識は、スマートコントラクト開発者としての基礎を構築し、より高度なスマートコントラクトの開発に挑戦するための足がかりとなります。
セキュリティエンジニア
セキュリティエンジニアは、情報システムやネットワークをサイバー攻撃から保護する役割を担います。このコースでは、ブロックチェーン技術のセキュリティに関する側面、特にトランザクションの署名と証明、秘密鍵と公開鍵の取り扱い、51%アタックなどの脅威について学ぶことができます。これらの知識は、ブロックチェーン技術を活用したシステムのセキュリティ対策を検討する上で役立ちます。セキュリティエンジニアは、ブロックチェーン技術の脆弱性を理解し、それを悪用した攻撃からシステムを保護するための対策を講じる必要があります。セキュリティエンジニアリングの専門家として、ブロックチェーンインフラストラクチャのセキュリティを強化するために、このコースの知識を活用できます。
ソフトウェアエンジニア
ソフトウェアエンジニアは、様々な種類のソフトウェアアプリケーションを設計、開発、テスト、および保守します。このコースは、Pythonを使用したブロックチェーン開発の入門として、ソフトウェアエンジニアに新たなスキルセットを提供します。仮想通貨の送金システムを構築する過程で、ブロックチェーンの基本原理、データ構造、およびアルゴリズムを学ぶことができます。ブロックチェーンの作成、ブロックのハッシュ算出、トランザクションの追加などの実践的な経験は、ソフトウェアエンジニアのスキルを拡張し、分散型システムにおけるソフトウェア開発の理解を深めるのに役立ちます。このコースを通して、ソフトウェアエンジニアは、ブロックチェーン技術を活用した新しい種類のアプリケーション開発に挑戦するための基盤を築くことができます。
システムアーキテクト
システムアーキテクトは、複雑な情報システムの全体構造を設計し、システム要件を満たすための最適な技術選定を行います。このコースでは、ブロックチェーン技術のアーキテクチャと、分散型システムの設計原則を学ぶことができます。特に、ブロックチェーンネットワークの構築、コンセンサスアルゴリズムの実装、APIの設計など、システムアーキテクトが関心を持つべき要素が多く含まれています。ブロックチェーン技術の導入を検討する際に、システムアーキテクトは、このコースで得た知識を活かして、既存のシステムとの統合、セキュリティ要件、スケーラビリティなどを考慮した最適なアーキテクチャを設計することができます。このコースは、システムアーキテクトがブロックチェーン技術を理解し、活用するための貴重な情報源となります。
データサイエンティスト
データサイエンティストは、大量のデータから有益な情報を抽出する専門家です。ブロックチェーンは、透明性と不変性を特徴とする分散型台帳技術であり、データサイエンティストにとって新たなデータソースとして注目されています。このコースでは、ブロックチェーンの基本的な仕組みと、Pythonを用いたデータ分析の基礎を学ぶことができます。ブロックチェーン上のトランザクションデータや、スマートコントラクトの実行履歴などを分析することで、新たなビジネスインサイトを発見することができます。データサイエンティストは、このコースで得た知識を活かして、ブロックチェーンデータを活用した新たな分析手法を開発し、ビジネスの意思決定を支援することができます。
プロダクトマネージャー
プロダクトマネージャーは、製品の企画、開発、リリース、および改善を統括する役割を担います。ブロックチェーン技術を活用した新しいプロダクトを開発する際に、プロダクトマネージャーは、ブロックチェーンの基本的な仕組み、技術的な制約、および潜在的なユースケースを理解する必要があります。このコースでは、ブロックチェーンの基礎と、仮想通貨の送金システムを構築する過程で得られる実践的な知識を通じて、ブロックチェーン技術に対する理解を深めることができます。プロダクトマネージャーは、このコースで得た知識を活かして、ブロックチェーン技術を活用した革新的なプロダクトを企画し、開発チームを率いて成功に導くことができます。
ITコンサルタント
ITコンサルタントは、企業のIT戦略策定やシステム導入を支援する専門家です。ブロックチェーン技術は、金融、サプライチェーン、医療など、様々な分野で革新をもたらす可能性を秘めており、ITコンサルタントは、クライアント企業に対してブロックチェーン技術の導入を提案する機会が増えています。このコースでは、ブロックチェーンの基本的な仕組みと、仮想通貨の送金システムを構築する過程で得られる実践的な知識を通じて、ブロックチェーン技術に対する理解を深めることができます。ITコンサルタントは、このコースで得た知識を活かして、クライアント企業のビジネス課題を解決するための最適なブロックチェーンソリューションを提案し、導入を支援することができます。
プロジェクトマネージャー
プロジェクトマネージャーは、プロジェクトの計画、実行、監視、および終結を管理する役割を担います。ブロックチェーン技術を活用したプロジェクトを推進する際に、プロジェクトマネージャーは、ブロックチェーンの基本的な仕組み、技術的な制約、および開発プロセスを理解する必要があります。このコースでは、ブロックチェーンの基礎と、仮想通貨の送金システムを構築する過程で得られる実践的な知識を通じて、ブロックチェーン技術に対する理解を深めることができます。この知識により、プロジェクトマネージャーはプロジェクトを円滑に進められる でしょう。
テクニカルライター
テクニカルライターは、技術的な情報をわかりやすく伝えるためのドキュメントを作成します。ブロックチェーン技術は複雑で、理解が難しい概念が多いため、テクニカルライターは、ブロックチェーンに関する技術的な情報をわかりやすく解説する役割を担います。このコースでは、ブロックチェーンの基本的な仕組みと、仮想通貨の送金システムを構築する過程で得られる実践的な知識を通じて、ブロックチェーン技術に対する理解を深めることができます。テクニカルライターは、このコースで得た知識を活かして、ブロックチェーン技術に関する正確でわかりやすいドキュメントを作成し、開発者や一般ユーザーの理解を促進することができます。
品質保証エンジニア
品質保証エンジニアは、ソフトウェア製品の品質を保証するために、テスト計画の作成、テストの実施、およびバグの追跡を行います。ブロックチェーン技術を活用したソフトウェアの品質を保証するためには、ブロックチェーンの特性を理解し、適切なテスト戦略を立てる必要があります。このコースでは、ブロックチェーンの基本的な仕組みと、仮想通貨の送金システムを構築する過程で得られる実践的な知識を通じて、ブロックチェーン技術に対する理解を深めることができます。品質保証エンジニアは、このコースで得た知識を活かして、ブロックチェーン技術を活用したソフトウェアの品質を効果的に保証するためのテスト戦略を立案し、実行することができます。
UI/UXデザイナー
UI/UXデザイナーは、ユーザーが使いやすいインターフェースを設計する役割を担います。ブロックチェーン技術を活用したアプリケーションのUI/UXを設計する際には、ブロックチェーンの特性を理解し、セキュリティやプライバシーを考慮した設計を行う必要があります。このコースでは、ブロックチェーンの基本的な仕組みと、仮想通貨の送金システムを構築する過程で得られる実践的な知識を通じて、ブロックチェーン技術に対する理解を深めることができます。UI/UXデザイナーは、このコースで得た知識を活かして、ブロックチェーン技術を活用したアプリケーションのUI/UXを、より安全で使いやすいものにすることができます。

Reading list

We've selected two books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in 現役シリコンバレーエンジニアが教えるPythonで始めるスクラッチからのブロックチェーン開発入門.
この本はPythonの入門書として最適です。基本的な構文から応用的な内容まで幅広くカバーしており、Python初心者でも無理なく学習を進めることができます。特に、ブロックチェーン開発に必要なPythonの知識を効率的に習得するのに役立ちます。この本は、コースの予習として読むことをお勧めします。

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Similar courses are unavailable at this time. Please try again later.
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2025 OpenCourser