古いガラケーでウェブページが見れなくなるって本当?

後輩「先輩。古い携帯電話でウェブサイトが見れなくなるって本当ですか?」
先輩「あぁ、SSLのSHA-1終了の問題ね。正確には、古い携帯電話でhttps://で始まるウェブサイトが見れなくなる問題だね。」

実は2016年現在、古い携帯電話などで、https://で始まるウェブサイト、つまりSSLを使っているウェブサイトの閲覧が出来なくなる事例が増えています。

後輩「え?なんでそんなことになっちゃうんですか?」
先輩「そのためには、まずはSSLの説明からかなぁ。」
後輩「SSLって、ウェブサイトとかでクレジットカード番号とかを送るときに、他人から見れなくするためのアレですよね?」
先輩「そうだね。その他に、ウェブサイトが偽物かどうかの判断にも使われているね。で、そのSSLの仕組みはご存じ?」
後輩「えっと・・・(目が泳ぐ)」
“古いガラケーでウェブページが見れなくなるって本当?” の続きを読む

開けない日本語のファイル名のZipファイル

後輩「先輩。お客さんから貰ったZipファイルが開けないです。」
先輩「どれどれ・・・あぁ、とりあえず、ファイル名をfile.zipに変えてから解凍してみたら?」

受け取ったZipファイルが開けない!とは良く聞く話で、
送り主に聞いてもちゃんと解凍出来ると言われて困るというのも、ここ数年良く聞きます。

そんなときに試してみたいのは、ファイル名を変えて解凍です。

後輩「解凍出来ました!でもどうして解凍出来なかったんでしょう?」
先輩「詳しく話すと長くなるけど、大丈夫?」
後輩「頑張ります」

“開けない日本語のファイル名のZipファイル” の続きを読む

町にPepperがやってきた 〜 「Pepperはじめました」

昨年10月に愛知県豊橋市により開設された「メイカーズ・ラボとよはし」の開設に合わせて導入されたPepper。弊社ではPepperの活用支援を通して地域振興のお手伝いをさせて頂いております。

メーカーズ・ラボ とよはし 開所式
メーカーズ・ラボ とよはし 開所式

主な支援内容は豊橋市に関連したイベントにおけるPepperの技術サポート をはじめ 月例で主に市民の方々を対象にしたPepper講座、また、Pepperを活用するためのハッカソン開催のお手伝いをさせて頂きました。

子供達も真剣です
子供達も真剣です

毎月開催される講座ではPepperのロボアプリ開発ツールChoregrapheを使った簡単なロボアプリの制作が体験できます。小学生も参加頂いており、初心者でも気軽に参加頂ける内容となっております。たまに定員オーバーになることもあるほど(?)地域の方にはご好評いただいております。

約半年間に渡る講座を通し、多くの方がPepperとふれあう様子を見きました。
そのなかから「Pepperあるある」を幾つか紹介しつつ、その可能性について考えてみたいと思います。

“町にPepperがやってきた 〜 「Pepperはじめました」” の続きを読む

バイナリーエディタがあればファイルタイプが分かる!たぶん。

前回、自分が書いた記事は、緩すぎると一部から言われた東京Kです。こんばんは。
というわけで、少し技術寄りの話に戻して、よく分からないファイルの種類を特定するという話題でも。

先日「JPEGファイルのみを受け付けるシステムで、PNGファイルをアップロードできる原因調査」という事で、自分の所にまわってきたファイルがありました。

このように、実物を渡されたら、真っ先に疑うのが「そのファイルが本当に目的のファイルか?」です。
ファイルの形式を変えるために拡張子を変えるだけで良いと思っている方は、結構いらっしゃるので、まずはそこからの調査です。
調査方法は至って簡単で、バイナリーエディタでファイルの内容を見れば大体分かります。

と言うわけで、件のファイルを早速バイナリーエディタを開いて見たのがこちら:
PNGみたいなjpeg
「0xFF 0xD8」(以下、16進数での文字コードを便宜上Blogでは0xXXという形式で記載します)で始まっています。どう見ても、PNGではありません。
以上、トラブルシューティング終了!

・・・ではつまらないので、もう少し説明をします。
“バイナリーエディタがあればファイルタイプが分かる!たぶん。” の続きを読む

ノマドワークに役立つグッズ

久々登場のnoguchiです。
以前もノマドネタですが、またノマドネタです。

ノマドワークとかテレワークとかを導入する会社さんは最近増えて、ニュースでもみかけるようになりました。でも「導入したよ」の話だけで「実際やっている人がどういうやり方をしているのか」は特集されないですね。ということで、実体験者としての情報発信をしたいと思います。これから始める方の参考になれば。

