2020年3月20日金曜日

「Azure SDK for Go」とは別の独自サービスパッケージ

「Azure SDK for Go のドキュメント」サイトの「Azure SDK for Go のインストール」ページを読み進みています。

「Azure SDK for Go を入手する」セクションにて、いくつかのAzure サービス用のパッケージは Azure/azure-sdk-for-go とは別に用意されているとの記述があり、それらは主にストレージ サービスとメッセージング サービスのパッケージです。

ストレージ サービス

File Storage(パッケージ:Azure/azure-storage-file-go)

  • Azure上に構築されたSMB プロトコルのファイル共有システム。
  • 汎用 OS(Linux, macOS, Windows、など)でのファイル共有で使用。

Blob Storage(パッケージ:Azure/azure-storage-blob-go)

  • ファイルをBLOBで扱うストレージ。
  • 大量データの蓄積や操作(アーカイブ、ランダム アクセス、データ解析、など)

Queue storage(パッケージ:Azure/azure-storage-queue-go)

  • RESTでのテキストメッセージをキューイングする。
  • Service Busと比べてキューイング(格納)に重きが置かれている。

Table storage(パッケージ:なし)

  • 分散Key-Valueストア。

メッセージング サービス

Service Bus(パッケージ:Azure/azure-service-bus-go)

  • TCP プロトコルのメッセージをキューイングしたりPub/Subで処理する。
  • Queue Storageと比べてメッセージングに重きが置かれている。

Event Hubs(パッケージ:Azure/azure-event-hubs-go)

  • HTTPS/AMQP/Kafka プロトコルの大量のイベントを受け取って、Kafka プロトコルに対応したサービスに振り分ける。
  • ビッグ データ向け。

Event Grid(パッケージ:なし)

  • 対応したAzure サービスからのイベントを受け取って、対応したAzure サービスに振り分ける。

サービスのパッケージが分家する動きは、Azure SDK for Goがベータ版だった時からあり、最初はストレージでした。

2020年3月15日日曜日

「Azure Stack」とは?

「Azure SDK for Go のドキュメント」サイトの「Azure SDK for Go のインストール」ページの「Azure SDK for Go を入手する」セクションにて、Azure SDK for GoはGo 1.8以上をサポートしているが、Azure Stack環境だとGo 1.9以上が必要だと書かれてあります。

「Azure Stack」は初めて見聞きするサービス名なので少し調べました。

Azure Stackは、グローバル Azureを利用できない企業などがオンプレミス環境で利用できる様にしたAzureの拡張機能です。

自社内にMicrosoft 認定 ハードウェア パートナーから提供されたAzure Stackをセットアップした物理 サーバーを構えることで、オンプレミスで利用したりグローバル Azureと連携させたりできます。

Azure Stackには3つの製品ファミリーがあります。

Azure Stack Hub

  • 仮想マシン、Webアプリ&関数、コンテナーなどを実行するサーバー製品。
  • 運用はオンプレミスで、グローバル Azureとの連携も可能。

Azure Stack Edge

  • 主にAI/ML向けでFPGAが組み込まれた1Uラックマウント型サーバー製品。
  • 処理したデータはネットワーク経由でグローバル Azureに転送。

Azure Stack HCI

  • Azure HCIを採用したサーバー製品。
  • サービスは仮想マシンとして実行してグローバル Azureと連携する。

個人的には、自社でサーバー用 Azureがインストールされた物理 サーバーを購入して運用するソリューション サービスだと解釈しました。

【用語の補足】

  • グローバル Azure:パブリック クラウド版 Azureのこと
  • オンプレミス (on-premise):自社内にハードウェアやソフトウェアを構築して情報システムを運用する形態。
  • HCI (Hyper Converged Infrastructure):CPU処理、ストレージ、ネットワークを仮想化して統合した基盤

2020年3月12日木曜日

「Azure SDK for Go」とは?

