by shigemk2

当面は技術的なことしか書かない

RundeckをDockerで試したい

Rundeckは、超高機能スケジューラであり、

  • cronをUIで登録
  • 複数のスクリプトを順次実行
  • 複数のスクリプトを並列実行
  • 複数のサーバで登録したジョブを横断的に実行
  • 開始、完了、失敗をSlackで通知
  • 途中でスクリプトの実行が失敗したときの挙動の制御

などが出来ます。「これシェル芸でできんじゃね?」っていうご指摘はごもっともですが、まあその通りです。でもシェル芸でやるより圧倒的に楽です。

調べたら、そのものズバリなDockerイメージがありました。

https://hub.docker.com/r/jordan/rundeck/

github.com

このコマンドを一発PON☆と実行すれば、Rundeckが起動します。

$ sudo docker run -p 4440:4440 -e SERVER_URL=http://MY.HOSTNAME.COM:4440 -t jordan/rundeck:latest

あとは、http://MY.HOSTNAME.COM:4440 にブラウザでアクセスすれば、ログイン画面が出てきます。

デフォルトのID/passwordはadmin/adminであるので、そこからごにょごにょしたらいいんじゃないでしょうか。

なお、SERVER_URLはoptionalではなくちゃんと設定しないといけないようなので、/etc/hostsなどに適当な名前を足してIPを割り当てるといいです。 (ちなみに、IPについては、boot2dockerを使うかdocker-machineを使うかで調べ方が変わってくるので割愛)

memo Twitter Everywhere #HelloWorld

Ali Parr, Twitter(From London)

  • 日本に来たのは4回め

Twitterのプラットフォームのお話

  • アプリケーション
    • 最初からSNSとして作られた
    • どうやってアップデートをかけ続けて最高のものを作れるか
    • そのためのプラットフォームとしてのFabric
    • https://get.fabric.io/
  • コンテンツ
  • データ
    • ツイートを長い間追跡すると面白いデータが出てくる
    • Gnip

Fabric

  • 2014/10(0人)→2015(22万人の開発者)→20億のデバイス

Fabricとは

  • 5種類のSDKでもっていろいろなことが出来る

    • Crashlytics クラッシュアナリティクスβテスト(アプリは安定性が重要である)
    • Answers リアルタイムアナリティクス(今アプリ上で誰が何をしているのかをトラッキング)
    • Digits 電話番号でのサインイン(UK USは最初のデバイスはラップトップだが、新興国では電話が最初のデバイス)
    • アプリへのトラフィックを収益化(今日はその話はしない)
    • 会話へアクセス
  • プロモーションとかいろいろなことを解決出来る

  • A/Bテスト、バックエンドインフラの監視、支払いはこれらのキットでは出来ない(作ることはできるけど)
  • 機能にないものは パートナー企業 にやってもらう
    • 支払い部分はAmazonとか
    • 機能は慎重に追加しているので、質の高いものが追加される
  • UIを作るUIがある

Crashlytics

  • 180億のクラッシュイベント
  • アプリがクラッシュするのはかなりイライラする
  • 13億2500万のAndroid端末が1ヶ月で解析される
  • クラッシュではなくプログラムが遅いとか、ネットワークの接続が遅いとか、あらゆるエラーをキャッチ出来るようにしている
    • ユーザーがその時何をしていたかをトラフィックする
  • 次のアップデート
    • Unityをサポート
    • tvOSのサポート

Answers

  • ソースコードのサンプルはありません!というか書く必要がない
  • 次のアップデート
    • OSXとtvOSでのサポート
    • オーディエンスインサイト(ユーザーの情報をいろいろとトラッキング出来る 場所、性別、興味を持つものなど)
    • ローンチ当日のエクスペリエンス(最も緊張する日 サーバインフラアプリいろいろ大丈夫か気になる。リリースの日のパフォーマンスを見ることが出来、誰がどのバージョンを使っているか、誰がどの機能を使っているかを時間軸で比較出来る)
      • バージョンアップでユーザーが増えていたら良い変更であるといえる
    • AppStore GooglePlayで利用開始

Digits

  • SMS認証はシンプルかつグローバルなID認証
  • メアドをロストしても問題ない
  • 電話帳とリンクしてほかの人とつながりやすくなる
  • DGTAuthenticateButtonとか書けばいい

  • 次のアップデート

    • メール認証
    • tvOSのサポート
    • 音声通話のフォールバック(東南アジアユーザー向け)

Advertisements

  • ネイティブ動画広告(MoPub協賛)
  • ネイティブ動画をツイートに埋め込み

Contents

  • 毎月10億人以上が訪問
  • パフォーマンス向上のためJSのコードを40%削減→まだ続いている
  • ツイートは連続するものであり、これをサイト上に持ってくることにした
  • ツイートの写真をコレクションするなど出来る(TweetDeck)
  • ツイートをまとめたタイムラインをプログラムで作成(API)
    • ハッシュタグとか、ロケーションとか

