MySQL、MariaDB サブクエリ付きSELECT文SQLを高速化するノウハウ

MariaDBの SELECT(参照系)高速化のために試したことを記録しておきます。 2700万件対象のサブクエリ含むSQLに100秒近くかかっていたのが、10秒を切るところまで高速化できました。 環境: さくらのVPS …

MariaDBの SELECT(参照系)高速化のために試したことを記録しておきます。
2700万件対象のサブクエリ含むSQLに100秒近くかかっていたのが、10秒を切るところまで高速化できました。
環境: さくらのVPS(SSD200GB、メモリ8GB)、CentOS7、MariaDB 10.3.15

主ににやったこと。
1. index対象のカラムのバイト数削減、EncodingをUS ASCIIに。
2. my.cnfにてグローバル環境設定を行う
3. InnoDBからMyISAMに変更

1. index対象のカラムのバイト数削減、EncodingをUS ASCIIに。

SELECTを高速化するためにindexを定義することは有効ですが、index対象のカラムサイズを節約するとさらに高速化できます。
5倍くらい速くなりました。めちゃ効果あります。

変更前:indexは以下のカラムに対して定義していました。指定するカラムが複数ある複合indexです。

COL名 Type Encoding
colA VARCHAR(2) UTF-8
colB INT
colC VARCHAR(4) UTF-8
colD INT
colE VARCHAR(2) UTF-8

 
 
 
explainでクエリ解析した結果は以下。
key_lenが38になってます。
indexを構成するのに1行あたり38バイト必要になっていることを意味します。

id select_type table type key key_len ref rows Extra
1 PRIMARY <derived2> ALL NULL NULL NULL 2000000 Using temporary; Using filesort
2 DERIVED t2 range idx_abcde 38 NULL 2000000 Using index for group-by

VARCHAR(2)で8バイト使うみたいです。INT型は4バイト消費します。
 
 
変更後:これを以下のようにしました。

COL名 Type Encoding
colA CHAR(1) US ASCII
colB TINYINT
colC CHAR(4) US ASCII
colD TINYINT
colE CHAR(2) US ASCII

 
 
explainは以下です。key_lenが9になりました。

id select_type table type key key_len ref rows Extra
1 PRIMARY <derived2> ALL NULL NULL NULL 2000000 Using temporary; Using filesort
2 DERIVED t2 range idx_abcde 9 NULL 2000000 Using index for group-by

key_lenを小さくすると、indexで使用する必要バイト数が削減できます。
indexを定義すると、MariaDBはテーブルの領域とは別にindex領域を確保します。これは、紙の本における目次ページのようなものです。目次を載せるには本文とは別に目次用のページが必要ということです。
key_lenが小さいと目次ページが少なくて済みますし、目次を読み込む時間も短くなります。
 
 
key_len削減のために以下の変更をしました。
●INTは4バイト領域(最大値2147483647)ですが、ここまで大きな数値が必要ではないカラムはTINYINT(1バイト、最大値127)で置き換えました。
●VARCHARは定義した文字数プラス終端用の領域(2バイト)が必要ぽいのでCHAR型にして必要領域を削減しました。CHAR型は終端バイトが付きません。
●文字型(Encoding)について、UTF-8は1文字につき3バイトほど使います。これを1バイトしか消費しないUS ASCIIに変更しました。
ただし、日本語などマルチバイト文字が入る場合はASCIIは使えません。

 
 
このような対応はindexを使用する際に有利というだけでなく、indexを使わないフルスキャンにも有効です。
なぜならば、カラムサイズを節約することでテーブルの全体サイズが小さくなり、フルスキャンする対象も小さくなるからです。
 
 
使用したのはこのようなSQL文です。テーブルを5つのカラムでDISTINCTして、さらに特定のカラムでGROUP BYするものです。
サブクエリ外側のSQL文は、一時テーブルに対するクエリになるのでindexが使えず遅くなります。DekaiTableは2700万件、それをDISTINCTしたt1テーブルは200万件あります。

2. my.cnfにてグローバル環境設定を行う

/etc/my.cnf.d/server.cnfの[mysqld]セクションを以下のようにしました。

グローバル設定はあんまり良くわかってないまま変更したので、改善の余地はまだあると思います。
今回効いてそうなのはtmp_table_sizeです。上記SQLはサブクエリで一時テーブルを作っているはずですので、このバッファを有効に使っていると思われます。
 
 

3. InnoDBからMyISAMに変更

MariaDBのデフォルトエンジンはInnoDBですけど、更新が発生しない検索・参照メインのテーブルだとMyISAMの方が高速です。MyISAMに変更して3割くらいSELECTが速くなりました。
ちなみに、MariaDBにはAriaという、MyISAMを洗練させたエンジンがありますが、これはダメでした。index設定しているのに使ってくれない… MyISAMよりも遅くなる結果となりました。
今後に期待したいです。


Raspberry Pi を買ってLチカ(LEDライトを点灯)するまで

Raspberry Piを買ってからLチカ(LEDライトを点灯)するまでのノウハウを書きます。 買ったもの Raspberry Pi 3 Model B+ ヤフオクで4400円で買いました。定価は5300円くらい。 Ra …

Raspberry Piを買ってからLチカ(LEDライトを点灯)するまでのノウハウを書きます。

買ったもの

Raspberry Pi 3 Model B+
ヤフオクで4400円で買いました。定価は5300円くらい。
Raspberry Piはモデルが多くありますが、2019/5時点では2018/3に発売された “3 Model B+“が最新です。
1つ前のモデル”3 Model B“は2016/2月発売で、CPUが少し弱いのと無線LANが5GHz帯に対応していません。
詳しくはRaspberry PiのWikipediaに書いています。

どのモデルを買えばいいのか? については以下の記事が詳しいです。
Raspberry Pi はどれを買ったらいいの?歴代Modelを簡単に比較してまとめてみました!

私の環境

本体以外に用意したもの
・パソコン:Macbook (SDカードにOSをインストールするために使います)
・microSDカード。8GBのノーブランド品

・ディスプレイ(HDMI接続)、キーボード(USB接続)
・電源: iPad用の2.1A電源 (Raspberry Piは2.5A必要だそうですが、2.1Aでもなんとか動くようです。不安な方は純正の電源を買ってください)

Lチカに必要なパーツ

大阪の日本橋「シリコンハウス」で買いました。
私はパーツを買いましたが、通販でセットが売ってるのでそういうのでもいいと思います。

・抵抗 x6 (220Ω、1kΩ、470Ω)
・LEDライト x6 (3mm 詳細は不明)
・ブレッドボード x1 各パーツを指して結線できる板です。
・ジャンプワイヤ x8 (オスーメス)
全部で900円弱くらい。

SDカードにOSインストール

公式のダウンロードページからOSをダウンロードします。
NOOBSとRaspdianの2種類がありますが、私はRaspdianにしました。
NOOBS・・・インストーラをSDカードに置く方法で、初心者におすすめ。
Raspdian・・・SDカードにOSイメージを書き込む方法であり、別途書き込みソフトが必要。でも書き込んだらすぐ使えます。

RaspdianはdebianベースのOSであり3種類ありますが、左上の
“Raspbian Stretch with desktop and recommended software” (デスクトップとかおすすめアプリとかが全部入っているやつ)にしました。2GB弱くらいのサイズです。

これをダウンロードし解凍すると”2019-04-08-raspbian-stretch-full.img“といったimgファイルが手に入りますので、これをSDカードに書き込みます。
書き込みは公式サイトの手順通り、Etcherを使いました。

まず、imgファイルを指定して、次に書き込む先のSDカードを指定して、”Flash!”ボタンを押します。

書き込みが始まります。

これだけです。特に難しいことはないと思います。

Raspberry pi 起動、初期設定

OSをインストールしたSDカードを使用して起動します。
あっさり起動しました。

初期設定をしていきます。

言語設定

初期パスワード設定

ディスプレイに黒い縁ができていたら、フルスクリーン化するためにチェックを入れます。

Wifiの接続設定

Wifiパスワード入力