Azure SDK for Goは、マイクロソフト社のパブリッククラウド「Azure」をGoでコーディングして扱うためのSDK(ソフトウェア開発キット)です。

Apache License 2.0ライセンスのオープンソースソフトウェアであり、GitHub上で管理および開発されています。


最初のコミットは2014年8月11日で、2016年、2017年とベータ期間を経て、2018年2月12日のv14.0.0で正式リリースとなりました。


おおよそ毎月末にメジャーバージョンのアップデートが行われます。

現在では、日本語ドキュメントも公開され、サポートされるAzureサービスも増えています。


当時、他のプログラミング言語のSDKやドキュメントが出揃っていた中、Goだけがなかなか正式リリースされずヤキモキしたり、ベータ期間中にストレージ系のパッケージが本家から出たり戻ったりしていたのを眺めていたも良い思い出です。

まずは「Azure/azure-sdk-for-go」の README.md や「Go 開発者向けの Azure」のドキュメントを読み進め、どんなものなのか?何ができるのか?を見て行きます。

2020年3月8日日曜日

私の「AzureとGo」に関する発表資料

Azure SDK for Goウォッチャー(?)として、過去3回「AzureとGo」に関する発表資料を作成しました。

タイトル:Microsoft × Go
イベント:2016年2月20日(土) [岡山] Okayama ComCamp 2016 powered by MVPs
概要説明:マイクロソフト社の組織や製品とGoの関係について、通常セッションで発表させて頂いた「発表済」作品です。



タイトル:Microsoft Azure for Go
イベント:2017年3月25日(土) [東京] Go Conference 2017 Spring
概要説明:AzureでのGoの使われ処について通常セッションで申し込みましたが、残念ながら落選した「未発表」作品です。



タイトル:Just Azure Using Go (7 items)
イベント:2017年9月9日(土) [東京] JAZUG 7周年総会
概要説明:AzureとGoの関係についてLTセッションで申し込んでいましたが、病欠で不参加となった「未発表」作品です。



1勝2負で負け越し中。マイクロソフトさん、イベントでGoの発表をさせてください!q@w@p

2020年は「Azure SDK for Go」をまったりと

「Azure SDK for Go」は、2015年にその存在を知り、2016年から本格的に、まったりとウォッチしてきました。


2019年からは、Goのクラウド開発キット「Go CDK」でもAzureがサポートされました。


2020年、英語や日本語を問わず、相変わらず情報量は少ないです。

そのため、2020年は「Azure SDK for Go」をまったりと触って行こうと思います。

触った内容については、本ブログやQiitaなどでアウトプットしていきます。

ハッシュタグやラベルとして「azuregojp」を使います。

2020年3月1日のツイート:

2019年8月31日土曜日

はじめてのGo言語教室

「はじめてのGo言語教室」は皆様駆動で開催されています。

気が付けば初開催から1年が経とうとしています。最近は少し広がりを見せつつあります。ということで、これまでの経緯?実績?まとめ?などを私なりに。

約1年前に主催者のやましたさんから「Goの初心者向け勉強会を開催したい」との相談を受け、何かお手伝いできればとGo入門ハンズオンのテキスト(基礎編)を作成し、GDG Shikokuの協力も得て、2018年9月8日(土)から香川県にて「香川Go言語勉強会」として2ヶ月に1回のペースで始まりました。


2019年4月6日(土)の「e-とぴあ未来博2019」でワークショップとして開催された際、中学生以上を対象としたこともあり、GDG ShikokuのTamさんの命名により「はじめてのGo言語教室」となりました。

[香川] 大人から中学生はもちろん小学生も参加!


2019年8月、Twitter上で続け様に福岡のGo初心者の方々のツイートを目にしました。


福岡にはFukuoka.goがあります。2019年7月13日(土)には東京以外で初のGoCon福岡(私も発表で参加)を開催するなどGo力の高いコミュニティです。しかしながら、先程のツイートからGo力が高いがゆえにGo初心者が参加しづらくなっているのでは?とも感じました。

