IoT縛りの勉強会! IoTLT vol.33 @ LINE でちょびっとだけLTします

ちょびっとだけLTって頭痛が痛いみたいなことですがw

3分~5分LTなんで、本当にLightningさんなのよ~ w

IoT縛りの勉強会! IoTLT vol.33 @ LINE

https://iotlt.connpass.com/event/67583/

 

Mapboxの話をします。

孫さんのファンドから出資された件でも、ググっと知名度は上がったと思いますが!

まだMapboxを広めたい~⊂(^-^)⊃

 

ほかの登壇者さんの話も、とても楽しみです。

勉強しないとな~。シャキ(`・ω・´)

Lineさんに行くのも楽しみですねヾ(´ω`○).

大事なモノの場所をトラッキングする TrackRを使ってみた

♪一番大事なモノが~

一番遠くへ行くよ~ ♪

・・・

以前、

小さなGPSトラッキングタグで鍵やペットの居場所を把握する

小さなGPSトラッキングタグで鍵やペットの居場所を把握する

という投稿で紹介したこともあります、TrackRという製品が、日本でも発売されていたので買ってみました!

もちろん、弊社は位置情報アプリの会社なので、位置情報をトラッキングするものは試しておかないとということでもあります(`・ω・´)

 

TrackR

TrackR Japan Homepage

実のところは、日経新聞で「マモリオ」という製品の記事を見て、

「あ、これってTrackRと同じじゃん」

って思ったので、調べた次第です。

マモリオはこちら。

https://mamorio.jp/

 

GPSとかが内蔵されているわけではなく、Bluetoothで位置を確認する、という製品のようですね。

実物はこれぐらいのサイズ。

で、とりあえず、財布なくしたくないな~ とか、ひったくりにあったら探せるかな?と思って、財布の中に入れてみました。

でも、財布が一気にかさばる…。5ミリ程度の薄さですけどね。

で、スマホと接続。 ううっ 「あきこの財布」とか恥ずかしい名前つけちゃった(;´Д`)

アプリからTrackRの音を鳴らすことができます。

鳴らすとキュンキュンという電子音がTrackRから発信されます。

なので、家の中で、財布をどこに置いたかわからない時に、一発で探せますね!!o(>▽<)o

 

んじゃ、どれぐらいの範囲まで探せるか、というと…。

これがキビシイ。

弊社は40へーべー超の部屋ですが、部屋を出るともう厳しいですね。

廊下を歩いているうちにトラッキングできなくなっちゃいます。

「あああ 財布が遠ざかっていくゥ~ッ!」

というのはわかりますw

なので、ひったくりに合っても探せはしないなぁ…。(;´Д`)

 

うーん、この辺がBluetoothの限界かな?

アメリカでは920MHzの周波数の小さな基地局を自宅などに設置し、そこから1.6Km~6.4Km圏内のものを探せる これも近所に基地局を使っている人がほかにいれば、その基地局を使用できる という製品もあるようで、この方が実用に値しそうです。

 

また、クラウドで位置情報を発信しているものをみんなで共有して探すことで、探すネットワークを広げられる!という機能もあるようですが、使い方がわかりませんでした。

多分、日本でまだ使ってる人は少ないだろうから、使えないだろうしね(´・ω・)

私の財布の位置を知らない人と共有したくはないしね(^_^;

 

というわけで、鍵とか財布とか家の中でよくなくす人いるじゃないですか。

そういう場合に最適に使えそうですよ!!

Mapboxさんがソフトバンクから1億6400万ドルを調達しました ワッショイ⊂(^-^)⊃

ニュースとしては遅れていますが

ソフトバンク、「ビジョン・ファンド」で米位置情報企業Mapboxに投資

http://www.itmedia.co.jp/news/articles/1710/11/news076.html

と報じられましたね。

弊社はずっとMapboxヨイショです。⊂(^-^)⊃

なので、今回のこのニュースは大歓迎です!!!孫さん!!やりましょう!!!w

 

Mapboxの何がいいって、とにかく美しいですよ!!゜*。・*゜ ヽ(*゚∀゚)ノ.・。*゜。

そして、開発・サポートも親切で対応が早いです。もう、アメリカの会社とは思えないぐらい(つД`)

 

今回のソフバンさんの投資を機に、Mapboxが日本でもっと広まってほしい。