Gnip

  • ツイートのデータを利用してビジネスとか人命救助とかに使う
  • e.g. university of wollongong 洪水被害の防止
  • e.g. harvard medical school 食品由来の病気を特定
  • ツイートできる文字数は140だけどメタデータは65種類以上ある
  • パブリックAPIとかオーディエンスAPIとか

Gnip 3つの目的

  • リアルタイム(現状の把握)
  • 履歴データ(既に起きたことを理解 2006まで遡れる 億レベルのツイートが10年間にわたってツイートされてる)
  • インサイト(オーディエンスと特に効果的なコンテンツを理解)

https://gnip.com/insights/

まとめ

  • fabric 世界中に起きている会話をいろいろな形でサポート
  • gnip データ分析

memo #HelloCode - Twitter platform demo #HelloWorld

Aman Alam, Twitter

SeetheCity のデモ

  • どこでツイートされているか、何についてツイートされているかなどを知ることが出来る

アーキ

  • 3つのEP

    • user/lookup
    • search/tweets → 夜間処理で遡及サーチ
    • followers/ids → オーディエンスAPI
    • Gnipでデータ集計して、Fabricで見る
  • コードはRuby

    • ツイートを引っ張ってきて、古いものを消して、欲しいものを取り出して、保存する

https://twitter.com/seethecity

  1. セグメント作成(ユーザーIDの追加)
  2. オーディエンス作成(セグメントをAPIに送って作る オーディエンスが作られると、必要な情報がJSONで返却される)

アプリは軽量に、必要なEPだけを用意する

  • /api/cities
  • /.../:id/ranked_attractions

など

  • seethecity→fabricで解析
  • コピペやクリックでポチポチするとFabricのSDKが使える(on Xcode)
  • fabricを使ってseethecityのトラフィックとかを見ることが出来る(Answers)
    • 必要なコードをコピーしてペーストしてビルドしたらばOK
    • logContentViewWithName

ソースコード

https://github.com/twitterdev/seethecity-server

https://github.com/twitterdev/seethecity-ios

memo テレビとネットの融合 #HelloWorld

リクルート アニプラ/エムキャスの開発

それに近い構図が出てくる例のアレ

エムキャス

  • スマホでテレビが見られるアプリ
  • サービスのきっかけ MXが最速なのに東京都民以外はアニメに早くキャッチアップできない
  • 日本のTwitterユーザーはだいぶ偏っている(非リアの巣窟)
  • そこに対して満足するサービスを作ろう

エムキャスのFabric活用

  • 集客費ゼロ
  • Crashlytics→GitHub→Slackって言う流れで、クラッシュレポートをSlack通知
  • TwitterKit 番組ハッシュタグを付与&番組に紐づくTweetを表示

memo りんな #HelloWorld

  • bingの検索エンジンの開発者

JK人工知能

  • 人とのつながりを大切にしたAI
    • 25万ツイート(もうツイ廃じゃねーか)
    • テキストに対して的確な返信
    • 季節に則った返信
    • 画像を使った返信
  • シャープアカウントとのコラボレーション(りんなアカウントが代わりに発信する)

どうやってやってるの

  • TwitterApplication
  • User Streams
  • status/update
  • OAuth

アクティビティ

  • シャープアカウントのこの日のエンゲージメント率とインプレッションが爆上がりし、その後も継続して上がっている

faslane presentation #HelloWorld

@andypiper

  • 毎週2時間を取り戻せるとしたら(アプリ開発にはものすごい神経がいる)
  • バグのせいでユーザが不満なので修正しないといけない
  • アプリ開発者にとりいろいろな問題がある

fastlane

iOSの継続的デリバリーを手伝うオープンソース

https://github.com/fastlane/fastlane

  • ヒューマンエラー防止
  • 処理の自動化
  • リサイクルとリユース

ベータ版のデプロイ

  • プロビジョニング
  • コミットプッシュ
  • ビルド

とか、いろいろなステップがあるし、これを手動でごにょごにょすんの超めんどい

この流れ: cert→sigh→gym→ipa コマンドを書くのはめんどい

→Fastfileを作成して、この流れを自動化する!

Fastfileを書く→commit & push→Slackで知らせる→実行

$ fastlane beta

アプリのリリース

  • 最新版をユーザーに出すのでワクワクするけど、いろいろしんどい
  • でもリリース前にスクショをいっぱい取るのはめんどい→Screenshot.screengrabでスクショが取れる

デプロイ

  • スマホアプリのデプロイはいろいろ手続きを踏まないといけないのでかなりしんどい
$ fastlane ios release
  • Pilotを使ってiTunesにアップロードする

取り組み

  • Androidサポート
  • オープンソースなのですぐ使える

https://fastlane.tools/