ソフトウェアアップデート

このあと、完了画面がでて再起動されます。

SSH接続の許可

Raspberry piにパソコンからSSH接続して、パソコンから操作したほうが便利なので、SSH設定をします。
メニューアイコン → [設定] → [Raspberry Piの設定] でSSHを有効にします。

以下のコマンドで接続できます。パスワードは先程設定したものです。

Lチカの準備

こんな感じでつなげました。抵抗は220Ωを使ってます。
ほんとはオームの法則とか計算して、流れる電流値を計算したほうがいいと思うのですが、適当につなげたらいけました。

LEDランプはプラスとマイナスがあります。線が長い方がプラスです。
こちらが参考になります。
LEDの使い方(点灯のさせ方)を教えてください。
上の写真では、左をプラスに接続しています。

抵抗は本体に引かれている線の色に意味があり、それを読み取ることで抵抗値が分かります。
参考
抵抗のカラーコード

電圧・電流・抵抗の関係については以下が参考になります。
第20回 LEDに接続する抵抗値を計算する

ブレッドボードの使い方はこちらが参考になります。
ブレッドボードの使い方-電子工作とメモ

Raspberry Pi側のポートは、以下の場所に接続します。
プラスはGPIOのNo.2のポート、マイナスはGroundです。

プログラムはシェルで作成します。
適当なディレクトリで以下のlchika.shを作成してください。

実行権限をつけます。

これで
./lchika.sh
とすれば1秒おきにピカピカすると思います。

参考
レッツラズパイ!〜Lチカ&Lピカをマスターしよう編〜


韓国・済州島から韓国最南端の島・馬羅島(マラド)への行き方を解説

韓国の済州島(チェジュ島)から韓国最南端の島、馬羅島(マラド、마라도)への行き方を解説します。 馬羅島(マラド)は済州島の南側にある小さな島です。 ここが韓国最南端になるので、一度は訪れたい観光客がけっこういます。 しか …

韓国の済州島(チェジュ島)から韓国最南端の島、馬羅島(マラド、마라도)への行き方を解説します。

馬羅島(マラド)は済州島の南側にある小さな島です。
ここが韓国最南端になるので、一度は訪れたい観光客がけっこういます。
しかし日本人はまだあまり行ってないと思います。
馬羅島へ行くには2つのルートがあります。
馬羅島は人気が高く、どちらのルートの船も混んでいます。前もって予約した方が良いです。

ルート1.モスルポのウンジン港(운진항)から

運行スケジュールと空席状況がWebで確認できます。事前予約が必要だそうです。
「현장잔여석」という欄が残席数だと思います。これがゼロだと満席ということでしょう。
http://wonderfulis.co.kr/?page_id=1112
ウンジン港出発時刻: 9:50、11:10、12:30、13:50
馬羅島出発時刻: 11:45、13:05、14:25、15:55
Webサイトを前日に見たら空席がゼロだったので、このルートはあきらめました。

ルート2.松岳山(ソンアクサン)出発の馬羅島へ行く旅客船(마라도가는여객선)から

私が今回選んだのはこちらのルートです。
しかしこのルートはWebサイトから空席状況が確認できません。
そして「事前に電話予約しろ」ということなのですが、電話しても韓国語しか通じないだろうし言葉が分からず無理と思ったので、当日に朝イチで直接船着き場まで行って、乗れるかどうか聞いてみることにしました。
http://maradotour.com/index.php?mid=KR0502
こちらのルートはモスルポ発の便より便数が多いです。
松岳出発: 09:15、10:05、10:45、11:45、12:45、13:25、14:15
料金は大人1人往復で17,000ウォン。

朝9:00前に港に到着して、スタッフのお姉さんとカタコトの英語とGoogleTransrateを使ってなんとか会話したところによると、
「一部の便は強風のため欠航、残りの運行する便はどれも満席」
とのことで乗れず。ガッカリでした。

いったんあきらめて松岳山の散策路をハイキングしたり、近くの戦跡を巡ったりしてたのですが、そうこうしているうちに2時間以上過ぎて昼になったので、もう一度船着き場に行って運行状況を聞いてみると、
「13:25の便が空いてるから乗せてやるよ」
と言われたので喜々として乗船。ラッキーでした。

帰りの便の時刻も「この便に乗れ」と指定されました。行きの便の時刻が決まると帰りの便も自動的に指定されるようです。
おおむね1時間40分の観光時間を指定されます。島に到着してすぐ帰るとか、半日滞在するとかは無理なんだと思います。
13:25の便に乗船して、30分ほどで馬羅島に到着。1時間40分ほど滞在して15:35の船で帰るスケジュール。
ハングル文字は日本人には馴染みがないしので行き方がよく分からないとは思いますが、がんばってください。
この他、
済州観光公社のブログが参考になります。
済州島(チェジュ島)の離島旅*馬羅島(マラド)馬羅海洋道立公園 – 済州観光公社ブログ

済州空港(チェジュ空港)から松岳山の港までの行き方

付録として、
済州島市街にあるチェジュ空港から馬羅島に渡る船が出ている松岳山の港へ行くためのバスの情報を書きます。

済州空港からだと、152番バス
→ 화순환승정류장っていうバス停で752-2番のバスに乗り換え
→ サンイスドン(산이수동)で降車っていうルートなんですけど、
752-2のバスの便数が少ない(1時間に1本くらい?)なので、この区間はタクシー使いました。
タクシーの運ちゃんがメーターを回さず走って1万ウォン請求してきましたけど…やられた。
(帰りに同じ区間タクシーに乗ったら7000ウォンくらいでした)
合計所要時間は1時間30分くらい。バス賃は1150ウォン。
kakaomapアプリを入れておけば、起点と終点を指定すれば乗るべきバスを教えてくれるので便利です。

twitterのつぶやきがバズったのでそこから得た学びを書き留める

twitterでバズったので知見をまとめました。スマホの通知が止まらない、リプライがいっぱいくる、フォロワーが増える、クソリプが来るなど。どうやったらバズるのかも考察しました。

twitterのつぶやきがバズりました。

いい経験になったので学んだこととか分析したことを書き留めておきます。

バズるとどうなるか?

スマホの通知がひっきりなしに来ます。
・しかし、twitterアプリ(iPhoneの場合)は良くできていて、いくつかの通知を集約してくれたりします。通知をそのまま放置しているとその後の通知はあまり出てこなかったり?していました。
・iPhoneの設定で、通知を完全にOFFにしたりできるので、通知を気にしないで済む方法はあります。

どういった反応がくる?

知らん人からいっぱいリプライと引用RTがきます。
・直接リプライしてくる人は純粋に質問してくる人とか同情してくる人が多い。おおむね肯定的な意見ばかり。
・引用でコメントしてくる人の中にはdisってくる人もいます。
たぶん、「引用RTは本人に通知されないから気づかれない。したがってdisっても分からない」と思っているようです。
しかし、引用RTでも通知はちゃんとくるので分かります。
こちらからレスを返すと「えっ見えてたん?」て慌てる人が多かったです。

反応の内容は以下に大別できます。
1. 「うちも同じようなことあった。話聞いてよ〜」自分語り系
2. 「こんなに話通じない人いるんですね。頭悪いですね」という断罪系
3. 「なんでこんなことになるの?ちゃんと契約かわさないとダメだよ」という説教系
3. 「だから日本はダメなんだ。社会が悪い」社会問題にしたがる系

私が観測できる範囲

・RT直後にエアリプしている人は、その内容は私のほうからは(手順が煩わしくて)追えません。
リツイート直後のツイートを表示するやつ というツールがあるけど、すべてのツイートを追ってくれるわけではないから万能ではありません。
エアリプを隅々までチェックできたとしても、ヘイトツイートがたくさん見つかると思うのであえて見ない方がいいのかも知れない。(笑)
・誰が「いいね」とか「RT」をしたか?というのは全部は把握できません。
通知があった直後にtwitterアプリを開くと直近の通知は見られるけど、時間が経過した通知は流れていってもう追えません。
・バズったツイート以外の自分のツイートについて、「いいね」「RT」されても気づけません。通知に埋もれてしまうので。
ただし、自分の過去のツイートについて1つ1つ遡って状況を確認することはできるので、完全に確認できなくなるわけではありません。
・リプライ(返信)はどのツイートに対してでも全部確認することはできるし、後からでも調べられます。探せない数ではないので。リプライの数は今回の件では50件くらいかなと思います。

