タグ

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

  • Treasure Dataの新データ転送ツールEmbulkを触ってみた #dtm_meetup | DevelopersIO

    ども、大瀧です。 日開催されたデータ転送ミドルウェア勉強会で、開発者の@frsyukiさんによって語られたEmbulkを早速触ってみました。 Embulkとは EmbulkはOSSのデータ転送ソフトウェアです。もう少し細かく分類するとBulk Loaderと呼ばれる、バッチ処理のためのデータ読み込み、変換処理を行う機能を持ちます。特徴は柔軟なプラグイン構造で、データを読み込むInputPlugin、データを出力するOutputPlugin、さらに読み込み処理自体もExecutorPluginと、機能のほとんどをプラグインとして後から追加、カスタマイズできるよう高度に抽象化されたアーキテクチャになっています。データのハンドリングもプラグインでの実装を想定しているようなので、ここまで来るとミドルウェアというより、データ転送のインターフェースを定義するフレームワークの実装、という方が近い感じか

    Treasure Dataの新データ転送ツールEmbulkを触ってみた #dtm_meetup | DevelopersIO
    terazzo
    terazzo 2015/01/28
  • Javaのクラスファイルをjavapとバイナリエディタで読む | DevelopersIO

    はじめに こんにちは、虎塚です。 この記事はJava Advent Calendar 2014 の22日目の記事です。昨日はすふぃあ (@empressia) さんの「JavaEEなWebアプリケーションを作ろうとしたときのお話: すふぃあの記憶」でした。 この記事では、「Javaクラスファイルの読み方・増補版」と題しまして、12月20日(土)に開催したJavaクラスファイル入門という勉強会でお話しした内容の補足をお届けします。なお、勉強会のターゲットは、 Javaプログラムは書いたことがあるけど、JVMのことは全然知らない Javaクラスファイルのバイナリを見たことがない といった初心者の方や新人さんでした。なので、Javaに興味さえあれば、どなたでもお読みいただける内容かと思います。 JVM仕様とは JavaとJVM Javaプログラム(.java)をコンパイルすると、中間コードと呼ば

    Javaのクラスファイルをjavapとバイナリエディタで読む | DevelopersIO
    terazzo
    terazzo 2014/12/22
  • RDSの新エンジン”Aurora”にログインしてみた | DevelopersIO

    ウィスキー、シガー、パイプをこよなく愛する大栗です。 re:Invent 2014の注目新機能の一つであるRDSの新エンジン"Aurora"のPreviewが通ったので試してみました。 内容はRDS for AuroraのPreview中の内容となります。正式リリース後の内容とは異なる可能性がありますので、ご注意下さい。 Aurora re:Invent 2014のKeynoteで発表されたAuroraの特徴を確認しておきましょう。AuroraMySQL 5.6と互換性があり、高速、かつ可用性と耐久性があり、高いスケーラビリティもある、AWSが3年をかけて開発したRDBMSです。 AWSがsysbenchを使用した結果では通常のMySQLに比べて5倍のパフォーマンスが出たという、恐ろしく速いDBなので皆さんが注目しています。 Auroraを起動する Auroraのドキュメントを元にAu

    RDSの新エンジン”Aurora”にログインしてみた | DevelopersIO
  • https://dev.classmethod.jp/articles/cve-2014-3566-poodle-issue/

    terazzo
    terazzo 2014/10/15
  • Amazon S3における「フォルダ」という幻想をぶち壊し、その実体を明らかにする | DevelopersIO

    よく訓練されたアップル信者、都元です。Amazon S3について細かい説明は不要かと思いますが、要するにファイルストレージです。HTTPベースでファイルをアップロードでき、そしてダウンロードできるサービスですね。 古くから、データはシリアライズされた形式でファイルという単位に格納し、管理されてきました。ローカルマシン内でファイルを管理する仕組みがファイルシステムで、その多くにはフォルダという階層構造を扱う仕組みが備わっています。 Amazon S3も、Management Consoleによってフォルダを作成し、その中にさらにフォルダを作成したり、ファイルを格納できたりします。しかし。 Amazon S3には実はフォルダという概念は無い のです。Amazon S3の基礎技術は、単純なKVS(Key-Value型データストア)でしかありません。例えば下記のようなフォルダ(と我々が認識している

    Amazon S3における「フォルダ」という幻想をぶち壊し、その実体を明らかにする | DevelopersIO
    terazzo
    terazzo 2014/09/19
  • [小ネタ]噛まずにImmutable Infrastructureと言うために | DevelopersIO

    こんにちは。望月です。 ただいま弊社は先週の土曜日に行われたJAWS DAYS 2014のエントリー大量投下祭りの真っ最中ですが、そんななか私は超小ネタを投下します。 *1 長い単語 最近耳にする機会が非常に増えてきた単語の一つがImmutable Infrastructureです。JAWS DAYSでもImmutable Infrastructureの部屋が用意されており、一日中どの部屋よりも大盛況していたところからも最近の注目度の高さが伺えます。 しかし、この言葉の致命的な欠点は「長い」「噛みやすい」ところです。JAWS DAYSでも伊藤直也さんを始め、様々な方が噛まずに言うために苦労されていました。あまりにも長いので、「II(アイアイ)」という(非常にググラビリティの低い)略称も生まれていました。そこで、Immutable Infrastructureをなるべく楽に言うためのコツを少

    [小ネタ]噛まずにImmutable Infrastructureと言うために | DevelopersIO
    terazzo
    terazzo 2014/03/17
    考えてみればinfrastructureって4音節しかないのか。
  • [Objective-C]__attribute__ディレクティブを使ってみる | DevelopersIO

    Objective-Cのオープンソースライブラリのコードを眺めていると __attribute__ という文に出くわすことがしばしばあります。 これは属性を表すキーワードで、普段そこまで使う機会がないのですが、調べるうちに何かと多人数の開発の時にはご利益がありそうな機能ばかりだと感じたので、まとめておきます。尚、使用環境はXcode5, ARCです。 何ができる? __attribute__はコンパイラディレクティブの一種で、変数、型、関数(Objective-Cではクラスやメソッドも)の属性を決めることができます。コンパイラによる静的チェックや関数の最適化の役に立ちます。 __attribute__の後にはカッコが二重に続き、二重括弧の中でコンマ区切りの属性リストを付与することができます。 __attribute__は変数、型、関数宣言の前後に置かれます。Objective-Cではメソッ

    [Objective-C]__attribute__ディレクティブを使ってみる | DevelopersIO
  • Rails4 でセッションストアに DynamoDB を使う | DevelopersIO

    2ヶ月以上前ですが、Rack アプリケーションで DynamoDB を セッションストア用として使うための gem が公開されていました。 DynamoDB Session Store for Rack Applications Rails だと ActiveRecord のセッションストアがありますが、RDB なので、どうしても気になるのは負荷と障害ですね。 そんな時は、スケーラブルかつ耐障害性に優れた DynamoDB を使って解決しましょう。 *1 ということで、Rails4 で DynamoDB をセッションストアとして使う方法を試してみました。 Rails アプリケーションの作成 先ずは Rails アプリケーションの作成です。 $ mkdir try_dynamodb_sessionstore && cd try_dynamodb_sessionstore $ bundle i

    Rails4 でセッションストアに DynamoDB を使う | DevelopersIO
    terazzo
    terazzo 2013/11/06
  • Amazon DynamoDBによるTomcatセッション永続化とフェイルオーバー | DevelopersIO

    Tomcatのセッション管理 Tomcatでクラスター構成にする場合、課題となるのがセッション管理です。ロードバランサーでセッションIDを保持することで、毎回同じサーバーにリクエストが向かうのであれば問題なさそうに見えますが、あるサーバーがダウンしてしまうとセッション情報が消えてしまいます。これを解決する方法として、データベースにセッション情報を保持する方法が一般的ですが、データベースへ負荷が掛かりますし、データベースが落ちたら困ります。何かもっと良い方法は無いかと皆さん思っていたはずです。そこで、AWSですよねー。AWSでは、ElastiCacheやDynamoDBがサービスとして提供されています。ここで、永続化をしっかりやってくれるのはDynamoDBであり、AWS SDK for Javaでの登場が待たれていたわけです。そして、このたび出てきました! スティッキーセッション ロードバ

    Amazon DynamoDBによるTomcatセッション永続化とフェイルオーバー | DevelopersIO
    terazzo
    terazzo 2013/10/16
    良いですね。
  • 今さら聞けないXcodeのバージョン管理 Gitの基本的な使い方からGitHubへソースコードを公開するまで | DevelopersIO

    今さらですがXcodeでGitを使ったバージョン管理の仕方をいろいろ調べたので調査結果をまとめたいと思います。調査した環境は以下になります。 Mac OS X 10.8 Mountain Lion Xcode 5.0 XcodeでのGitの使い方の記事なので、Gitって何?もしくは バージョン管理って何?という方は以下の記事を見た後でご覧ください。 ガチで5分で分かる分散型バージョン管理システムGit 目次 ローカルリポジトリ 準備:ローカルリポジトリの作成 ローカルリポジトリにコミットする ソースコードの変更を破棄する ローカルリポジトリの変更履歴を確認する 以前のバージョンとの差分を確認する リモートリポジトリ 準備:リモートリポジトリの作成 リモートリポジトリを複製する(Clone) リモートリポジトリを更新する(Push) リモートリポジトリから変更を取り込む(Pull) リモート

    今さら聞けないXcodeのバージョン管理 Gitの基本的な使い方からGitHubへソースコードを公開するまで | DevelopersIO
    terazzo
    terazzo 2013/10/10
  • [Xcode 5] Xcode 5のデバッグ機能 “Visual Debugger” | DevelopersIO

    前回に引き続きXcode 5のデバッグ機能について見ていきます。 Visual Debugger 実行中のアプリケーションの変数の内容を表示する機能はXcode 4.6.3以前からありましたが、Xcode 5ではさらに強化されています。 Xcode 4.6.3でSingle View Applicationからプロジェクトを作成し、Xcode 4.6.3とXcode 5の両方で同じプロジェクトを動かしながら両バージョンの違いを見ていきます。(Visual Debuggerの「クイックルック機能」を試すためにAppDelegateクラスにUIImageのプロパティを追加し、バンドルした画像からインスタンスを生成するコードを追加しました。) アプリの実行を一時停止した状態で、「Source code editor」と「Debug area」の変更点を見ていきます。 Source code ed

    [Xcode 5] Xcode 5のデバッグ機能 “Visual Debugger” | DevelopersIO
    terazzo
    terazzo 2013/10/07
  • [iOS 7] SpriteKitの物理エンジンを使ってみた -超入門- | DevelopersIO

    iOS 7のSpriteKitには物理エンジンが搭載されているようです。 今回は、ちょっとだけそれを使ってみます。 実装 タップしたポイントに赤い四角を表示させ、そのまま重力で落下するサンプルを作ってみます。 #import "CMMyScene.h" @implementation CMMyScene -(id)initWithSize:(CGSize)size { if (self = [super initWithSize:size]) { // ここに初期処理 } return self; } -(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event { CGPoint location = [touches.anyObject locationInNode:self]; [self addRedSquare:l

    [iOS 7] SpriteKitの物理エンジンを使ってみた -超入門- | DevelopersIO
    terazzo
    terazzo 2013/10/03
  • ユニットテストにまつわる10の勘違い | DevelopersIO

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

    ユニットテストにまつわる10の勘違い | DevelopersIO
    terazzo
    terazzo 2013/09/17
  • ブラックボックステストとホワイトボックステスト | DevelopersIO

    テスト分類のひとつにブラックボックステストとホワイトボックステストがあります。 ブラックボックステストとは、テスト対象の内部を意識せずに外部仕様のみからテストケースを構築していく手法です。ユニットテストであれば、テスト対象となるメソッドの実装(コード)を意識せず、メソッドのAPI仕様からテストケースを作成することになります。 一方、ホワイトボックステストでは、テスト対象の内部を意識し、どのような構造であるかを踏まえたテストケースを構築します。ユニットテストであれば、テスト対象となるメソッドの実装(コード)を意識し、分岐や繰り返しなどを考慮しつつテストケースを作成することになります。 さて、ユニットテストはブラックテストでしょうか? それともブラックボックステストでしょうか? 「JUnit実践入門」では次のように記述しました。 書で扱うユニットテストは、テスト対象の内部ロジックを考慮して行

    ブラックボックステストとホワイトボックステスト | DevelopersIO
    terazzo
    terazzo 2013/08/13
    実行時の内部状態を見てるようなヤツ(行カバレッジ測定とか)以外はブラックボックステストでは。/どの会社もみんなそう言う。>なお、弊社はホワイト企業です。
  • Vagrantって流行ってるらしいけど何が便利なの? | DevelopersIO

    最近、Vagrant(ベイグラント)を勉強し始めました。VagrantはVirtual Boxなどの仮想化ソフトウェアと一緒に使うツールです。 最初は何のために使うものなのかよくわからず、VagrantはVirtual Boxのフロントエンドだよ、 と言われても何が便利なのかいまいちピンと来なかったのでいろいろ調べてみました。 ※Vagrantはプロバイダ(仮想化ソフトウェア)を選択できるので、他にもVMwareやAmazon EC2で使うこともできます。 実現したいこと VagrantとVirtual Boxを使って何がしたいのかの一覧です。 実行環境を開発と番で揃えたい。 開発環境を構築する際に個人のローカル環境に依存しないようにしたい。 すぐに使える仮想環境を構築したい。 環境構築を自動化したい。 チームで同一の環境を簡単に構築したい。 1つずつ見ていきましょう。 Virtual

    terazzo
    terazzo 2013/08/01
  • 2ヶ月でマイナス10kg!!Scrumでダイエットに成功した話 | DevelopersIO

    こんにちは!おおはしりきたけです。今回はScrumでダイエットに成功した話を書かせていただきます! はじめに 私は今35歳です。30超えてからブクブク太りだし、ダイエットしても途中で挫折することが多く半ば諦めていました。。。しかし、うちのお年頃の8歳の娘が一言「そんなに太っているお父さんとプール行くのいや!」と言ってきたので、毎年のプールを楽しみにしていた私は、このままではいけない思いダイエットに再度挑戦することにしました。ただ、今までと同じことをやっても続かないというのは分かっていたので、色々な方法を模索しているうちに、Scrumがダイエットに活かせるのではないか?と思いさっそく初めてみました。これは、私が2か月間で約10kgのダイエットに成功した話になります。 追記 身長が無いと評価しにくいと思いますので、追記します。私の身長は182cmです。80kgでも太っているようには見えないんで

    2ヶ月でマイナス10kg!!Scrumでダイエットに成功した話 | DevelopersIO
    terazzo
    terazzo 2013/07/26
  • Modern UI のようなフラットデザインを目指して使いづらくなっている件について | DevelopersIO

    Windows 8 がリリースされてだいぶ日が経ちました。最大の特徴と言ってもよい Modern UI *1。モバイル端末をはじめとしたタッチデバイスに特化した大きめのタイル(ボタン)とタイポグラフィが一際目を引くデザインで、OS X や iOS のそれとは一線を画しています。 一方の Android。2011年2月にバージョン3.0である Honeycomb がリリースされ、それまでの 2.x から刷新したデザインになりました *2。2013年4月現在の最新バージョンである4.2(Jelly Beans)もこの流れを踏んでいます。 両者ともそれまでの Web2.0 と呼ばれていた頃に流行ったグラデーションやドロップシャドウをふんだんに使ったデコラティブなデザインに対し、平面的で装飾要素の極めて少ないミニマルなデザインが特徴です。これらは主に Flat UI と呼ばれ、2012年頃から現在

    terazzo
    terazzo 2013/04/15
    日本の雑誌等のレイアウトの進化は文字の種類のせいで否応なくそうなったのかな。
  • インフラエンジニアに贈るAmazon VPC入門 #1 概要とルーティング | DevelopersIO

    ども、大瀧です。6月にNothing's Carved In Stoneの新譜が出ると聞いてテンション上がっている今の勢いを生かし、シリーズものにチャレンジしてみます。 シリーズの目次はこちら 前振り(読み飛ばし可) インフラエンジニアのみなさーん、AWS触ってますかー? 「うちのシステムはAWSを使っていない」、「AWSじゃない国産クラウドを使う予定」など、AWSの認知度は一般にはまだまだ低いのが現状だと思います。しかし、組織のインフラは今後遅かれ早かれ、オンプレミスだけでなくクラウド環境と合わせて付き合っていかなければならないことは明らかですし、先行しているAWS技術が他のクラウド製品のコンポーネントに与えている影響も、実はとてつもなく大きかったりします。 現状、多くのクラウド製品では、クラウドで利用できる機能を説明するときに"●●版S3"、"●●版セキュリティグループ"というように

    インフラエンジニアに贈るAmazon VPC入門 #1 概要とルーティング | DevelopersIO
    terazzo
    terazzo 2013/04/13
  • レインボーテーブル – パスワード流出への対策を根本から理解する。 | DevelopersIO

    はじめに 先日、Yahooに不正アクセスがあり、ユーザ名とパスワードを抽出しようとするプログラムが見つかったそうです。 そんな事もありまして、今回は少し趣を変えて、レインボーテーブルのお話をしたいと思います。 今まで概念は知っていても使う事がなかった技術ですが、この機会に詳しく知っておくのも良いかと思います。 レインボーテーブルは、ハッシュから平文を得るためのアルゴリズムの一つですが、実際にそのアルゴリズムで使用されるテーブルの事をいうこともあります。 今回はレインボーテーブルというアルゴリズムについて掘り下げて行きたいと思います。 ハッシュと平文のセットのテーブル レインボーテーブルの基的な考え方は、非常にシンプルで、このハッシュだったら平文はこれですよというのを事前に用意しておきましょうという事です。 例えば人気パスワードランキング2012より、上位5件のパスワードに付いてもしこのハ

    terazzo
    terazzo 2013/04/07
  • Flywayで簡単DBマイグレーション | DevelopersIO

    Flywayとは FlywayとはDBマイグレーションフレームワークです。 複数人でのアプリケーション開発時のDBマイグレーション作業を素早く手軽に行うことができます。 MavenやAnt、APIやコマンドラインツール形式で提供されており、柔軟に対応することができます。 環境構築方法 今回使用した動作環境は以下のとおりです。 OS : MacOS X 10.7.4 MySQL : 5.5.15 flywayを使ってみよう 環境設定 flywayはMavenやAPIからも使用できますが、今回はCommand-line Toolを使ってみましょう。 ここからCommand-line Toolをダウンロードして解凍しておきましょう。 次にテストで使用するデータベースを用意します。今回はMySQLを使用しました。 mysqlを起動し、コンソールからデータベースを作成しておきましょう。 mysql>

    Flywayで簡単DBマイグレーション | DevelopersIO
    terazzo
    terazzo 2013/03/26