タグ

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

  • LLVMとは | DevelopersIO

    前回の記事「Rubyの処理系とGCについて」を書いたときに、LLVMがイマイチ理解できずもやっとしてたので調べました。このエントリーは「LLVMとは」でググった(先日の僕のような)人向けの記事です。間違ったことを書いてあったら教えてください。 疑問 この記事を書く前の疑問はおおよそ以下の様なものです。 LLVMはコンパイラ基盤って言われてるけど、コンパイラ基盤って何? LLVMはコンパイラ基盤であってVMじゃないって言うけど、LLVMに含まれるJITコンパイラはVMと違うの? LLVMでマシンコードを作ったあと、実際の実行はどうするの? 色々とググって調べたりしたのですが、LLVMの全体像がつかめるまとまった情報が見つからなかったので、一次情報(llvm.org)のドキュメントを読むことにしました。 Overview The LLVM Compiler Infrastructure Pro

    LLVMとは | DevelopersIO
  • クラスメソッドAlexa事業部にジョインした持田です | DevelopersIO

    2017/10/1付でAlexa事業部にジョインしました持田 淳史(もちだ あつし)と申します。 どうぞよろしくお願いします。 いままでの経歴 新卒で入った とあるメーカーの情報システム部門 にて、社内システムの業務(企画/設計/開発/運用など)を中心に行ってきました。 故郷の鳥取(米子)へUターンするため、2年前に地元のシステム開発会社へ転職。 そちらでは主に、Webアプリケーションの受託開発や自社製品の開発を担当していました。 入社の経緯 いつもブログでお世話になっているクラスメソッドに、ふるさと勤務制度があることを知り、半ば勢いで応募しました。 何故か受かってしまい、現在に至ります。 初めの2ヶ月間は東京勤務で、その後鳥取からリモートワークする予定です。 農業 実家では小規模ながらお米作りを営んでおり(いわゆる兼業農家)、 Uターンしてからは自分も農業に取り組んでいます。 トラクター

    クラスメソッドAlexa事業部にジョインした持田です | DevelopersIO
    sakahara
    sakahara 2017/10/18
    米子もいいところです
  • AWS Batchの基本的な機能とユースケースについて #reinvent | DevelopersIO

    バッチ処理 世の中のITシステムのほとんどは、データが発生し、流れて、処理し、蓄積されるジョブの繰り返しです。AWS Batchは、このようなバッチジョブを効率的におこなうための管理サービスです。Pegasus WMS、Cromwell、Luigiといった主要なワークフローエンジンをサポートしています。実際のジョブの実行は、EC2やSpotインスタンスが動的にアサインされて実行されます。 データフロー図(DFD) データフロー図で表現できるようなバッチ業務処理を管理するサービスとイメージしました。。 AWS Batchの基機能 単ジョブの定義 CPU、メモリー、IAM Role、ボリューム、コンテナ、環境変数、等について、ECS上でアプリケーションを実行するために設定します。 ジョブの依存性モデリング 異なるジョブ間での依存関係を設定できます。例えば、3つのステップでデータを圧縮するジョ

    AWS Batchの基本的な機能とユースケースについて #reinvent | DevelopersIO
  • 【速報】Amazon EC2 Elastic GPUsが発表されました! #reinvent | DevelopersIO

    森永です。 re:Invent2016のKeynoteにて「Amazon EC2 Elastic GPUs」が発表されました。 In the Works – Amazon EC2 Elastic GPUs | AWS Blog Amazon EC2 Elastic GPUsとは GPUを沢山使用したいという場合の選択肢としてG2、P2インスタンスがありました。 これは、専用のインスタンスタイプを使用したものですので、GPUの数に依存してCPUやメモリの量も決まってしまいます。 今回発表された「Amazon EC2 Elastic GPUs」では、既存のインスタンスタイプにGPUを追加できるというものです。 EBSをインスタンスに割り当てることをイメージ頂くと分かりやすいかもしれません。 これにより、よりフレキシブルにインスタンスの性能を決めることが可能です。 追加できるGPUは以下の通りで

    【速報】Amazon EC2 Elastic GPUsが発表されました! #reinvent | DevelopersIO
  • [iOS] [AWS] 早い!安い!美味い!Amazon CloudFrontをプロキシにして最速ATS対応! | DevelopersIO

    おばんです、帰省する時期も近づいてきて実家の父から赤羽にある伊勢屋という和菓子屋で塩大福をお土産に欲しい欲しい欲しい欲しいと言われてまいっている田中です。 でも確かにここの塩大福は肉厚で、美味しい。こういうのが良いんだ。 さて、iOSエンジニアの皆さんは2016年末までに、アプリと接続するネットワークの間で行われる通信がセキュアな通信であることを保証する、ATSという機能に対応をする必要があるのはもうご存知のことでしょう。 今日はその対応策としてAWSのCloudFrontをプロキシとして利用すると捗るかもしれない!という話をまとめます。 元ネタは以下のスライドです。 対象読者 これからATS対応をするiOSエンジニアの方 iOSアプリ向けのWebAPIの運用されているバックエンドエンジニアの方 特に今回紹介するCloudFrontを使った手法は個人で開発をしているアプリをATS対応させる

    [iOS] [AWS] 早い!安い!美味い!Amazon CloudFrontをプロキシにして最速ATS対応! | DevelopersIO
  • 【Swift】R.swiftが優秀すぎるので紹介してみる | DevelopersIO

    こんぬづは、Steamのセールでゲームを買ったはいいが、家にネット回線がまだひかれておらずゲーム体のダウンロードすらできていない田中です。 今回は先日発見したR.swiftというライブラリが、導入コストに対する効果が高そうなので紹介します。 このライブラリ、Fabric.appにも導入されている模様です。 Building Fabric.app in Swift 概要 なにができるライブラリ? R.swiftの利点は以下になります。 コード補完でリソースファイルにアクセスすることができる リソースファイル取得時に型も補完してくれる 文字列指定による動的な指定をしなくてよいので静的に解析することができる(コンパイル時にエラーを出してくれる) なにがいいの? リソースファイルにアクセスする際によく取り上げられる問題として、文字列指定によって取得しなければいけない点が挙げられます。 これはTy

    【Swift】R.swiftが優秀すぎるので紹介してみる | DevelopersIO
  • [レポート] PARCO が進める IoT とデータ活用事例 | DevelopersIO

    PARCO が進める IoT とデータ活用事例 6/1 (水) ~ 6/3 (金) に開催された AWS Summit Tokyo 2016 のセッション "PARCO が進める IoT とデータ活用事例" を聴講しました。記事はそのレポートです。 全国でショッピングセンターを展開するパルコが、店舗のデジタル化の一環として取り組む、画像認識カメラや各種センサーを使った IoT 事例とデータ活用についてご紹介します。 スピーカーは 林 直孝 様(株式会社パルコ 執行役 WEB/マーケティング部、メディアコミュニケーション部担当)です。 セッション PARCOとは 創業 1960年 店舗数 19 テナント数 3000 新たな事業モデルであるZERO GATE(ゼロゲート)も6店舗展開している 参考 PARCO 公式サイト PARCO Wikipedia スピーカーは マーケティング担当 CR

    [レポート] PARCO が進める IoT とデータ活用事例 | DevelopersIO
    sakahara
    sakahara 2016/06/05
  • [Swift 3.0] C-styleのforループがなくなる話 | DevelopersIO

    おばんです、昨日の地震は揺れの中にもかかわらずもくもくとissueを立て続けていた田中です。 前回++, --などのオペレータがなくなる話について、公式のproposalを読みながら解説していく記事をあげました。 今回は前回の内容とも関連のあるC-styleのforループがなくなる話です。 C-styleのforループというのはつまりこういうタイプのforループです。 for var i = 0; i < 10; i++ { // do something } 初期値と、繰り返し条件と、インクリメントのおなじみのforループです。 Swift 3ではこれをなくして、for-inタイプのみにしようというproposalがあがっています。 なぜC-styleのforループをなくすのかについて、swift-revolutionのproposals、0007-remove-c-style-for-

    [Swift 3.0] C-styleのforループがなくなる話 | DevelopersIO
  • [AWS Certificate Manager]東京でも無料でSSL証明書が使用可能になりました! | DevelopersIO

    ※:CloudFrontは米国東部 (バージニア北部)で設定を行うため、CloudFrontの全エッジロケーションでACMを使用できます。 早速試します ACMを設定する 設定の手順の詳細は、[ACM] SSL証明書発行時のドメイン認証メールをSESで受け取ってみたを参照して下さい。このエントリの「ACM設定」までを実施します。 東京リージョンでAmazon Linux 2016.03のEC2を起動して、以下のコマンドを実行します。(Webサーバのインストール、index.htmlの作成、Webサーバの開始) $ sudo yum install -y httpd $ sudo echo "AWS Certificate Manager" | sudo tee /var/www/html/index.html $ sudo service httpd start 次に、東京リージョンのEL

    [AWS Certificate Manager]東京でも無料でSSL証明書が使用可能になりました! | DevelopersIO
  • 【書評】「AWSクラウドネイティブ本」はアプリエンジニア以上にインフラエンジニアに読んで欲しい | DevelopersIO

    ウィスキー、シガー、パイプをこよなく愛する大栗です。 先日2016年4月20日にSBクリエイティブより「Amazon Web Services クラウドネイティブ・アプリケーション開発技法 一番大切な知識と技術が身につく」が出版されました。「パターン別」とも呼ばれるAmazon Web Services パターン別構築・運用ガイドに引き続き第二段という位置付けのようです。 著者および監修をされている佐々木 拓郎 様より書を頂きましたので、内容について書きたいと思います。 Amazon Web Services クラウドネイティブ・アプリケーション開発技法 一番大切な知識と技術が身につく 一部では「鈍器」とも呼ばれるほどに分厚く、なんと632ページという凄いボリュームになっています。 アプリケーションエンジニアのためのAWS開発技法 AWSインフラエンジニアだけのサービスではなく、ア

    【書評】「AWSクラウドネイティブ本」はアプリエンジニア以上にインフラエンジニアに読んで欲しい | DevelopersIO
    sakahara
    sakahara 2016/05/01
  • 【乗るしかない】AWS LambdaとLINE BOT APIでRSSを通知する【このビッグウェーry】 | DevelopersIO

    こんにちは、せーのです。今日は何かと話題のチャットBOTを使ってこのDevelopers.ioのお知らせBOTを作ってみたいと思います。新しもの好きなので。 チャットBOTの時代はくるのか? さてここのところLINEより「LINE BOT API」が発表され、更にFacebookからもチャットツールである「Messenger」に対してプログラムで制御するためのプラットフォーム「Bots for Messenger」が発表されました。これにより巷では「チャットBOTの時代が来る」「ゴールドラッシュならぬ"ボットラッシュ"だ」なんて言われております。 ChatOps 開発者の間では数年前から開発に普段エンジニア同士の情報伝達のために使うチャットツール(Slack, Chatwork等)に一定のコマンドを打ち込むことによってコンパイル、ビルド、コミットやPush、CI等を行う「ChatOps」と

    【乗るしかない】AWS LambdaとLINE BOT APIでRSSを通知する【このビッグウェーry】 | DevelopersIO
  • 第2回 Elasticsearch 入門 データスキーマ設計のいろは | DevelopersIO

    第2回目の Elasticsearch 入門は「データスキーマ設計のいろは」です。 設計と言うほどでもないのですが、例えば RDB で検索にフォーカスした設計や、他の検索エンジンも経験していると、これまでの制限や習慣で Elasticsearch の特徴を生かせない設計をしてしまう事があるので、このテーマにしてみました。 それではインデックスするためのデータ構造を Elasticsearch でどのように設計するのか解説したいと思います。 設計フローまで変えてしまう画期的なドキュメント指向型検索エンジン Elastic 社のホームページを見てみると Elasticsearch の特徴の1つとして「Document-Oriented」と言う記載があります。直訳すると「ドキュメント指向」です。 簡単に説明すると 現実世界の複雑なデータをJSONドキュメントにしてインデックスするだけで、デフォル

    第2回 Elasticsearch 入門 データスキーマ設計のいろは | DevelopersIO
  • 第1回 Elastisearch 入門 インデックスを設計する際に知っておくべき事 | DevelopersIO

    今回、第1回目の Elasticsearch 入門という事で、今回は「インデックスを設計する際に知っておくべき事」というテーマにしてみました。ここでのインデックスの設計とは RDB のデータベースとかテーブル、ビューの設計に当たるところです。 Elasticsearch は RDB など他のデータベスに比べ、その設計方法も結構独特です。(と言うか同じ事を実現するにしても色々な方法が用意されていて、さらにアプリケーション要件〜システムアーキテクチャ、運用面など広い範囲が関わってくる)RDB との比較も交え解説していきます。 Index で分けるか? Type で分けるか? 例えば、商品情報を保存するインデックスの設計を考えてみましょう。いわゆるRDBの設計で言うところのテーブル設計ですね。おそらくRDBではアプリケーション要件のみが、その設計の中心になるはずです。例えば、商品名や説明、価格情

    第1回 Elastisearch 入門 インデックスを設計する際に知っておくべき事 | DevelopersIO
  • Docker ToolboxでDocker環境を用意しつつ、Kitematic(GUIツール)でコンテナ起動 | DevelopersIO

    Docker ToolboxでDocker環境を用意しつつ、Kitematic(GUIツール)でコンテナ起動 コンニチハ、千葉です。 今更感がなくはないですが、Docker Tooloxを使ってMac上にDocker環境を用意する機会がありましたのでメモしておきます。 また、Kitematic(GUIツール)でhello worldしてみました。 Docker Toolboxとは?? このDocker ToolboxをインストールすることでDockerを利用するための複数のコンポーネントが一発でインストールできます。 簡単に言うと、boot2dockerの進化版ですね。 インストールされるコンポーネント 以下のコンポーネントがインストールされます。 Docker Machine: 様々な環境にDockerエンジンのインスタンスを構築。例えばコマンド一発でEC2上にDockerエンジンが動く

    Docker ToolboxでDocker環境を用意しつつ、Kitematic(GUIツール)でコンテナ起動 | DevelopersIO
  • 社外勉強会を開催しよう! | DevelopersIO

    こんにちは!おおはしりきたけです。最近も色々な勉強会が開催されておりますが、私は昔から色々な勉強会に参加したりしてました。最近では、参加するだけではなく、登壇や運営をすることも多くなってきたので、これから勉強会を開催、運営をしてみようと思う方向けにここ数年で学んだ社外勉強会の開催、運営について纏めてみたいと思います。 はじめに 私が開催、運営してきた勉強会は20名〜300名程度の勉強会になります。YAPCRubyKaigiなどの大きなイベントについては経験がありませんので、社外に向けて50名程度の勉強会を開催してみたいという方に参考になるのかなと思います。 今まで開催してきた勉強会について 今まで、以下の様な勉強会を開催してきました。こうやって見ると色々やってきたんだなと思います。 クラスメソッド社内で開催したイベント jQueryプラグインとJSクロージャの基礎 - クラスメソッドブロ

    社外勉強会を開催しよう! | DevelopersIO
  • よくわかる認証と認可 | DevelopersIO

    よく訓練されたアップル信者、都元です。「認証 認可」でググると保育園の話が山程出て来ます。が、今日は保育園の話ではありません。そちらを期待した方はごめんなさい。こちらからお帰りください。 さて、先日のDevelopers.IO 2016において、マイクロWebアプリケーションというテーマでお話させて頂きました。一言で言うと OAuth 2.0 と OpenID Connect 1.0 のお話だったのですが、これらを理解するにあたっては「認証」と「認可」をはっきりと別のものとしてクッキリと認識する必要があります。 まず、ざっくりとした理解 認証と認可は密接に絡み合っている一方で全く別の概念です。正直、理解は簡単ではないと思います。 まず「認証」は英語では Authentication と言います。長いので略して AuthN と書いたりすることもあります。意味としては 通信の相手が誰(何)であ

    よくわかる認証と認可 | DevelopersIO
  • エンジニアのための無料で使えるドローイングツールまとめ | DevelopersIO

    今回は、ローチャート、UML、システム構成図、などなどなど、 エンジニアがよく使いそうな図を書くためのツールを紹介したいと思います。 無料でMac/Windowsの両OSで使えるという条件でチョイスしてみました。 (あ、タイトルには「エンジニアのための」と書きましたが、今回紹介するのは別にエンジニア専用のツールではないです(念の為)) 汎用的 とりあえず、色々な図が書けそうなツール Cacoo 【URL】 https://cacoo.com 【特徴】 無料版では25シートまで 無料版での書き出しはPNGのみ だいたい何でも書ける 複数人でチャットしながら1つの図を作成出来る 【メモ】 特に有料版は高機能だと思う 会社で有料アカウントに入っているのであれば、このツールを使う選択肢で良いと思う draw.io 【URL】 https://www.draw.io/ 【特徴】 とりあえず会員登録し

    エンジニアのための無料で使えるドローイングツールまとめ | DevelopersIO
  • AWS Lambda のバージョン管理の仕組み | DevelopersIO

    はじめに この記事では、AWS Lambdaにおけるバージョン管理についての概要についてまとめています。 バージョン管理というと、SubversionやGitなどのバージョン管理システムが思いつきますが、AWS Lambdaもそのサービスの中で、シンプルなバージョン管理機能を提供しています。 AWS Lambdaにおけるバージョン管理は、主にソースコードの過去バージョンの保管と、開発フローにおける各段階(開発、βテスト、番稼動)に合わせた過去コードの利用のために用いられます。 バージョニングは基的には直線の形で更新されていき、過去のバージョンについてはエイリアスという機能を使って別名を与えることができます。 このエイリアスを用いて、開発フローに合わせて一つのスクリプトのバージョンを切り替えていくというのが、この機能の主な利用法です。 GitやSubversionのような、チーム開発での

    AWS Lambda のバージョン管理の仕組み | DevelopersIO
    sakahara
    sakahara 2016/01/28
  • cloud-initのデフォルト挙動を徹底的に調べてまとめてみた -結果ソースコードを読んだ- | DevelopersIO

    コンニチハ、千葉です。 AWSを利用していればcloud-initをご存知の方が多いと思います。ただ、「cloud.cfg上から説明して!」とか言われたら困ると思います。 なにせ、ぐぐってもあまり情報がありません。公式のドキュメントを読んでも設定方法やモジュール名は書いているのですがモジュールがデフォルトでどんな挙動するのか読み取れませんでした。なので、ソースコード(主にコメントw)頑張って読んでまとめました。 初期構築等で設定だけしたいのであれば、このページを見ればいけると思います。 cloud-initの実行タイミング ふわっと、初回起動みたいに覚えている方もいると思います。実際には初回起動以外にも実行タイミングがあります。 一生に?1回だけ実行されるもの インスタンスごとに実行されるもの(AMI作成し、そこからインスタンスを作成した時) 起動時に毎回実行されるもの ソースで、「fre

    cloud-initのデフォルト挙動を徹底的に調べてまとめてみた -結果ソースコードを読んだ- | DevelopersIO
  • [ACM] AWS Certificate Manager 無料のサーバ証明書でCloudFrontをHTTPS化してみた | DevelopersIO

    はじめに AWSチームの鈴木です。 日、AWSより新機能「AWS Certificate Manager」(ACM) が発表され、無料でサーバ証明書を発行し、CloudFront、ELBで利用する事が可能になりました。 今回、ACMでサーバ証明書を発行し、CloudFrontの独自ドメイン設定でHTTPS通信を試す機会がありましたので、その一連の手順を紹介させて頂きます。 New – AWS Certificate Manager – Deploy SSL/TLS-Based Apps on AWS 手順 ACM の利用開始 AWSコンソール、セキュリティ&アイデンティティに増えた「Certificate Manager」を開きます。 ACMは、2016年1月現在、米国東部(us-east-1)リージョンでの提供となります。 「Get Stard」のリンクより利用を開始します。 証明書の

    [ACM] AWS Certificate Manager 無料のサーバ証明書でCloudFrontをHTTPS化してみた | DevelopersIO