Masanori TakanoSystem Engineer, Technology Researcher at CyberAgent, Inc.
![野良ビッグデータへのお誘い](https://cdn-ak-scissors.b.st-hatena.com/image/square/416d5b1a34e6ff1365c9b5bc1522fe849aef7a05/height=288;version=1;width=512/https%3A%2F%2Fcdn.slidesharecdn.com%2Fss_thumbnails%2Frandom-170121083001-thumbnail.jpg%3Fwidth%3D640%26height%3D640%26fit%3Dbounds)
Masanori TakanoSystem Engineer, Technology Researcher at CyberAgent, Inc.
タイトルは誇張です。 みんな大好きpotatotipsという勉強会で以下のようなトークがあったようです。(現場には行っていません) 曰く「ActivityContextで何千回もやったら数回リークが検出された。 なるべくApplicationContextを使おう」とのことらしいですが、間違いなく死人が出る(誇張)と思いますのでご注意ください。 (追記20160527: 修正されたようです なんかすみません) speakerdeck.com 結論 Application Contextは使わないでください。(誇張) (実際は使うときは使う) なぜApplication Contextなのか Application Context使おうぜ!という根拠の記事としてこちらのフェンリルのDeveloper's Blogの [追記あり] Android 開発で気をつけたいこと 〜変数名と Conte
webpackとは いろんなファイルをtranspileしてES5のJavaScriptに変換してくれるやつ AMDかCommonJSの形式でファイルをロード(CommonJSならrequire)すると、transpileしたファイルをロードしてくれる クライアント側のjsコードでもrequireを使用することができる assetとしてビルドして配布するイメージ コードが共用の場合、設定を変えることで素のrequireを利用するサーバー用コードと、webpackがpolyfillしたrequireを利用するクライアントコードとを別々に生成できる 全てがJavaScriptになる、画像やCSSも 画像は「Base64かFilePath」に CSSは「headにstyleを挿入するjsコード」に 特定のファイルをどのようにtranspileするかはpathマッチングでプラグイン形式で設定する
Hashicorpから2015年秋の新作が2つ登場した. Otto - HashiCorp Nomad - HashiCorp Ottoがなかなか面白そうなのでコードを追いつつ,Ottoとは何か? なぜ必要になったのか? どのように動作するのか? を簡単にまとめてみる. バージョンは 0.1.0 を対象にしている(イニシャルインプレッションである) Ottoとは何か? 公式はVagrantの後継と表現されている.が,それはローカル開発環境の構築も担っているという意味で後継であり,自分なりの言葉で表現してみると「OttoはHashicorpの各ツールを抽象化し開発環境の構築からインフラの整備,デプロイまでを一手に担うツール」である.ちなみにOttoという名前の由来はAutomationと語感が似ているからかつ元々そういう名前のbotがいたからとのこと. なぜOttoか? なぜVagrantで
警告 以下でのモジュールの説明はトランスパイラであるBabel 5,6で動作を確認した振舞いについての記述です。2015年11月現時点で、ECMAScriptのモジュール仕様策定範囲は、本来の全体範囲のまだ一部であるとのことです。その状況でのBabelの実装は、良く言えば先行的、悪く言えば将来そのままである保証はなく、現時点でも他のES2015をサポートする処理系との間での相互運用の保証はありません。また、現時点でBabelのモジュール機能を使うこと自体にリスクがあるという意見もあります。CommonJS側からBabelが生成したモジュールをCommon JSモジュールとして読み込もうとしたときの互換の問題として、Babel5で可能だったことがBabel6では利用不可になる、といったことも起きているようです。 そこらへんを含めて解説されているこちらの資料が参考になります。 (2015/11
会社で受託開発していて、gitを使った開発フローを考えることになった。 ニアショアに開発をお願いしていて、ニアショアからの受け入れタイミングが何回かあるから、それにあわせてブランチをわけている。 どういうフローで進めているかと、一番最後にやってみて思ったことを書いた。 どういうフローでやっているか リポジトリの構成 下記モジュールを用意した。 parent core entity common web batch tools ニアショアにて開発するモジュールは『common』、『web』、『batch』で、 アーキにて開発するモジュールは『parent』、『core』、『entity』。 ブランチ ブランチはこんな感じで分けている。 ちなみに、ソース管理はgitBucketを使った。 masterブランチ … リリース可能な状態の資源のみを管理する。結合テスト実施時は、本ブランチから資源を
Qiitaに書きました。 GUIでDockerがサクサク使えるKitematicが便利 - Qiita Kitematic便利。Dockerの敷居がまた一段下がったので是非使ってみるといいです。 ここではコラム的にDockerを自分のマシンにインストールするとどのようなメリットがあるのか?個人ユーザーに何をもたらすのかについて雑多に考えてみます。 人の作ったアプリを試すのに便利 KitematicのようなGUIツールを使うことでもっとも便利になるところです。 IRuby notebookのような複雑なアプリケーションを動かすときもホスト環境を汚さずに試すことが出来ます。IRuby notebookとIPython notebook、どっちがいいのかなぁと比較するのもとても簡単です。 DockerHubやGitHubからよいDockerfileのコンテナを探す能力が重要になりそうです。 デプ
海外事業向けのiOSアプリケーション開発を担当している西山(@yuseinishiyama)です。クックパッドは現在、海外複数カ国に向けてサービスを展開しています。 主にObjective-Cで記述されたアプリケーションを全面的にSwiftに書き換える機会があったので、その際に得た知見や書き換えるに至った動機を共有します。 書き換えに至るまでの経緯 この項では、書き換えに至るまでの経緯について説明します。 Objective-C期 アプリケーションの開発は2014年7月頃にスタートしました。Swiftの発表直後でしたが、時期尚早ということもあり、Objective-Cで実装することになりました。 Objective-C、Swift混在期 2014年10月頃から、Swiftへの段階的な移行のために、新規のコードをSwiftで書くようになりました。Swiftの記述力や、ヘッダと実装を行き来しな
Githubでの開発 - Issue, Commit, Pull Request, Mention, Code Reviewに関する基本的なルール ゴール 「 チーム で 長期にわたって 生産性を上げる 」 前提 みんながサービス・プロダクトについて自主的に考える組織 エンジニア全員がそれぞれオーナーシップを持ってよりプロダクトを良くすることを考える いわゆるPM職の不在 = コードは書かずに、マネージだけする人がいない これは組織による。(e.g. 外注やディレクター職の存在) けれど、Wantedlyは、多少変化しつつも、より良いサービスを生み出すために、役割の程度の差はあれ全員がプロダクトについて考え責任を持ったほうが良いと考えている。 理想型 図:「青と黄色」のチーム構成が従来の縦割り+統括チーム、「緑(金)色」のところが目指すべきマイクロサービスチーム マイクロサービスチームは、
自分は普段ソーシャルゲームの開発に関わっていますが、群雄割拠のグリモバ全盛期にその開発を効率化するために社内ではいろいろな取り組みがなされました。そのひとつにアプリ別ではなく機能別のチームを作るということがありました。結果としてそれは失敗だったと言えるのでそのことについて書いていきます。 背景 当時のソーシャルゲームの主流はカードゲームで、クエスト・レイドをこなしつつガチャで引いたカードを合成して強化していくスタイルが一般的でした。そしてその多くがシステムはほとんど同じで見た目だけを変えた「柄替え」アプリでした。 その中で行われたのが二つの共通化です。 コードの共通化 今までのアプリでは元のアプリのソースからフォークするなどして別のプロジェクトとして独立させそれに対して各チームが開発を行うと言う感じでしたが、今回の共通化ではゲームのコアとなるロジック部分をサブモジュールとして分離し、各アプ
「プログラマ35歳限界説」という俗説があるが、実際のところ30代も半ばになると、マネジメント業務が増えて実際にコードに触れなくなるプログラマも少なくない。しかし、任天堂の岩田社長は、40歳、任天堂の経営企画室長時代まで実際にコードを触る業務に関わっていたという(4Gamer)。 岩田氏はマネージメント業務に関わるようになってもしばらくは夜や休日にコードを書き、社内で見せていたという。また、岩田氏が最後に関わったのは、ゲームキューブ版の「スマッシュブラザーズ」だそうで、開発が停滞し「このままだと発売日に間に合わない」という状況になったため、開発元である山梨のHAL研究所に赴いてコードレビューやバグ修正、バグの担当者割り当てと行った作業をやっていたそうだ。 岩田氏が社長になったのは2002年、42歳のときなので、その2年前まで実際にコードを触ることができていたというのは興味深い。さすがに現在は
あなたは技術者採用の面接が苦手ですね。そう、あなたですよ。間違ったスキルを探し求め、適正の無い人たちを採用して、自分自身と会社に悪い影響を与えているのです。応募者リストを見直さなくとも、今までとは違う人材を採用し、会社の業績を上げ、あなた自身も仕事をもっと楽しめるようになりますよ。 いささか大胆な物言いだということは承知しています。仕事での経験を積み面接を担当するようになってから10年、大小の企業の様々な部署で、技術者を雇うための数多くの面接をしてきました。採用する人材が会社に及ぼす影響についても見てきました。完璧な採用を目指せというつもりはありません。私自身がこれまで何度もしてきたあらゆる失敗をあなたが犯さなくても済むよう、お伝えしたいのです。私がこれまで学んできたことは次のようなことです。 誤った判断基準 1. 応募者の現時点の知識に基づいて採用しない 面接で犯しがちな最初の間違いは、
こんにちは。PR TIMESエンジニアの落合です。 前回の記事(Chefを使ってサーバー構築運用! PR TIMES導入編! - BREAK TIMES)で、 Chefの簡単な概要と、導入方法を簡単に解説させていただきました。 今回は、具体的なChefの活用法と構築方法をご紹介させていただければと思います。 PR TIMESにおけるChefの活用について 現在PR TIMESでは、開発環境、ステージング環境、プレビュー環境、本番環境が存在しています。 それぞれ、開発環境・ステージング環境には、WEBとDBが入っており、プレビューと本番環境では、 WEBとDBで別のサーバーを使用しています。 これらを上記の図のように、Windows上の作業マシンからknife-soloを実行して、 本番への適応を行えるような仕組みの構築を進めています。 それでは、実際にどのように、構築を進めているかをご紹介
WordPressセキュリティを考える会第6回資料 WordPress(PHP) からjQuery(JavaScript)に動的に値を渡す方法について WordPressに限らず、ウェブアプリケーションでPHPからJavaScriptに値を渡したい場合はあるかと思います。 以下の方法を検証してみます。 1. data-XXX 属性の値に渡す 2. wp_localize_script 3. esc_js wp_localize_scriptは、内部でjson_encodeを使用しているが、HTMLエスケープはしないので注意が必要。 詳細は -> http://www.rescuework.jp/blog/wp_localize_script-json.html 2014-09-07(日)14:00 - 17:00 東京都中央区新川1-3-4 PAビル5F コワーキングスペース茅場町 コワー
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く