反応に困るリプライなど

twitterは、もともと自由につぶやいて良いツールだし、ひまつぶしの道具なので生産性とか合理性とかを求めるべきものではないんだろうけど、たくさんの人を相手にして感じたのは
「ヒマな人が多いな」
ということでした。僕もヒマ人なので、直接リプライくれた人については全部返したけど。
「お疲れ様でした」とか「苦労されましたね」とかいうねぎらいの言葉だと「ありがとうございます」て素直に感じるんだけど、
「オレの話を聞いてよ」とか「相手は頭悪いな」とか「ちゃんと○○したの?」というリプライについては
「知らんがな」「ちょっと違うんだけどなぁ」ていう感覚の、「モヤっとする」感がありました。
みんなヒマだから話を聞いてほしいんだね。
私は介護ヘルパーになった気分で「twitter民の話を聞く」役を演じました。それがtwitter民のタイムラインを騒がせた者の罪滅ぼしなのです。(たぶん)

140文字では言いたいことすべてを表すことはできないんですよね。私も1ツイートで完璧なシチュエーションを伝えられていないし、相手も足りない部分を勝手に補って情報を膨らませた上でリプライするから話が噛み合わない。
だからtwitter上で議論したり、喧嘩したりするとまとまらないし逆にこじれるので、そういうことはしてはダメなのです。

Screen Shot 2018-07-25 at 21.32.23

あと、相手は年端もいかない学生だったりすることもあるので、意味不明なことを言われても
「ああ、学生かな?しょうがないよね」くらいの寛容さをもったほうがいいかも知れません。

寛容さが試されるリプライの例
IMG_8730

良かったこと

逆に良かったことはフォロワーが増えました。
割合的には、「いいね」してくれた人の0.5%くらいだと思います。
つまり、1万の「いいね」がついた場合はフォロワー50人増える計算。

どうやったらバズるのか?

・普段から「おもしろいことを言ってたくさん反応があればいいな」とは思っていました。
・しかし、このツイートは自分の中では「そんなにおもしろくない」ツイートだったしそんなに注目されないと思っていました。
・しかしバズりました。「何がバズるか」とか「なぜバズったか」は分かりません。自分の意図や狙いとは違うところでバズるものだということを学習しました。
・つまり自分の価値感覚とtwitter民の価値感覚が完全に一致することはないし、おそらく他人同士でも違います。狙ってバズらせることは難しいです。
・運とかタイミングも関係すると思います。あと影響力のある人(インフルエンサー)が初期にRTして着火するかどうかによっても変わってくると思います。
・ただし「バズるはずがない」ツイートばかりしていてもバズりません。「バズる可能性があるツイート」を量産することで、その中の1つがバズる確率は上がるので、継続的におもしろいことをつぶやくことは重要だと思います。

Screen Shot 2018-07-25 at 23.27.05
↑Aのポイントを目指してもバズらない。Bのポイントを狙ってツイートするとバズる。(ただしなぜバズるのかは(自分が面白いと思うポイントではないので)理解できない)

Screen Shot 2018-07-25 at 20.17.36

なんとなく感じた人の心理

あともう一つ感じたこと。
今回バズったツイートは
A.「こういうことあるある。共感できる」

B.「なんてひどい。許せない」
という負の感情が、拡散に貢献した気がしています。

念のためことわっておきますが、私のツイートは事実を述べただけであり、
「これひどいでしょ?許せないでしょ?」ていう負の共感を訴える意図はないのですが、結果的にそうなってしまったようです。

一方、
C.「このネタおもしろい。拡散しよ」
とか
D.「これは見ててほっこりする。癒やされる。幸せな気分になる」
といったポジティブ感情系のツイートも拡散されやすいと思います。

そして「ポジティブな共感よりもネガティブな共感のほうがエネルギーとしては強い」ってどこかで聞いた気がするので、DよりもBのほうが拡散を生みやすいんだと思います。
ただ、かといってネガティブなことばかりつぶやいていると、性格もネガティブになるし周りにもネガティブな人しか寄ってこなくなるので注意が必要です。
楽しい方向で影響を与えられる人になったほうがいいですね。


13日の金曜日にjson拡張子を詳しく解説する初心者向け勉強会をやりました。

json拡張子とは? 知らない人向けの解説、jsonと親和性が高いJavaScriptについて、jsonはどこで使う? Ajaxでの利用シーン、jsonと同じような目的で使われるxmlファイルの紹介、などjsonの解説をしています。
2018/7/13(金)、そう13日の金曜日に、“.json”の拡張子について学ぶ勉強会をやりました。略してjsonnight.
[大阪]ジェイソンナイト(.json拡張子について理解を深めるIT系勉強会) さくらクラブ

勉強会でやった内容

・json拡張子とは? 知らない人向けの解説
・jsonと親和性が高いJavaScriptについて
・jsonはどこで使う? Ajaxでの利用シーン
・jsonと同じような目的で使われるxmlファイルの紹介
などです。
この内容をこのブログでも詳しく説明していきます。

jsonの基礎知識

jsonファイルって中身はこんなふうになってます。
意味がわからなくてコワイですね!
jsonは一言で言うと「データ保存のためのフォーマットの1つの形式」です。
jsonを理解する前に、みんなが知ってるcsvについて考えてみましょう。
csvはコンマ区切りのテキストであり、表に変換できますよね。
ただし、逆に言うと表にしか変換できません。
しかし、jsonでは表だけでなくツリー構造を表現することができます
CSV、json、XMLのそれぞれのフォーマットの特徴と比較です。
jsonは構造化データを取り扱うことが出来ます。
簡単なjsonを書いてみましょう。
1対のkey-value値を表現する場合、こうなります。
keyは一般的に半角英字を使用します。
valueは日本語もOK。数字だけの場合は”(ダブルクォーテーション)は要りません。
JSON構文をチェックしたり整形してくれたりするWebサービスがあるので使えば便利です。

JSON Pretty Linter – JSONの整形と構文チェック
https://lab.syncer.jp/Tool/JSON-Viewer/
次に、2対のkey-value値を表現する場合を考えてみます。
要素が続く場合は必ず , (コンマ)が必要です。
そして、最後の要素にはコンマをつけてはダメなのです。

なぜjsonを使うのか?

CSVがExcelと親和性が高いのと同様、jsonはJavaScriptと親和性が高いです
PHPなどの言語とも親和性が高いのでjsonはプログラム言語と相性が良いです。
プログラム中でデータを読み込んだり、書き出したりする場合はjson形式がお手軽です。

どれくらいお手軽かを体験するために、サンプルコードで実験してみます。
以下のリンクからサンプルコードをダウンロードしてください。
https://toyao.net/wp/wp-content/uploads/2020/01/sample_html.zip

sample1.htmlはこのようになっています。
JSONをjavascriptで処理するコードです。
例えばChromeブラウザで「要素を検証」でコンソールを出すと、jsonがオブジェクト変換された構造化データを確認することが出来ます。

Ajaxについて詳しく解説

