DeepCode

以前からアイデア的には僕にもあったのですが、やはり出て来ました。Deep Learningでプログラムを診断・修正する仕組み。
さらに複雑度の高いメソッドを自動的にリファクタリングするとか、自動テストが自動的に生成されるとかいいだけどな。
IDEリファクタリングツールで教師データを集めて学習させる仕組みを考えればできそうなんですが。。。

シンタックス的VSセマンティック的プログラミング

リファクタリングシンタックス的な改造。リストラリングはセマンティック的な改造。
安全なのはシンタックス的な改造。改造以外のプラグラミングにおいても同様のことが言えるのではないかと最近思っています。
逆に言うとセマンティック的な観点が多く含む状況でのプログラミングはバラツキが多く品質が安定しないと言う仮説です。
実装ガイドを作成する時にはこのシンタックス的に作業ができるかを観点にすると良いのではないかという考えです。

起業の科学

アマゾンの一位になっていたので読まれた方も多いと思いますが
久しぶり一気に読破しました。この手の本は翻訳本が多いのですが、日本の方が日本のスタートアップも含めて書かれています。

起業の科学  スタートアップサイエンス

起業の科学 スタートアップサイエンス

質の良い課題がないと、質の良いソリューションは出来ない、この点が心に残りました。

最近SIerがBizDevOps組織を立ち上げている?

最近アジャイル開発の話を良く聞くようになった。その中で、SIerも従来のウォーターホールではなくアジャイル開発に対応すべく組織の変えて行っているとのこと。
この話の文脈にはスタートアップのような新しいビジネスモデルをローンチするための開発部隊としての役割があるのだが、この話しを聞いていてぼくはSIerにこの役割は難しいような気がしてしまった。

アジャイル開発に関しては契約的な難しがあるが、それ以外に、開発者としてのSIerは失敗しない開発を目指すが、それでは競争力のあるサービスをタイムリーに出すことは難しいと感じたからである。スタートアップの世界では、売れない製品をいくら品質高く作っても意味がない。ビジネスサイドの要求を素早く世に出すためには、少数のエンジニアがより生産性の高い最新技術を駆使して開発するスタイルになるが下請構造で数がウリのSIerにはこのスタイルは難しいと考えているからである。

FacebookNetflix、日本だったらメルカリでやっていることをSIerは学んでアジャイルリーンスタートアップの開発スタイルを進めて欲しい気がした。

VS codeでiPhone実機で動作するReact Nativeアプリをデバック!!

最近初Macを買いました。最初はXCodeでSwiftと戯れていたのですが、Visual Studioに慣れた体には少し大変です。
今回はMac上でアプリを作成するのですが、ターゲットとしてはAndriodもあります。クロスプラットフォームの開発にはいくつかあって、.net派の私にとってはXamarinが第一選択肢になるのですが、最近はReactも使っているのでReact Naitiveでチャレンジしてみます。
React Naitive はFacebookから提供されていますが、Facebook以外からも多くのアプリが提供されています。クロスプラットフォームデファクトになる可能性もあると感じています。

Mac上で開発するので、VS code を使用して開発します。React Naitiveのプロジェクトというかワークススペースはreact-native initコマンドをつかって簡単に作成でき、そのフォルダをVS codeで開けばそのまま開発できます。デバッグReact Native Tools拡張機能を追加することで簡単にできます。

これは簡単だと思っていたのですが、今回BLEを利用するアプリなのでiPhoneの実機で動かさないといけないのですが、その方法が分からずVSCodeでは無理かなと思っていました。

それができることが分かったので紹介しておきます。

まず最初にiPhoneの実機にインストールできるようにするios-deployをインストールします。

npm install -g ios-deploy

環境によってはエラーが出ますが、私の環境では以下のコマンドでインストールできました。

sudo npm install -g --unsafe-perm=true ios-deploy

次にVS Codeを起動してVS Codeのメニューのデバッグ(虫)アイコンを選択します。左上にデバッグのラベルがありその右のスピンの選択項目から構成の追加を選択するとlaunch.jsonファイルが開かれるので以下のような構成を追加します。

        {
            "name": "iPhone",
            "program": "${workspaceRoot}/.vscode/launchReactNative.js",
            "type": "reactnative",
            "request": "launch",
            "platform": "ios",
            "target": "device",
            "sourceMaps": true,
            "outDir": "${workspaceRoot}/.vscode/.react"
        },

設定を保存すると追加したiPhoneが選択可能になるので、選択してデバッグを実行すると実機にインストールされデバッグできるようになります。

これでとりあえずコードと戯れる環境が出来たので色々試していきます。

2017年振り返り

今年は案外良い年になったと思う

Keep

今年は楽しく新しいことにチャレンジができた。この楽しくできたのが良かった
・TRYしたかったDeep Learningを使ったFXもやることはできた
・新しい楽しみとして映画館で映画を見ることもできた
・My FinTechもNASDAQ空売り失敗はあったものの、BP,DBの逆張り戦略で大負けせずに過ごせた
・コードもいっぱい書いた。reactやwebpack、typescriptで作成するモダンWebアプリの生産性は素晴らしかった

Problem

やはりスタートアップ関連に課題は多い
・スタートアップ関連については徐々に話があるようになったがまだまだテイクオフできそうなシナリオにはなっていない
・作っている物自体は悪くないと思っているが、2番手のエリアは難しいのかもしれない
Amazon プライムでビデオを見すぎて夜の睡眠の質が落ちてしまった。結果プログラムを書く量が減ってしまった

Try

・やはりスタートアップ関連、おととしにピボットして今年3年目の勝負の時、見ただけで欲しくなるものを目指す
・FinTech関連で自動化のレベルを上げたい。現状でもいろいろ分析できる仕組みを作り上げたが、もう少しインテリジェンスな仕組みにしたい
強化学習のモデルをもう少し上手にできるノウハウを得たい。このエリアの知見を養いたい
・あと健康であるように。パフォーマンスを最大限にできるように。去年同窓会で話題になったバターコーヒーにもチャレンジかな

来年も皆様にとっても良いお年になるように