数日経ってもなぜか気掛かりが収まらなかったため、思い切ってFukuoka.goに「はじめてのGo言語教室」を福岡でも開催させて欲しい旨を打診したところ、興味を示して頂くことができ、2019年9月14日(土)に開催させて頂くことになりました。(いや、サブタイトルが...)


福岡はニーズがフィットしたようで、参加者が定員に達しては増枠を繰り返して25名になりましたが、チューターが会場提供者でもあるモノクロメガネさんと大谷さんのお二人でちょい厳しめの状況でした。そんな中、岡山からGolang Cafeでお世話になっているTakashi Yokoyamaさんがチューターとして参加を申し出てくださり、当日は万全のフォロー体制で挑めました。

会場のGMOペパボの福岡オフィスさんの部屋に入ると「ここで開催するのか」と少し緊張しました。プログラミング経験者が多かったため予想以上にサクサクと進み、基礎編だけでなく改造編までを一日で行いました。Fukuoka.goを知って頂くことができ、「自分に合った内容だった」「テキストもわかりやすかった」「会社でもGoを広めます」との感想を多く頂けました。

[福岡] 当日は20名もの方々が参加!

他県での開催ばかりで肝心の地元岡山でも開催しないとなぁとツイートしたところ、すぐにTakafumi Yoshidaさんが、続いてコナコナさんがサポートを申し出てくださりました。2019年8月23日(金)のGo 1.13 Release Party in Okayamaにて打ち合わせを行い、後日、会場提供者のMasaya Konishiさんも含めて、ついに2019年10月5日(土)に岡山でも開催させて頂くことになりました。


開催の一週間前まで申し込みが1,2名という状況でしたが、その後、初めての方、知り合いの方、Goを書かれている方、香川の主催者の方(?)、福岡から参加の方(!?)、など多くの方々に参加して頂けました。

 
[岡山] 顔見知りの方が多い分、地元こそアウェー!?

[2019.9.9 / 2019.11.13 追加]

GDG Shikokuのramusaraさんから、イベント参加者のしいのあやさんからGo勉強会の希望を頂いたので愛媛出張できませんか?との打診がありました。Sasaki先生やTamさんを交えて日程や会場の調整を行い、2019年11月9日(土)に愛媛にて開催させて頂くことになりました。


参加枠が開催前日までキャンセルと満席を行ったり来たりして最終的には15名が参加して半数の8名がキャンセルとなりました。それだけ関心を持たれている人がまだいらっしゃるという事なので機会があれば2回目を開催したいところです。

[愛媛] 多くの学生さんや女性の方々にも参加して頂けました!

[2019.11.3 追加]

福岡の開催が決まった頃、以前から交流のあるFreeGufoのTetsuya Onukiさんから茅ヶ崎での開催について聞かれました。10月28日(月)に東京での「Go Conference 2019 Autumn」に参加予定だったため前日の日曜日で調整をし、会場にFG-Spaceさんをお借りして、2019年10月27日(日)に神奈川県の茅ヶ崎にて開催させて頂くことになりました。


こちらもプログラミング経験者の方が多かったため基礎編と改造編を行う予定でしたが、基礎編が終わった後の休憩時間中に参加者の方から「Goの使われ処なども知りたい」との声が上がりました。そのため後半は改造編の代わりに私の過去の発表資料を使ってGoの使われ処やGoの機能紹介などを行いました。

[茅ヶ崎] 学生さんフリーランスさん企業さんと様々!

2019年10月末、Twitter上で大阪の方のツイートを目にしました。


そこでumeda.go運営チームのYusuke Hatanakaさんに大阪での開催を打診させて頂きました。umeda.goはGoイベントを開催すれば毎回20〜40名が集まる近畿地方最大のGoコミュニティです。ちょうど初心者向けのGoイベントを検討されていたということで、会場にシナジーマーケティング株式会社様をお借りして、2019年12月21日(土)に大阪で開催させて頂くことになりました。