今回紹介したいのは「ノマドワークに役立つグッズ」です。 “ノマドワークに役立つグッズ” の続きを読む

セカンドライフのシム数は現在どれぐらい?2015/08/19Ver

微力ながらSLGuideの担当している、担当者の片割れ東京Kです。こんばんは。

昨日、ネットを見ていたら、Gigazineさんにこんな記事が!

「海賊船の中に教室」などインターネットの仮想世界上に設けられた実在大学の仮想キャンパスは今どうなっているのか?
http://gigazine.net/news/20150818-second-life-college-campuses/

おおっ!珍しい!セカンドライフの記事だ。
そういえば、最近某デザイン問題でもセカンドライフと言う言葉を聞くし、せっかくだから、SLGuideの担当者として何か書くか!
※SLGuideは当社で運営している、セカンドライフの観光案内的なサイトです。
※こちら→http://slguide.jp/

と思ってみたものの、通常業務しながら、良いネタが思い浮かぶわけも無く。

というわけで、以前紹介した、シム数の変遷の最新版を掲載しておきましょうかね。
セカンドライフのシム数の変遷(2015/08/19版)

見てのとおり、順調に右肩下がりで、そろそろ25000シムを割るかどうか………と言ったところですね。

とりあえず、参考までにということで。

なお、以前、このグラフを紹介した際の記事は以下からどうぞ。
セカンドライフのSIM数の変遷と現状(2013/12/13の当Blog記事)

“先取り! Apple Watchアプリ開発入門セミナー” に参加してきました!

先日 “先取り! Apple Watchアプリ開発入門セミナー” に参加してきました。
その際に学んだ事を備忘録として残しておこうと思います。

1. WatchKitって何さ?
そもそもWatchKitが何か分からない方は公式ドキュメントをご覧になるのが良いと思います。
公式のドキュメントはこちらで公開されてます。

あとは公式のサンプルコードですね。
・WatchKit Catalog
Apple Watch で利用可能なUI一覧を確認する事が出来ます。
今回のセミナーではこちらをベースとして話が進みました。
サンプルコード
・Lister
今回のセミナーではあまり触れられませんでしたが、iCloud経由でiPhoneやMacとTODOリストを同期するアプリみたいです。
サンプルコード

2. どうやって開発するの?
開発には現在公開されている最新のXcode 6.2 beta 4を使用します。(2015年1月27日時点)
https://developer.apple.com/xcode/downloads/
※iOS Developer Programs へ登録している人がダウンロード可能です。

2.1. Apple Watchアプリを作る
現時点ではApple Watchアプリのプロジェクトを作成する機能は提供されていないようです。
ですので、 [iOSアプリプロジェクトの作成] > [AppleWatchターゲットの作成] という2段階でプロジェクトを作成する必要があります。
プロジェクトを作成した結果 WatchKit Extension グループとWatchKit Appグループが作成されるわけですが、WatchKit Extension グループには iOSアプリとしてiPhone上で動作するコード、WatchKit AppグループにはAppleWatch上で利用するリソースが置かれるようになっています。
何故このようにグループが分けられているかという点に関しては追々記載します。

さて、WatchKit Appグループには、作成した段階で Storyboard が作成されます。
Storyboard はGUIで画面遷移や画面レイアウトを作成できるXcodeの便利な機能ですね!
まずはこの Storyboard に対して編集を行っていきます。
iOSアプリでは ViewController という画面を管理する要素がありますが、WatchKitでは IntefaceController というAppleWatch上の画面を管理する要素を使用します。
といってもInterfaceController上にラベルやボタン等を設置する事で簡単に画面デザインが定義できるので、iOSアプリとほとんど変わらないです。

画面デザインが出来たら、次は WatchKit Extension グループに作成されているコードを編集します。
基本的には WatchKit App グループで定義した画面から入力を受けとり、何らかの処理後に画面を更新するプログラムを記述することになると思います。
この際にアシスタントエディタを使用すると Storyboard 上の画面要素とコードを簡単に紐付けることが出来ます。

画面デザインと入出力を処理するコードが作成できたら、AppleWatchアプリの完成です。
あとはAppleWatchアプリをビルドして実行する事でシミュレータが立ち上がり、アプリが実行されます。
現在はAppleWatchが発売されていないのでシミュレータ上での確認になりますが、それでも AppleWatch の簡単な動きは確かめる事が出来ます。