管理ツールとか、英語のままでも使えるけれども、もちろん日本語対応してほしい。

Mapboxのブログにある、この孫さんの写真いいですね⊂(^-^)⊃

SoftBank leads $164 million Series C Funding

https://blog.mapbox.com/softbank-mapbox-series-c-be207b866b27

 

なぜ仕様変更が開発者にとって大変なのか考えてみた

先日、コデアルさんのインタビューで「受託開発から自社サービス開発に転換できた」話を取り上げていただいた旨を書きましたが、受託開発って本当にうまくいかないんですよね。

先日も、旭川医大とNTT東さんの裁判の件は、IT業界では話題になってましたね。

失敗の全責任はユーザー側に、旭川医大とNTT東の裁判で逆転判決

http://itpro.nikkeibp.co.jp/atcl/column/14/346926/092501136/?rt=nocnt

 

旭川医大だけにかかわらず、受託開発にまつわる大体の問題が、「仕様変更」によるものなのですが、これに対する解決ってないんですよね。

発注側:「ちょっとのことなんでしょ?なんでやってくれないの」

この繰り返しなんですよね。

あと、発注側が完璧を求めすぎる。

プログラムの世界には完璧はないんですよ。

この点が、なかなか理解して頂けないんですが。

 

どうも、プログラマーの仕事を職人の手仕事と同じようにみられているように思いますが

「プログラマーが手を抜かずにちゃんとやれば、完璧にできるはず。だから、バグは手抜きとか力不足が理由。」

という理屈が発注側さんに往々にしてありますね。

そうではないんですよ。

 

プログラムという製品が複雑すぎるのです。

「いや、簡単でしょ。もし〇〇したら〇〇するって書いていけばいいんでしょ」

っていう人がいます。

いやいやいや。

 

まー、問題をシンプルにするために、仮に

「もし〇〇したら〇〇する」

だけがプログラミングだけだとしよう。

例えば

「もしメールが届いたら自動返信する」

とかだったら、簡単かもしれない。

しかし、それだけのプログラムは何の役にも立たない。

 

現実世界で起こるような複雑な処理をしてるわけです。

例えば、朝起きてから会社に行ってお昼ご飯までの

「もし〇〇したら〇〇」

という分岐をすべて書いてみてください。下記のような感じです。

「朝7時半に目覚ましがなって起床

(目覚ましが鳴った時)             (鳴らなかった時)

↓                             ↓

7:35  パンがあるかないか調べる         寝ている
(パンがある)    (パンがない)              ↓

↓               ↓             ↓

7:45 パンを食べる   ご飯があるか調べる      寝ている

この後延々といろいろと続く…

とっても複雑になってしまいますよね。

で、それを確認して、

「もう間違いない?これで大丈夫?」

と何度もテストしてみます。

 

仕様変更というのは、そのあとで

「んー、7時半に起きるとやっぱり眠いから、7時45分に起きることにしよう」

と変更が重なっていくという感じです。

すると、上記の分岐のタイムラインをほぼ書き直さないといけない。やることも時間がかかることをやめないといけない。

ぐちゃぐちゃになっちゃうわけですよね。

 

もちろん、これはわかりやすくシンプルに伝えたかったサンプルなので、実際はこんなんではありません。

if文だけでこれなんで、実際はもっと複雑なんです。

 

「でも、それって自社サービスでも受託でも一緒でしょ」

って声があるかもしれませんが、これは90度ぐらい違います。

受託だと、否応なしに天の声として降ってくる。

自社サービスだと、そこはコントロール可能な範囲で、理由も飲み込める。

なので、自社サービスのほうがずっと楽なのです。

 

PHPカンファレンスに行ってきました

こんなひどいコードを書いたのは、どこのどいつだーい??(-_-メ)

あたしだよっ!3年前のね!!!(懐かしの、にしおかすみこ風に)

自社サービスを継続して続けていると、どうしてもレガシーコードと向き合わなければいけません。

そして向き合う過去の貧弱な自分やサービス、DB構造などレガシーな遺産たちともね…。

 

さて、話は前後しますが、先週の日曜日、PHPカンファレンスに行ってまいりました!

三連休の中日(ちゅうにち じゃなくて なかび だよ)という超非リア向けイベントでしたけどね!!