[2019.12.22 追加]

イベント募集サイトの公開から3時間で募集人数の20名が埋まり、開催2週間前には倍の40名に達し、最終的にはキャンセルを合わせて50名を超え、大阪でのGoの初心者ニーズの高さに只々驚くばかりでした。

当日はumeda.go運営チームのでらさんとtsun_さん(お二人は会場提供も)、takasagoさん、暢気さん、そして大阪開催の際にはとお声掛けしていたkadotaさんにチューターをして頂きました。業務でGoを使ったりGo Conferenceに参加されたりしている頼もしい方々で、参加者へ積極的に声を掛けて頂いたり、質問に答えて頂いたり、Slackで補足情報を共有して頂いたりと、大変心強かったです。

[大阪] ホワイトボードにはtakasagoさんの解説やtsun_さんが描いたGopherが!

参加者はプログラミング経験ありでGoは初めてという方々でした。今回はチューターさんが多かったので少し甘えさせて頂いて課題に取り組む時間を長めにとって質問や会話の時間を多くするようにしました。ハンズオンは基礎編が終わったところで残り45分となったため、スライドにてGoやpluginを紹介したり質疑応答を行いました。

[大阪] 小分けの対面形式は運営チームのアイデア。質問やフォローも活発に!

終了時にはアンケートを実施してフィードバックを頂くなど、umeda.go運営チームの運営力やチームワークには感動&感謝でした。個人的には、参加できなかった方々が多かったので、また開催できたらなぁと思っています。

---

「はじめてのGo言語教室」は皆様駆動で開催されています。

講師の私だけでは開催できません。ありがたいことに毎回、皆様からお声掛けやサポートを頂けていることで開催できています。感謝ありがとう。引き続き、無理なく楽しくやって参ります!q@w@p

2018年12月31日月曜日

2018年の振り返り

私が2018年に参加したITイベント活動を中心に振り返りをば。

立ち上げたもの


Flutter JP(Google+ Community)


2/3(土)のABCD香川の懇親会でGRINDHOUSEさんとお話しをして「Flutterを一緒に学んだり教えてあげられるように」と学習を始めたのが、私がFlutterを始めるキッカケでした。

その後「Flutterの日本語情報が少ない」と感じ、Flutterの日本語情報を収集・発信する場所としてGoogle+ Communityに「Flutter JP」を立ち上げました。


ほどなくしてRui Kowaseさんがconnpassに「Flutter JP」を立ち上げられ、当時は名前も同じだったこともあり、お互いに管理者をお願いしあったりしました。現在connpassの名称は「Flutter Japan User Group」となっています。


あと個人的にはTwitter上でFlutterの日本語情報をツイートする際にはハッシュタグ「#flutterjp」をつけるようにしました。皆様もよろしければ是非に。

GCPUG岡山


新しく「立ち上げたもの」ではありませんが「再起動したもの」として、こちらにて。

夏ごろにGCPUG福岡オーガナイザーの赤星さんから「GCPUG岡山を主催したい人がいるのですが」とのお声掛けを頂き、hayashikiさんを紹介してくださいました。やる気のある方にやって頂くのがイチバンなので即答でO.K.させて頂きました。さらにhayashikiさんからはほぼろさんを紹介して頂き、一度にお二人をGCPUG岡山のオーガナイザーにお迎えすることができました。

お二人とも東京の会社に所属しており、hayashikiさんは岡山にて、ほぼろさんは広島県の尾道にてフルリモートで働いており、GCPも仕事で使われているということで、これからのGCPUG岡山を引っ張って頂くにはピッタリの方々です!q@n@p

Okayama.go


11/25(日)のGoCon 2018 AutumnでGo挨拶させて頂いたモノクロメガネ研究員さんから、何とその二日後に主催されているFukuoka.goと岡山のGoコミュニティと何か一緒にGoのイベントをやりませんか?とお声掛けを頂きました。(めっちゃ嬉しかったです!q@w@p)

