フレームワーク の検索結果:

デザイナー横断組織の変遷

…インのガイドライン、フレームワーク化が促進され仕組みが整い効率化されました。そして、個々のデザイナーにとっても視野が広がることでこれまで幅広い仕事の領域にトライでき成長にもつながったと思っています。コーディングが得意な人、イラストが得意な人、UI が得意な人、ディレクションできる人がコミュニケーションを高め、教えあう環境を自然に作り個々の経験を高めるということです。結果、苦手なところを補いあってトータルの完成度も高められたのではないかと感じています。 そんな過程で、それぞれが…

インフラ新卒研修と社内ISUCONのはなし

…利用されている言語・フレームワーク) 新卒研修で学んだことを活かせるよう、N+1クエリ、スロークエリなど日常でお目にかかるような消耗ポイントを用意しました テーマは「雑実装なクックパッド」でした ベンチマーク(ryot_a_rai) Gatlingをつかって実装しました。レスポンスをチェックできたり、テストデータを流し込めたりと、簡単な社内ISUCONでは十分機能しました。 スコアやベンチマークの成否などはGatlingのsimulation.logから算出しました サーバの…

Try! Swiftで感じた将来

…ftに留まらずiOSフレームワーク(CoreData、CoreAnimation、HomeKit)やテスティング、ユーザビリティ、コードリーダビリティなど、様々でした。 Swiftとは Swiftとは2014年のWWDCでAppleが公開し、プログラマーコミュニティを驚かせたプログラミング言語です。モダン、安全、書きやすくて読みやすい、既存のObjective-Cのコードベースに同時と使える言語と言われました。 実は「そんなにすごいのか」の議論はまだまだ続いています(Swif…

ブラウザから使える O/R マッパ、 js-data を使ってみる

… などの Flux フレームワークを導入するまでもないんだけど、React.js と組み合わせてデータのアクセスの部分だけ抽象化してくれるライブラリはないかな……。ということで調査したのが、js-data を見つけるきっかけでした。 自分以外の特定のフレームワークに依存していないので、React.js で管理されたコンポーネントとそれ以外のコンポーネント、両方でこのライブラリをモデル層として使用することもできます。 名前で損をしている感じがあるのですが、なかなか使いやすいやつ…

年間100冊以上本を読むための読書術とおすすめ書籍

…に役立った ・14のフレームワークで考えるデータ分析の教科書(著書:高橋威知郎) この本は、はじめてデータ分析をして失敗が続いていた時に見つけた1冊です。データ分析に関しておすすめされている書籍をいくつか読みましたが、自分が体験した失敗の原因と解決方法について具体的に書かれているので、今でもよく繰り返し読んでいます。 14のフレームワークで考えるデータ分析の教科書作者: ?橋威知郎出版社/メーカー: かんき出版発売日: 2014/09/18メディア: 単行本(ソフトカバー)こ…

成熟期にあるWebサービスの新たな価値を求めて - サービス開発はじめの一歩

…の言語、利用しているフレームワーク等、実現可能性を思う存分考えましょう。 この点は以前にも言及されていますね。 いろいろなフレームワークを試してみる 企画開発フレームワークとしては当社ではEOGSがよく使われていますが、例えば今考えていることをAISASに当てはめられるか?リーンキャンバスで書いてみるとどうか?構造化シナリオを使えるか?といった具合に異なるフレームワークを壁当て相手として使ってみることも自分の考えの整理につながります。 自分たちでまとめた表は最終的になんと呼べ…

Cookpad TechConf 2016 開催報告

…タイピングとデザインフレームワーク、デザインレビューについて、実例を交えながら紹介しています。クックパッドではデザイナーのみならず、 ディレクターやサポートの方もGitHubのissueを使ってやりとりをすることが多いのですが、もちろんプロトタイピングやデザインレビューにも利用されています。 あとデザインフレームワークを用意して、基本的なデザインであればすぐに実装できるようになっていることも開発者としては非常に助かっています。 CookpadTechConf2016 vol.…

モバイルアプリのスレッドプールサイズの最適化(画像読み込み編)

…つにExecutorフレームワークがあります。Executorは内部にキューを持ち、Runnableを実装したタスクをexecuteメソッドで実行します。図にすると下のような感じです。 メインスレッドでリクエストを生成して、ワーカースレッドでタスクを処理するようなデザインパターンを、プロデューサー・コンシューマーパターンと呼びます。このコンシューマーすなわちワーカースレッドはタスクが要求されるたびに生成することもできますし、スレッドプールを使って再利用することもできます。待機…

クックパッドのジョブ管理システム kuroko2 の紹介

…ne のSQLバッチフレームワークである bricolage も kuroko2 から実行されています。 詳細な bricolage についての説明は、「巨大なバッチを分割して構成する 〜SQLバッチフレームワークBricolage〜」 を参照ください。 ワークフロー管理 上記のジョブ定義DSLは、1つのバッチ実行を定義するだけでなく、依存関係にあるような複数のバッチを1つのジョブとして定義することができます。 execute: command1 execute: comma…

日々の気づきをクックパッドのサービスとして形にするための取り組み

…ムが使っている3つのフレームワークについてご紹介します。 気づきに力を与えるための3つのフレームワーク 1. 気づきを企画に組み立てる「価値仮説テンプレート」 何かの「気づき」を得てもそれを企画にするためには、まず何をどう進めるか・どう考えようかということが頭をよぎります。実際私が今のチームで開発をし始めた頃、何をどう進めるかを決めること自体に時間をかけてしまい、コアな議論を始めるのに時間がかかっていました。 そこで、考えなければいけない要素をテンプレート化し、チームでサービ…

クックパッドの広告エンジニアは何をやっているのか

…ド謹製のサービス開発フレームワークが存在していて、社内で広く使われています。実は、このサービス開発フレームワークも、一番最初は広告企画を作るために使われたと聞いています。 昔から、クックパッドは広告について「ただ掲載しさえすればいい」という考えは持たず、あくまでもユーザさんに価値を届ける方法の一つとして考えてきました。 百聞は一件にしかず、具体的にはこちらのページをご覧いただければご理解いただけるかもしれません。 このような、食品系の会社さんと一緒にユーザさんにも価値がある形…

Swift2で作るコマンドラインツール

…c以下にビルド済みのフレームワークが生成されます。 $ carthage update OptionKitを用いると、以下のように簡単にコマンドラインオプションを実装することができます。 #!/usr/bin/env swift -FCarthage/Build/Mac import OptionKit import CoreFoundation let arguments = Array((Process.arguments[1..<Process.arguments.co…

次世代ビルドツールBazelを使ってAndroidアプリをビルドする

…Eにはビルドに必要なフレームワークやライブラリの参照を定義します。 今回はAndroid SDKの定義と、Mavenで配布されているcommons-langを使用します。 android_sdk_repository( name="androidsdk", path="/usr/local/opt/android-sdk", api_level = 23, build_tools_version="23.0.1" ) maven_jar(name = "commons-lan…

グループ会社の開発体制強化にデザイナーとして参加した話

…assによるデザインフレームワーク化準備(現在進行中) 知見共有できる場づくり(ワークショップ、デザインツールの勉強会、クックパッドとの手がけた事例の知見共有会など) 各種ルールの制定(デザインレビュー指針、ワークフロー) (今回デザイナー陣が活用していた資料の一部) サービスデザインの難しいところは、どんな素晴らしいように見えるアイデアも現実にビジネスとして実現可能なかたちに落とし込む必要があること。現実には収益を改善したい、できるだけ早くリリースしたい、でも技術的負債は抱…

夏の技術職インターンシップ講義資料公開

…ストで進めました。 フレームワークの使い方を覚えてもあまり意味が無いと思い、REST 的な部分を重点的に説明しました。具体的には基本となる「resource 操作は Path と method でユニークになる」というのを実感してもらうために telnet で実際に http をしゃべるところから始めました。 テストファーストで進めると Rails はエラーメッセージが親切なのでホントにテストに導かれながら開発するような感覚になれるのを実感してもらいました。 また JSON …

エンジニアのキャリアの方向性

…中心とした OSS フレームワーク・ライブラリのエコシステムの発展、等々により学習の高速道路が整備され、サービスを作るために必要な技術を学ぶコストが、昔より低くなってきたと感じてます。 こうなると、若いうちは良いのですが、30を超え始めると、特に最新の流行の技術の部分では技術が大好きな若者に勝てなくなってきてしまいます。 プログラマ35歳定年説じゃありませんが、自分のポジションを取り、何の技術を選択して、どのスキルを磨くのか、しっかりと考えて行かないとある一定の年齢を超えると…

巨大なバッチを分割して構成する 〜SQLバッチフレームワークBricolage〜

…リコラージュ)というフレームワークで構造化する手法について説明します。 「たべみる」とは まず最初に、「たべみる」がどういうものなのかごく簡単にお話ししておきましょう。 「たべみる」は企業のみに提供しているB2Bの分析サービスで、 クックパッドのレシピ検索の分析をすることができます。 具体的には、特定の語の検索頻度や、どんな語と一緒に検索されているか、 それから急激に検索が増えている語などを知ることができます。 例えば次は「バレンタイン」という語の検索頻度のグラフです。 ▼「…

Android版クックパッドアプリで採用している技術の現状確認 2015年版

…体的にはライブラリやフレームワークについて紹介します。また、そのための技術選択のアプローチについても概説します。 技術選択の基本的な方針 まず技術選択の方針についてですが、これはサービスの性質に依存すると考えています。クックパッドはすでに15年以上の歴史をもつサービスで、その歴史において ColdFusionからRailsへの置き換え を行ったり Rails 3.2から4.1へのアップグレード を行ったりしており、最新の技術を使って開発できるようにしています。 クックパッドの…

データドリブンでユーザー体験を改善する試み

…シートと呼ばれる企画フレームワークをよく使います。このシートのなかに、ユーザーストーリーも項目として含まれています。これにより、サービスを企画する際には、ストーリーについて考える機会が生まれます。アプリケーション定義ステートメントシートの詳細については、こちらのエントリで触れられていますので、ぜひご覧ください。 ここでは、以前私が企画・開発を担当していた、iOS版みんなのカフェのユーザーストーリーをご紹介します。 みんなのカフェは、食や暮らしの話題を中心とした掲示板です。その…

サービスを通じて日々の嬉しい体験を増幅する

…いただけた方がいらっしゃいましたら、ぜひエンジニア・デザイナー採用へエントリーください。ご応募おまちしております! *1:クックパッド上でレシピを見て料理を作ったユーザから、料理写真にコメントを添えてフォトレポートを送れる仕組み *2:クックパッド内製のサービス企画フレームワーク。サービスの各登場人物の疑いようのない欲求を整理し、それらを満たす解を導く。企画時にこれをきちんと設定すると、サービスの登場人物と欲求が明確になり、開発の目的がぶれにくく、成功のイメージを共有できる。

クックパッドの新卒研修2015

…した。 サービス企画フレームワーク ユーザー調査 プロトタイピング 施策検証 サービス開発に携わっているエンジニア・デザイナーを講師に、座学や過去の施策から学ぶケーススタディ、具体的なテーマに沿った課題などを行ないました。 リースタートアップなどの理論と実際の過去の施策における成功事例・失敗事例などを知るとともに、特定のテーマに沿って EOGS *2 やリーンキャンバスを書いてもらったり、ユーザーインタビューの設計・実施をしたりなど、実際にサービス開発で行なうプロセスを実践し…

Droidcon Italy 2015でアプリのパフォーマンスの話をしました

…まで、Androidフレームワークを補うように使っています。 画像のリクエストを見直す 画像はJSONのレスポンスに比べるとサイズが大きいので、ちょっとした変更で通信量を大きく減らすことができる可能性があります。そのため、アプリの通信量の大半を占める画像の読み込みライブラリは重要な役割を担っています。 パフォーマンスを左右する要素 画像読み込みライブラリでは以下の要素がパフォーマンスを左右します。 内部で使用されるHTTPクライアントの種類と設定 キャッシュの管理 Execu…

モバイルアプリのログ収集ライブラリ「Puree」をリリースしました

…ッドのサービス開発のフレームワークをモバイルアプリでも適用したいのですが、モバイルアプリにはウェブアプリと違ったロギングの難しさがあります。 今回はモバイルアプリのロギングの問題点とPureeというログ収集ライブラリについて話します。 モバイルアプリのロギングの難しさ ウェブアプリでは、基本的にはサーバー側でログを収集することができますが、モバイルアプリの場合は画面の制御はアプリ側で行われ、APIを介してデータを受け取るため、クライアント側でログを収集して送信する必要がありま…

Infratasterでリバースプロキシのテストをする

…振る舞いをテストするフレームワークで、RSpecのテストヘルパとして機能します。例えば、 特定のヘッダ付きのHTTPリクエストを送信した時にあるレスポンスヘッダが返ってくることをテストする Capybaraを使って実際のWebブラウザ上での挙動をテストする MySQLのSHOW VARIABLESの結果をテストする といったことが可能になります。 細かい概要についてはこちらのスライドやREADMEをご覧ください。 Serverspecとの違い インフラのテストといえばServ…

Swiftで遊んでますか?

…PlaygroundフレームワークのXCPShowViewを使ってTimelineに表示することが可能ですが、現行のXcode6.1でiOS用にUIKitを使って表示した場合コンソールにエラーが出てしまうため使用していません。 早速線を描画してみます。 // CoreGraphicsで描画する UIGraphicsBeginImageContextWithOptions(size, false, 0) // 描画する let path = UIBezierPath() pat…

スマートフォンWebのフロントエンドを高速化する取り組み

…どのオールインワンなフレームワークを使ったり、Backbone.jsやjQueryなどのフレームワークを組み合わせて使ったりなど様々な方法があります。 画面管理 今回SPAを実現するために、Androidの画面管理を真似るという方法をとりました。Androidの画面管理は主に以下の4つから構成されています。 XMLからViewを作るInflate機能 画面の生成、活性、停止、破棄を扱うライフサイクル機能 Intentによる画面間呼び出し機能 画面の遷移スタックを管理する機能 …

クックパッドAndroidアプリにおける最近のDB運用事情

…す。 Androidフレームワークには端末内にSQLiteでデータを保存するしくみがありますが、みなさんはどのようにしてますか? クックパッドのAndroidアプリでは、ActiveAndroidを使ってDBにデータを保存しています。 ActiveAndroidとは ActiveAndroid とは、Active Recordパターンを採用したAndroidのORMです。 テーブルのCREATEを行うときに、SQLiteOpenHeleperを継承したクラスでonCreate…

クックパッドとマイクロサービス

…ついては、別の言語やフレームワークを採用していきたいと考えています。 まとめ クックパッドは、ビジネス環境の変化にともなう組織構造の変化にあわせて、ソフトウェアアーキテクチャをモノリシックアーキテクチャからマイクロサービスアーキテクチャへと進化させてきました。そこでのキーポイントは、RESTful JSON APIやOAuth 2.0といったウェブで培われてきた技術を採用している点です。これにより、軽量な疎結合アーキテクチャを実現しています。 その結果として、独立性の高いチー…

社員みんなの発表資料

…ることになりました。フレームワーク、デザイン、開発、運用フローなど、クックパッドでの開発における技術的知見が数多く紹介されています。 http://techlife.cookpad.com/presentations クックパッドは、多くのオープンソースプロジェクトに支えられながらここまで成長してきました。社内ライブラリの公開やオープンソースプロジェクトへの参画だけに留まらず、多くのイベントで発表を行い、我々の得た知識を還元していくことで、今後もコミュニティに対してより貢献し…

プロトタイプ開発用のRailsプラグイン「Chanko」を2.0.0にアップデートしました

…トタイプを行うためのフレームワークです。クックパッドでは今現在でも、Chankoを使って多くの機能を独立して開発し、対象範囲を限定して公開することで新機能の検証サイクルを回しています。Chankoを利用して拡張した機能でエラーが起きた場合、拡張前の機能に自動的に切り替えられるため、プロトタイプでの検証段階から安全に機能を提供することが出来ています。RailsConf 2012で発表したChankoについてのプレゼン資料がありますので、併せてこちらもご覧ください。 https:…