よく晴れた日でしたねヾ(´ω`○).  こんな日は本当は山にでも行きたいとは思いました。心の底から!!!

 

…次の3講演をお聞きしました。以下、私が印象的に感じたことを述べておきます。

①Cygames グラブルの運用

・いかに10億PV/日をさばくか

・DBサーバー300台以上をシャーディングして水平分割

・時間がかかっているAPIを特定し、処理を見直す

New RelicとXHprofで時間のかかっている処理を特定

・Memcachedを活用

→キーの持ち方に気を付ける

→データが取れない場合は再度計算してMemcachedにのせる

→重い処理はとにかくCacheを使用

→マスターデータが更新されたらキャッシュを削除する

・KVSはローカルごとに利用

→redisは複数行を一度に処理するのに向いている

・プランナーが入力しやすいように、マスターデータはCSVを取り込んでいる。(へぇぇ)

 

②弁護士.com

 

ここは弊社とかなりポジションが似ていると思います。

自社サービスをやってく、ゲームなどではないという意味でですね。

なお、2013年までまったくの赤字だったそうで。

近年急成長したそうです。

 

赤字の場合は、サービスをとにかく顧客志向で。

→しかし、黒字になってきてからは運用が大切になってきた

→カウボーイ的開発をスクラム開発に変更

マイクロサービス化

→LikerDを利用している

→優先順位をつけてやらないことを決める

CircleCI、NewRelicを使用

 

開発には終わりがないのが終わり とおっしゃっていたのが印象的でした。

 

③GREE

 

第一声が、

「みなさん Greeって知ってますか?」

だったのは衝撃でしたがw

 

数千台のオンプレミスのサーバーをAWSに移行

→しかもPHP5.2だったので、まずは5.5に移行

→50%ロードアベレージが減らせた

→移行の際は、Direct Connectを使ってMySQLのレプリカをAWS上に作ったりした

 

現在、PHP7への移行を進めている

 


全部、内部の話をさらけ出して頂いて、大変に勉強になる話で、有難うございました。m(_ _)m

 

で、話が冒頭の話に戻りますが、受託開発で作って終わりのシステムを作っている人たちを除けば、レガシーな開発の遺産にどうやって向き合うのか、は非常に難しい問題です。

以上の3講演を選んだ理由は、これに対する答えを多少なりとも教えてくれそうだったから。

1年もたてば、古くなるし、当初想定していなかったバグも発生する。

アクセスが増えて、DBの処理が追い付かないとか、プログラムの構造変えなきゃとか、サーバー移行しなきゃとかなる。

想定していなかったような利用方法が出てきて、DBの構造変えないとダメ。

とかエトセトラですね!

 

弁護士.comの市橋立CTOに、懇親会で話を伺ったのですが

「すべてをやることはできないので、優先順位をつけてやるべし」

と言われていました。

 

なるほど!その通りですね!

しかし、これが経験された方の話と、経験されていない人の話では天地の差があります。

ありがとうございます。

 

なんかね、新しい技術を追いかけたいという気持ちもありつつ、常に新しいこともできない、というジレンマがあります。

弊社でもよく議論になりますが

「あれも これも それも どれも よくないから変えよう!!!」

じゃ無理なんです。

一歩一歩、一番重要なことからやっていかないと。

弊社の社訓の一番にもしてますが、

FOCUS ON IMPACT! (大事なことを一番にやる)

 

これが重要ですね。

 

この日はこれに出かけようと急いでいて、マンションの階段で転んでアゴを強打するというヘマをする&洗濯物に白いものと赤いものを混ぜて洗ってお気に入りの白シャツが台無しになるという悲しい事件もありましたが(つД`)

また、懇親会LTやりたい!と実はスライドまで用意していたのですが、枠が埋まってしまい、ダメでしたね…。

私はMapboxの話をしようと思ってたんですが。

弊社スタッフにも

「節子!それはPHPやない、Javascriptや!」

とも言われちゃいましたしww やらなくてよかったのかな…。ハハハ(・∀・)

 

で、最初は文句などを言っていましたが、行ってとてもよかったです。

例年、そう思ってますw

大変勉強になったし、一番の効果は、こういう純粋に技術を突きつめよう!という開発者が集まる場に行くと、自然とモチベーションがアップされます⊂(^-^)⊃

なんか、皆さん目がキラキラしてるんだよな~。(^。☆)キラーン