その時、岡山としてのGoコミュニティは存在しておらず「どうしようかなぁ」と思っていた矢先にFukuoka.goに「Fukuoka.go#13はOkayama.goと一緒にやりたい #9」というissueが立ったため「やっべ、Okayama.goなんてないぞ、作らなちゃ!」という流れで立ち上げました。(なので、名付け親はモノクロメガネ研究員さんですw)


以前「来年からGoのイベントをやりましょうよ!」とお声掛けを頂いていたのでhayashikiさんに、ちょうど仕事でGoを使い始めることになったということでほぼろさんに、別の場所でOkayama.goを立ち上げる話をした際に反応を示されたtaknb2nchさんにオーガナオザーとして参加して頂きました。

2019.01.14 Okayama.goのオーガナイザーですが、まずは私が責任を持って運営&開催をしていかなければならないのでは?ということになり、一旦、他の皆様には外れて頂くことになりました。

今後の活動については追々と。ひとつは岡山でのGo入門ハンズオンの開催を考えています。有志のコミュニティとして良い意味で「愛のままにわがままに」やって行きます!q@w@p

02/12(火)Okayama.go#1+Fukuoka.go

 Fukuoka.goさんと一緒に開催するGoのITイベントです。

主催したITイベント


GCPUG岡山


10/27(土)【岡山】GCPUG in Okayama #11

 hayashikiさんとほぼろさんをお迎えしての新体制にて、数年ぶりにスピーカーをお招きしたイベントを開催することができました。

Flutter JUG


06/23(土)Flutter Meetup Osaka #1

 大阪で仕事をされているGRINDHOUSEさんとHisako Isakaさんと一緒にFlutter入門ハンズオンを開催しました。

12/09(日)Flutter 1.0 Release Party in Okayama

 岡山でもFlutterイベントを開催したいと思っていましたが、12/4にFlutter 1.0がメジャーバージョンリリースされたので、お祝いさせて頂く形で開催しました。

Golang Cafe


01/28(日)Golang Cafe #81
02/18(日)Golang Cafe #82

 GDG中国のTakashi Yokoyamaさんが主催されている岡山のGoのITイベントです。業務都合でTakashi Yokoyamaさんのイベント開催が難しくなっているため、私とtaknb2nchさんにイベント開催の権限が付与されて代理で開催させて頂いておりますが、今年は年初にしか開催できませんでした。

 来年はTakashi Yokoyamaさんもイベント開催を再開されるそうなので、私はその合間を縫って開催します。

Go Release Party


02/20(火)Go 1.10 Release Party in Okayama
08/25(土)Go 1.11 Release Party in Okayama

 Goのリリースサイクルは2月と8月ですが、たまに公式から世界各地でのパーティー開催が呼びかけられるGoのITイベントです。

 日本では主に東京、静岡、岡山で開催されており、今年も岡山にて開催させて頂きました。

お手伝いしたITイベント


Python Boot Camp


11/23(金)Python Boot Camp in 岡山

 岡山Python勉強会のやまやまさんが主催されたPyConJPが日本全国で開催中のPythonのITイベントです。やまやまさんからお声掛けを頂き、ティーチングアシスタントとしてお手伝いさせて頂きました。

 昔業務でPythonを使っていたこともあり、Pythonへの恩返しができてよかったです。

Goならわかるシステムプログラミング読書会


02/10(土)Goならわかるシステムプログラミング読書会 #1
03/10(土)Goならわかるシステムプログラミング読書会 #2
06/16(土)Goならわかるシステムプログラミング読書会 #3
07/21(土)Goならわかるシステムプログラミング読書会 #4
08/25(土)Goならわかるシステムプログラミング読書会 #5

 岡山システムプログラミング勉強会のMasaya Konishiさんが主催者の岡山のシステムプログラミングのIT勉強会です。Masaya KonishiさんもGoを知ってみたいということで、Goについては私がフォローさせて頂く形で、まずは書籍「Goならわかるシステムプログラミング」の読み進め会として今年からスタートしています。

