タグ

ブックマーク / ameblo.jp/principia-ca (33)

  • 『iOS用音楽アプリのGoogle Cast対応』

    AirPlayはスマートフォンが体であり、AppleTVを外部ディスプレイとして利用するイメージです。 再生・一時停止等のコントロールは全てスマートフォン側で行います。 一方、Google Castでは再生制御を行うのはあくまでReceiver側であり、SenderはReceiverに対して命令を行うコントローラーのような立場に過ぎません。 更に、実装方法によっては複数のSenderから一つのReceiverに接続するような1:nの接続(!)も可能になります。 この辺りをはじめに理解しておくと、この先も躓きにくいと思います。 注意点 実際に作るときはガイドラインを意識しましょう User Experience with Google Castのページに、Google Castに対応させる際のガイドラインが記載されています。 この記事ではコード量を必要最低限に抑えるためにガイドラインに沿っ

    『iOS用音楽アプリのGoogle Cast対応』
    invent
    invent 2017/03/14
  • 『ElasticSearch(0.19)で無理やりデータ復旧させた話』

    こんにちは。Amebaの基幹系インフラ担当している鳥垣です。 ユーザーのサービス用途でElasticSearch(0.19.10)を使用しているのですが、先日ElasticSearchの障害で一部のShardが読めなくなってしまいまして、それを力技で無理やり読めるように復旧させたのでその時の奮闘記を記載したいと思います。 運用情報台数:30台CPU:24コアHeap:8GBインデックス数:3総データ容量:約300GBShard数:128レプリカ数:2バージョン:0.19.10※OpenStackの仮想サーバ ホスト障害発生OpenStackのホストサーバがダウンし、ElasticSearchのノードが1台ダウン。Shardの再配置処理が走り、ダウンしたノードが持っていたShardは他ノードに分散される。この時点ではElasticSearchのクラスタステータスはグリーンだった(Headプラ

    『ElasticSearch(0.19)で無理やりデータ復旧させた話』
    invent
    invent 2016/06/10
  • 『VRで美少女を踊らせてみた(仮)』

    Unreal EngineでOculus Riftを使う前に Unreal Engine4.10.4では、Oculus Runtimeのバージョンが0.8でなければVRプレビューを利用できませんでした。Oculus Runtime のインストール後はコンピュータを再起動しましょう。(※Unreal Engine4.11以降の場合は Oculus Runtimeのバージョンが0.8で動作しません。公式サイトより最新のRift Runtimeをインストールして下さい。) Unreal EngineでMMDモデルを読み込む モデルインポートには、Unreal EngineにMMDモデルをインポートする時に便利なIM4Uプラグインを利用しました。こちらは、GitHubからアクセスすることができます。ご利用のUnreal Engineのバージョンに合ったプラグインを取得して下さい。 作者:bm9様

    『VRで美少女を踊らせてみた(仮)』
  • 『GCPのCloud IAMを試してみた』

    (2019/04 追記 この記事の情報は古いです。今では、GCPのIAMでも IAM Custom Roles によってカスタマイズしたロールが作れたり、Cloud IAM Conditions が登場してリソースの制限がしやすくなったりしています。また、メディア管轄のAWS Organizationsの活用については 「これ危ない設定じゃないでしょうか」とヒアリングするための仕組み @AWS Summit Tokyo 2018 もご覧ください) メディア事業(アメーバなど)を中心にAWS/GCPを担当している柿島大貴です。前回は、Google Cloud PlatformGCP)の各プロジェクトでコストを追える環境を作る を書きました。前回の続報としては、一部には使ってもらいつつも、可視化の部分で cloudyn を検証中です。 今回は、GCPのリソースの認可の話になります。GCPの利

    『GCPのCloud IAMを試してみた』
    invent
    invent 2016/04/02
  • 『Google Cloud Platform(GCP)の各プロジェクトでコストを追える環境を作る』

    Google Cloud PlatformGCP)の各プロジェクトでコストを追える環境を作る | サイバーエージェント 公式エンジニアブログ (2019/04 追記 この記事の情報は古いです。 今では The Cloud Billing Reports ができて、プロジェクトごとのコストが追いやすくなりました!ありがたいです!) この記事はCyberAgent エンジニア Advent Calendar 2015 の24日目の記事です。 メリークリスマス!エンジニアブログ運営チームの柿島大貴です。今年は、前半は1月に共著でHBaseのを出したり、5月にサンフランシスコで行われたHBaseCon 2015で発表したりとHBaseのことばかり考えている日々を過ごしていました。後半は、アメーバでのAmazon Web Services(以下、AWS)やGoogle Cloud Platfor

    『Google Cloud Platform(GCP)の各プロジェクトでコストを追える環境を作る』
    invent
    invent 2016/04/02
  • 『AWAにおけるDevOps』

    はじめに AWAでサーバサイドエンジニアをやっている山下といいます。初めてエンジニアブログを書かせていただきます。よろしくお願いします。 簡単に自己紹介をさせていただくと、2011年にSIerからサイバーエージェントに中途入社し、いくつかのコミュニティ系サービスの立ち上げ・運用、インフィード広告配信APIの作成などを経て、2015年4月からAWAチームに参加しました。 今回は、(今さら?な) DevOpsについてです。といってもスムーズな連携をするには といった話ではなく、現在のチームに参加してからというもの、「エンジニア間の役割が変わってきていて、DevOpsって現状にあってないんじゃないか」と感じており、それについてご紹介させていただきます。 AWAとは 定額制音楽配信サービスです。 スマートフォン、PCでアプリを提供しており、他のデバイスにも順次対応をすすめています。2015年のベス

    『AWAにおけるDevOps』
  • 『ママエンジニアのワークライフ』

    こんにちは。現在フロントエンドエンジニアへ転向中の神谷(@fuzzy31u)です。 このブログに登場するのは2回目。前回執筆時はAndroid開発をやっていたんですねー。 …あれから3年。 大学院修士課程修了、結婚、出産、産休/育休と怒涛の日々を経て、現在はAWA株式会社でサーバでもフロントでもjsを書く毎日を送っています。 そんな育休明け半年の私が再びエンジニアブログを執筆することになりましたので、今回はママエンジニアとしてどういったワークライフを送っているのかをテーマに筆を執らせていただきます。 ワークスタイルリモートワークAWAでのワークスタイルはとても柔軟です。 子どもが風邪で保育園をお休みしないといけない時や、予防接種などで小一時間抜けなければならない時には在宅勤務が可能です。 こちらは夕会風景です。 Slackで/roomと打つだけでビデオミーティングが開始できるRoomや/h

    『ママエンジニアのワークライフ』
    invent
    invent 2015/10/30
  • 『アメーバピグへのGoogle BigQuery導入までのもろもろ設定記』

    この記事は、CyberAgent エンジニア Advent Calendar 2014 の6日目の記事です。 5日目はnekoruriさんのAmeba等で利用しているOpenStack Swiftを利用したオブジェクトストレージ 7日目はoinumeさんのGoLangJavaのenumっぽいライブラリ作った話です。 こんにちは、ピグ事業部のIshimura(Twitter, Github)といいます。アメーバピグのサーバサイドエンジニアをしています。ユニットテストとリファクタリングが好物です。 今回はタイトル通りなのですが、アメーバピグでGoogle BigQueryに実際にログを突っ込むまでに行った設定を記します。アメーバピグではBigQueryを各種施策の検討・評価のための分析用に利用する予定です。 BigQueryの特徴やメリットはググれば(Googleだけに)たくさん出てくるので

    『アメーバピグへのGoogle BigQuery導入までのもろもろ設定記』
    invent
    invent 2014/12/06
  • 『サイバーエージェントのスタンディングデスク事情』

    こんにちは。最近専らjavascriptを書いています、maginemuです。今回はjavascriptとは全く関係ないエントリーです。 はじめに 巷でスタンディングデスクとか言われてどれくらい経ったのでしょうか。 サイバーエージェントでもスタンディングデスクをしている人は少しだけ居ます(僕のチームくらいしか見たことない)。 そういう試みをしてる人も居るよということで紹介してみたりします。 スタンディングデスクとは? にわかに話題になった「スタンディングデスク」というキーワード。一言でいえば「立って仕事をする」ということなのですが、思いの外メリットもあるようです。 ざっと「スタンディングデスク」で検索すると沢山エントリーが出てきます。 いくつか挙げてみましょう。 スタンディングデスクを3カ月試して感じた6つのメリット 長時間座っていることは喫煙並にあなたの寿命を縮める 「1日に6時間座って

    『サイバーエージェントのスタンディングデスク事情』
    invent
    invent 2014/02/20
  • 『WebPの画質とファイルサイズを評価する』

    amebaは大量の画像をそのまま配信するだけでなく、ダイナミックに加工を行ったり画質を変えたりといった機能を備えたプロキシサーバも保有しており、そのアプリケーションの開発および運用を現在担っているのが私の属するチームになります。

    『WebPの画質とファイルサイズを評価する』
    invent
    invent 2014/01/09
  • 『AmebaアプリのiOS7対応時に行ったUI実装』

    AmebaアプリのiOS版を担当している田坂(@tasanobu)です。 先日、iOS7のデザインに最適化したバージョンをストアにリリースしました。 今回はiOS7対応時に行ったUI実装をご紹介させて頂きます。 1. NavigationBarやToolbarがコンテンツに被ってしまう問題 iOS7から、UIViewControllerの全画面レイアウトが採用されました。 また、デフォルトではStatusBarやNavigationBar、Toolbarなどは透過になり、バーの下部の領域までアプリのコンテンツが表示される変更が加えられました。

    『AmebaアプリのiOS7対応時に行ったUI実装』
    invent
    invent 2013/11/19
  • 『(前半)OSCON 2013(Open Source Convention)行ってきた』

    こんにちわ。 今回は7月にオレゴン州ポートランドで行われたOSCON 2013(Open Source Convention)についてレポートしたいと思います。 参加したのはアプリケーションエンジニア4名です。

    『(前半)OSCON 2013(Open Source Convention)行ってきた』
    invent
    invent 2013/09/15
    (前半)OSCON 2013(Open Source Convention)行ってきた|サイバーエージェント 公式エンジニアブログ
  • 『弊社の最近のDevOpsへの取り組み』

    はじめまして。Amebaでインフラを担当しています山口と申します。 某所ではリア充イメージ(?)の強い弊社ですが、所属するインフラ部門は男性100%で構成されている上、私は女性っぽい名前ながらも中年のおっさん(趣味料理)でございます。すんません。 それはさておき、ご存じの方もいらっしゃるかもしれませんが、弊社ではオーケストレーションツールとしてChefを使っております。私は参加しませんでしたが、最近、ChefConf 2013も開催されたことですし、最近の弊社でのDevOps、特にその中でも一風変わったChefの使い方についてお伝えしようと思います。 EC2インスタンスをつくる 最近ではOpsWorksなんかもありますが、稿執筆時点(2013年6月)ではまだまだ発展途上で、弊社がサービスを作る上で必要な機能が網羅されていませんでしたので、自前のChef Serverを利用しています。

    『弊社の最近のDevOpsへの取り組み』
    invent
    invent 2013/08/09
    弊社の最近のDevOpsへの取り組み|サイバーエージェント 公式エンジニアブログ
  • 『出、出、出〜ameba画像配信奴〜!!』

    また、RAIDカードのパラメータはWritback、bs/512K、マウントパラメータはnoatime,nobarrier、queue_depthなども設定しています。 リニューアル構成 現在、上記の構成をリプレースしており 次期には分散ファイルシステムのOpenstack Swiftを使用した構成になります。 Swiftに関しては最近話題なので、ここでは割愛します。 ちなみにSwiftを採用した理由としては、こんな感じです。 ・分散できる(*´ω`*) ・RESTful(*´ω`*) ・pythonでかかれてる(*´ω`*) ・自動復旧機能がある(*´ω`*) ・コミュニティが活発(*´ω`*) ・試験的にもよかった(*´ω`*) まず分散できるという点。 Swiftはデフォルトで3つのレプリカを持つことができます。 また、zoneという概念をもっており、同じオブジェクトは複数のzone

    『出、出、出〜ameba画像配信奴〜!!』
    invent
    invent 2013/06/27
    出、出、出〜ameba画像配信奴〜!!|サイバーエージェント 公式エンジニアブログ
  • 『キラキラ女子を支える技術』

    こんにちは!12新卒エンジニアの白木みつか(@32ka)です。 堂剛をこよなく愛する23歳独身です。 最近「キラキラ女子」なるもの日経の記事にとりあげられ話題になりました。 サイバーエージェント、躍進支える「キラキラ女子」サイバー流、女性活用の研究(1) 「キラキラ女子」集結の謎、藤田晋社長が戦略語るサイバー流、女性活用の研究(2) 「キラキラ女子」を引き寄せる会社の条件 憧れ、説得力、多様性…サイバー流、女性活用の研究(3) うちの女性社員はよくまとめにあがってきたりして、社外ではものすごい華やかなイメージを持たれています。 そんな中にいる、エンジニアについてはなかなか取り上げられません。。。 エンジニアだって頑張ってるんです!キラキラ女子だけじゃないんです!と思っているわけであります。 とゆうわけで、ごく一部ではありますが、エンジニアについて紹介していきます゚+.(◕ฺ ω◕ฺ )゚

    『キラキラ女子を支える技術』
    invent
    invent 2013/06/13
    キラキラ女子を支える技術|サイバーエージェント 公式エンジニアブログ
  • 『WebSocketで監視もリアルタイムに』

    こんばんは。社内ニートの佐野と申します。所属はいちおAmebaのインフラチームです。Twitterもやっていますがフォローする価値はないです。つぶやいているのはメシと酒の話と下ネタだけです。 最近、組織改編とかもろもろありましてこのたびは雑用からニートになりました:(;゙゚'ω゚'): あまり目立たないように生きてたんですが、何気にこのブログへの登場は3回目になります...。前回は2012年12月に「QCon San Francisco 2012の参加レポ」を書かせていただきました。その前は2012年5月に「Virident FlashMAXの検証」として名前だけ登場しました。なんか、ニートだけど会社に貢献してる気がしてきた(^ρ^) そんなわけで以前WebSocketを使った監視ツールもどきを作ったので、それについての簡単な説明と、各種技術要素(Python, Jolokia)のTips

    『WebSocketで監視もリアルタイムに』
    invent
    invent 2013/05/06
    WebSocketで監視もリアルタイムに|サイバーエージェント 公式エンジニアブログ
  • 『redis、それは危険なほどのスピード』

    どうも、プラットフォームDivでエンジニアをやっている Wataru です。 最近3人目の子供が産まれて、産後自宅勤務をさせてくれた弊社はとてもいい会社だと思います。出産予定のあるエンジニアのかたは是非弊社に転職を。 さて、今回はRedisの紹介をさせて頂きたいと思います。 Redisってすごくマイナーなわけではないのですが、めちゃくちゃ便利なのにあまり注目されていないなーという印象があるので、これを機会に是非使ってみてもらえると嬉しいです。 Redisって何?Redisとは「remote dictionary server」から名前が付けられたオープンソースのkey-valueデータストアです。 MemcacheDB等のKVSとの最大の違いは、格納するバリューがデータ構造というところです。 つまり、リスト・セット・ハッシュなどのデータ構造で格納できるのでバリューに対してアトミックな操作が

    『redis、それは危険なほどのスピード』
    invent
    invent 2013/04/30
    redis、それは危険なほどのスピード|サイバーエージェント 公式エンジニアブログ
  • 『QCon SF参加レポート(前編)〜Twitter/Facebook/Google〜』

    QCon SF参加レポート(前編)〜Twitter/Facebook/Google〜 | サイバーエージェント 公式エンジニアブログ

    『QCon SF参加レポート(前編)〜Twitter/Facebook/Google〜』
    invent
    invent 2012/11/29
    QCon SF参加レポート(前編)〜Twitter/Facebook/Google〜|サイバーエージェント 公式エンジニアブログ
  • 『Terminal Multiplexer(tmux)の紹介』

    みなさん、初めまして。 ネットビジネス総合事業部 CAMP事業部のインフラを担当している福坂と申します。 今回が初投稿となります。 弊社には、OSをはじめVim/Emacs/Eclipseなどを自分好みに徹底的にカスタマイズしている人も多いのですが、 投稿では私自身が作業効率を上げるために手放せないツールについて紹介したいと思います。 Terminal Multiplexer(tmux)の紹介 唐突ですが、「GNU Screen」を使ったことはありますか? sshでサーバに接続して作業するような場合、「GNU Screen」を活用されている方も多いのではないでしょうか。 今回はGNU Screenに似ていて、実用的(?)なツール『tmux』についてご紹介させていただきます。 GNU Screenをご存知の方は実際に使ってみた方が早いかもしれませんが、 『tmux(Terminal Mu

    『Terminal Multiplexer(tmux)の紹介』
    invent
    invent 2012/06/22
    Terminal Multiplexer(tmux)の紹介|サイバーエージェント 公式エンジニアブログ
  • 『cocos2dを使ったアプリ開発』

    はじめまして。 サイバーエージェントでスマートフォンアプリエンジニアをしています、甲斐と申します。 私は2011年5月にサイバーエージェントに入社致しました。 入社して初めて手がけた開発がiOSアプリ「つりポン!by アメーバピグ」です。 前職では主に携帯端末のプリインアプリやミドルウェアなどの組み込み開発に携わっておりました。 その時にAndroid開発経験はありましたが、iOSアプリ開発は未経験でした。 また「つりポン!by アメーバピグ」は"cocos2d for iPhone"を採用して開発しています。 その為、iOS開発言語のObjective-C、iOS開発技術 、 cocos2d for iPhoneを習得して開発する事が初めての挑戦となりました。 cocos2dは社内でも「興味はあるけど、触る機会がなかなかない…」といった話を聞くことがあります。 確かに開発技術として採用し

    『cocos2dを使ったアプリ開発』
    invent
    invent 2012/04/25
    cocos2dを使ったアプリ開発|サイバーエージェント 公式エンジニアブログ