プログラミングって楽しい、技術って楽しい!と思えるそんな時間でした。ヾ(´ω`○).

ボランティアスタッフの皆さんにも感謝感謝です。

 

トラックが必ず通らないといけないルートを通っているか管理する

Smart動態管理のあたらしいカスタマイズ事例ができました!

カスタマイズ事例 土壌運搬車輌管理社のためのルート外れ・ナビ機能

http://doutaikanri.com/function_customize_root_navi/

ビジネスにおいて、どっかからどっかにモノを運ぶのに、かっちりと、あるルートを通らないといけない、というニーズはままあるかと思います。

今回は、そのようなお客様のニーズを満たすために、Smart動態管理にカスタマイズをして納品いたしました。

ルート外れ

ドライバー、管理者双方がルートを外れた場合、すぐに気づくことが目的となっています。

ドライバーのアプリでアラーム音を発生し、管理者のブラウザ側でもアラーム音を発生させます、

ルートを外れているかどうかの判定以外にも、決められたエリアでは、ドライバーに注意を促す音声を流す、という機能もそなえています。

ルートの設定は、実際に一度走行したデータから、すぐに取り込むことが可能で、面倒な設定作業などは必要ありません。

ルート設定

 

今回は、私もNode.jsやアプリなどで、ルート外れ判定の部分を作成させていただきました!

それなりの苦労もありましたが、自分にとってのチャレンジもあり、楽しくやれましたo(>▽<)o

 

ご発注いただき、ありがとうございます。

このようなカスタマイズのお問い合わせは下記からご連絡ください。┌o ペコッ

http://doutaikanri.com/contact/

コデアルさんのサイトでインタビューを紹介していただきました

リモート・在宅ワーク事例のCODEAL[コデアル] さんで、インタビューをしていただきました。

受託開発から自社サービス「Smart動態管理」に見事に転換!株式会社オンラインコンサルタント代表後藤インタビュー

https://www.codeal.work/contents/archives/5510

ご紹介、ありがとうございます!

弊社は9年ぐらい受託開発をやってまして、自社サービスで生きていけるようになったのは、ここ最近のことなんですよ。

 

受託開発…それは重き荷を背負いて遠い道を行く仕事…。

儲からないし、難しい、つらい。(´・ω・)

特に、リーマンショックがあった後の2009年ぐらいとかは、システム開発の単価もガンと下がり、マッチングの会員制サイトを30万円とかで開発してましたね。

 

 

でも、日本の「システム会社」「ソフトウェア開発会社」という名前でやっている会社のほとんどが

人売り(実質の派遣業)

受託開発

 

なんですよね。

 

なんとか、受託開発止めたい、自社サービスで儲けたい、というのがそういう会社さんの願いでもあると思います。

なので、今回、このような話を取り上げていただきました。

 

弊社も自社サービスを、受託開発をやりながら、いくつも立ち上げましたが、なかなかうまく行きませんでした。

その中で、なんとかSmart動態管理が生まれてヒットしたんですよ~。詳しくはリンク先へ!!、

 

 

コデアル社長の愛宕君は、大学の後輩で、アツイやつです。⊂(^-^)⊃

コデアルさんは、エンジニアの副業を紹介するサイトですので、副業したいエンジニアの方、副業エンジニアを募集している会社の方はぜひ登録してみてください┌o ペコッ

 

マンマチャオ三原社長の講演を聞いてきました

とってもためになりました!ありがとうございます。m(_ _)m

マンマチャオさんのお店を皆さんも見かけたことがあるのではないでしょうか。赤い看板のコインランドリーさんです。

 

現在、マンマチャオさんは飛ぶ鳥を落とす勢いで伸びてるんです。

雑誌やテレビなどでも取り上げられていて、すごいですね。

 

さてさて、三原さんのお話でよかったなと思う点は

 

・ファイティングポーズを下ろさない

・夢は大きく そして語っていく

・会社がつぶれるよりは人前でしゃべる

・健康が大事

・人に任せるというのは、丸投げではなく進捗の管理をすること

・経営理念をちゃんと考える、そして大切に

 

でした。

 

私も、常々思うんですよ。

うちの会社みたいに小さい会社に入ってくれて、社員さんに同窓会などで肩身の狭い思いをさせてないかと気になります(´・ω・)

誰も聞いたことがない会社で、マウンティングされてないかな、と…。(´・ω・)(´・ω・)

 

それに引き換え、私が提供できるものは夢しかない。

日本にGoogleみたいな会社を作るというアレです。

マジな話ですが。

だから、彼らのために、いつかは上場して有名な会社になって、きれいなビルに入って、立派な家を建て(この辺は個人に任せますけど)みたいなサクセスストーリーを実現させてあげなきゃ!!と心底思います。

 

って、同じことを仰ってましたので、とても共感しました。

 

もっとがんばらなきゃ。

できることあるのに、やれてないのでは。

ってか、まだ全然やるべきことある!!

 

と相当気が引き締まりました。シャキ(`・ω・´)

