はてなの金次郎

とあるエンジニアの技術系ブログ

仮想通貨の技術に参加してきました

感想

supporterzcolab.com

サポーターズCoLabの「仮想通貨の技術」に参加してきました。仮想通貨は勉強してみたいと思いつつ、2, 3回ほど勉強会に参加したことがあるくらいで深くは勉強できていませんでした。

今回の勉強会では、わかりやすく概要を掴むことができ、より深く勉強してみようというモチベーションをいただけました。 Mastering Bitcoinがおすすめということなので読んでみたいですね。コンサイス版があったので積読しておきます。

スライド

coming soon...

メモ書き

Bitcoin

分散プラットフォーム

  • スマートコントラクト
  • 暗号通貨
  • 送金システム
  • IPFS
  • アプリケーションプラットフォーム

ブロックチェーン

リスク

ブロックチェーン(Bitcoin)

  • ブロックと呼ばれる順序づけられたレコードの連続的に増加するリストを持つデータベース
  • それぞれのブロックに正しさがあり、その正しさをどう決めるかがコンセンサスアルゴリズム
  • ブロック一番長い物を正しいデータとする
  • フォーク問題解決
    • GHOST(Ethereum)
  • スケーラビリティ問題解決
    • DAG(IOTA)
    • 再度チェーン /Plasma
    • Lightning Network / Raiden Network
    • シャーディング

コンセンサスアルゴリズム

  • Proof of Work
  • Proof of Stake
  • Delegated Proof of Stake
  • Proof of Inportannce
  • Proof of Consensus
  • Proof of Authority
  • PBFT
  • 種類
    • パブリック
    • プライベート
    • コンソーシアム

鍵管理の方法

  • 中央集権管理
    • メリット
      • ユーザの管理で資産が失われる可能性が低い
      • 顧客資産の移動が容易
  • 分散管理
    • メリット
      • 仮想通貨の方んらいの思想にあっている
      • 資産の管理はユーザーの責任に

Muliti-Signeture

  • 複数の署名を用いることができる方法

まとめ

様々な技術を用いて暗号通貨は成り立っている

勉強方法

Mastering Bitcoin: Programming the Open Blockchain

Mastering Bitcoin: Programming the Open Blockchain

  • 上位50位のホワイトペーパー読破
  • 詳しい人にきく

「成長している実感ある?」

2017年11月某日に書いた振り返りが出てきた。新卒8ヶ月目仕事ができなさすぎてどうすればいいかわからなくて悩んでいた時期。

「初心忘るべからず」ということでブログにも投稿しておく。(久しぶりに読んでみて我ながらいいこと言うやんと思ったのは内緒。)

はじめに

週一回30分行われている上司との1on1で聞かれたある質問があった。

「成長している実感ある?」

私はこの質問に対して肯定的に答えることができなかった。そもそもなんと答えればよいのかわからなかった。

なぜ肯定的に答えることができなかったのか、質問の意図がわからなかったのかが「新人・若手社員育成の定石」を読んで少しだけ紐解けたような気がした。

このコラムは本来、人事担当者やマネージャークラス以上を対象としたものではあったが、自分にはない考えを知ることができ自分の現状を客観的に捉えることができたため、とても勉強になった。

そこでこのコラムを読み、感じたこと・実践することをまとめる。

この記事の目的

実践すること

第1回 ケースで見る育成の問題状況 ~育成している“つもり”を問う

組織人としての成長を図る

  • 仕事への取り組み姿勢や学び方、組織が大事にしている価値観、職場の中でどう動き、どう協働すればいいかを考える

  • 仕事のプロセスや取り組み姿勢についてフィードバックをもらう

第2回 段階的な育成に基づく若手社員育成 ~組織社会化の観点から

段階的な成長をする

  • 1年目 仕事の知識だけ、作業の手順だけではなく、組織人としてのマナー(振る舞い方)や、働く意味、仕事の意味を考える。また、組織、職場に慣れる。

  • 2〜3年目 仕事を徐々に覚え、指示されたことを過不足なく達成できるようになる。周りに働きかけながら積極的に学ぶ。

  • 4年目以降 リーダーシップを発揮する。