ボタンを押したらラベルの文字列が変わるアプリをセミナーでは作成したのですが、InterfaceController上にLabelとButtonを設置してラベルを変更するコードを一行追加するだけで簡単なアプリができました。
これまでにiOSアプリを作成した事があれば、特に違和感なくAppleWatchアプリを作成できそうです。

2.2. UIの種類
AppleWatchで利用可能なUI一覧を確認する公式サンプルコードとして WatchKit Catalog が用意されています。
iOSアプリとはデザインが若干異なるので、AppleWatchアプリを作成する場合はこのサンプルコードを実行して一度全てのUIを見ておくのが良さそうです。

・ラベル(Label)
指定した文字列を表示する要素
・ボタン(Button)
タップ時にアクションを発生させる要素
・テーブル(Table)
列形式で表示する要素
UITableViewに似ているが管理方法はWatchKit独自
・画像(Image)
AppleWatch内で保持している画像を表示する要素
基本的にオンラインで画像情報をやり取りする事はできない
パラパラ漫画レベルのアニメーションは適用可能
・グループ(Group)
UIをグループでまとめ、レイアウトを管理する要素
iOSではUIViewの階層構造により表現されていたが、WatchKitにUIViewの概念はないためこちらを使用
・コンテキストメニュー(Menu)
画面を長押しすると表示されるメニュー要素
最大4つのメニューボタンを定義可能

その他セミナーでは触れられませんでしたが、SwitchやSlider等、iOSでもなじみのあるUIが提供されているようです。

2.3. 画面遷移の種類
画面遷移は主に3種類の方法が提供されており、こちらもiOSアプリを作成する際の指定方法と似ています。
それぞれの画面遷移は Storyboard 上から指定する事が可能です。

・左右のスワイプ(横になぞる)で画面遷移
Interface Controller同士をSequeで結ぶとページングUIが作成できる
・ナビゲーションバーを利用した画面遷移
Button等からInterface ControllerへSequeを結び、Push Sequeを選択するとナビゲーションバーを活用した画面遷移が可能になる
・モーダル表示形式による画面遷移
Button等からInterface ControllerへSequeを結び、Modal Sequeを選択するとモーダル遷移で画面が表示される

3. Apple Watch の特徴
これまでに WatchKit の概要をまとめてみましたが、この内容から Apple Watch のハードウェア的な仕様が伺えます。
先程説明したように、 AppleWatch アプリのプロジェクトは WatchKit Extension グループと WatchKit App グループの2つに分けられて管理されており、WatchKit Extension は iPhone 側、WatchKit App は AppleWatch 側にインストールさせることで AppleWatch アプリを動作させます。
つまり、AppleWatch アプリは必ず iPhone と連動しなければ動作させる事が出来ないということです。

何故このような構成なのかというと、AppleWatch は iPhoneよりも駆体が小さく、やはりバッテリーの容量に問題があります。
(一日一回充電しないとバッテリー切れになるという話が一時期話題になりました。)
このバッテリー問題を解決する方法として、AppleWatch側では電力を極力消費しないようにリソースを管理するのみに留め、電力を消費する演算処理はiPhone側で行う方式を採用したようです。
この点がiOSアプリの開発とは若干考え方が違うように感じますね。

4. 終わりに
さて、その他気になる点としてはAppleWatchにはどのような入力インタフェースが提供されるのか(GPSや電子コンパス等)といったところでしょうか?
セミナー後に簡単に調べてみたのですが、そのような入力インターフェースに関するAPIは現時点では確認できませんでした。
今後APIが更新されることでそれらの情報も明らかになってくるのでしょうか?

また、2/24にアップルのスペシャルイベントが開催されてAppleWatch実機が披露されるとか、4月にはAppleWatchが発売されるとかの噂が色々と出回っています。
早くAppleWatch実機を拝んでみたいものですね!

ベトナム探訪

ベトナムへ行ってきました。

IMG_1961

今回ベトナムまで足を運んだ目的は、現地でのオフショア開発の現状視察です。
現地で見聞きしたソフトウェア開発事情はもちろん、それを取り囲む社会的な背景、現地の人たちの生活を目にすることで、国内やネットでは知り得ない、グローバル化の進むこの業界の一端を垣間見ることできました。

オフショア開発って何って人はこちらをご覧下さい。
http://itpro.nikkeibp.co.jp/atcl/column/14/494329/082800009/
この記事読んでる人は多分知っているとは思いますが…

今回は弊社でお世話になったことのあるAsianTech様のホアンさんに協力して頂き、
ベトナム中部の都市ダナンにて現地でオフショア開発を請け負っているソフトウェア開発会社と現地の日本語学校を幾つか訪ねてまいりました。

“ベトナム探訪” の続きを読む