毎日毎日忙しくって、ついつい目の前の仕事に追われてしまいますが、高い目標と高い目線をキープしないと。。。

そして、そういう気持ちにさせてくれるので、たまにはすごい方の話を聞いたり、交流させていただく機会は参加してかなきゃいけないな、とも思いました。

 

なんと、そんな三原社長の新刊がこちら!

序盤読みましたが、リアリティがある面白い本ですよ。⊂(^-^)⊃

ちなみに、最後ではありますが、弊社でシステムを作らさせて頂いたのです。

Webの管理画面から、洗濯機や両替機を操作できる、当時としては画期的なシステムだったと思われます。o(>▽<)o

Node.jsもまだ日本であまり有名ではなかったころから使ってたんですよね~。KWSKは下記の投稿をご覧くださいませm(_ _)m

日本よ これがIoTだ ブラウザから洗濯機を操作できるコインランドリーのシステムを開発【新実績】

現在はこのようなシステム開発は新規で受託していません。

AIで何やるか問題

この業界のエンジニアに今、一番気になる技術は?って聞いたら、きっと多くの人がAIって答えるでしょう。

私もそうです!

 

以前、下記のような投稿をしたんですが

ゼロから作るDeep Learningという本を読みました

結局、ディープラーニングで何するか?ってのが問題なわけですよね~。

弊社では、Smart動態管理とか、タクシー検索 たくる とかをやっているので、位置情報のデータとかはかなり持ってるわけですよ。

でも、それで例えば渋滞予測とかするには足りないし。

すでにあるインフラにかなわないし、ドコモとかGoogleのほうがもっと大量のデータを持っているので、そこと戦って勝てるわけもないし。

ビジネス展開を考えたときに何するか?問題があるわけですよね。

 

なので、なにがしかの作業分析とか、配送計画のよりよい立案とかを考えています。

 

しかし、難しいのは今のAIってのは、何が正解で何が間違いか教えてあげないといけないんですよね。

画像認識とか音声認識とかに向いているんですよね。

そのデータをどう作るか?どう取得するか?が勘所なわけですよね。

正解と不正解がはっきりわかれているので。

 

うちの犬みたいです。

でも、ある意味、ただのコンピューターが犬になったってすごい進化ですよね!!

やっぱりITの仕事は楽しい(o^―^o)

 

 

Smart動態管理に配送計画からワンタップで電話できる機能ができました!

本日、Smart動態管理のAndroidアプリが8.1にアップデートしました。

今回はいろんな変更があったのですが、大きくは配送計画からワンタップで電話できるようになったことですかね!

実際に配送業をやってらっしゃる方に聞くと、配送先に電話をする機会は多いそうです。

現地に行くと、場所がわからなかったり、いらっしゃるかどうか、前もって聞いたり、遅配の場合の連絡など…。

そりゃありますよね。

 

で、その際、紙の配送計画とかでドライバーさんに配送指示をしていると、スマホに電話番号を打ち込んだりするのは非常に面倒ですよね。

 

そう、若干余談ですが、スマホになってから電話するってことが非常に面倒になりませんでしたか??

私はなりましたw

電話番号を入力するのも面倒、なんで10桁もあるの??!とか
電話帳アプリから検索するのも面倒、
電話代がかかるのもいやだ(笑)。

とりあえず、

ワンタップで電話したい!!!

 

と心が叫びたがっていると思います。

 

なので、その機能を追加しました⊂(^-^)⊃

Smart動態管理は日々、運送・配送業の皆様の業務効率を上げるべく進化しています!

ご意見、ご要望などありましたら、ぜひお寄せください。↓

http://doutaikanri.com/contact/