香川Go言語勉強会


09/08(土)香川Go言語勉強会
11/17(土)香川Go言語勉強会
01/12(土)香川Go言語勉強会 #3

 やましたさんが主催者の香川のGoのITイベントです。「香川でGoの勉強会を継続的に開催したい」とのお声掛けを頂き、現在はGo入門ハンズオンの講師をさせて頂いております。

 少人数ながら毎回違う方が参加してくださっているのが不思議でもあり嬉しくもあります。

参加したITイベント


大都会岡山


05/12(土)オープンセミナー2018@岡山
12/22(土)合同勉強会 in 大都会岡山 -2018 Winter-

 毎年5月と12月に開催されている岡山で100名以上が集まるITイベントです。毎回様々な人やテーマのお話しを聞くことができます。今年は9月に合同勉強会 Summerが初めて開催されましたが私は不参加でした。

クラウド


06/09(土)Docker Workshop in Hiroshima #01
06/09(土)GCPUG Hiroshima #4 - GKE / k8s -

 広島で同日にDockerとGKEのITイベントが開催されたため、効率良く(?)参加できました。

Java


05/11(金)Oracle Dev Tour Japan in Okayama

 岡山Javaユーザ会のTakafumi Yoshidaさんが主催されたNightHackingのITイベントです。仕事ではJavaでWebシステムを開発をしているため、中の人から直接JDKリリースモデル変更のお話しを聞くことができてよかったです。また米国Javaユーザーの方々も登壇されていたので、英語学習がてらお話しをリスニングしたり質問をスピーキングしたりさせて頂きました。

Flutter


05/31(木)Flutter Meetup Tokyo #2
07/19(木)Flutter Meetup Tokyo #3

 Flutter Japan User GroupのRui Kowaseさんを中心に開催されている東京のFlutterのITイベントです。「ライブ配信視聴枠」のおかげで、岡山にいながらFlutterに対する東京の熱量や情報をリアルタイムに体感することができています。

11/03(土)DevFest Shikoku 2018

 今年のDevFestは各地でFlutterが扱われており、四国は徳島県でハンズオンが開催されました。

Go Conference


04/15(日)Go Conference 2018 Spring
11/25(日)Go Conference 2018 Autumn

 GoCon主催者のtenntennさんを中心に年1〜2回、東京で開催されている日本最大のGoのITイベントです。今年から2トラック制になったり英語での募集や発表がなされたりと、アジアや世界に向けてのイベントとして進化を遂げようとしています。

 今年もtaknb2nchさんのおかげで無事に参加させて頂くことができました。

その他のITイベント


02/03(土)Android Bazaar&Conference, Diverse 2018 UDON県

 日本Androidの会香川支部のcovaさんが主催されたAndroid Bazaar and Conferenceの地方版のITイベントです。今回の香川は西日本初開催でした。

 AndroidイベントということでGoモバイルでLT発表させて頂きました。

04/14(土)GAE (Go/Python) もくもく勉強会 in 横浜タネマキ vol.52

 FreeGufo社のTetsuya Onukiさんが主催者の横浜のGAEのITイベントです。4/15(日)のGoCon 2018 Springに参加するために前日入りした際に初参加させて頂きました。

09/24(月)GDG Cafe #31
11/18(日)GDG Cafe #33

 GDG中国のTakashi Yokoyamaさんが主催者の岡山のGoogle技術のITイベントです。書籍「TensorFlow活用ガイド」の読み進めをされていましたが、私は書籍を所持しておらず、かつ、諸用による参加だったためTensorFlow for Goのインストールなどをしていました(^^;)

さいごに


今年(2018年)から来年(2019年)にかけては変革の年だと言われています。引き続きガンガンやって行きますので、よろしくお願い致します。2018年も、感謝ありがとう!m(_ _)m