第3回 関わりあい、人が育つ職場づくり ~対話が経験学習を促進させる

経験を通じて学ぶ

  • 「経験」→「省察」→「概念化」→「実践」のサイクルを回す。 何かを経験し、それを振り返り、そこから教訓(自論=自分なりのロジック)を得て、別の場面で適用していく。
  • 省察する際の枠組みや言葉、ポイントの理解、概念化するための思考力や想像力を身につける。論理的思考力を身につける。
  • 周囲の上司や先輩からのアドバイスをもらう。

第4回 若手社員の能力の見える化  ~ビジネス基礎力フレームに基づく強み・弱みの把握

自らの能力の現状を客観的に分析・把握する

  • 若手社員に必要な15の能力を自己分析する

感想

組織人としてのマナー(振る舞い方)や、働く意味、仕事の意味を学ぶ必要があったというのは、今まで仕事に関係する知識しか学ぼうとしてこなかった自分にとって新鮮な考え方だった。オススメされた書籍、Team Geek を読むなどして積極的にそのようなことも学んでいきたい。

Team Geek ―Googleのギークたちはいかにしてチームを作るのか

Team Geek ―Googleのギークたちはいかにしてチームを作るのか

また、段階的な成長というのもすごく腑に落ちた考え方だった。入社して周りは優秀な社員しかおらず、あれもこれも身につけなければと焦っていた。しかし、この考え方を知れたことで成長を段階的に捉え、着実に一歩ずつ成長して行こうと思えた。

さらに、コラムで繰り返し書かれてたのは、上司や先輩のフィードバックを求めよということだったため、積極的に上司や先輩から学ぶ姿勢を身に付けたい。

次に「成長している実感ある?」と聞かれた時には、「はい。もちろんです。」と言えるようになっていたい。

はじめてのSSH用ユーザー追加

はじめに

SSH用のLinuxユーザの作成の作業依頼を初めて担当することになったため、その作業内容と目的についてまとめます。Linuxユーザの作成は定期的かつ頻繁に発生する作業であるためしっかりと理解しておく必要があります。

Linuxのユーザ作成

なにをするのか

なぜするのか

  • 例えば、新入社員のためのユーザ作成や新しく加わるデベロッパ用のユーザ作成など、アプリケーションやシステムの開発・運用のためには欠かせない作業です。

サーバ側

ユーザ追加

$ useradd -m username
$ passwd username

ランダムなパスワードを設定し、後で本人に設定し直してもらう

権限変更

$ cd /home/username
$ mkdir .ssh
$ chmod 700 .ssh
$ touch .ssh/authorized_keys
$ chmod 600 .ssh/authorized_keys

sudo権限付与

$ gpasswd -a username sudo

所有権の確認

$ ls -la /home/username/.ssh
$ ls -la /home/username/.ssh/authorized_keys

所有者 username 、グループ group であることを確認する。
所有者、グループが異なっていた場合は正しく設定し直す。

$ chown username:group .ssh
$ chown username:group .ssh/authorized_keys

クライアント側

鍵の作成

$ cd ~
$ mkdir .ssh
$ cd .ssh
$ ssh-keygen -t rsa

configファイルの作成

~/.ssh/config

## 踏み台サーバ
Host <<Domain>>
     User <<username>>
     Hostname <<IP Adress>>

## 接続先サーバ
Host <<Domain>>
     User <<username>>
     Hostname <<IP Adress>>
     ProxyCommand ssh <<踏み台サーバのDomain>> nc %h %p

tech.recruit-mp.co.jp

公開鍵の登録

$ vi ~/.ssh/authorized_keys

authorized_keys に公開鍵をペーストする。

サーバ接続確認

$ ssh-add ~/.ssh/id_rsa
$ ssh -A app1.production-jp.gu-mania.vpc

参考記事

eng-entrance.com

eng-entrance.com