jsonはAjaxを使うときに本領を発揮します。
例として、
Ajaxではない、通常のページ遷移の場合です。
htmlファイルは、HTMLの構文に沿った形にする必要があります。(htmlファイルだから当然ですが)
リンククリックすると新しいページ(htmlファイル)にアクセスすることになります。
通常のページ遷移の場合は、このように毎回新しいページ(htmlファイル)を取ってくる動き(ページ遷移)になります。
一方、googleマップを見てみましょう。これはページを遷移してませんよね。
地図をスクロールしたり拡大すると、同じページで続きの新しい地図を見ることが出来ます。ページ遷移していません。
最初に表示したページAのままページ遷移しないのがAjaxという仕組みです。
Ajax通信はページ遷移しないので、HTMLページを取ってくる必要がなく、すなわちHTMLの構文でなくても良くなります。 プログラム間でやりとりするのに都合の良いデータ形式が使えるのです。
ここでjsonが使えるというわけです。
jsonは転送効率が良いです。
同じデータを送受信する場合、HTMLよりJSONの方が転送データ量が小さいので効率が良いのです。
sample2.htmlでAjax通信を体験してみましょう。
サーバーから取ってくるデータはこのようになります。 URLはこれ >https://toyao.net/work/2018jsonnight/sample2.php
シーケンス図で書くとこのようになります。
Ajax通信を行うhtmlです。
$.ajaxという関数がajax通信を行う関数になります。

jsonをもっと詳しく理解する

jsonは階層構造にできます。
jsonは配列も表現できます。

参考になるサイト:
学問的に仕様を網羅しています。
JSON (JSONの文法解説)

json応用:オープンデータの利用

JSON形式で提供されているオープンデータを使ってみましょう。
例えば以下のサイトにあります。
Link and Publish your data|Open data sharing & Download
LinkData
ここでは、HeartRails Expressというサイトから都道府県データを取ってくる例を紹介します。
API | HeartRails Express | 路線/駅名/最寄駅データサービス
都道府県情報取得API
JSON(P)形式
をとってきます。
sample3.htmlではこのオープンデータを使って、都道府県データを取得するAjax処理を行います。
JSON.parseは必要ありません。
クロスドメイン(HTMLページを提供しているサイトとは別のドメイン上のサイト)のデータを取ってくることになるので、jsonpという形式で呼び出さなければなりません。
これは文字列形式ではなく関数呼び出しの形になるので、はじめからオブジェクト化されており、データ取得後にわざわざJSON.parseする必要はありません。

あわせて学習しよう:XMLとは

XMLで有名なのはsitemap.xmlですね。WebサイトのページURLが全部書かれたやつ。
google検索エンジンに
「このサイトにはこんなページがあるよ」て教えるやつ。
JSONとXMLの表現の違い
XMLの方がやや文字列長は長くなります。

このように、XMLは以下のような特徴があります。
・JSONと同様に、データを構造化できる
・JSONより歴史が古い
・JSONよりデータサイズは大きくなりがち。

それぞれの利用シーン
どちらがよく使われているか、どちらを利用すべきか。
状況に応じて使い分けましょう。

説明は以上となります。

この勉強会をYouTubeLiveでライブ動画配信もしました。アーカイブとして残せましたので、こちらから視聴できます。
(画質とか音質は悪いですが)

スライドはこちら
json拡張子について理解を深める https://www.slideshare.net/uemera/jsonit

勉強会中に使ったサンプルコード(zipファイル)はこちらからダウンロードできます。
sample_html.zip

37175265_1761901643858205_1429101770189045760_n

勉強会をやってみての感想

こんなネタ勉強会、受講する人いるの?と当初は思っていましたが、申込み予約時点では18人の定員を超えてキャンセル待ちが出るほどの状況でした。 需要はありそうなので、またどこかで開催要望があればやろうかなと思います。

また今回、自分史上初めてライブ配信をやりました。ツールも検討の結果YouTubeLiveがいちばんふさわしいと思って、事前に撮影の方法とかセッティングとか済ませて本番に備えたのですが、実際会場で試してみると、
・YouTubeLiveを開始するとiPhoneアプリが途中で異常終了する
・iPhoneの横画面で配信したいのになぜか画面が回転せず縦でしか配信できない
という状況に陥ったため焦りました。

本番の数十分でいろいろ試しましたが、縦配信しかできない件は解消されず、結局以下の環境で配信しました。
・アプリが異常終了するiPhone7plusで配信するのをあきらめて、自分がメインで使っているiPhoneXのYouTubeアプリで配信することにした
(これによりアプリ異常終了はまぬがれた)
・Wifi環境が不安定なのかなと思ったので、WifiではなくLTE回線を使って配信しました。
(2時間の配信で、通信データ量が2GBくらいになりましたが)

ま、とりあえずこれで見れたようで良かったです。「配信するよ」て自分から予告しといて、トラブルで配信できないのは自分としてはなんとしても避けたかったので…
配信技術を安定させるのって、やっぱり場数や経験を踏まないとダメなんでしょうかね。そして代替デバイスや手段を何通りか持ってないと危険だということも学習しました。

音声は、適当なマイクを事前に購入しようと探していたのですが見つからなかったので、いつも使っているイヤホンマイクで代用しました。
こんなふうにクリップで胸につけて。
なんとか聞ける音質にはなっていたようです。
Untitled

胸ではなく、耳につけてハンズフリー通話のようにしても良かったのですが、それだと片耳がふさがれてしまい受講者の声が聞きにくくなる恐れがあると思いました。

WordBenchはプーチンではない

