2019年振り返り

2019年残すところ1年になったので、携わったプロジェクトを振り返ってみたいと思います。

 

自身は、開発だけをやっていたのではなく、PM、ディレクション、品質管理など全般に関わる立場でした。

 

開発プロジェクトは2件あり、どちらも研究用に使用するアプリ開発で、主に使用した技術キーワードは、以下のとおりです。

 

- Bluetooth

- Unity(C#)
- TypeScript
- AWS Serverless
- Terraform
- React

 

プロジェクト開始時点で、社内ノウハウがあったBlueooth、Unity、AWS Serverless、Reactなどを中心に、自身もいくつか新しい事を学びながら、フリーランスのメンバーに助けてもらいながら開発を行いました。

 

Unityアプリ開発は、Bluetoothで接続される機器の接続やセンシングに関わる部分は、社内のエンジニアが作ったものを引き継ぐ形でメンテナンスし、アプリ自体の制作や開発は、開発会社に委託。

 

バックエンド開発(AWS Serverless, TypeScript, Terraform, CircleCI)は、フリーランスのエンジニア1名で開発。


Webフロントエンド開発(TypeScript, React)は、フリーランスの完全リモートのエンジニア1名で開発。UI制作は私とUIデザイナーで行いました。

 

自身が過去に使ったことのない技術要素を管理する必要がでてきて、幅広く対応が必要でした。

 

プロジェクト当初は、開発チームの立ち上げ、Unityでのアプリ開発会社との技術連携などのサポートを中心に、サンプルアプリ開発、センシングデータ取得のための実験や分析などを行う傍ら、アプリ側ではなくサーバーサイドで処理する部分の要件定義、仕様策定、さらにはUIの要件定義を顧客ヒアリングから要件定義、WF作り、フロントエンジニアへの社内ノウハウの技術情報連携などなど、結構てんこもりでした。

 

その後、プロジェクトが動き始めて、調整仕事が中心になるかと思いきや、思いの外アプリ開発側の進捗がよくなく、さらにアプリの要件などが定まりきっていなかった箇所が後からごろごろ出てくるようなプロジェクトになってしまい、要件の整理と開発中の仕様変更の調整をアプリ開発側とバックエンド側、Webフロント側とが分断された環境で開発しているのをマネージするのが大変でした。

 

プロジェクト後半になると、アプリ開発側の進捗遅れから、バックエンド側とフロントエンド側の開発が一段落し、全体統合テストする前にメンバーをリリースする必要が出てきたので、全て自分で引き継ぐ形になりました。

 

幸い、引き継いだバックエンドとWebフロントエンドはよく出来ており、バックエンドはClean Architectureに則りUseCase/Gatewayなどが分離されていて、API定義もSwaggerで、テストもCircleCIで実行できるようになっていたので、変更や追加は容易になっていました。

あと、Web関連のプログラミング言語をTypeScriptに統一することで、学習コストを下げることができました。

API GW, Cognito、Lambda, DynamoDBとSwaggerぐらいの知識しかないところからCloudFormation/Terraformを使ってコード化された仕組み、Clean Architecture、CircleCIの実行内容などを追って理解するには、そこそこ時間がかかった気がします。

 

フロントエンドもReact/Redux、React Hooksなど、React周りを本格的に開発したことがない状態から機能追加や変更に対応できるのにはそれほどかからなかったとは思います。

 

今年のプロジェクトの教訓は、フレームワークや設計思想に則って開発することの大事さを改めて認識しました。

 

フレームワークに則ったバックエンドやフロントエンドは統合テストやユーザーテストであぶり出したバグも少なく変更は容易という時間があり、則っていないアプリ側は、バグも多く変更も時間がかかっていた印象です。

 

学習の敷居の高さや、ちょっとした変更を手軽に行えない事から敬遠しがちなのですが、その敷居を乗り越えるメリットは大いにあると思います。

 

研究用で一時的に使われるプロダクトであっても、後からそれをベースにしたり参考にしたりするプロジェクトになることも大いにありうるので、多少苦労はしても学習の敷居の高さを乗り越える姿勢は大事だと思います。

 

iPhone5sのBluetooth周りの問題

iOSBluetooth周りの開発をしていて、

iPhone4S(iOS6)、iPhone5(iOS6)、iPad mini(iOS6)、iPod touch(iOS7)だと快適な動作するのに、iPhone5s(iOS7)だけがnotifyがズレる現象が見受けられました。

 

ちょっと調べてみたら、32bitアプリを64bit機種で動かすと問題がありそう。

 

The iOS 7.1 update is not yet ready for public release, as sources close to Apple have revealed that a handful of bugs still remain. For instance, 32-bit Bluetooth applications are not fully functional on 64-bit devices, like the iPhone 5s or latest iPads. 
http://www.ibtimes.co.uk/apple-releases-ios-7-1-beta-3-developers-download-links-bug-fixes-new-features-revealed-1431581

 

32-bit apps running on a 64-bit device cannot attach to BTServer.

http://news.yahoo.com/apple-releases-ios-7-1-beta-182110635.html 


BTServerとは?
http://theiphonewiki.com/wiki/BTServer

 

2013/01現在の64bit対応機種(A7搭載)
iPhone5s
iPad Air
iPad mini Retina

 

mmm....

下記環境でビルドして実機検証してみたけど、特に変化なし。。。

Xcode5.0.2 iPhone5s iOS7.0.4

Deployment Target 7.0

Build Settings

Architectures: Standard architectures(including 64-bit)

 

 

キッズデザイン with デンマークにAppToysのこれからを見た

キッズデザインに関する理解なしにはMoff(*1)のプロダクト開発できないということもあって、

大阪のATCで開催された「11/2(土) フォーラム"キッズデザイン" with デンマーク 」というイベントに参加してきました。

(* Moffのプロダクトは今のところ子ども向けのプロダクトです。)

 

Vinay Venkatraman氏の「デンマークデザインとキッズデザイン」が非常に面白かったので、紹介させていただきたいと思います。

 

Vinay Venkatramanは、leapcraftのCEOで、大手企業のクライアントと仕事をしています。
デンマーク大使館から紹介で今回来ていただけたそうです。
TEDFrugal Digitalという研究グループなどでの実績もあるそうです。

 

以下から氏のプレゼンの内容です。

 

デンマーク代表ブランドのLEGOは、最初は木の玩具の会社でした。

そして、最新のものを取り入れてきました。
技術がどのように遊びの中でどのように取り入れたか事例を紹介します。

話は、2部構成で、
前半はデザイン哲学について、
後半は事例を動画で紹介します。

【前半】

まず、leapcraft社について。

leapcraft社のコンセプト哲学は、「 User centered innovation」です。

 

ProductsとSoftwareとService の3つのデザインが重要で、
どれかが1番重要というのではなく、Holistic(全体アプローチ)が大事です。

Big Data/Deep Science/Social Technology Trends(SNS, IoT, Sensors)
これらをうまくすすめるにはコラボレーションが必要です。

 


さて、どうやってやるかという話ですが、

次の3つの考えが大事です。

 

Design methods + Technology thinking + Research rigor 

 

f:id:yonesaka:20131102221957j:plain

 

 

Co-Creation

Co-Creationは、最も大事にしている姿勢です。
商品開発はよりいっそう複雑化している。
様々なバックグラウンドを持った人がいかに協力し合えるか問われる時代です。


Early Validation
早く検証することを大事にしている。
試作品作りは、最先端技術だっても、試作品は紙など単純な方法で行うことがほとんどです。
写真は、造船関係の試作品です。

f:id:yonesaka:20131102141607j:plain

 


Cross Disciplinary
様々なバックグラウンド、つまり多様性を重視しています。
Language / Cultureが様々な人材が集まってleapcraftは仕事をしています。
例えば、Computer Science / Social Science / Product Design / Educationalなどです。

f:id:yonesaka:20131102141710j:plain

 


Idea management
アイデアを管理していくスキルが大事です。
デザインをどうやって説明していくのか、どうプロジェクトにつなげていくのかです。

Rapid Prototyping
楽しくやっていくのが大事です。
クリエイティブに迅速に対応するのが大事です。

f:id:yonesaka:20131102141918j:plain

 

 

 

 

写真の左のものは、日常よく目にするパーキングメーターですね。

f:id:yonesaka:20131102141954j:plain

左から順に見ていくと、金属だったのが、ソフトウェア内蔵の電子機器になり、スマホアプリになってきています。
デンマークには、真ん中の写真のパーキングメータはなくなってきていて、スマホアプリになってきています。
工業デザインからインタラクションデザインへ、そしてデータ管理へと変化してきています。
これまでと同様に美しい造形美は考える必要があるが、新しいデザイナーが必要になってきています。
素材をみてみても、金属からシリコン素材へ、そしてクラウドで管理するように。
一連の流れの中で、データを扱い、バーチャルな世界を扱うデザイナが求められます。
もちろん、物体を作るデザインは引き続き必要で求められるが、バーチャルの管理が求められます。

 

 

【後半】

ここからは、Projectsの紹介です。


パラダイム・シフト、大きな命題に向かっていく必要があります。

f:id:yonesaka:20131102142406j:plain

 

 

デザインを手がけたラジオを紹介します。
100年前の発明品。日常生活での使い方は変わっていません。
ここに挑戦しようと思いました。




このビデオを見て、突拍子もないアイデアかと思ったかもしれないが、技術がそこになければ開発していくという姿勢で取り組みました。
まず、試作として、「紙に挟む」と動くものから作りました。
数ヶ月後、紙の性質を利用して、何ページ目にあるかがわかるものを開発できました。
それを踏まえて試作品を作りました。

本の形をしたもので、技術の部分は見えません。

f:id:yonesaka:20131102142804j:plain

 

次のビデオは、子ども向けのARです。

f:id:yonesaka:20131102142906j:plain
車の中で遊べるものをつくりました。
車の中は子どもにとって退屈だけど、楽しくて教育的な体験の時間にしようとしました。
これは、トヨタとのプロジェクトです。
ものの距離がわかったり、言葉を学べたりします。

f:id:yonesaka:20131102143222j:plain

 

もう一つ、デジタルストレージです。

f:id:yonesaka:20131102143324j:plain


子どもの成長が収められるカメラです。
子ども本人よりデジカメやiPadに目を向ける親が増えています。
子どもを撮影しようと思わなくてもいいシステムを考えました。
過去に立ち戻って好きな写真をあとから選べるということです。
カメラの撮影にとらわれうことがないものです。
クラウドベースで写真は管理され、家族と共有できます。
この技術は新しいものではない。監視カメラでも使われてきたものです。
監視カメラの技術があるので、それをより身近な生活に持ち込みました。
新しい技術の開発も大事だが、日常生活の文脈にどう持ち込んでいくのかデザインは重要です。

 

 

 

 

 

最近のトレンドとして、センサ技術があります。
高性能のセンサが安くなってきて、玩具やゲーム産業へチャンスが広がっています。
リモコンの車をつくりました。
実際に自分が操縦しているかのような体験を提供します。
子どもの時は非常に楽しかった記憶ありますよね。自分が操作してる感覚を得られるものはなかった。

 f:id:yonesaka:20131102143814j:plain

 

 

最後はカメラビジョンです。

f:id:yonesaka:20131102144021j:plain
Mixed Reality Applicationsです。
Google Glassは一つの例で、我々の生活にいかに溶け込んでいくかを考えねばなりません。
現実の世界に仮想世界を持ち込むというものです。
ゲームをゲーム機の中から部屋に持ち込もうというものです。
日本なので、スーパマリオだろうというのでそれをつくりました。

 

 

 

どの事例を見ても、最近よく目にする技術だし、自分たちが取り組んでる技術です。

特に、センサの話のところは、まさにMoffでやってる領域に近いです。

デザインの最先端で活躍するデザイナが携わると、技術を日常にとけこませる事がここまでできるようになるんだなと、創造力や感性はこれからますますじゅうようになるなと痛感しました。 

 

MoffでもGOB-Laboratoryさんご協力のもとデザイン思考の考えを取り入れて、今のプロダクトコンセプトが生まれました。

それを解決するプロダクト作りには、リーンスタートアップの考えを取り入れて実践しています。

子どもにプロダクトを使ってもらって観察もしています。 

 

Vinay氏が言うには、子ども向けの製品開発における研究は非常に難しいとのこと。

なので、試作品を早くつくり、子どもに与えて観察することが重要であると。

子どもがそれをどう使うのか、どう発展させていくのかを観察することが重要であると。

 

まさに、自分たちがやってることで、確かにという感じでした。

 これからもがんばっていきたいと思います。

 

最後に、このスライドがとってもいいな〜と思いました。 

f:id:yonesaka:20131102142359j:plain

Moffは、SF Japan Nightのセミファイナリスト15社に選ばれました

Moffは10/5に行われるSF Japan Nightのセミファイナリスト15社に選ばれました。

 

SF Japan Nightとは

東京・サンフランシスコで開催されるスタートアップ向けイベント『SF Japan Night』の第6回準決勝が2013年10月5日(土)、決勝が11月7日(木)に開催される事が決定した。今回で6回目を迎える「SF Japan Night」は、日本中から選抜されたグローバル展開を目指すスタートアップが東京・サンフランシスコでしのぎを削るピッチコンテスト。特筆すべきは、自社のサービスを英語でプレゼンし、海外進出の足がかりとするものである。

 

SF Japan Nightのセミファイナリスト15社はこちら。

http://blog.btrax.com/jp/2013/09/09/6th-japannight-semifinal/

 

実は、Moff、前回優勝したShareWisさんやWHILLさんと、

2013年3月にシリコンバレーでのピッチイベントで同じ舞台に立ったことがあります。

当時まだスタートして1ヶ月だったので、今回は後を追ってがんばりたいところです。

 

 

プレゼンするのは、共同創業者のTakahagiです。

自分は、プロダクト開発に注力です。

 

大阪の”ものアプリハッカソン”出身を代表する気持ちで挑みます。

 

 

イベント登壇は、あくまで弾みをつけることが目的。

最終製品をお客様に届けて、笑顔とコミュニケーションが増える商品で世界を変えたいです。

 

 

3Dプリンタ出力用のユニバーサル基板のケースを123D Circuitsで作ってみた

PCB基板やユニバーサル基板のケースを123D Designなどの3D CADソフトで作ろうとおもってたのですが、簡単に作れそうな方法が見つかったのでやってみました。
 
Instructablesに123D Circuits.ioを使ってPCBとそのケースをつくる方法がのってました。
 
ここで使っているのは、
というサービス。
 
TechCrunchにも乗ってました。
ArduinoをWebでシミュレーションできて、電子回路設計をWebでできて、共同作業もできて、PCBも発注できて、ケースまで作成できると。
 
 
 
さて、本題、今回はケースをつくることが目的です。
 
Twitterログインを利用して、ユーザー登録した後、こんな画面が表示されるので、 
「New circuit」をクリックします。

f:id:yonesaka:20130911233510p:image

 
新しい回路作成プロジェクトの名前を入力、タイプを選択して、
「Create Now!」をクリックします。
 

f:id:yonesaka:20130911233507p:image

 
ブレッドボードの画面が表示されますが、左上のアイコンの上から3つめをクリックします。
 

f:id:yonesaka:20130911233459p:image

 
 
回路のアートワーク画面みたいなのが開きます。
 
左上の黄色をクリックすると、グリッド表示の設定ができます。単位はmilとmm。
紫色の線をドラッグすることで、基板の外枠の大きさを調整できます。
例えば、ユニバーサル基板の72mm x 47mmに設定とかするとか。
 
プロジェクト画面に戻って、「Generate Enclosure」をクリックします。
 

f:id:yonesaka:20130911233503p:image

 
すると、OpenJSCardの画面が開いて、既にケースのモデルができています。
スクリプト言語で、CAD設計ができるんですね。興味深いです。
d1,d2という値をいじって、Shift+Enterでモデルに反映することができます。
完成したら、画面下部の「Generate STL」をクリックすると、「Download」に変わるのでクリックします。
すると、STLファイルをダウンロードすることができます。
 

f:id:yonesaka:20130911233453p:image

 
 
出力されたSTLファイルをMakerBotで読みこめば、Replicator 2Xで出力できます。
 

f:id:yonesaka:20130911233515p:image

 
 

「シリコンバレー流のイノベーション創出」の話を聞いてきた

シリコンバレーのVC投資家の話を大阪で聞ける機会なんてほぼなかったので、聞いてきました。

 

イベント詳細

シリコンバレーのベンチャーキャピタリスト、アニスウッザマン氏を迎え、シリコンバレーにおけるスタートアップのトレンドについて具体的な例を紹介しながら、一流のスタートアップを数多く生み出すシリコンバレーのイノベーション創出について講演いただきます。また、サンブリッジ グローバルベンチャーズの平石郁生氏を迎え、日本におけるイノベーション創出の環境づくりについて、アニスウッザマン氏との対談を行っていただきます。

 

アニス・ウッザマン

【スピーカープロフィール】
Anis Uzzaman(アニス ウッザマン)氏
フェノックスベンチャーキャピタル共同代表パートナー&CEO
 
シリコンバレーにてFenox Venture Capitalを設立。主に初期投資とファイナルラウンドを専門とし、全世界のインターネット、ソフトウェア開発、リテイル関連をメインとした投資を行っている。ユニークなモデルとグロ-バルなコネクションを使い、新時代のベンチャーキャピタルを運営。ベラルーシのフェノックスグローバルグループがLPとなりファンドを立ち上げ、総額20億円の投資規模を実現(継続して1,000億円までのロードマップ)。2012年、年頭には日本事業会社LPによる第2号ファンドを終了し、現在は第3号ファンドを調達中。過去にはIBM、Cadenceにてビジネス戦略に従事。また現在に至るまで小売業からエンジニアリング企業まで数々の会社をM&Aさせた実績を持つ。東京工業大学電気情報工学卒業。オクラホマ州立大学電気工学にて修士、東京都立大学情報通信システム工学にて博士を取得。これまでに30篇以上の学術論論文を執筆し、100件以上の国際学会、ワークショップ、セミナーに参加。
著書『スタートアップ・バイブル シリコンバレー流・ベンチャー企業のつくりかた』が講談社より9月5日に発売予定。

 

話の内容は、テクノロジーが向かう方向から始まりました。

 

METAのSpaceGlassesビデオの紹介

 https://www.spaceglasses.com/

TechCrunchの記事

     

まさに、電脳コイルの世界ですよね。

世界トップレベルは、ここまでやるので驚かされます。もちろんYC。

Fenox VCのYCのデモデーであった出来事が紹介されてました。
ピッチ開始30秒以内にSNSでコンタクトしても、40番目の投資コンタクト権が得られるという状況だそうです。

 

 

続いて、

1. 文化の話

アメリカでは、「家族」「社会」「高等教育」がいい環境らしいです。

”失敗して成功する”という共通認識をもってる人が多い。

教育に関しては、Young Entrepreneurs Sell Lemonade という、レモネード売ってアントレプレナーシップを学ぶというのが有名なようです。


2.エコシステム

スタートアップシティに適してる街の1番はシリコンバレー

ちなみに、2番めの街は、TEL AVIV(イスラエル)だそうです。

・あの人ができるなら自分もできるという環境

・資金的な事を悩まなくてもいい環境(誰かしら応援してくれる確率が高い)
が特に優れてるそうです。

 

スタートアップは、mover and shaker の役割をしてもらうアドバイザー探しも重要とのこと。

 

それと、スタートアップのExit戦略としてM&Aが当然のように存在する。
IBMGoogleFacebookなどもR&Dにお金は使わないが、M&Aで技術を買う戦略をとってるらしいです。
生き残るための買収戦略だそうです。
 


3.Marketing

日本はもっと自慢することが必要だそうです。
Dollar Shave Clubの例が紹介されました。
YouTubeマーケティングをビデオ会社と組んでバズって成功した事例です。
一時期クレイジーなビデオで有名になったので、見たことある人もいると思います。

このビデオ出す前は、ほぼ誰にも相手にされなかったようですが、

アップしてバズった後3日後に11億ぐらい資金調達したそうです。

 

4.テクノロジー 

Scandu

http://www.scanadu.com/
Health Care分野のハードウェア。

医者要らずセンサーアプリといった感じのものを紹介。

 

そして、最近では、投資家もお金だけでは起業家に相手にされないようになってるそうです。

Smart Moneyというキーワードがあがってて、何かというと、
Money(お金) + Knowledge(=アドバイス)

が求められると。

今の自分たちMoffでも求めてる事まさにという感じです。

 

もっと色々な話、特許戦略やDropboxの秘話など、アニスの著書に書かれています。

自分は、セミナー前に読了しましたが、まんべんなくまさにスタートアップ・バイブルという内容。


 

Couseraのビデオをオフラインで見る方法

Couseraのビデオをいつでも視聴できるようにダウンロードしてみました。

 

ダウンロードツールは2つほど試してみました。

今は2つめの方を使っています。

2つともPythonでつくられたdownloaderです。 

 

その1:coursera-downloader 

ソースコードはGitHubで公開されています。これをcoursera-downloaderにcloneするかDLしておきます。

https://github.com/siddharthasahu/coursera-downloader

$ cd  coursera-downloader/

READMEにBeautifulSoup4が必要とあるので、pipでインストールします。

$ pip install BeautifulSoup4

Couseraのユーザー名やパスワード、ダウンロード先の設定をconfig.pyに記述します。

$ macvim config.py
(username, password, downloadpathを変更する) 
使用方法は、次のとおりです。
「$  python coursera.py coursename1 [coursename2 coursename3 ...] 」
例えば、https://class.coursera.org/ml-003/lecture/indexの場合は、
$ python coursera.py ml-003

 

その2:coursera-dl

GitHub: https://github.com/jplehmann/coursera
$ cd coursera-dl

必要な物をインストールします

$ pip install -r requirements.txt

実行します

$ python coursera/coursera_dl.py -u [username] -p [password] [class name] --path=dir_path

 

これで、ダウンロードしたコンテンツをiPadに入れて持ち歩けば、スキマ時間にいろいろ学ぶ事ができるようになります。