タグ

ブックマーク / dev.classmethod.jp (33)

  • [社内勉強会レポート] 『テスト駆動開発』読書勉強会 #8 | DevelopersIO

    はじめに こんぬづは、これまでなんとなく見ていなかったんですが、ガールズアンドパンツァーを一気見した田中です。なぜでしょう、毎話目をぐしょぐしょにしながら見きってしまいました。ガルパンはいいぞ。 さて題に入っていきましょう。今回からは付録Cを読んでいきます! この会の趣旨 この会の趣旨については、第一回のまとめをご覧ください。 それではまとめていきます。 付録C: ユニットテスト周辺の知識の整理とTDD拡張の試み 概要 ユニットテスト周辺の歴史や語彙を整理したり、内側と外側の回転があることについてまとめてあります。 話し合われた内容 GOOSに興味が出た TDDに流派があることを知った 「モックを活用すれば、(中略)設計の順番と時間を制御できることを発見しました。」とてもわかる。 ↑実装の要求レベル高いよね。設計にレイヤ構造を取り入れる考えとかが必要になるし。 付録C: TDDのTは「テ

    [社内勉強会レポート] 『テスト駆動開発』読書勉強会 #8 | DevelopersIO
  • 【速報】クロスプラットフォーム開発のための GraphQL バックエンド AWS AppSync が発表されました!※プレビュー版登録可能です #reinvent | DevelopersIO

    ※ モバイル関連のセッションにて発表されましたが、 AWS AppSync はモバイルのみがターゲットというわけではないため、タイトルを修正しています。フィードバックをくださった方々、ありがとうございます。 Mobile Application Development: State of the Union のセッションの中で新サービスの発表がありました。AWS AppSync です。 クロスプラットフォームでデータのリアルタイム同期を行うために、GraphQL をベースとしたアプリケーションのバックエンドを提供してくれます。 11月28日 12:30PST ( 11月29日 5:30JST ) 現在、プレビュー版利用のための申請をフォーム準備中です。日中に申請できるようになるそうです。以下のURLをチェックしてください。 https://aws.amazon.com/appsync/

    【速報】クロスプラットフォーム開発のための GraphQL バックエンド AWS AppSync が発表されました!※プレビュー版登録可能です #reinvent | DevelopersIO
  • 教えるという技術 | DevelopersIO

    渡辺です。 自分は「教える」ことにやり甲斐を感じます。 大学時代を思い返すと、家庭教師やサポートセンターのバイトをやってました。 ボードゲームをする時は、ルール説明などを行っていました。 ゲームのインストの一環としてインストカードやサマリを作ることもあり、プレゼン資料作りも得意になりました。 IT業界に入ってからは、勉強会の講師や資料作成・ハンズオンのチューターなどを行うようになりました。 技術書の執筆やIT系専門学校講師も経験しています。 最近では趣味のスノーボードで、インストラクターの資格をとり、スノーボードスクールで教えています。 「教える」ことが好きなんでしょう。 これまで、様々な分野で技術を教えてきました。 畑はまったく違ったとしても、解りやすく「教える」ための技術は大きく変わりません。 今回はそんな「教える」技術をまとめてみました。 なお、エントリーの対象は、その分野に初めて

    教えるという技術 | DevelopersIO
  • [レポート]【ミクシィ様登壇】10 年オンプレで運用した mixi を AWS に移行した 10 の理由 #AWSSummit | DevelopersIO

    [レポート]【ミクシィ様登壇】10 年オンプレで運用した mixi を AWS に移行した 10 の理由 #AWSSummit はじめに こんにちは、中山です。 6/2(木) 13:20 〜 14:00 に実施された「10 年オンプレで運用した mixi を AWS に移行した 10 の理由」というセッションを聴講したので、そのレポートを以下に記述します。 セッション情報 株式会社ミクシィの北村さまに発表していただきました。こちらのURLより概要を引用します。 2014 年 3 月に 10 周年を迎えた mixi。なぜ 10 年以上オンプレミス環境で継続運用して きたサービスを AWS に移管することを決めたのか。サービスの成長を支えると共に大規模 化・複雑化してしまったインフラを、どのようにして AWS に移管したのか。 当時のサービ スを取り巻く社内外の環境を踏まえ、どのように移管を計

    [レポート]【ミクシィ様登壇】10 年オンプレで運用した mixi を AWS に移行した 10 の理由 #AWSSummit | DevelopersIO
  • Google I/O 2016 で「Firebase」の新バージョンが発表!プッシュ通知機能を iOS アプリで使ってみた | DevelopersIO

    Firebase とは 日(2016/05/19、日時間)より開催されている Google I/O 2016 にて、モバイル向けのサービス群「Firebase」の新バージョンが発表されました。ログ解析ツール「Firebase Analytics」やプッシュ通知サービス「Notifications」が無料・無制限で利用できるところが注目を集めています。 Google Developers Japan: Firebase を拡張、統合アプリ プラットフォームとして登場 [速報]Google、モバイルアプリ用ログ解析ツール「Firebase Analytics」の無償提供を発表。ノーティフィケーションも無制限に無償で提供。Google I/O 2016 - Publickey 記事では iOS アプリへの Firebase の導入とセグメント通知を試してみました。 Firebase の導入

    Google I/O 2016 で「Firebase」の新バージョンが発表!プッシュ通知機能を iOS アプリで使ってみた | DevelopersIO
  • tmuxを使いこなす / プラグイン開発で機能を拡張 | DevelopersIO

    はじめに こんにちは、中山です。 唐突ですがみなさんtmuxは使われていますか。そう、有名なターミナルの機能を拡張するツールですね。 この種のツールを使っていない方の中には、職場の先輩などに「ちょwターミナル開きすぎwブラクラかよw」などとドヤ顔で言われたことがある方もいらっしゃるのではないでしょうか。かく言う私もドヤ顔でこの種の発言を繰り返していました。 tmuxはデフォルトの機能がかなり豊富なのですが、tpmというプラグインマネージャを使うとさらに機能を拡張することができます。聞いたことがある方も多いのではないでしょうか。ググると検索結果に結構表示されますね。GitHubのtmux-pluginsというorganizationにはさまざまなプラグインがあります。便利なプラグインを紹介しているブログエントリも結構あります。 私はこのプラグインを今まで結構作ってきました。少しシェルスクリプ

    tmuxを使いこなす / プラグイン開発で機能を拡張 | DevelopersIO
  • アカデミー賞:ノミネート&受賞の歴史をTableauで可視化してみた | DevelopersIO

    昨日(日時間2月29日)の午前から昼に掛けて、アメリカで第88回アカデミー賞の発表がありました。 The Oscars 2016 | 88th Academy Awards アカデミー賞 - Wikipedia (個人的には昨年一番多くの回数鑑賞した *1)『マッドマックス 怒りのデス・ロード』が10部門ノミネート、今回最多受賞となる6冠を達成したり、 V6! V6! V6! 映画「マッドマックス 怒りのデス・ロード」がアカデミー賞6冠を達成 - ねとらぼ What a lovely day. #MadMax #Oscars pic.twitter.com/qWMfiNHlmh — Warner Bros. (@WBHomeEnt) 2016年2月29日 また大きなトピックとしては、レオナルド・ディカプリオがノミネート5回目にしてついに賞を受賞(主演男優賞)した事等が注目され話題となりま

    アカデミー賞:ノミネート&受賞の歴史をTableauで可視化してみた | DevelopersIO
  • 様々なソースコードをghqで取得し、管理する | DevelopersIO

    丹内です。 実務では複数のリポジトリを行ったり来たりしますが、その管理にghqを、見やすくするためにpecoを導入しています。最高です。 実務以外でも、gemや気になるコードを気軽にダウンロードして気が向いた時にすぐ見れます。最高です。 参考:ghqでリポジトリ管理とpeco連携で快適git生活 興味がある(いつか読むことがあるかもしれない)コードをダウンロードしてみたので、その方法の備忘録です。 セットアップ インストールします。 $ brew tap motemen/ghq peco/peco $ brew install ghq peco 適切にzshの設定をします。 参考:zshにpeco + ghqを導入したメモ # peco ## ls | p cd p() { peco | while read LINE; do $@ $LINE; done } ## Ctrl + ] =>

    様々なソースコードをghqで取得し、管理する | DevelopersIO
  • 次世代Webカンファレンス「サーバーサイドパフォーマンス」レポート #nextwebconf | DevelopersIO

    こんにちは、虎塚です。 10月18日(日)、次世代 Web カンファレンスへ行ってきました。イベントの趣旨は「「次世代 Web カンファレンス」を開催します - Block Rockin’ Codes」で公開されています。 最初のセッション「server_perf (サーバーサイドパフォーマンス)」に参加してメモを取ったので、共有します。 オーナー: @mirakuiさん クックパッドでインフラ担当 @xcirさん ゲーム屋さんでインフラ担当 @cubicdaiyaさん メルカリでインフラ担当 登壇者の紹介 mirakuiさん:サーバサイドパフォーマンスというセッションは、次世代Webの文脈では話題選びがむずかしい。サーバサイドアーキテクチャもモニタリングも別にセッションがあるので、Webのパフォーマンスの話に絞る必要があった。そんな話ができる方ということで、xcirさんとcubicdai

    次世代Webカンファレンス「サーバーサイドパフォーマンス」レポート #nextwebconf | DevelopersIO
  • エンジニアとしてのコミュ力をあげるために心掛けていること | DevelopersIO

    久しぶり&病み上がりの執筆なので、ちょっとふわっとした内容書きます。私みたいな人間が日々心がけている程度のことなので、ふわっと読んでもらえれば幸いです。 意見が並行線、の原因はコンテクストのズレにある 仕事に関わらず、社内外で議論する際に発生する意見の対立の大きな原因の一つに コンテクスト のズレがあると考えています。 例えば、弊社アジャイルについての初期の勉強会で出題された問題で以下のような問題がありました。 Q.アジャイルでは要求の変化を受け入れるため、スコープが徐々に大きくなり、開発規模や予算が当初の規模に収まり切らないという現象(スコープクリープ)が起こることがあります。これは防ぐべきものでしょうか?その場合、どのように対処するべきでしょうか? この問題に対しての解答を一部抜粋しました。 A. 最初から積極的に防ぐものではない。発生した場合、プロダクトバックログの内容を精査し、優先

    エンジニアとしてのコミュ力をあげるために心掛けていること | DevelopersIO
  • 開発者のタスク管理をGitHubで行ったらうまくいった話 | DevelopersIO

    はじめに こんにちは、6月からAndroidの開発を担当している荒川です。 この記事は以下の方を対象にしています。 リモートリポジトリにGitHubを使っている タスクや課題の管理を小〜中規模のプロジェクトで行っている 複数の開発タスクが並行して進むプロジェクトにアサインされている 開発者のみのタスク管理を主体的に行いたい タスク管理ツールを使っているがイマイチうまくいっていない この記事では、私が実践して良かった経験則を紹介します。誰でも真似すれば必ずうまく行くという保証はありません。この記事の読者の方が、担当しているプロジェクトに合わせてアレンジを加えるとより効果が増すかと思います。 開発者のタスク管理 モバイルアプリサービス部では、コミュニケーションツールにBacklogやTrello、Pivotal Trackerを用いている事を突撃!隣の開発環境 パート3【クラスメソッド編】の記

    開発者のタスク管理をGitHubで行ったらうまくいった話 | DevelopersIO
  • Webプログラマーの三種の神器の続き | DevelopersIO

    自分がプログラムを書き始めた頃、どんな環境で他のプログラマー仕事をしているのか分からなかったのですが、昼休みのWebサーフィン中に以下の記事を見つけました。 新入学生/新社会人応援企画: 第3回 あるWebプログラマーの作業環境――豪傑の三種の神器 はてなの伊藤直也さんが新人プログラマー向けに自身の環境を紹介している内容ですごく参考になりました。 そこで紹介しているソフトウェアは次の三つでした。 Emacs Zsh Screen それぞれ使いこなすようになるには大変でしたが、馴れてからはこれらのソフトウェアにものすごく助けられています(まだ使いこなせていない機能も沢山あります)。 この記事は2007年に書かれていて今はインストール方法やパッケージ管理など少し状況が変わっているので、そのあたりをここで書いていこうかと思います(インストール方法はMac環境のみ書いています、事前にHomebr

    Webプログラマーの三種の神器の続き | DevelopersIO
  • 新しいプログラミング言語 Swift | DevelopersIO

    Objective-Cに替わる新しいプログラミング言語Swiftの登場 WWDC2014で発表された新しいプログラミング言語Swiftでできることを紹介したいと思います。 今までとこれから Swift使うとこんなにコードが短くなるぜという例です。 今まで これから 確かにスマートですね。 言語ガイドをダウンロード iBookでガイドを読めますのでダウンロードしてみましょう。 変数の宣言 varは変数、letは定数 var myVar = 42 myVar = 50 let myConst = 42 コントロール if,switch,for-in,for,while,do-while let individualScores = [76, 43, 103, 87, 12] var teamScore = 0 for score in individualScores { if score >

    新しいプログラミング言語 Swift | DevelopersIO
  • よく分かる!iOS アプリのリリース手順のまとめ | DevelopersIO

    2014/04/16 コンプライアンスの「Content Rights」と「Advertising Identifier」についての解説を追加しました。 はじめに iOS 7 がリリースされ、さまざまな新しい機能が使えるようになりました。iOS 7 SDK を使ったアプリをリリースしたい!と思っているかたも多いのではないでしょうか。しかし iOS アプリのリリース作業は手順が複雑そうで取っ付きづらい印象を持たれているかたが多いと思います。筆者もそうでした。 ということで、最新 (2013年10月21日現在) の iOS アプリのリリース手順についてできる限り分かりやすくまとめてみました。リリース時の参考にしていただければと思います。 概要 まずはじめに全体像を確認しておきましょう。iOS アプリのリリースは下図のようなフローで行います。 リリース用の Provisioning Profil

    よく分かる!iOS アプリのリリース手順のまとめ | DevelopersIO
  • ユニットテストにまつわる10の勘違い | DevelopersIO

    渡辺です。さる方面からテスト系のエントリーがまだか…と催促されたので、ユニットテストについて少し考えてみたいと思います。 最近、TwitterのTLをチェックしていると、JUnitを利用しているにも関わらず違和感のあるTweetや、原因をJUnitにして来解決すべき問題から目をそらしているようなTweetを多く見かけます。そこで、JUnitをによるユニットテストに関するありがちな勘違いをまとめてみました。 なお、JUnitの部分は、RSpecでもNUnitでも適当に置き換えて読んでも構いません。 1.JUnitを使うことが目的という勘違い JUnitを利用すること自体を目的にしたところで何も得る事はありません。 ありがちな話ですが、「納品物としてJUnitのテストコード(または実行結果)を求められている」ことが理由でJUnitを利用しているならば、それは足かせでしかない可能性があります。

    ユニットテストにまつわる10の勘違い | DevelopersIO
  • 【pickadate.js】シンプルだけど高機能な日付カレンダー編 | DevelopersIO

    pickadate.jsというライブラリーの中で、高機能な日付カレンダーを紹介してもらったので試してみました。 アジェンダ ソースのダウンロード 実装してみる。 日語表記にする いろいろなオプション まとめ ソースのダウンロード まずはこちらのサイトからソースをダウンロードしてきます。ファイルを展開するといろいろファイルはありますが実際に使うファイルは[lib]フォルダ内にあります。 [lib]フォルダ内は以下のファイルになります、今回は日付カレンダー用のjs、cssを使用してみます。 実装してみる それでは実際に表示してみようと思います。今回のデモで使用したファイルになります。 css default.css default.date.css javascript jquery picker.date.js legacy.js app.js←こちらが実際に実行するファイルです。 ind

    【pickadate.js】シンプルだけど高機能な日付カレンダー編 | DevelopersIO
  • [node.js]WebsocketとAquesTalkでゆっくりボイスのチャットをつくろう[AWS] | DevelopersIO

    EC2でゆっくりさせる 定期的にポストされるゆっくりネタです。 以前、node.jsからゆっくろいどにアクセスしてしゃべらせるという記事を書きました。 node.jsから指定した文言をゆっくりさせることができるのですが、ローカルでしゃべるだけなので自分しかゆっくりできません。 せっかくならWebアプリで誰でもつかえるようにできないかなぁと思っていたら、それに近いことをやってる人がいました。 これはすごい。便乗するしかありません。 今回はEC2でnodeサーバをたてて、誰でもゆっくりできるようなアプリを作ってみましょう。 環境構築方法 今回使用した動作環境は以下のとおりです。 OS : MacOS X 10.7.5 EC2 : Amazon Linux ブラウザ : Chrome26 ゆっくりサーバはEC2上で作成します。EC2インスタンスを起動し、sshポートと3000番ポートを開けておき

    [node.js]WebsocketとAquesTalkでゆっくりボイスのチャットをつくろう[AWS] | DevelopersIO
    kyohei_hamada
    kyohei_hamada 2013/05/20
    面白い!
  • 楽しく! 美味しく! 美しく! 画像加工サーバ Rudess(仮) | DevelopersIO

    よく訓練されたアップル信者、都元です。日は画像加工処理のお話。 チューター クラスメソッド社にはチューターというWebサイトパフォーマンスチューニングのサービスがあります。チューニングのポイントは、一般的に言われていることから、AWSを利用したアプリケーションアーキテクチャまで様々です。 一般的なWebサイトパフォーマンス向上の施策として、画像まわりのチューニングも色々あります。少し考えるだけでも、「CSSスプライト」「サイズ変換」「画像の軽量化」など、多くのテクニックがあります。しかし画像というのは、見栄えは良くしたいがパフォーマンスは落としたくない、というトレードオフに挟まれることが多く、扱いが難しい *1ことが多々あります。 よくあるパフォーマンスチューニングポイントとしては、「画像をHTML/CSSでリサイズしてしまっている」というものです。具体的には、例えばページ上に100x1

    楽しく! 美味しく! 美しく! 画像加工サーバ Rudess(仮) | DevelopersIO
    kyohei_hamada
    kyohei_hamada 2013/05/17
    使ってみたい
  • Provisioning Frameworks Casual Talks vol.1に参加しました | DevelopersIO

    まずは聴講者にアンケート Chef / Puppet触ったことがある人→ほとんど全員挙げる serverspecは?→全然挙らない→じゃ、今回はこっちメインでお話しします Chefとわたし 中規模サイトのお引っ越しでChef化!! 特にPuppetと比較してChefにした訳ではない Web-UI/Solrは、10台くらいの構成では"いらない"と気づくのに時間がかかった 開発マシンのビルドが大変! → Chef Soloで幸せに! 2012〜 SNG(ソシャゲ) Cookbookをgit branchで運用(mergeは諦めた) Server & ClientからSoloに切り替え アプリ担当も、Chefの実行くらいはやってほしい! デプロイは別。 で、新卒研修でChefを題材にした研修やってみました お題が、"serverspecのspecファイル。このspecのテストが通るように環境を作

  • [Twilio] IVR (自動音声応答システム) を作ってみよう#6 | DevelopersIO

    IVR (自動音声応答システム) とは IVR (自動音声応答システム) とは、何でしょう? e-wordsによると、次のように書いてあります。 企業の電話窓口で、音声による自動応答を行うコンピュータシステム。 発信者のダイヤル操作に合わせて、あらかじめ録音してある音声を発信者側に自動的に再生する。 最近ではコンピュータ技術の進歩により、音声認識機能を備え、相手の発話に応じて再生内容を決める高度な製品も登場している。 クレーム処理などの高度な応対が必要のない業務で利用することができ、情報提供や資料請求、懸賞や応募の受付などに使われている。 人間(オペレータ)を雇うよりも低コストで24時間受付が実現できる。 また、受付内容は即座にデータベースに記録されるため、データ処理の迅速化、入力コストの削減が可能である。 宅急便の再配達の依頼をするときに、自動音声にしたがって4桁で月と日を指定したりする