↑これに釣られた。「オレ関係ないし」ていう態度で通そうと思ってたのに… 炎上してもいいや。 ブログで個人レベルで持論を展開しても何も変わらないと思う。 だけど書いてしまう。(他に共感してくれる人がいるかも、と …

Screen Shot 2018-06-20 at 0.34.39

↑これに釣られた。「オレ関係ないし」ていう態度で通そうと思ってたのに…
炎上してもいいや。

ブログで個人レベルで持論を展開しても何も変わらないと思う。
だけど書いてしまう。(他に共感してくれる人がいるかも、という気持ちで書いてしまう。負け犬の遠吠え的なものだけど)
WordBenchコミュニティを去った自分としては言う権利もない、というか辞めた会社を悪く言うようなもので姑息な気がするが、去ったから逆にこれ以上失うものはないし誰かの顔色を伺う必要はないので好きなように書ける。

権力のある人の鶴の一声でサイトは閉鎖されるし、コミュニティは消滅する。
だからWordBenchはどうあるべきか、とか論じてもあまり意味はない。権力の力関係で決まること。
WordBenchを続けてほしいならば関わっている人たちと議論を交わすのではなく、三好さんを持ち上げること。
行動規範についても「そのとおりですわ。すばらしい!」と言うこと。

「WordBench は誰のもの?」という問いかけに対しては、「三好さんのもの」です。(現時点では)
最初にそこに気がつくべきだった。「関わったみんなのもの」とか言うから「自分にも変えられる」とか「議論の余地がある」とか思ってしまう。
「コミュニティはみんなで作り上げるものです」とかきれいごとを聞かされていたから「自分も主体的に参加できる、自分も主張していける」と勘違いさせられてしまっていた。

「WordBenchがなくなる」とか「行動規範が出てくる」とか、なにかモノが勝手に変化を遂げるような感じで表現する人が多いけど、そうじゃなくて、すべては権力を持ってる人が決めてること。
異論があるならば「WordBenchをなくそうとしている人」とか「行動規範を出してきた人」に対して直接言わないとダメ。
主体をあいまいにしてふんわり議論をしようとするから結局決まらないし変わらない。そしてそれが「大人の議論」であるという空気。
「誰のせいなのか?」をはっきりさせるべき。
国会でも、アメフトでも見られる「オレ傷つけたくないし傷つけられたくもないし」ていう感情のせいで核心に届かない。

取り巻く人々の「今までありがとうございました」という違和感。
自分たちのコミュニティを壊されて「ありがとうございました」という気持ちは僕にはない。
「何してくれんねん!」て怒るところじゃないのかな?
日本人ぽい忖度を感じる。

三好さんが「自分はコミュニティをコントロールできる」と思ってるからWordBenchを終わらせて権力を誇示したいということだろう。知らんけど。
「WordBenchは関わったみんなのもの」という意識があれば、こういう力づくな終わらせ方はしない。
自分の思い通りにならないから権力を発動して、関わった人たちを困らせる。「ざまあみろ」と。

自分自身しか信じられるものはない。
組織の一員になっても、自分が偉くなければ(影響力を発揮できなければ)、自分の主張が通らないので自分のしたことが結局無駄になったりする。

後悔していること。
最初からWordBenchという名前を使わなければ良かった。そうしたら偉い人に気を使うことなく、自分の思うままにコミュニティを運営できた。
WordBenchのサイトにアップした記事、なくなるんだったら書かなきゃ良かった。

最後に、WordBenchは10年しか続かなかったのでプーチンではない。


中国・深圳の工場見学ツアーで中国のありのままを見てきました。

2018/3/18〜21にかけて中国・深圳(シンセン)に行ってきました。3ヶ月前に初めて深圳に行きましたが、それにひきつづき人生2回目の深圳です。 3ヶ月前に深圳に行ったときのブログはこちら。 前回の一人旅深圳旅行におい …

2018/3/18〜21にかけて中国・深圳(シンセン)に行ってきました。3ヶ月前に初めて深圳に行きましたが、それにひきつづき人生2回目の深圳です。
3ヶ月前に深圳に行ったときのブログはこちら

29356399_10215464291862410_7227176799380176896_o

前回の一人旅深圳旅行において現地情報をいろいろとネットで調べているうちに、深圳で工場見学ができるツアーがあることを知りました。そのときは直近のツアーがちょうど終了したところだったのでタイミングが合わなかったのですが、後日、第8回目のツアーが3月に催行されることを知り申し込んだのでした。

ニコ技深セン観察会というツアーです。
現地集合現地解散の、ボランティアベースで毎年2回くらい開催されています。
「体験をブログに書くこと」が参加条件ですので、こうやってブログを書いています。
また、事前に自己紹介も書く必要があります。私の自己紹介はこちら

ツアーは3日間あり、それぞれの日に分けてブログを書きましたので各論はそちらを参照してください。
1日目: ハードウェア製造工場、金型工場など。Insta360というカメラがよかった。
2日目: パクリ風ロボットがいい味出してました。
3日目: コワーキングスペースなどの見学など。

また、他の参加者のブログ一覧はここにまとめられています。
第8回ニコ技深セン観察会 参加者名簿:感想まとめ

ツアーを通しての感想

ここでは総合的な感想を書きます。
ツアーについて、良かったことも悪かったことも思ったとおり正直に書きます。「○○が良かった」とか「○○サイコー」だけの記事もいいけど、それだけだとこれから参加しようとしている人がフェアな判断ができなくなると思ったので。気を悪くしたらすみません。
これから初めて参加する人は多かれ少なかれ不安をかかえて参加するので、
「どういうデメリットがあるか?」
についても詳しく説明したいと思いました。

29064307_1674859059275383_5752193738390951919_o

前提として、私はソフトウェア技術者です。その視点で感じたことを書いています。観察会は主に深圳のハードウェアメーカーについて見学に行くので、私は畑違いです。ただし、参加者のハードウェア知識の有無についての条件や制限は無いので誰でも申込できます。(抽選に当選しやすい/しにくいには関係すると思いますが)
ぜひとも参加したいと思う方は、
・観察会の募集が始まったらすぐに申込をすること。(早く申し込んだほうが選ばれやすくなります)
・どれだけ自分が参加したいと思ってるか、何を学びたいかなどの熱意を自己紹介で伝えること。(情熱は人を動かします)
を心がけると参加できる確率がアップすると思います。

私はハードウェアの知識はあまり持ってないです。ですのでツアー中に登場してきた用語、例えば部品の名前(PCBとか)、使っている技術の名前(LIDARとか)、有名な製品や会社名(MakeBlockとかInsta360とか)、有名な人(Eric Panとか)に関してまったく知らなかったので、それが前提の話が分かりませんでした。その点で疎外感を感じたりしました。ですのでハードウェア方面に明るい人がこの観察会に参加するのがやはりもっともふさわしいと思います。
ただし、「海外に行くために語学を完璧にして行くより、まず行って体験する」ことが十分価値があるのと同様に、
「知らないけど参加する」というのももちろん意味のあることだと思います
「知らないということに気づいた、学ぶためのきっかけを得られた」ことが、これからの知る努力を加速させます。私がまさにそうでした。
「ハードウェア周辺の技術がこれからどういう発展を遂げるのか、自分なりにリサーチしてみたいなぁ」というモチベーションが芽生えました。

ツアー行程中に「これは良くないな」「やってほしくなかったな」と思うこともありましたが、総合的には行ってよかったです。個人旅行では味わえない貴重な体験ができました
深圳は観光の街ではなく「世界の工場」の特色を持つモノづくりの都市ですので、旅行ガイドには載っていない、工場や実際にそこで働いている人と直接触れあえる体験は、この都市の本質的な理解をするのに役立ちます

このツアーはボランティアベースなので、3日間の行程でかかったコストは
・1日目 → バス代/昼飯/夕飯つき300元(約5000円)
・2日目 → バス代/昼飯/夕飯つき300元
・3日目 → 夕飯実費のみ(100元くらい)
と安くすませられました。
私の金銭感覚的には1日1万円くらいまでなら出せると思いました。1万円以上だと悩むかも。それくらいの価値のツアーだと思いました。

IMG_5912

ツアーの進行は実質的に高須さん一人でやってたけど、30人以上の参加者を一人で引率するのは無理があると思いました。
こういうのは2〜3人のスタッフ体制でやるといいかも知れません。
集金係、タイムキーピング係、事務的アナウンス係、点呼係を別の人がやるとか。
ボランティアツアーだというのは参加者みんな分かっているので、役割さえアサインすればみんな積極的に協力すると思います。
ただ、私も実際にコミュニティを運営していたから分かるんですが、主催者一人でできるなら全部やりたいんですよね。自分が思い描くとおりのイベントにしたいと思ったとき、その通りに作り上げられる人は自分1人だけなので、つい自分だけで全部やってしまおうとします。

IMG_5974

そんな感じのセーフティーネットがないツアーなので、ツアーバス乗車時の点呼は無いです。うっかり乗り遅れるリスクは非常に高いです。(実際に、ツアー中に積み残しが2回起こりました)
「連れて行ってもらっている」というお客さん気分ではなく、サバンナで生きる草食動物のように、つねに群れの一員であることを意識し、かつ、群れからはぐれても誰も助けてくれないという覚悟が必要だと思います。
IMG_6230_copy

余談ですが、点呼については何か便利なアプリないのかなぁ? 参加者は全員Wechat(微信)アプリをインストールしているから、それでチェックインのような機能がある点呼アプリがあれば便利そう。
それがなくても、Googleスプレッドシードで自分が着席したら○をつけるとか。(ただし中国SIM使っててGoogleがファイアウォールのため見れない人もいるかも)

また、サバイバルなツアーですのできめ細やかなケアは受けられません。
まともなトイレ休憩の時間がほとんどないです。
僕はトイレが近いほうなのですが、和を乱さないように、そして置いてけぼりを食らわないように、できるだけ水分を採らないでトイレに行く回数を減らすように努力しました。糖尿病とか持病持っている人はダメかも。
また、中国ですのでお察しのとおりバリアフリーではありませんし、群れに追いつくために走らなければならないこともあります。健常者しか楽しめないツアーだと思います。
さらに言うと、背が低いとほかの参加者に視界が遮られて十分な説明が聞けないかも知れません。食事は早食いをしなければならないかも知れません。
中国は日本に比べて交通事故を多く見るそうなので、心配な方は個人で旅行保険をかけておいたほうがいいと思います(ツアー側では保険はかけてないと思います)。
「写真に写りたくない」というような肖像権を主張することもできません。すべてがオープンになりますので、お忍びで参加したい方はこのツアーは向きません。
スマホを持ってない人はいろいろとムリです。(このツアーに参加したい人で、そんな人はいないと思いますが)

そして私の体力的な問題なんですが、1日に5ヵ所以上の見学はけっこう疲れます。4件目くらいから「もうしんどい」と感じました。もちろん知的好奇心はあるんだけど、それよりもしんどさが勝ってぐったりしてしまう感じ。1日3件くらいの見学を、休憩を十分はさみながらゆっくり回る感じであればベストでした。
私は43歳なんですが、20代〜30代の若い方ならそういう悩みもなく元気に回れるんじゃないかと思います。

IMG_6033

現地の方のプレゼンテーションは基本的に英語で、通訳はありません。
ただし、スライドなど映像も合わせて話す場合が多いので、スライドを見ているとなんとなく言っていることは分かります。
私は英語は日常会話程度のレベルでしたので、プレゼンで聞く高度で速い英語はあまり分かりませんでした。しかしスライドを見ながらなんとなく言ってることは分かりました。

ボランティアベースのツアーであり、基本的に参加者は「相手のご厚意に甘える」という形で見学するので、感謝の気持ちは常に忘れないようにしたほうがいいと思います。
ただし、日本でもしばしばある、
「無料セミナーは無料である代わりに、個人情報など相手が欲しがっている情報の提供を求められる」
というモデルもありえます。参加者側からも何か有益なものを対価として与えていることが(無意識であったにしろ)あるので、全面的な感謝や、必要以上にへりくだる必要はないと思います。
特に中国人は損得勘定にシビアで「損して得取る」という考え方ではなく「得して得取る」というスタンスであり、無条件な奉仕は無いそうなので、「良くしてもらっているのは何か別の目的があるかも」くらいに考えた方がいいかも知れません。
つまり「ボランティアでやってくれるのは嬉しいが、そっちにもメリットあるよね」くらいの気持ちでもいいかなという気がしています。
例えば参加者が期待されることと言えば、
・広告宣伝を期待される
・物品を購入することを期待される
・誰か、あるいは組織のソーシャルスコアを上げることを期待される
などです。
逆に言うと、もし自分が「与えてもらっている」と感じればこういうことで恩返しをすればいいし、
「特に与えてもらってない」と思えば自分からも何もする必要はない、そういう関わり方でいいんじゃないかと思います。

IMG_6194

見学した工場やオフィスを見た感想ですが、
ほんとにありのままの中国、深圳を直接見ることができたのが何より嬉しかったです。
「進んでるなぁ」「遅れてるなぁ」「清潔だなぁ」「汚れてるなぁ」「パクってるなぁ」などの感想を何度も抱きました。
このツアーは「現在」を切り取ったものであり、これから深圳がどうなっていくのかは1年後、2年後も見ないと私は想像ができないですが、3ヶ月前に初めて深圳に行ったときに感じたように、中国はますます存在感を増すという思いを強くしました。
ITの世界でも中国が世界を牽引していく未来が見えたので、私も中国語を勉強して将来は中国様に自分の食いぶちを導いてもらえるようがんばらないといけないと感じました。

中華料理はうまい

ツアーの内容とは少しはずれるかも知れませんが、ツアー中にいただいた中華料理がおいしかったです。
特に夕食は、大人数で丸テーブルを囲んで食事するのでいろんな料理が食べられます。個人旅行では「何がおいしいか?」が分からず注文もしにくいですが、このツアーでは中国語が堪能な参加者もいらっしゃいますし、おまかせでおいしいものが食べられるのでものすごく満足度が高いです。

IMG_6426
543068714.950785

参加者の経歴はバラエティーに富んでいます。こういうツアーでなければ一生接点がないと思われるメディア・マスコミの方や金融系の方、学校関係の方ともお友達になれるので、人脈を作るという意味でも非常に価値があるツアーだと思います。

ツアーは3日間あり、それぞれの日に分けてブログを書きましたので各論はそちらを参照してください。
1日目: ハードウェア製造工場、金型工場など。Insta360というカメラがよかった。
2日目: パクリ風ロボットがいい味出してました。
3日目: コワーキングスペースなどの見学など。


中国・深圳の工場見学ツアー「第8回ニコ技深セン観察会」 3日目レポート

2018/3/19〜21の3日間で行われた中国・深圳の工場見学ツアーニコ技深圳観察会の3日目のレポートです。 このツアー記のもくじはこちらです。 3日目は朝からではなく15:00スタートということで多くの場所には行きませ …

2018/3/19〜21の3日間で行われた中国・深圳の工場見学ツアーニコ技深圳観察会の3日目のレポートです。
このツアー記のもくじはこちらです。

3日目は朝からではなく15:00スタートということで多くの場所には行きませんでした。
また、すべて華強北地区での見学なので、バス乗車はなく徒歩での移動でした。

15:00までは自由時間だったので、昨日行った深圳ソフトウェア産業拠点に再び行き、気になった蘭州ラーメンの店で食事しました。
IMG_6456

セットで45元。ラーメン単体ならば18元。
中国のラーメンは日本のラーメンとは違ってスープが淡白です。しかし豆板醤みたいなのを入れるのでピリっと辛い仕上がりです。
IMG_6463
このラーメンを食べて華強北に戻りました。

しかし、ビジネス街のお昼どきというのは日本も中国もけっこうたいへんですね… 限られた昼休みにワーカーが食堂に殺到するので列がエグいです。
私は幸い、昼休みよりも前に店に入れたので並ばなくて済みました。
IMG_6464

1件目 15:30 HAX

HAX
“HARDWARE ACCELERATOR”という名前から、ハードウェア系のスタートアップ会社を支援する目的で作られたオフィスのようです。華強北地区の中心部にあります。

IMG_6486

写真撮影禁止ということだったので写真がないですが、
M5Stackというラズベリーパイっぽいマイコンモジュールのプレゼンも聴きました。

ここでM5StackのTシャツをもらったのですが、これを着せられて集合写真を撮られたのは不愉快でした。
なんでM5Stackの関係者でもないのに勝手にM5Stackの人にされてしまうん…
僕の立場がフリーランスで「どこにも属さない」というのをモットーにやってきたので、そういう所属意識に敏感なだけかも知れませんが、この件で印象が悪くなりました。
プレゼンも宣伝ばっかりの内容だったし、「なにか有益なことを勉強させてもらった。ありがたい」という気持ちより
「都合の良いように協力させられただけに終わった」感がありました。
IMG_20180321_163908

2件目 18:00 SegMaker+ 賽格衆創空間

SegMaker+
ここで今回参加された日本人3人のプレゼンを聴きました。
8F48977E-8FAE-419F-BBDC-6BD9DDA6FB10-16538-00000FB2081FBF5B_tmp

個人的には経済学者伊藤さんの深圳レポートがものすごくおもしろかったです。僕が知りたかった深圳の歴史とか、背景とかを統計的に、そして視覚的に分かりやすく紹介してくれて
「まさに僕が知りたかったのはこれなんだー!」て叫びたい気持ちでいっぱいでした。
また、「学校の先生でもこんなに分かりやすく説明してくれる人がいたんだ」と衝撃を受けました。

そんな伊藤さんのプレゼンはこちら。

イノベーション加速都市・深圳 伊藤亜聖 [ニコ技深圳観察会 第8回] – YouTube

伊藤さんのブログは超アカデミックで内容が濃くて、僕が興奮しそうな情報がいっぱい詰まってそうなので、バックナンバーも含めおいおい読んでいこうと思います。

その他、澤田さん、高須さんのプレゼンはこちらから見ることができます。
僕たちが起こせるマジック ニコ技深圳観察会 ラップアップセッション

プレゼンのあとは、同じ建物を1つ上にあがった12階のSegMaker+というコワーキングスペースのようなところを見学しました。
IMG_6510
IMG_6522

ここのスペースの5席分をニコニコ技術部として借りているそうで、日本のMaker/Startupが深圳にある程度の期間(1週間以上とか)滞在する際のワークスペースとして利用できるそうです。
ニコ技深圳観察会SEG Maker出張所とは

21:15 夕食

深夜までたいへん盛り上がりました。
中華料理最高ですね!
「正宗湘菜」(华强北街道振华路飞亚达大厦二楼2001号)というレストランでした。

IMG_6528
IMG_6543

もくじに戻りたいときはこちら


中国・深圳の工場見学ツアー「第8回ニコ技深セン観察会」 2日目レポート

2018/3/19〜21の3日間で行われた中国・深圳の工場見学ツアーニコ技深圳観察会の2日目のレポートです。 このツアー記のもくじはこちらです。 1件目 9:40 Cityeasy 深圳市城市漫步科技有限公司 パクリ風ロ …

2018/3/19〜21の3日間で行われた中国・深圳の工場見学ツアーニコ技深圳観察会の2日目のレポートです。
このツアー記のもくじはこちらです。

IMG_6696_2

1件目 9:40 Cityeasy 深圳市城市漫步科技有限公司

パクリ風ロボットが出迎えてくれるエッジのきいた会社でした。

IMG_6001★

IMG_6029★

ペッパーくんみたいな風貌のこのロボット(マンディくん)は、おそらくゼロから作ると費用も工期も人手も膨大なものになるでしょうが、現在流通している技術やデバイスを使ってうまく組み合わせて作っているため、
・いとも簡単に作り上げる
・優秀でもなさそうな人でも作れる
・全然悪びれてないから平気でパクる
という特徴があります。この会社も「中国はこうでなくちゃ」ていう私の期待を裏切らない会社でした。

マンディくんはこんなことができます。
・自走する。超音波を出して衝突回避できる
・人のうしろについていく
・画像認識できる
・音声による受け答えができる
・謎のダンスをする
カスタマイズなしのパッケージ販売だと50万円、業務用にカスタマイズすると170万円くらいだそうです。
実際に、中国のローカル銀行にも設置されている実績があるそうです。
今までに3000台売れたそうです。

謎のダンス

小さいロボットもあります。5万円くらい。贈り物などでニーズがあるみたいです。
IMG_6047★

僕はこういうパクリ文化が大好きです。イノベーションはパクリから生まれると思っています。

突き抜ける中国感

他には、こういうスマートウォッチも作っています。
IMG_5988★

この会社のホームページは無いんかな?
探した限りではここしか無いんだけど、こういうアングラでひっそり売ってる感がまた味わい深いです。

2件目 11:15 DOBOT 越疆科技

DOBOT
ロボットアームを作っている会社です。
会社の中にショールームがあり、そこでデモを見せてくれました。

IMG_6084★

お習字ができるロボットはすごい。

こういうロボットはAPIが公開されており、JavaとかPythonを使ったプログラミングでロボットを制御できます。

小学生も参加できるコンテストがあるみたいです。おもしろそう。

Dobot Robocom Event Series 2017

欧米企業とも取引があり、英語ができる人が多い印象でした。プレゼンも英語でした。
世界を見すえた企業は語学も堪能な優秀な人がいっぱいいます。

製品のプロモーションビデオはこちらをご覧ください。

Dobot M1: Pro Robotic Arm for Makers & Businesses, 3D Print, Laser Engrave, Solder, Pick&Place…

3件目 13:40 HoneyComb 深圳天行创新科技有限公司

HoneyComb
会社ができてまだ1年半くらいだそうです。
オフィスは狭い場所でしたのであまり説明をゆっくり聞けなかったのですが、教育用の電子デバイスを作っているようです。
IMG_6165

HoneyCombのオフィス周辺は深圳市软件产业基地(深圳ソフトウェア産業拠点)と呼ばれており、ソフトウェア系の大企業やスタートアップ企業が集まるところです。国家としてもこの地域の発展に力を入れているそうです。
IMG_6194

テンセント(Tencent、腾讯)の新オフィスビルはでかくて圧倒されました。300億円の費用をかけて建築されたこのビルは今年から稼働するようです。
IMG_6205

4件目 15:10 KANDAO 深圳看到科技有限公司

KANDAO
360度カメラとかいろいろ作ってます。ここも、昨日見学したInsta360と同様、ソフトウェア技術者が多い印象でした。
従業員は100人くらいかな。
映像を扱うとなった場合、やはりハードウェアだけじゃなくて画像処理技術などのソフト面でのウェイトが必然的に高くなってきますね。

IMG_6265

見学者数十人を収容できるプレゼンルームがないため、従業員が仕事している部屋をそのまま使いました。
そこで働いていた社員の方を追い出して… なんか恐縮ですw
IMG_6237

CEOのChen dan氏のプレゼン。室内を360度カメラで撮るだけでこのような立体画像の見取り図(グリグリ動かせる)ができるらしい。すごい。
IMG_6254

立体撮影が可能な全球映像カメラ「QooCam」について日本語でもレビューがあがってます。
スマホを本格VRデバイスにするアダプター、完全自動の天体望遠鏡~CESで見かけたスマホ連動イメージングデバイス – ケータイ Watch

また、VR機器も作っているみたいです。
モデルはツアー参加者の谷口さん。
IMG_6269

スマホを取り付けた簡易VRセットって感じですが、けっこうリアルできれいな映像だったのでびっくりしました。
こうやって有り物で作りあげる中国のクリエイティビティには感心します。
上を向いたり横を向いたりすると追従して景色が変わるのが面白いです。
ただ、この感情を伝える手段がないのが残念です。VRヘッドセットって、装着している本人はその世界に入り込んで「すげー!」とか感動できるんですけど、本人しか見えないので他人に理解してもらう手段が無いんですよね。

5件目 17:00 X Factory 柴火创客空间

X Factory 柴火创客空间
ハードウェア技術者向けののコワーキングスペースのような場所です。

IMG_6320
IMG_6334

一ヶ月600元だから1万円くらい。料金は日本のコワーキングスペースとあまり変わりません。
IMG_6322

IMG_6332

いろんなマシンや工具が置かれていました。
IMG_6317
IMG_6321

スタッフのViolet Suさんのプレゼン。英語がネイティブ並に流暢でした。
IMG_6339
一つ気づいたことですが、英語とか外国語ができる人って、外の世界を知っているためか、ものすごく感受性が豊かで物腰がやわらかいです。うまく言えませんが中国人らしい不躾な態度とか、押し付けがましさとかがないんですよね。誤解をおそれずに言うと、彼女は中国人の中で「民度」という尺度では上位に位置する人だなと思いました。日本でも、戦後高度成長期から現在にいたるまでの間、タバコをポイ捨てしたり立ち小便したりするのが当たり前だった時代から、「そんなことは常識がある人ならやらない」時代へと移り変わってきたでしょう。中国も今まさにその変化の途中で、彼女においてはその過程の先頭を走っており洗練されている、そんなイメージなんです。きっと時代が進めば、彼女みたいな中国人も増えてくるんだろうと思います。

6件目 Xiaomi旗艦店

スマホやパソコンのメーカーXiaomi(シャオミ、小米)の深圳旗艦店です。
IMG_6358

Appleストアぽい出で立ちで、室内もおしゃれな雰囲気をかもしだしていました。

こういう、文字ばっかりの模様って中国人はわりと好きな気がする。
IMG_6361

スマホやパソコンはもちろん売っていましたが、別のフロアに生活家電とかベッドなどが展示してありました。
Xiaomiが支援しているベンチャー企業の製品だそうです。
IMG_6362
IMG_6364

夕食 20:00 四季合味椰子鸡(南山店)

Xiaomi旗艦店から歩いていけるところで夕食。
ビールが安いのでどれだけ飲んでもそんなにかかりません。
瓶ビール1本200円弱くらいだと思います。
IMG_6403★

3日目に続きます。
コワーキングスペースなどの見学などをしました。
もくじに戻りたいときはこちら


中国・深圳の工場見学ツアー「第8回ニコ技深セン観察会」 1日目レポート

2018/3/19〜21の3日間で行われた中国・深圳の工場見学ツアーニコ技深圳観察会の1日目のレポートです。 このツアー記のもくじはこちらです。 1日目の行程 8:30に深圳の電気街である華強北のスターバックス前に集合し …

2018/3/19〜21の3日間で行われた中国・深圳の工場見学ツアーニコ技深圳観察会の1日目のレポートです。
このツアー記のもくじはこちらです。

1日目の行程

IMG_66961日目

8:30に深圳の電気街である華強北のスターバックス前に集合しました。出発は9:00ごろ。貸切バスで移動します。
IMG_5602★
IMG_5607★

1件目 9:50 seeed 润恒鼎丰产业园

seeed
PCB基盤を作っている会社で、その製造工程を見学しました。業界では2番手くらいの有名な会社だそうです。
IMG_5625★

労働環境としては比較的きれいなほうで、きちんとホコリ対策してたり、見学者には防塵服を着用させてました。
ハードウェアの製造工場は一般的には千個とか1万個くらいのロット数からの受注が基本ですが、この会社ではもっと小ロットからの製造が可能となっています。ハードウェア系のスタートアップの強い味方になりそうです。
工場内はところどころ機械化されてましたが、製造行程のつなぎの部分は人力で部品を取り付けたり、はんだ付けしていました。小ロット生産では機械化じゃなくて、こういう人力による小回りがきく製造フローが必要になってくるんだと思います。
IMG_5643★

IMG_5661★

IMG_5666★

PCB基盤にトランジスタ部品?を取り付けている行程

2件目 11:00 JENESIS 創世訊聯科技(深圳)有限公司

JENESIS
IMG_5700★

日本人社長である藤岡さんの会社。従業員は中国人。
中国の安さとスピード感を武器に、日本の会社相手にタブレット端末などの特注ハードウェア製品を作っています。
例えば、タブレット端末を使ってサービスを展開したいが特定の機能しか使わない、既存の製品を使ったのではコストがかさむといったニーズがある場合、機能を限定して安価なタブレットを作ればコストを削減できます。そういう要求に対応しているそうです。

従業員は女性が多く明るい職場でした。「男性はだらしない人が多いから女性の方が良い」と突き刺さる言葉を聞きました。
離職率も悪くないそうです。福利厚生や、長期休暇の間でも給料を保証するなど、他の中国企業よりも良い待遇をしているのが秘訣みたいです。そのあたりは日本人社長らしいきめ細やかさや従業員を大切にする姿勢を感じました。
ここは手作業での組立が中心で、大ロットというよりは小ロットの生産向きな感じがしました。マス市場向けの汎用製品を作るというよりは特定企業のニーズに特化したものが多かったです。

IMG_5736★

IMG_5743★

社長みずからプレゼンしてくれたり、工場ランチをごちそうになったりとても良くしていただきました。
IMG_5714★

IMG_5763★
IMG_5766★
IMG_5768★

ランチは中華料理でしたが、これも「同業他社よりよいランチを出していると思う」とのことでした。確かにおいしかったです。現場の人と同じ食事をとれるというのは、そこで働いている人と同じ目線で時間を過ごせるのでとても貴重な体験でした。

社長の藤岡さんが書いた本がとても興味深い内容でした。私も以前に読んで感想を書いてます。
書評:”「ハードウェアのシリコンバレー深セン」 に 学ぶ” 現地のナマの声と、常識を打ち破る強さを与えてくれる本 | うえむ日記(仮)

3件目 13:30 金型工場1 深圳市硕峰科技有限公司

先程訪れたJENESISと取引がある中国人経営の金型工場を2つ見学しました。
この工場は「汚い」「うるさい」「いい加減」という「中国はこうでなくちゃ」ていう要素を裏切ることなく備えた「ザ・中国の工場」て感じで逆に安心感がありました。
見学したときは電源プラグを作ってるようでしたが、原材料は野ざらしで置きっぱなしだったり、誰かがバケツの水をこぼしたようで床がビショビショだったりして、追い求めていた中国の混沌感がすごく出ててとても刺激的でした。
劣悪な環境ですが、たぶん安い電源プラグをつくるにはこれくらいのいい加減さでいいんだと思います。下手に品質を高めようとすると製品の価格が高くなってしまい、
「たかが電源プラグに高品質のものを作るのはバカげてるよね」
となるからです。こういうものは安く作れないと意味がありません。
でも本当にいい加減な工場だと、従業員もスマホいじりながらやる気なさそうに作業するみたいなので、それが無いだけここは従業員のレベルが高い、ということだそうです。

しかし、従業員はこの騒音の中で耳栓もせず、素手で作業してて大丈夫なんかな…てちょっと心配になりました。
IMG_5812★
IMG_5799★

P_20180319_133728
IMG_1511
IMG_5815★

4件目 14:30 金型工場2 深圳市欣全鑫五金制品有限公司

ここも、暑いしうるさいし「こんなところで働くのいやだなあ」て感じの工場でした。
工場の窓あけっぱなし、見学者は防塵服など身に着けなくてOK、というアバウトさです。本来ならばホコリが混入しないようにゲートを作ったり衣服に気を使ったりします。
そういうことをしないので「ちょっとくらい不良品あってもいいよね」ていう経営哲学が感じられます。
パソコンのキーボードの部品を作っているようでした。これが別のところで組立られてキーボードとしてヨーロッパの市場で1万円〜1万5千円程度で販売されるそうです。
IMG_5833★
IMG_5842★
IMG_5851★
IMG_5838

5件目 15:00 德普沙井电子城

深圳の郊外にある、電子部品売り場が集まる建物に行きました。
一見、華強北の電気街のように小売店が集積しているだけの場所ですが、この電子部品市場は郊外型であり工場に近い場所にあるので、工場関係者をターゲットにした大きい部品や駆動部品などが多い印象でした。
ここに何か物を買いに来る一般人はあまりいなかったです。店側もこれだけでは経営できないので、多分大口の業者から直接注文を請けているんでしょう。
私たち見学者は30人にもおよぶ数だったので、その団体が列をなしてキョロキョロしている姿は彼らにとっても珍しかったらしく、逆にこっちが見物されてしまいました。

IMG_5867★
IMG_5873★
IMG_5876★
IMG_5883★

6件目 16:30 Insta360 龙光·世纪大厦A座

Insta360
iPhoneにつける360度カメラのメーカーです。といっても工場という雰囲気はなくて、製造は外部にまかせてオフィスは企画やデザイン、ソフトウェアを開発している感じでした。
深圳の中心部に近いところにオフィスがあります。
中国ぽい雰囲気は全然なくて、AppleやGoogleみたいな欧米のハイテク会社のようでした。
きっとこんな感じで給料も良くて、ホワイトな会社が中国でもどんどん増えていくんだろうなぁという感じがしました。
Insta360は文字通り360度の風景が撮れるカメラを作っているのですが、例えば自撮り棒の存在を消した画像を作れたり、手ブレ防止がついていたりと先進的な機能をつけています。
この企業は3年で従業員200人の規模に急成長しており、深圳ドリームというべき状況が生まれています。社長も超若い。
私自身がソフトウェア技術者であることもあり、ソフトウェア開発もしているこの会社が個人的には一番興味深かったです。
特筆すべきは
「この深圳でイノベーションが始まっている」ということです。
単なる下請け工場だった時代を経て、深圳はゼロからモノを作ることができるイノベーション都市へ変貌を遂げています。
「この都市が、将来ハイテク分野で世界をリードしていくのではないか?」という萌芽を垣間見ることができます。
ただ、深圳の会社というイメージから
「社員は超スピードで働いてるんだろうなぁ。手が2倍速くらいで動いているんだろうなぁ」
と思っていましたがそんなことはありませんでした。
私達がソフトウェア開発をするペースとあまり変わらない印象でした。
私の勝手な想像ですが、日本の会社と比べて承認決定プロセスが短い、無駄なテストや品質を過剰に追い求めたりしない、という特徴があるのではないかと思います。
そういう「コードを書く作業」以外の無駄なプロセスを圧縮すれば、工期は半分になったりします。

IMG_5901★

Insta360のスゴさはこの動画を見れば分かると思います。

参考記事
中国深センから映像革命を起こす26歳「Insta360」創業者の野望

19:30 夕食

その後は白石州という場所で夕食をいただきました。
40〜50人くらいの規模の数を、予約なしで受け入れられる飲食店のキャパすげえ。中国では大人数でもすぐに宴会を開けます。

IMG_5944★
IMG_5954★

2日目に続きます。
パクリ風ロボットがいい味出してました。
もくじに戻りたいときはこちら