2016年9月7日のブックマーク (22件)

  • サーバーレスシステム構築のベストプラクティス! Serverless Frameworkをもっと試してみよう! API GatewayとDynamoDB編 - サーバーワークスエンジニアブログ

    こんにちは。サーバーワークス こけし部 部長でCS課の坂(@t_sakam)です。前回に続いて、Serverless Frameworkの話題です。 前回は、Serverless Frameworkのドキュメントに沿って、簡単に使い方を確かめてみました。今回は、API GatewayやDynamoDBをからめた使い方をみてみたいと思います。 Serverless Frameworkを使うと、設定ファイルのserverless.ymlに必要な設定を書いて「serverless deploy」とコマンドを打つだけで、必要なリソースの作成ができます。Lambdaファンクションのデプロイだけでなく、API GatewayとDynamoDBのリソース作成もServerless Frameworkでやってしまいましょう。 Serverless Frameworkのアップデート サービスの作成 必要な

    サーバーレスシステム構築のベストプラクティス! Serverless Frameworkをもっと試してみよう! API GatewayとDynamoDB編 - サーバーワークスエンジニアブログ
    kkeisuke
    kkeisuke 2016/09/07
  • 複数のDockerコンテナを自動で立ち上げる構成管理ツール「Docker Compose」(Dockerの最新機能を使ってみよう:第7回) | さくらのナレッジ

    複数のコンテナを組み合わせた構成でサービスを運用している場合、コンテナに対し特定のパラメータを指定したり、特定の順序での起動が必要となるケースがある。こういった作業を自動化するツールが、「Docker Compose」だ。 Dockerコンテナの管理を支援する純正ツール「Docker Compose」 Docker ComposeはDockerが開発するコマンドラインツールで、あらかじめ用意しておいた設定ファイルに従ってコンテナを起動するツールだ。設定ファイルには複数のコンテナに関する記述が可能で、コンテナの起動オプションやコンテナに与える環境変数など、さまざまな設定も同時に記述できる。 また、コンテナ同士の依存関係を設定することも可能で、これによって関連するコンテナを複数まとめて起動することも可能だ(図1)。 図1 Docker Composeによるサービスの立ち上げ この場合、設定され

    複数のDockerコンテナを自動で立ち上げる構成管理ツール「Docker Compose」(Dockerの最新機能を使ってみよう:第7回) | さくらのナレッジ
    kkeisuke
    kkeisuke 2016/09/07
  • インターンシップ「サービス開発演習」の舞台裏 - クックパッド開発者ブログ

    こんにちは、投稿開発部副部長の勝間(@ryo_katsuma)です。 普段はクックパッドレシピ投稿周辺のサービス開発を行う部署のマネジメントやエンジニアリングを担当しています。 さて、クックパッドでは、8月10日から先日9月2日まで技術インターンシップを開催していました。 講義全体のまとめについては、先日公開されましたこちらの記事を参照ください。 クックパッド サマーインターンシップ2016の資料を公開します Service Development at Cookpad 2016 summer internship 今回は、私が担当した4日目の講義「サービス開発」について、どのような狙いを持って設計したか、また参加学生の皆さんがどのような反応だったかなど、舞台裏についてご紹介いたします。 昨年の振り返りと課題 技術インターンシップにおいて、サービス開発の講義は昨年度も私が担当しました。

    インターンシップ「サービス開発演習」の舞台裏 - クックパッド開発者ブログ
    kkeisuke
    kkeisuke 2016/09/07
  • スタートアップがスマホアプリゲームをAzureのサービスで運用した話

    2018年9月13日(木)開催 『チャンピオンクラブ総集編~Awards Ceremony~』セッション資料を公開! http://www.networld.co.jp/product/emc/emcvxrail_championsclub/

    スタートアップがスマホアプリゲームをAzureのサービスで運用した話
    kkeisuke
    kkeisuke 2016/09/07
  • 【新人教育 資料】第3章 UMLまでの道 〜図種類紹介とクラス図の解説編〜 - Qiita

    あらすじ 新人がいっぱい入ってくる。新人のレベルもバラバラ。教育資料も古くなっているので、更新しましょう。 どうせなら、公開しちゃえばいいじゃん。という流れになり、新人教育用の資料を順次更新していくことにしました。 ※後々、リクエストに応じて更新することが多いのでストックしておくことをおすすめします。 自分はTEMONA株式会社でCTOをしていますが、頭でっかちに理論ばっかり学習するよりは、イメージがなんとなく掴めるように学習し、実践の中で知識を深めていく方が効率的に学習出来ると考えています。 ※他の登壇やインタビュー記事はWantedlyから見てください。 教育スタイルとしては正しい事をきっちりかっちり教えるのではなく、未経験レベルの人がなんとなく掴めるように、資料を構成していきます。 以下のようなシリーズネタで進めます。 No. 記事

    【新人教育 資料】第3章 UMLまでの道 〜図種類紹介とクラス図の解説編〜 - Qiita
    kkeisuke
    kkeisuke 2016/09/07
  • Gitのコミットメッセージを書くために作られたCocoaテキストエディタ風エディタ「Komet」がリリース。

    Gitのコミットメッセージを書くために作られたCocoaテキストエディタ風 Mac用エディタ「Komet」がリリースされています。詳細は以下から。 Kometはバージョン管理システムGitやMercurial(hg), Subversion(svn)へコミットする際のメッセージやコメントを編集するために作られたエディタアプリで、開発者はSparkleのコントリビューターのZorgさん。 So I made myself a little editor designed for creating commit messages, and I feel my life has gotten much better https://t.co/cPpGYoVytI — Mayur Pawashe (@Zorg__) 2016年8月21日 Purpose I do version control f

    Gitのコミットメッセージを書くために作られたCocoaテキストエディタ風エディタ「Komet」がリリース。
    kkeisuke
    kkeisuke 2016/09/07
  • Reactと最近のWebアプリの開発について調べた - Qiita

    最近のWebアプリの開発について情報収集してみて、Reactが流行っている、に辿り着くまでの結果をまとめた。 それぞれの技術はまだチュートリアルを触った程度なので、若干誤解があるかもしれない。 モジュール管理、ビルドツール、CommonJS、ES2015 学習コストが高い割に、細かい技術は長続きしなさそう。 npmwebpackを使えば、一番環境構築にコストをかけずに済みそうだ。 javascriptの書き方はES2015に準拠するようにしておくと、RubyPythonのようなLLの使用感に近くなっているように思えるので少しハードルは下がるか。 このあたりのことがまとまっている記事としては: 旧石器時代のJavaScriptを書いてる各位に告ぐ、現代的なJavaScript超入門 Section1 ~すぐにでも現代っぽく出来るワンポイントまとめ~ かなり新し目の記事で、現在進行形で続き

    Reactと最近のWebアプリの開発について調べた - Qiita
    kkeisuke
    kkeisuke 2016/09/07
    “ブラウザという環境がかなり限界に近いのではないかという気がしてくる。”
  • pdf.jsをつかってPDFの内容をcanvasにレンダリングする - みかづきブログ その3

    github.com すごいライブラリですね。さすがMozilla。 つかいかた 1. ライブラリをダウンロードして解凍 https://mozilla.github.io/pdf.js/getting_started/#download からライブラリをダウンロード 2. ソースを編集 viewer.htmlにアクセスした際、デフォルトではcompressed.tracemonkey-pldi-09.pdfを開くようになっているのですが、 web/viewr.js の28行目を編集することでデフォルトで開くPDFを変更できます。 3. サーバにアップ buildフォルダもwebフォルダもまとめてアップしましょう。 4. viewer.htmlにアクセス http://kimizuka.github.io/pdfjs/web/viewer.html PDFの内容がレンダリングされています。

    pdf.jsをつかってPDFの内容をcanvasにレンダリングする - みかづきブログ その3
    kkeisuke
    kkeisuke 2016/09/07
  • 実践UniversalJS 繰り返し処理の分離 - Qiita

    ブラウザAPIに依存した複雑なJSの処理から、ロジックを抽出し分離する方法を、事例を通して紹介します。 今回の事例は、繰り返し処理を伴うロジックの分離にgeneratorが有効であった例になります。 はじめに少し Universal ≠ SSR について Universal JSの興味関心は、SSR(サーバーサイドレンダリング)に限りません。 より汎用なロジックの移植可能性がテーマです。例えば markdown文字列の構文解析 deep copy テスト http client ランダムに文字列を出力 と、プラットフォームに依存しないべきロジックすべてが守備範囲になります。 しかし、Universal JSへの関心が薄い層がライブラリを作ると、 たとえばmarkdown"ファイル"の構文解析ライブラリができあがります。「ファイル」は物質世界の登場人物で、この時点でNodeJSでしか利用でき

    実践UniversalJS 繰り返し処理の分離 - Qiita
    kkeisuke
    kkeisuke 2016/09/07
  • JavaScript で クラスベースの設計より関数指向の実装を薦める理由 + GraphQL について - mizchi's blog

    最初に: 「Functional Programming 最高!」という話ではないです JSは通信やストレージに保存するデータの扱いの関係で、JSONにシリアライズできることが至上命題になるケースが多いので、クラスベースの設計で自身に副作用を起こすメソッドより、イミュータブルな T => T なstatic methodとして切り離しておくと扱いやすいケースが多い— 現場の声 (@mizchi) 2016年9月6日 複雑なオブジェクトのシリアライズは簡単だけど、逆にシリアライズされたオブジェクトからビルダを構築するのが難しいので、JSONの構造体自身とは別に独立して独立したメソッドとしてビルダが切り離されている方が扱いやすい— 現場の声 (@mizchi) 2016年9月6日 一応コンストラクタ名を保存してシリアライズ/復元する方法はあって、RPGツクールMVのコードを読むとそういう感じに

    JavaScript で クラスベースの設計より関数指向の実装を薦める理由 + GraphQL について - mizchi's blog
    kkeisuke
    kkeisuke 2016/09/07
  • [JavaScript]HTML5 Form Validationの制御と注意事項

    概要 HTML5から支援しているForm Validation、皆さんご存知ですよね。 非常に便利ですし、自分もHTML5に感謝しています。👏 サーバでは常にデータを検証するべきですが、追加のデータ検証をWebページ自身で行うことにも多くの利点があります。ユーザがフォームに入力している間にデータを検証することで、ユーザは何らかのミスをしたことを直ちに知ることができます。これはユーザが HTTP のレスポンスを待つ時間を減らし、またサーバで誤ったフォーム入力を扱うことがないようにします。 詳しい内容は以下の記事をご参考してください。 🔗[JavaScript]HTML5 Form Validation しかし、ドンー (OA O; ) ブラウザー別にメッセージが統一されず、実際の案件には、デメリットになっちゃったんです。 やっぱりHTML5 Form Validationに完全に依存され

    [JavaScript]HTML5 Form Validationの制御と注意事項
    kkeisuke
    kkeisuke 2016/09/07
  • reducer の ノーマライゼーション - Qiita

    来は実体を配列で保持するようなケースを、次のような構成に分ける reducerが返すある状態を、全体を保持するオブジェクトと、全体の各IDを保持する配列に分ける。 全体を保持するオブジェクトのキーを指定して実体を手に入れる。まとまりをそのまま処理する場合は、全体の各IDを保持する配列にmap()を適用し、必要な実体のリストを手に入れる。 なぜ、こうするのか redux のアプローチでは、情報を管理するストアはトップレベルに一つだけある。そしてこのストアは意味のあるデータの塊ごとに reducer を作成し、必要に応じて combineReducers することで合成することができる。擬似的には

    reducer の ノーマライゼーション - Qiita
    kkeisuke
    kkeisuke 2016/09/07
  • NaNはNot a NumberだけどNumber型である話

    この記事では、JavaScriptのNaNについて改めて学ぶという趣旨の話をします。 JavaScriptで、文字列などから数値へ値を変換したいことがあると思います。 典型的なケースでは、ユーザーに入力してもらった数字となる文字列を、Number型へ変換するというケースです。 この場合、Numberコンストラクタ関数やNumber.parseInt、Number.parseFloatなどが利用できます。(ここでは、Number.parseIntにしていますが、parseIntと同じです) // ユーザー入力を文字列として受け取る var input = window.prompt("数字を入力してください", "42"); // 文字列を数値に変換する var number = Number(input); console.log(typeof number); // => "number

    NaNはNot a NumberだけどNumber型である話
    kkeisuke
    kkeisuke 2016/09/07
  • lifefuckers.com

    lifefuckers.com 2023 著作権. 不許複製 プライバシーポリシー

    lifefuckers.com
    kkeisuke
    kkeisuke 2016/09/07
  • MySQL で utf8 と utf8mb4 の混在で起きること - tmtms のメモ

    MySQLUTF-8 で使おうと思ってハマりがちなのは charset utf8 を指定してしまうことです。 MySQLUTF-8 には歴史的事情により utf8 と utf8mb4 の二つあります。 UTF-8 は1バイト〜4バイトで1文字が構成される文字コードですが、MySQL の utf8 は4バイト文字を扱うことができません。ハマりたくなければ utf8mb4 を使いましょう。 utf8 を使ってしまった場合に4バイト文字がどのように扱われるか、自分でもうろ覚えだったのでメモしておきます。 登録 接続が utf8mb4 でカラムが utf8mb4 あたりまえですが、そのまま登録されます。 mysql> insert into utf8mb4 (c) values ('美味しい🍣と🍺'); mysql> select * from utf8mb4; +--------

    MySQL で utf8 と utf8mb4 の混在で起きること - tmtms のメモ
    kkeisuke
    kkeisuke 2016/09/07
  • CSS スタイルシート制作を楽にする!知っておきたい便利ツール25選まとめ

    海外サイト Envato Blog で公開された「25 Free Web-Based Apps & Tools For Working With CSS」の著者 Paul Andrew より許可をもらい、翻訳転載しています。 CSS スタイルシートを作成していると、時間ばかりかかる退屈な作業をこなさなければいけない時があります。 たとえば、CSSアニメーションや FlexBox レイアウトを作成、調整したり、モダンブラウザ対応の書き方を思い出したり、レスポンシブ用にemをpxへの変換や CSS ファイルの圧縮やクリーンアップ、画像をデータURIへ変換など、どれもクリエイティブとは程遠いものばかり。 今回は、作業時間を大幅に短縮し、より快適なスタイルシートの作成ができる便利なツール25個をまとめてご紹介します。 紹介するツールを活用することで、これまで時間がかかっていた頭の痛くなる作業も、ボ

    CSS スタイルシート制作を楽にする!知っておきたい便利ツール25選まとめ
    kkeisuke
    kkeisuke 2016/09/07
  • target="_blank" で開くリンクには rel="noopener" をつける - Qiita

    The performance benefits of rel=noopener - JakeArchibald.com より target="_blank" でリンクを開く場合は、rel="noopener"をつけておくのが良い。 管理画面などでは rel="noopener noreferrer"というかたちでnoreferrerをつけるとさらに良いかもしれない(参考:http://qiita.com/wakaba@github/items/707d72f97f2862cd8000 ) target="_blank" で開いたWindowは、 window.opener を使って親のWindowを操作することができる。つまりtarget="_blank"で開いたサイトで任意の操作ができてしまうことになるけど、Same origin の仕組みが働く。ので、Same originではない場

    target="_blank" で開くリンクには rel="noopener" をつける - Qiita
    kkeisuke
    kkeisuke 2016/09/07
  • もう迷わない!HTML5のもっとも基本的なテンプレートはこれだ!(2016年版)

    HTMLを書くときのベースとなる「書き出し」。いまどきはエディターにプリセットされていますし、ネットにも山ほど転がっていますが、どうせならきちんと意味を理解して、自分だけのテンプレートを作っておくとカッコいい。 HTML5を習得していくうちに、HTML5のテクニックをまとめて使ったひな型を作っておきたいと考えることでしょう。もちろんお勧めしますし、開始点として便利な、オンラインソースの使用も検討してみるもいいでしょう(もっと詳しく知りたい場合は、html5boilerplate.comやhttps://github.com/murtaugh/HTML5-Resetも参照してください)。 ただし今回は、構築内容も含め、コードを一から説明していきます。なぜならHTML5とCSS3を使ったサイトやWebアプリを作る際、使えるオプションに詳しくなれるし、この記事をテクニックの手引きとして参照しやす

    もう迷わない!HTML5のもっとも基本的なテンプレートはこれだ!(2016年版)
    kkeisuke
    kkeisuke 2016/09/07
  • The Collaborative API Development Platform

    Announcing Kong Insomnia 9.3 with after-response scripting, global environments, folder-level configuration, and more. Design, debug, test, and mock APIs locally, on Git, or cloudBuild better APIs collaboratively for the most popular protocols with a dev‑friendly UI, built-in automation, and an extensible plugin ecosystem. Get Started for Free

    The Collaborative API Development Platform
    kkeisuke
    kkeisuke 2016/09/07
  • クックパッド サマーインターンシップ2016の資料を公開します - クックパッド開発者ブログ

    技術部開発基盤グループの @moro です。 クックパッドでは、昨年に引き続き今年も、夏の技術職インターンシップを実施しました。 クックパッドのインターンシップは前後半に分けた構成になっていました。まず前半はWebサービス開発に必要な技術の中から6つの分野に関する講義や実習を行いました。さらに後半は、前半の座学に合格した方を対象に、メンターとなる社員と一緒に実際の開発現場に入り、具体的な問題解決に取り組んでもらいました。 その中で、前半の講義に使った資料を公開します。 1日目 Git (@moro) 昨年に引き続き、講義初日はGit, TDD, Railsを1営業日で一巡りするという、忙しい構成でした。 Git編では、すでにGitを使っているエンジニアも多いだろうと想定して各コマンドの紹介などは最小限に済ませました。代わりに、Gitの内部構造を説明し「コミットを覚えておけばなんとかなる」感

    クックパッド サマーインターンシップ2016の資料を公開します - クックパッド開発者ブログ
    kkeisuke
    kkeisuke 2016/09/07
  • 技術リーダーの出現をはばむもの | タイム・コンサルタントの日誌から

    「最近の日の経済はどうですか?」——外国人と事をしていると、よくたずねられる話題だ。先週、北米の関連会社から来たエンジニア事していた時も質問された。またその前の週にも、フランスで開かれたPM関係の国際シンポジウムの夕会で、隣り合わせた顔見知りに、まったく同じ事をきかれた。彼は米国のビジネススクールの学部長だった。反対側に座ったインド人(彼は豪州の大学教授だったが)も、興味深そうに聞き耳を立てる。米国もオーストラリアも日から見れば隣国のようなものだが、こちらの発信力が低いせいか、日の状況はさっぱり分からないらしい。わたしは答えた。 --良くないよ。GDPは成長どころか、じり貧だ。株価は一応保っているけど、最近の報道によると、日銀と政府系の年金基金はなんと、上場企業全体の7%もの株式を買って持っているらしい。つまり買い支えているわけだ。 その問いに答えるのは、簡単ではない。経済学

    技術リーダーの出現をはばむもの | タイム・コンサルタントの日誌から
    kkeisuke
    kkeisuke 2016/09/07
  • 今の子供達にファミコンの名作をやらせてもやっぱり「つまんない」って言うの? 実験してみた

    1980年生まれ35歳の僕の初手は「ゲーム&ウォッチ」シリーズの『オクトパス』で、「ひたすらタコの足をよけ続けるだけ」っていう今思えば「これ、何が面白かったんだろう?」っていうゲームなのですが、確か病院の待ち時間に僕が泣きわめくから親が渋々買ってくれたような記憶がある。 画像はwikipediaより そしてファミコンの登場。僕が小学生になったくらいの時に、自宅の床にゴロゴロ転がりながらギャンギャン泣いて親にねだりまくり、念願のファミコンを買って貰う事に成功。そしてその後はファミコン→ゲームボーイ→スーパーファミコン→プレイステーション→プレイステーション2といった具合に王道(※)を歩んで来ました。 ※……王道パターンとは逆に、ワンダースワン、3DO、ネオジオCD、セガサターンといったいわゆる「負けハード」ばかりを購入していた友人の浦部くんは「浦部が買ったハードは負ける」というジンクスで「疫

    今の子供達にファミコンの名作をやらせてもやっぱり「つまんない」って言うの? 実験してみた
    kkeisuke
    kkeisuke 2016/09/07