basyura's blog

あしたになったらほんきだす。

2時間でわかる 図解「IoT」ビジネス入門

Web サービスだったらなんでもかんでもクラウドっていうのと同様な匂いがあって IOT の定義がよく分かってない。

モノのインターネット(Internet of Things、IoT)は、様々な「物」がインターネットに接続され、情報交換することにより相互に制御する仕組みである。それによる社会の実現も指す。「物のインターネット」と表記された例もある

モノのインターネット - Wikipedia

冷蔵庫がネットワークに接続していて中に何があるか分かるといった製品が「これだから日本は」という風潮だったのだけど、これが「IOT」だって言えば「おー」となっていたのだろうか。

「IOTについて何がいいのかわからない」という人の大半は、それ以前に、「モノがインターネットにつながっているイメージがつかない」のです。

 

「IOT」には、「センサー」で取得したデータを「クラウド」にアップロードし、「人工知能」が学習した内容に従って判断し、モノが「アクチュエート」(ヒトに「フィードバック」)する、という流れがあります。

 

よくある課題を解決できることが、モノがインターネットにつながるメリットとなるのです。

 

IOT がこれほどまでに騒がれる本当の理由は、IOT によって我々の生活にイノベーションが起きると考えられているからなのです。

単純にネットワークに繋げるということではなく、そこから何をするかが重要になるのでアイデア勝負でビジネスチャンスがあるということだろうかなぁ。

リーダブルコード - 再び

新しく人がワラワラと入ってきたので紹介と共に「リーダブルコードを買って読んで」再び。ブログを読み返すとちょうど 4 年前にエントリがあった。

本を読む習慣がある人が少数のようで・・・こちらが何を言ったところで買う人はマレだったりするんだけど強制するものでもないので各自に任せる。これをきっかけに色々漁って読んでくれると嬉しい。ググれば書き方はだいたい出てくるんだけど本としてまとまってるのはやっぱりいい。チーム全体としていい感じに書こうっていう意識自体はだいぶ浸透してきていて、汚く書いてると「○○ (僕) さんに怒られる」といった感じでネタ的に言われることもある。地道にやってきたことでみんなの底上げになっているんではないかと思う (たぶん)。他チームと比べても整ってるし。

紹介したものの 5月 に実施した「自宅の本を一掃する活動」によって BOOKOFF に売り払ってしまっていた。とは言いづらいのでオライリーから電子書籍版を購入。だいぶマシになったけど kindle で pdf は読みづらいので epub 版が欲しい。ちなみに BOOKOFF での技術書の売値は割りと高い印象。人気があるのだろうか?

久々に読み返しても勉強になる。

僕がリファクタリング等でよくやってるのは「解決策を言葉で説明する」にある手法。

一番汚いのは「一致するまで行を進める」部分だ。これをもっとキレイにするには、汚いロジックを新しい関数 AdvanceToMatchingTime() に抽出すればいい。

説明を書いてみるのもそうなのだけどロジックを見渡して

  • 重複がないか
  • 無駄な変数がないか
  • メソッド化できないか

をちらちら考えて整理、分離させていく。もちろん Vimmer なので ijkl<C-d><C-u> でカーソルを動かしながら思考しつつ編集する。

GitLab を導入できたので手元で対象のブランチを見ながらはもちろん、MergeRequest 上でやりとりできるようになったのはいいのだけど、さらにいい感じにレビューができないものかなぁ。要望は付きない。最近は仕様書のレビュー記録が指摘ごとに Redmine でチケット化されるのが気に入らないのでなんとかしたいと思っている。

Git - git-stash: 183: cd: can't cd to C:/hoge/fuga

[asin:B00LPDVAX2:detail]

Git for Windows SDK 便利。zsh にして更に便利。と思ってたのに git stash したら

$ git --version
git version 2.9.0.windows.1

$ git stash
D:\develop\git-sdk-64\mingw64/libexec/git-core\git-stash: 183: cd: can't cd to C:/hoge/fuga
Cannot chdir to C:/hoge/fuga, the toplevel of the working tree

とメッセージが出て stash できない。

git-sh-setup を編集したら stash できた。

  cd_to_toplevel () {
-     cdup=$(git rev-parse --show-toplevel) &&
+     cdup=$(git rev-parse --show-toplevel | sed -e 's/C:/\/C/') &&
      cd "$cdup" || {
          echo >&2 "Cannot chdir to $cdup, the toplevel of the working tree"
          exit 1
      }
  }

SDK じゃない git 2.8 がうごいてる Git Bash は stash できるのだけどなんなのかはよくわからない。

Git for Windows SDK べんり

で、Git for Windows に乗り換えた。cygwin だと preloadindex や fscache が効かないんだろうか。どうせなら Ruby を動かせて他にも色々コマンドが叩けるようにできないかなぁでドンピシャのエントリ。

ダウンロードしてからのインストール。途中でプロキシを聞かれるので、入力して後は待つだけ。

pacman というパッケージマネージャが入っているので tig を入れたい場合はコマンドを叩くだけで OK。

pacman -S tig

便利すぎワロタ、で cygwin を捨てる時が来たようだ。

Redmine - wiki 記法を増やす

wiki 記法を増やしてみる。plugin 化したいけど ApplicationHelper にベタ書きされているので難しそう。メソッドをごっそり書き換えるなら可能に思えるが本体側の修正に取り残されるので微妙。

とりあえずやってみる。個別ブランチは feature を頭に付けるルールになっているので、feature:hoge と書いたら自分でホストしている gitlab 上の feature/hoge ブランチへのリンクを貼るようにしてみる。

  • app/helpers/application_helper.rb

ApplicationHelper#parse_redmine_links

def parse_redmine_links(text, default_project, obj, attr, only_path, options)
  text.gsub!(%r{<a( [^>]+?)?>(.*?)</a>|([\s\(,\-\[\>]|^)(!)?(([a-z0-9\-_]+):)?(feature|attachment|document|version|forum|news|message|project|commit|source|export)?(((#)|((([a-z0-9\-_]+)\|)?(r)))((\d+)((#note)?-(\d+))?)|(:)([^"\s<>][^\s<>]*?|"[^"]+?"))(?=(?=[[:punct:]][^A-Za-z0-9_/])|,|\s|\]|<|$)}) do |m|
          elsif sep == ':'
            # removes the double quotes if any
            name = identifier.gsub(%r{^"(.*)"$}, "\\1")
            name = CGI.unescapeHTML(name)
            puts "name : " + name.to_s
            case prefix
            when 'feature'
              # host, group, project はそれぞれの環境による
              link = link_to("feature:#{name}", "http://#{host}/gitlab/#{group}/{project}/tree/feature/#{name}", target: 'blank')

どうせ外部リンクなんだし、URL を直接貼り付ければいいじゃんという感じに。

VRビジネスの衝撃

気になるけどまだ体験できてない。すごいんだろうなとは思うが、目の疲労に関しては過敏になっているので乗りきれない気がしている。そもそもメガネの場合はちゃんと体験できるんだろうか。某 Podcast では中にメガネをはめてウンタラと言っていたけれど。

日本で多くの人がなんとなく感じている「(実態のない仮想としての)バーチャル」と、ヨーロッパやアメリカで考えている「(見た目が違うがほとんど実物としての)バーチャル」とは、話しているときはなんとなく折り合っているようでも、実は全く異なっていて、お互いに似ても似つかぬ概念を想起しているのである

そうだったのか。根本的に違うのか。

ことわざの「百聞は一見にしかず」をもじって、「百聞は一体験にしかず」

なにはともあれ体験しておきたい。ソードアート・オンラインみたいなゲームで引きこもりたい。